Google berkomitmen untuk mendorong terwujudnya keadilan ras bagi komunitas Kulit Hitam. Lihat caranya.
Tetap teratur dengan koleksi Simpan dan kategorikan konten berdasarkan preferensi Anda.

nl::Weave::DeviceLayer::SoftwareUpdateManager

Ringkasan

Warisan

Subclass Langsung yang Diketahui:
nl::Weave::DeviceLayer::SoftwareUpdateManagerImpl
nl::Weave::DeviceLayer::SoftwareUpdateManagerImpl
nl::Weave::DeviceLayer::SoftwareUpdateManagerImpl

Jenis publik

ActionType{
  kAction_Ignore,
  kAction_DownloadNow,
  kAction_DownloadLater,
  kAction_ApplicationManaged
}
enum
Jika update software tersedia, aplikasi dapat memilih salah satu tindakan berikut sebagai bagian dari callback peristiwa SoftwareUpdateAvailable API.
EventCallback)(void *apAppState, EventType aEvent, const InEventParam &aInParam, OutEventParam &aOutParam) typedef
void(*
EventType{
  kEvent_PrepareQuery,
  kEvent_PrepareQuery_Metadata,
  kEvent_QueryPrepareFailed,
  kEvent_QuerySent,
  kEvent_SoftwareUpdateAvailable,
  kEvent_FetchPartialImageInfo,
  kEvent_PrepareImageStorage,
  kEvent_StartImageDownload,
  kEvent_StoreImageBlock,
  kEvent_ComputeImageIntegrity,
  kEvent_ResetPartialImageInfo,
  kEvent_ReadyToInstall,
  kEvent_StartInstallImage,
  kEvent_Finished,
  kEvent_DefaultCheck = 100
}
enum
Peristiwa API yang dihasilkan oleh objek SoftwareUpdateManager.
RetryPolicyCallback)(void *aAppState, RetryParam &aRetryParam, uint32_t &aOutIntervalMsec) typedef
void(*
State enum

Kelas teman

Internal::GenericPlatformManagerImpl
friend class

Fungsi publik

Abort(void)
CheckNow(void)
GetState(void)
State
ImageInstallComplete(WEAVE_ERROR aError)
IsInProgress(void)
bool
PrepareImageStorageComplete(WEAVE_ERROR aError)
SetEventCallback(void *const aAppState, const EventCallback aEventCallback)
SetQueryIntervalWindow(uint32_t aMinWaitTimeMs, uint32_t aMaxWaitTimeMs)
SetRetryPolicyCallback(const RetryPolicyCallback aRetryPolicyCallback)
void

Fungsi statis publik

DefaultEventHandler(void *apAppState, EventType aEvent, const InEventParam & aInParam, OutEventParam & aOutParam)
void

Fungsi yang dilindungi

SoftwareUpdateManager()=default
SoftwareUpdateManager(const SoftwareUpdateManager &)=delete
SoftwareUpdateManager(const SoftwareUpdateManager &&)=delete
operator=(const SoftwareUpdateManager &)=delete
~SoftwareUpdateManager()=default

Struct

nl::Weave::DeviceLayer::SoftwareUpdateManager::RetryParam

Serikat

nl::Weave::DeviceLayer::SoftwareUpdateManager::InEventParam
nl::Weave::DeviceLayer::SoftwareUpdateManager::OutEventParam

Jenis publik

JenisTindakan

 ActionType

Jika update software tersedia, aplikasi dapat memilih salah satu tindakan berikut sebagai bagian dari callback peristiwa SoftwareUpdateAvailable API.

Tindakan default akan ditetapkan ke kAction_Now.

Properti
kAction_ApplicationManaged

Mengizinkan aplikasi mengelola fase update software lainnya, seperti download, validasi integritas gambar, dan penginstalan.

Mesin status pengelola update software akan berpindah ke status ApplicationManaged. Pemeriksaan update software terjadwal (jika diaktifkan) akan ditangguhkan hingga aplikasi memanggil Abort atau ImageInstallComplete API.

kAction_DownloadLater

Jeda download saat memulai.

Pemeriksaan update software terjadwal (jika diaktifkan) akan ditangguhkan. Mesin status akan tetap dalam status Download. Jika siap, aplikasi dapat memanggil resume download API untuk melanjutkan download atau memanggil Abort untuk membatalkan.

kAction_DownloadNow

Mulai download segera.

Callback peristiwa kEvent_FetchPartialImageInfo API akan dibuat tepat setelahnya.

kAction_Ignore

Abaikan download sepenuhnya.

Callback peristiwa API kEvent_finish akan dihasilkan dengan kesalahan WEAVE_DEVICE_ERROR_SOFTWARE_UPDATE_CANCELLED jika opsi ini dipilih dan logika percobaan ulang tidak akan dipanggil.

Callback Peristiwa

void(* EventCallback)(void *apAppState, EventType aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)

Jenis Peristiwa

 EventType

Peristiwa API yang dihasilkan oleh objek SoftwareUpdateManager.

Properti
kEvent_ComputeImageIntegrity

Menghitung nilai pemeriksaan integritas gambar.

Meminta aplikasi menghitung nilai pemeriksaan integritas pada gambar yang didownload. Dibuat setelah download selesai.

kEvent_DefaultCheck

Periksa perilaku penanganan peristiwa default.

Digunakan untuk memverifikasi penanganan peristiwa default yang benar dalam aplikasi.

Aplikasi TIDAK boleh menangani peristiwa ini.

kEvent_FetchPartialImageInfo

Mengambil informasi status yang dipertahankan untuk gambar yang didownload sebagian.

Memberikan kesempatan bagi aplikasi untuk mengungkapkan informasi sebagian gambar yang telah didownload sebelumnya, sehingga proses download dapat dilanjutkan dari titik terakhir gambar berhenti. URI update software yang tersedia disediakan sebagai parameter input yang dapat digunakan aplikasi untuk membandingkan apakah gambar yang didownload sama dengan gambar sebagian.

Aplikasi diharapkan menampilkan panjang gambar sebagian dalam parameter output PartialImageLenInBytes. Aplikasi dapat menyetel nilai PartialImageLenInBytes ke 0 untuk menunjukkan bahwa tidak ada gambar sebagian atau URI gambar yang tidak cocok.

Aplikasi dapat memilih untuk mengabaikan peristiwa ini dengan meneruskannya ke pengendali peristiwa default. Jika hal ini dilakukan, sistem akan selalu mendownload keseluruhan gambar firmware yang tersedia.

kEvent_Finished

Proses pembaruan software selesai.

Dihasilkan saat pemeriksaan update software selesai dengan atau tanpa error. Parameter yang disertakan dengan peristiwa ini memberikan alasan kegagalan jika upaya tersebut selesai karena kegagalan.

kEvent_PrepareImageStorage

Mempersiapkan penyimpanan gambar baru.

Meminta aplikasi melakukan langkah yang diperlukan untuk menyiapkan penyimpanan lokal guna mendownload gambar firmware baru. Aplikasi dapat menggunakan ini, misalnya, untuk menghapus halaman flash.

Peristiwa PrepareImageStorage hanya dibuat jika gambar firmware baru sedang didownload. Ketika download yang terhenti sebelumnya dilanjutkan, PrepareImageStorage tidak dibuat.

Aplikasi harus menandakan penyelesaian operasi persiapan dengan memanggil metode PrepareImageStorageComplete(). Hal ini dapat dilakukan dalam callback peristiwa itu sendiri, atau di lain waktu. Jika dipanggil dari tugas selain tugas Weave, pemanggil harus memegang kunci stack Weave.

Aplikasi dapat memilih untuk mengabaikan peristiwa PrepareImageStorage dengan meneruskannya ke pengendali peristiwa default. Jika tindakan ini dilakukan, sistem akan otomatis melanjutkan ke status download gambar.

Untuk mendukung dilanjutkannya download yang terputus, aplikasi harus mempertahankan URI gambar (disediakan sebagai parameter peristiwa), dan menggunakannya saat menangani peristiwa FetchPartialImageInfo berikutnya.

kEvent_PrepareQuery

Siapkan pesan ImageQuery.

Dibuat saat pemeriksaan update software dipicu. Memberikan kesempatan bagi aplikasi untuk memberikan informasi terkait produk ke pesan SofwareUpdate:ImageQuery.

kEvent_PrepareQuery_Metadata

Menyiapkan meta-data untuk permintaan ImageQuery.

Memberikan kesempatan bagi aplikasi untuk menambahkan metadata tambahan ke pesan SofwareUpdate:ImageQuery jika diperlukan. Dihasilkan saat implementasi siap mendapatkan metadata dari aplikasi.

kEvent_QueryPrepareFailed

Terjadi error saat menyiapkan permintaan ImageQuery.

Dihasilkan saat implementasi mengalami error saat bersiap mengirimkan kueri update software.

kEvent_QuerySent

Permintaan ImageQuery telah dikirim.

Peristiwa informasi untuk menandakan bahwa pesan SofwareUpdate:ImageQuery telah dikirim.

kEvent_ReadyToInstall

Gambar siap diinstal.

Peristiwa informasi untuk menandakan bahwa gambar siap diinstal. Dibuat setelah gambar lulus pemeriksaan integritas.

kEvent_ResetPartialImageInfo

Mereset status gambar yang didownload sebagian.

Meminta aplikasi melupakan status persisten yang terkait dengan gambar yang didownload. Peristiwa ResetPartialImageInfo dihasilkan setiap kali gambar yang didownload gagal dalam pemeriksaan integritas. Setelah peristiwa ResetPartialImageInfo telah diproses, peristiwa FetchPartialImageInfo berikutnya harus menunjukkan bahwa tidak ada gambar sebagian yang tersedia.

Perhatikan bahwa saat menangani peristiwa ResetPartialImageInfo, aplikasi TIDAK diharuskan menghapus data gambar itu sendiri, hanya informasi status yang terkait dengan gambar (yaitu URI dan panjang gambar sebagian).

Jika aplikasi tidak mendukung dimulainya kembali download gambar, aplikasi dapat mengabaikan peristiwa ini dengan meneruskannya ke pengendali peristiwa default.

kEvent_SoftwareUpdateAvailable

Update software tersedia.

Dihasilkan saat SofwareUpdate:ImageQueryResponse diterima sebagai respons terhadap kueri yang berisi informasi tentang update yang tersedia.

kEvent_StartImageDownload

Download gambar telah dimulai.

Peristiwa informasi untuk menandakan dimulainya transaksi download gambar.

kEvent_StartInstallImage

Mulai penginstalan gambar.

Meminta aplikasi menjadi proses penginstalan gambar firmware yang didownload.

kEvent_StoreImageBlock

Menyimpan blok data gambar.

Dibuat setiap kali blok data diterima dari server download file. Parameter yang disertakan dengan peristiwa ini menyediakan data dan panjang data.

Untuk mendukung melanjutkan download yang terhenti, aplikasi harus mempertahankan jumlah persisten dari total byte gambar yang disimpan, dan menggunakan nilai ini saat menangani peristiwa FetchPartialImageInfo berikutnya.

Coba lagiKebijakanCallback

void(* RetryPolicyCallback)(void *aAppState, RetryParam &aRetryParam, uint32_t &aOutIntervalMsec)

Negara bagian

 State

Kelas teman

Internal::GenericPlatformManagerImpl

friend class Internal::GenericPlatformManagerImpl

Fungsi publik

Batalkan

WEAVE_ERROR Abort(
  void
)

Periksa Sekarang

WEAVE_ERROR CheckNow(
  void
)

GetState

State GetState(
  void
)

PenginstalanGambarSelesai

WEAVE_ERROR ImageInstallComplete(
  WEAVE_ERROR aError
)

SedangDalam proses

bool IsInProgress(
  void
)

Mempersiapkan ImageStorageComplete

WEAVE_ERROR PrepareImageStorageComplete(
  WEAVE_ERROR aError
)

SetEventCallback

WEAVE_ERROR SetEventCallback(
  void *const aAppState,
  const EventCallback aEventCallback
)

SetIntervalIntervalWindow

WEAVE_ERROR SetQueryIntervalWindow(
  uint32_t aMinWaitTimeMs,
  uint32_t aMaxWaitTimeMs
)

SetRetryPolicyCallback

void SetRetryPolicyCallback(
  const RetryPolicyCallback aRetryPolicyCallback
)

Fungsi statis publik

PengendaliPeristiwaDefault

void DefaultEventHandler(
  void *apAppState,
  EventType aEvent,
  const InEventParam & aInParam,
  OutEventParam & aOutParam
)

Fungsi yang dilindungi

PengelolaPembaruanPerangkat Lunak

 SoftwareUpdateManager()=default

PengelolaPembaruanPerangkat Lunak

 SoftwareUpdateManager(
  const SoftwareUpdateManager &
)=delete

PengelolaPembaruanPerangkat Lunak

 SoftwareUpdateManager(
  const SoftwareUpdateManager &&
)=delete

operator=

SoftwareUpdateManager & operator=(
  const SoftwareUpdateManager &
)=delete

~SoftwareUpdateManager

 ~SoftwareUpdateManager()=default