Fungsi dan pengaturan
Salin prompt setup yang berisi langkah install dan panduan markdown lengkap untuk plugin ini.
Konfigurasi Plugin Updater
Bagian berjudul âKonfigurasi Plugin UpdaterâLihat Github Readme untuk informasi lebih lanjut.
CapacitorUpdater dapat dikonfigurasi dengan opsi berikut:
| Prop | Tipe | Deskripsi | Default | Sejak |
|---|---|---|---|---|
appReadyTimeout | number | Konfigurasi jumlah milidetik yang harus ditunggu plugin native sebelum menganggap sebuah update 'gagal'. Tersedia di Android, iOS, dan Electron. | 10000 // (10 seconds) | |
responseTimeout | number | Konfigurasi jumlah milidetik yang harus ditunggu plugin native sebelum menganggap API timeout. Tersedia di Android, iOS, dan Electron. | 20000 // (20 seconds) | |
autoDeleteFailed | boolean | Konfigurasi apakah plugin harus otomatis menghapus bundle yang gagal. Tersedia di Android, iOS, dan Electron. | true | |
autoDeletePrevious | boolean | Konfigurasi apakah plugin harus otomatis menghapus bundle sebelumnya setelah update berhasil. Tersedia di Android, iOS, dan Electron. | true | |
autoUpdate | boolean | âoffâ | âatBackgroundâ | âatInstallâ | âonLaunchâ | âalwaysâ | âonlyDownloadâ | Konfigurasi cara plugin menggunakan Auto Update via update server. true sama dengan âatBackgroundâ; false sama dengan âoffâ. - off: Matikan Auto Update - atBackground: Cek dan download otomatis, lalu terapkan saat app masuk ke background - atInstall: Terapkan segera hanya setelah fresh install atau native app update, selain itu gunakan atBackground - onLaunch: Terapkan segera saat launch, selain itu gunakan atBackground setelah pengecekan launch - always: Terapkan segera setiap kali Auto Update berjalan - onlyDownload: Cek dan download otomatis, emit updateAvailable, dan tidak pernah memasang bundle berikutnya secara otomatis. Mode instant apply (âatInstallâ, âonLaunchâ, âalwaysâ) harus di-upload dengan âdelta agar update tidak memperlambat user experience. Di Android dan iOS, mode tersebut memerlukan autoSplashscreen: true dan @capacitor/splash-screen dengan launchAutoHide: false. Tersedia di Android, iOS, dan Electron. | âatBackgroundâ // true is still accepted | |
resetWhenUpdate | boolean | Hapus otomatis bundle yang sudah di-download sebelumnya saat bundle native app yang lebih baru diinstal ke perangkat. Tersedia di Android, iOS, dan Electron. | true | |
updateUrl | string | Konfigurasi URL / endpoint tempat pengecekan update dikirim. Tersedia di Android, iOS, dan Electron. | https://plugin.capgo.app/updates | |
channelUrl | string | Konfigurasi URL / endpoint untuk operasi channel. Tersedia di Android, iOS, dan Electron. | https://plugin.capgo.app/channel_self | |
statsUrl | string | Konfigurasi URL / endpoint tempat statistik update dikirim. Tersedia di Android, iOS, dan Electron. Set ke "" untuk menonaktifkan pelaporan statistik. | https://plugin.capgo.app/stats | |
publicKey | string | Konfigurasi public key untuk enkripsi end-to-end live update Versi 2. Tersedia di Android, iOS, dan Electron. | undefined | 6.2.0 |
version | string | Konfigurasi versi aplikasi saat ini. Ini akan digunakan untuk permintaan update pertama. Jika tidak diatur, plugin akan mengambil versi dari code native. Tersedia di Android, iOS, dan Electron. | undefined | 4.17.48 |
directUpdate | boolean | âalwaysâ | âatInstallâ | âonLaunchâ | Deprecated. Gunakan mode string autoUpdate sebagai gantinya: âatInstallâ, âonLaunchâ, atau âalwaysâ. Opsi ini tetap didukung untuk aplikasi yang sudah ada. Instant apply harus di-upload dengan âdelta agar update tidak memperlambat user experience. Di Android dan iOS, mode ini memerlukan autoSplashscreen: true dan @capacitor/splash-screen dengan launchAutoHide: false. - false: Jangan pernah melakukan update langsung - atInstall: Sama dengan autoUpdate: âatInstallâ - onLaunch: Sama dengan autoUpdate: âonLaunchâ - always: Sama dengan autoUpdate: âalwaysâ - true: Sama dengan âalwaysâ untuk backward compatibility. Tersedia di Android, iOS, dan Electron. | false | 5.1.0 |
autoSplashscreen | boolean | Wajib digunakan saat memakai mode instant apply (âatInstallâ, âonLaunchâ, atau âalwaysâ), termasuk nilai directUpdate yang sudah deprecated. @capacitor/splash-screen harus terinstal dan dikonfigurasi dengan launchAutoHide: false. Jika diaktifkan, plugin akan menyembunyikan splashscreen setelah update diterapkan atau saat tidak ada update yang diperlukan. Ini menghilangkan kebutuhan untuk mendengarkan event appReady secara manual dan memanggil SplashScreen.hide(). Tersedia di Android dan iOS. | false | 7.6.0 |
periodCheckDelay | number | Konfigurasi durasi delay untuk pengecekan update berkala. Satuannya dalam detik. Tersedia di Android, iOS, dan Electron. Tidak boleh kurang dari 600 detik (10 menit). | 600 // (10 minutes) | |
localS3 | boolean | Konfigurasikan CLI untuk memakai server lokal saat testing atau server update self-hosted. | undefined | 4.17.48 |
localHost | string | Konfigurasikan CLI untuk memakai server lokal saat testing atau server update self-hosted. | undefined | 4.17.48 |
localWebHost | string | Konfigurasikan CLI untuk memakai server lokal saat testing atau server update self-hosted. | undefined | 4.17.48 |
localSupa | string | Konfigurasikan CLI untuk memakai server lokal saat testing atau server update self-hosted. | undefined | 4.17.48 |
localSupaAnon | string | Konfigurasikan CLI agar memakai server lokal untuk testing. | undefined | 4.17.48 |
localApi | string | Konfigurasi CLI untuk menggunakan api lokal untuk keperluan testing. | undefined | 6.3.3 |
localApiFiles | string | Konfigurasi CLI untuk menggunakan file api lokal untuk keperluan testing. | undefined | 6.3.3 |
allowModifyUrl | boolean | Izinkan plugin untuk memodifikasi updateUrl, statsUrl, dan channelUrl secara dinamis dari sisi JavaScript. | false | 5.4.0 |
defaultChannel | string | Atur channel default untuk aplikasi di config. Case sensitive. Pengaturan ini akan menimpa channel default yang diatur di cloud, tapi override yang dibuat di cloud tetap dihormati. | undefined | 5.5.0 |
appId | string | Konfigurasi app id untuk aplikasi di config. | undefined | 6.0.0 |
keepUrlPathAfterReload | boolean | Konfigurasi plugin untuk mempertahankan path URL setelah reload. PERINGATAN: Saat reload dipicu, âwindow.historyâ akan dihapus. | false | 6.8.0 |
disableJSLogging | boolean | Nonaktifkan logging JavaScript pada plugin. Jika true, plugin tidak akan menulis log ke console JavaScript; hanya native log yang akan dilakukan | false | 7.3.0 |
shakeMenu | boolean | Aktifkan gestur shake untuk menampilkan menu update untuk keperluan debugging/testing | false | 7.5.0 |
Di capacitor.config.json:
{ "plugins": { "CapacitorUpdater": { "appReadyTimeout": 1000 // (1 second), "responseTimeout": 10 // (10 second), "autoDeleteFailed": false, "autoDeletePrevious": false, "autoUpdate": "onlyDownload", "resetWhenUpdate": false, "updateUrl": https://example.com/api/auto_update, "channelUrl": https://example.com/api/channel, "statsUrl": https://example.com/api/stats, "publicKey": undefined, "version": undefined, "directUpdate": undefined, "autoSplashscreen": undefined, "periodCheckDelay": undefined, "localS3": undefined, "localHost": undefined, "localWebHost": undefined, "localSupa": undefined, "localSupaAnon": undefined, "localApi": undefined, "localApiFiles": undefined, "allowModifyUrl": undefined, "defaultChannel": undefined, "appId": undefined, "keepUrlPathAfterReload": undefined, "disableJSLogging": undefined, "shakeMenu": undefined } }}Di capacitor.config.ts:
import { CapacitorConfig } from '@capacitor/cli';
const config: CapacitorConfig = { plugins: { CapacitorUpdater: { appReadyTimeout: 1000 // (1 second), responseTimeout: 10 // (10 second), autoDeleteFailed: false, autoDeletePrevious: false, autoUpdate: 'onlyDownload', resetWhenUpdate: false, updateUrl: https://example.com/api/auto_update, channelUrl: https://example.com/api/channel, statsUrl: https://example.com/api/stats, publicKey: undefined, version: undefined, directUpdate: undefined, autoSplashscreen: undefined, periodCheckDelay: undefined, localS3: undefined, localHost: undefined, localWebHost: undefined, localSupa: undefined, localSupaAnon: undefined, localApi: undefined, localApiFiles: undefined, allowModifyUrl: undefined, defaultChannel: undefined, appId: undefined, keepUrlPathAfterReload: undefined, disableJSLogging: undefined, shakeMenu: undefined, }, },};
export default config;notifyAppReady()setUpdateUrl(...)setStatsUrl(...)setChannelUrl(...)download(...)next(...)set(...)delete(...)list(...)reset(...)current()reload()setMultiDelay(...)cancelDelay()getLatest(...)setChannel(...)unsetChannel(...)getChannel()listChannels()setCustomId(...)getBuiltinVersion()getDeviceId()getPluginVersion()isAutoUpdateEnabled()removeAllListeners()addListener('download', ...)addListener('noNeedUpdate', ...)addListener('updateAvailable', ...)addListener('downloadComplete', ...)addListener('majorAvailable', ...)addListener('updateFailed', ...)addListener('downloadFailed', ...)addListener('appReloaded', ...)addListener('appReady', ...)isAutoUpdateAvailable()getNextBundle()setShakeMenu(...)isShakeMenuEnabled()- Interface
- Type Aliases
notifyAppReady()
Bagian berjudul ânotifyAppReady()ânotifyAppReady() => Promise<AppReadyResult>Beri tahu Capacitor Updater bahwa bundle saat ini berfungsi (rollback akan terjadi jika metode ini tidak dipanggil setiap kali aplikasi dijalankan) Secara default, metode ini harus dipanggil dalam 10 detik pertama setelah aplikasi dijalankan, jika tidak, rollback akan terjadi. Ubah perilaku ini dengan {@link appReadyTimeout}
Mengembalikan: Promise<AppReadyResult>
setUpdateUrl(âŚ)
Bagian berjudul âsetUpdateUrl(âŚ)âsetUpdateUrl(options: UpdateUrl) => Promise<void>Atur updateUrl untuk aplikasi, ini akan digunakan untuk mengecek pembaruan.
| Parameter | Tipe | Deskripsi |
|---|---|---|
options | UpdateUrl | berisi URL yang digunakan untuk mengecek pembaruan. |
Sejak: 5.4.0
setStatsUrl(âŚ)
Bagian berjudul âsetStatsUrl(âŚ)âsetStatsUrl(options: StatsUrl) => Promise<void>Atur statsUrl untuk aplikasi; ini akan digunakan untuk mengirim statistik. Mengosongkan string akan menonaktifkan pengumpulan statistik.
| Parameter | Tipe | Deskripsi |
|---|---|---|
options | StatsUrl | berisi URL yang digunakan untuk mengirim statistik. |
Sejak: 5.4.0
setChannelUrl(âŚ)
Bagian berjudul âsetChannelUrl(âŚ)âsetChannelUrl(options: ChannelUrl) => Promise<void>Atur channelUrl untuk aplikasi, ini akan digunakan untuk menentukan channel.
| Parameter | Tipe | Deskripsi |
|---|---|---|
options | ChannelUrl | berisi URL yang digunakan untuk mengatur channel. |
Sejak: 5.4.0
download(âŚ)
Bagian berjudul âdownload(âŚ)âdownload(options: DownloadOptions) => Promise<BundleInfo>Unduh bundle baru dari URL yang diberikan; harus berupa file zip, baik berisi file langsung atau berisi ID unik yang menampung semua file Anda
| Parameter | Tipe | Deskripsi |
|---|---|---|
options | DownloadOptions | {@link DownloadOptions} untuk mengunduh zip bundle baru. |
Mengembalikan: Promise<BundleInfo>
next(âŚ)
Bagian berjudul ânext(âŚ)ânext(options: BundleId) => Promise<BundleInfo>Atur bundle berikutnya yang akan digunakan saat aplikasi dimuat ulang.
| Parameter | Tipe | Deskripsi |
|---|---|---|
options | BundleId | Berisi ID Bundle berikutnya yang akan diatur saat aplikasi dijalankan kembali. {@link} BundleInfo.id} |
Mengembalikan: Promise<BundleInfo>
set(âŚ)
Bagian berjudul âset(âŚ)âset(options: BundleId) => Promise<void>Atur bundle saat ini dan langsung reload app.
| Parameter | Tipe | Deskripsi |
|---|---|---|
options | BundleId | Objek {@link} BundleId} yang berisi bundle id baru untuk diatur sebagai yang saat ini. |
delete(âŚ)
Bagian berjudul âdelete(âŚ)âdelete(options: BundleId) => Promise<void>Menghapus bundle yang ditentukan dari penyimpanan aplikasi native. Gunakan bersama {@link list} untuk mendapatkan daftar Bundle ID yang tersimpan.
| Parameter | Tipe | Deskripsi |
|---|---|---|
options | BundleId | Objek {@link} BundleId} objek yang berisi ID bundle yang akan dihapus (catatan: ini adalah bundle id, BUKAN nama versi) |
list(âŚ)
Bagian berjudul âlist(âŚ)âlist(options?: ListOptions | undefined) => Promise<BundleListResult>Dapatkan semua bundle yang diunduh secara lokal di aplikasi Anda
| Parameter | Tipe | Deskripsi |
|---|---|---|
options | ListOptions | {@link ListOptions} untuk menampilkan daftar bundle |
Mengembalikan: Promise<BundleListResult>
reset(âŚ)
Bagian berjudul âreset(âŚ)âreset(options?: ResetOptions | undefined) => Promise<void>Reset aplikasi ke builtin bundle (yang dikirim ke Apple App Store / Google Play Store) atau bundle terakhir yang berhasil dimuat.
| Parameter | Tipe | Deskripsi |
|---|---|---|
options | ResetOptions | Berisi {@link ResetOptions.toLastSuccessful}, true reset ke builtin bundle dan false akan direset ke bundle terakhir yang berhasil dimuat. |
current()
Bagian berjudul âcurrent()âcurrent() => Promise<CurrentBundleResult>Ambil bundle saat ini, jika tidak ada yang di-set maka akan mengembalikan builtin. currentNative adalah bundle asli yang terinstal di perangkat
Mengembalikan: Promise<CurrentBundleResult>
reload()
Bagian berjudul âreload()âreload() => Promise<void>Muat ulang tampilan
setMultiDelay(âŚ)
Bagian berjudul âsetMultiDelay(âŚ)âsetMultiDelay(options: MultiDelayConditions) => Promise<void>Mengatur array {@link} DelayCondition} yang berisi kondisi yang akan digunakan Plugin untuk menunda update.
Setelah semua kondisi terpenuhi, proses update akan berjalan kembali seperti biasa, sehingga update akan terinstal setelah aplikasi masuk ke background atau di-kill.
Untuk tipe date , nilainya harus berupa string tanggal iso8601.
Untuk tipe background , nilainya harus berupa angka dalam milidetik.
Untuk tipe nativeVersion , nilainya harus berupa nomor versi.
Untuk tipe kill , nilainya tidak digunakan.
Fungsi ini memiliki perilaku yang tidak konsisten di mana opsi kill akan memicu update setelah kill pertama dan tidak setelah backgrounding berikutnya seperti opsi lain. Ini akan diperbaiki pada rilis mayor mendatang.
| Parameter | Tipe | Deskripsi |
|---|---|---|
options | MultiDelayConditions | Berisi array {@link} MultiDelayConditions} berisi kondisi untuk mengatur |
Sejak: 4.3.0
cancelDelay()
Bagian berjudul âcancelDelay()âcancelDelay() => Promise<void>Membatalkan {@link} DelayCondition} agar update segera diproses.
Sejak: 4.0.0
getLatest(âŚ)
Bagian berjudul âgetLatest(âŚ)âgetLatest(options?: GetLatestOptions | undefined) => Promise<LatestVersion>Ambil bundle terbaru yang tersedia dari URL update
| Parameter | Tipe |
|---|---|
options | GetLatestOptions |
Mengembalikan: Promise<LatestVersion>
Sejak: 4.0.0
setChannel(âŚ)
Bagian berjudul âsetChannel(âŚ)âsetChannel(options: SetChannelOptions) => Promise<ChannelRes>Mengatur local channel yang dikelola plugin untuk perangkat ini. Channel harus allow_device_self_set diaktifkan agar fitur ini berfungsi.
setChannel() memvalidasi channel ke backend, lalu menyimpan channel yang dipilih secara lokal di perangkat. Ini tidak membuat atau memperbarui backend Device Override, sehingga perangkat tidak akan muncul sebagai overridden di dashboard Capgo. Hanya assignment yang dibuat dari dashboard atau Public API yang muncul di UI Device Override.
Catatan penting:
- Jangan gunakan metode ini untuk mengatur channel saat boot. Gunakan
defaultChanneldi dalam config Capacitor Anda sebagai gantinya. - Metode ini ditujukan untuk digunakan setelah app siap dan user telah berinteraksi (misalnya, mendaftar ke program beta).
- Public channel tidak bisa di-assign sendiri. Jika sebuah channel ditandai sebagai
public, memanggilsetChannel()akan mengembalikan error. Untuk menggunakan public channel, panggilunsetChannel()sebagai gantinya - perangkat akan otomatis fallback ke public channel yang sesuai. - Gunakan
listChannels()untuk mengetahui channel mana saja yang tersedia dan apakah channel tersebut mengizinkan self-assignment.
| Parameter | Tipe | Deskripsi |
|---|---|---|
options | SetChannelOptions | Apakah {@link} SetChannelOptions} channel digunakan untuk mengatur |
Mengembalikan: Promise<ChannelRes>
Sejak: 4.7.0
unsetChannel(âŚ)
Bagian berjudul âunsetChannel(âŚ)âunsetChannel(options: UnsetChannelOptions) => Promise<void>Menghapus local channel yang dikelola plugin untuk perangkat ini. Ini hanya menghapus channel yang disimpan secara lokal oleh setChannel(); ini tidak menghapus record Dashboard atau Public API Device Override.
Setelah memanggil method ini, aturan precedence channel normal berlaku: Dashboard atau Public API Device Override yang sudah ada tetap diprioritaskan; jika tidak, device akan kembali ke public/default channel yang sesuai dengan kondisinya (platform, tipe device, tipe build).
Ini berguna saat:
- Anda ingin mengembalikan device ke track update default
- Anda ingin menggunakan public channel (karena public channel tidak bisa di-assign sendiri via
setChannel())
| Parameter | Tipe |
|---|---|
options | UnsetChannelOptions |
Sejak: 4.7.0
getChannel()
Bagian berjudul âgetChannel()âgetChannel() => Promise<GetChannelRes>Dapatkan channel untuk device ini
Mengembalikan: Promise<GetChannelRes>
Sejak: 4.8.0
listChannels()
Bagian berjudul âlistChannels()âlistChannels() => Promise<ListChannelsResult>Menampilkan semua channel yang tersedia untuk perangkat ini. Mengembalikan channel yang kompatibel dengan environment perangkat saat ini (platform, emulator/perangkat asli, build dev/prod) dan bersifat publik atau mengizinkan self-assignment.
Setiap channel dalam hasil mencakup:
public: Jikatrue, ini adalah channel default. Anda tidak dapat melakukan self-assign menggunakansetChannel(). Sebagai gantinya, jika Anda menghapus assignment channel menggunakanunsetChannel(), perangkat akan otomatis menerima update dari channel publik ini.allow_self_set: Jikatrue, ini adalah channel yang bisa di-assign sendiri. Anda bisa menetapkan perangkat ke channel ini secara eksplisit menggunakansetChannel().
Mengembalikan: Promise<ListChannelsResult>
Sejak: 7.5.0
setCustomId(âŚ)
Bagian berjudul âsetCustomId(âŚ)âsetCustomId(options: SetCustomIdOptions) => Promise<void>Tetapkan custom ID untuk perangkat ini
| Parameter | Tipe | Deskripsi |
|---|---|---|
options | SetCustomIdOptions | adalah {@link SetCustomIdOptions} customId untuk diatur |
Sejak: 4.9.0
getBuiltinVersion()
Bagian berjudul âgetBuiltinVersion()âgetBuiltinVersion() => Promise<BuiltinVersion>Dapatkan versi aplikasi native atau versi builtin jika diatur di config
Mengembalikan: Promise<BuiltinVersion>
Sejak: 5.2.0
getDeviceId()
Bagian berjudul âgetDeviceId()âgetDeviceId() => Promise<DeviceId>Dapatkan ID unik yang dipakai untuk mengidentifikasi perangkat (dikirim ke server auto update)
Mengembalikan: Promise<DeviceId>
getPluginVersion()
Bagian berjudul âgetPluginVersion()âgetPluginVersion() => Promise<PluginVersion>Dapatkan versi plugin native Capacitor Updater (dikirim ke server auto update)
Mengembalikan: Promise<PluginVersion>
isAutoUpdateEnabled()
Bagian berjudul âisAutoUpdateEnabled()âisAutoUpdateEnabled() => Promise<AutoUpdateEnabled>Dapatkan status konfigurasi auto update.
Mengembalikan: Promise<AutoUpdateEnabled>
removeAllListeners()
Bagian berjudul âremoveAllListeners()âremoveAllListeners() => Promise<void>Hapus semua listener plugin ini.
Sejak: 1.0.0
addListener(âdownloadâ, âŚ)
Bagian berjudul âaddListener(âdownloadâ, âŚ)âaddListener(eventName: 'download', listenerFunc: (state: DownloadEvent) => void) => Promise<PluginListenerHandle>Pantau event download bundle di App. Terpicu saat download dimulai, selama proses download, dan saat selesai. Ini akan mengembalikan persentase download selama proses download berlangsung.
| Parameter | Tipe |
|---|---|
eventName | âdownloadâ |
listenerFunc | (state: DownloadEvent) => void |
Mengembalikan: Promise<PluginListenerHandle>
Sejak: 2.0.11
addListener(ânoNeedUpdateâ, âŚ)
Bagian berjudul âaddListener(ânoNeedUpdateâ, âŚ)âaddListener(eventName: 'noNeedUpdate', listenerFunc: (state: NoNeedEvent) => void) => Promise<PluginListenerHandle>Pantau event tidak perlu update, berguna saat Anda ingin melakukan force check setiap kali aplikasi dijalankan
| Parameter | Tipe |
|---|---|
eventName | ânoNeedUpdateâ |
listenerFunc | (state: NoNeedEvent) => void |
Mengembalikan: Promise<PluginListenerHandle>
Sejak: 4.0.0
addListener(âupdateAvailableâ, âŚ)
Bagian berjudul âaddListener(âupdateAvailableâ, âŚ)âaddListener(eventName: 'updateAvailable', listenerFunc: (state: UpdateAvailableEvent) => void) => Promise<PluginListenerHandle>Pantau event update yang tersedia, berguna jika Anda ingin melakukan pengecekan paksa setiap kali aplikasi dijalankan
| Parameter | Tipe |
|---|---|
eventName | âupdateAvailableâ |
listenerFunc | (state: UpdateAvailableEvent) => void |
Mengembalikan: Promise<PluginListenerHandle>
Sejak: 4.0.0
addListener(âdownloadCompleteâ, âŚ)
Bagian berjudul âaddListener(âdownloadCompleteâ, âŚ)âaddListener(eventName: 'downloadComplete', listenerFunc: (state: DownloadCompleteEvent) => void) => Promise<PluginListenerHandle>Dengarkan event downloadComplete.
| Parameter | Tipe |
|---|---|
eventName | âdownloadCompleteâ |
listenerFunc | (state: DownloadCompleteEvent) => void |
Mengembalikan: Promise<PluginListenerHandle>
Sejak: 4.0.0
addListener(âmajorAvailableâ, âŚ)
Bagian berjudul âaddListener(âmajorAvailableâ, âŚ)âaddListener(eventName: 'majorAvailable', listenerFunc: (state: MajorAvailableEvent) => void) => Promise<PluginListenerHandle>Pantau event Major update di App, beri tahu Anda jika major update diblokir dengan mengatur disableAutoUpdateBreaking
| Parameter | Tipe |
|---|---|
eventName | âmajorAvailableâ |
listenerFunc | (state: MajorAvailableEvent) => void |
Mengembalikan: Promise<PluginListenerHandle>
Sejak: 2.3.0
addListener(âupdateFailedâ, âŚ)
Bagian berjudul âaddListener(âupdateFailedâ, âŚ)âaddListener(eventName: 'updateFailed', listenerFunc: (state: UpdateFailedEvent) => void) => Promise<PluginListenerHandle>Pantau event update gagal di App, untuk memberi tahu Anda saat update gagal diinstal pada saat app dijalankan berikutnya
| Parameter | Tipe |
|---|---|
eventName | âupdateFailedâ |
listenerFunc | (state: UpdateFailedEvent) => void |
Mengembalikan: Promise<PluginListenerHandle>
Sejak: 2.3.0
addListener(âdownloadFailedâ, âŚ)
Bagian berjudul âaddListener(âdownloadFailedâ, âŚ)âaddListener(eventName: 'downloadFailed', listenerFunc: (state: DownloadFailedEvent) => void) => Promise<PluginListenerHandle>Pantau event download gagal di App, untuk memberi tahu Anda saat download bundle gagal
| Parameter | Tipe |
|---|---|
eventName | âdownloadFailedâ |
listenerFunc | (state: DownloadFailedEvent) => void |
Mengembalikan: Promise<PluginListenerHandle>
Sejak: 4.0.0
addListener(âappReloadedâ, âŚ)
Bagian berjudul âaddListener(âappReloadedâ, âŚ)âaddListener(eventName: 'appReloaded', listenerFunc: () => void) => Promise<PluginListenerHandle>Pantau event reload di App, beri tahu Anda saat reload telah terjadi
| Parameter | Tipe |
|---|---|
eventName | âappReloadedâ |
listenerFunc | () => void |
Mengembalikan: Promise<PluginListenerHandle>
Sejak: 4.3.0
addListener(âappReadyâ, âŚ)
Bagian berjudul âaddListener(âappReadyâ, âŚ)âaddListener(eventName: 'appReady', listenerFunc: (state: AppReadyEvent) => void) => Promise<PluginListenerHandle>Pantau event app ready di dalam App, untuk memberi tahu Anda saat app siap digunakan
| Parameter | Tipe |
|---|---|
eventName | âappReadyâ |
listenerFunc | (state: AppReadyEvent) => void |
Mengembalikan: Promise<PluginListenerHandle>
Sejak: 5.1.0
isAutoUpdateAvailable()
Bagian berjudul âisAutoUpdateAvailable()âisAutoUpdateAvailable() => Promise<AutoUpdateAvailable>Cek apakah auto update tersedia (tidak dinonaktifkan oleh serverUrl).
Mengembalikan: Promise<AutoUpdateAvailable>
getNextBundle()
Bagian berjudul âgetNextBundle()âgetNextBundle() => Promise<BundleInfo | null>Dapatkan bundle berikutnya yang akan dipakai saat aplikasi di-reload. Mengembalikan null jika tidak ada bundle berikutnya yang di-set.
Mengembalikan: Promise<BundleInfo | null>
Sejak: 6.8.0
setShakeMenu(âŚ)
Bagian berjudul âsetShakeMenu(âŚ)âsetShakeMenu(options: SetShakeMenuOptions) => Promise<void>Aktifkan atau nonaktifkan shake menu untuk keperluan debugging/testing
| Parameter | Tipe | Deskripsi |
|---|---|---|
options | SetShakeMenuOptions | Berisi boolean enabled untuk mengaktifkan atau menonaktifkan shake menu |
Sejak: 7.5.0
isShakeMenuEnabled()
Bagian berjudul âisShakeMenuEnabled()âisShakeMenuEnabled() => Promise<ShakeMenuEnabled>Dapatkan status shake menu saat ini
Mengembalikan: Promise<ShakeMenuEnabled>
Sejak: 7.5.0
Interface
Bagian berjudul âInterfacesâAppReadyResult
Bagian berjudul âAppReadyResultâ| Prop | Tipe |
|---|---|
bundle | BundleInfo |
BundleInfo
Bagian berjudul âBundleInfoâ| Prop | Tipe |
|---|---|
id | string |
version | string |
downloaded | string |
checksum | string |
status | BundleStatus |
UpdateUrl
Bagian berjudul âUpdateUrlâ| Prop | Tipe |
|---|---|
url | string |
StatsUrl
Bagian berjudul âStatsUrlâ| Prop | Tipe |
|---|---|
url | string |
ChannelUrl
Bagian berjudul âChannelUrlâ| Prop | Tipe |
|---|---|
url | string |
DownloadOptions
Bagian berjudul âDownloadOptionsâURL dan versi ini digunakan untuk download bundle dari server. Jika menggunakan backend, semua informasi akan diberikan oleh method getLatest. Jika tidak menggunakan backend, Anda perlu menyediakan URL dan versi bundle. SessionKey wajib diisi jika Anda mengenkripsi bundle dengan perintah CLI encrypt; Anda akan mendapatkannya sebagai hasil dari perintah tersebut.
| Prop | Tipe | Deskripsi | Default | Sejak |
|---|---|---|---|---|
url | string | URL file zip bundle (misal: dist.zip) yang akan diunduh. (Bisa URL apa saja. Misal: Amazon S3, tag GitHub, atau di mana pun Anda menghosting bundle.) | ||
version | string | Versi code/nama bundle/versi ini | ||
sessionKey | string | Session key untuk update, jika bundle dienkripsi dengan session key | undefined | 4.0.0 |
checksum | string | Checksum untuk update, harus dalam format sha256 dan dienkripsi dengan private key jika bundle dienkripsi | undefined | 4.0.0 |
manifest | ManifestEntry[] | Manifest untuk download multi-file Delta (manifest) | undefined | 6.1.0 |
ManifestEntry
Bagian berjudul âManifestEntryâ| Prop | Tipe |
|---|---|
file_name | string | null |
file_hash | string | null |
download_url | string | null |
BundleId
Bagian berjudul âBundleIdâ| Prop | Tipe |
|---|---|
id | string |
BundleListResult
Bagian berjudul âBundleListResultâ| Prop | Tipe |
|---|---|
bundles | BundleInfo[] |
ListOptions
Bagian berjudul âListOptionsâ| Prop | Tipe | Deskripsi | Default | Sejak |
|---|---|---|---|---|
raw | boolean | Apakah akan mengembalikan daftar bundle mentah atau manifest. Jika true, daftar akan mencoba membaca database internal alih-alih file di disk. | false | 6.14.0 |
ResetOptions
Bagian berjudul âResetOptionsâ| Prop | Tipe |
|---|---|
toLastSuccessful | boolean |
CurrentBundleResult
Bagian berjudul âCurrentBundleResultâ| Prop | Tipe |
|---|---|
bundle | BundleInfo |
native | string |
MultiDelayConditions
Bagian berjudul âMultiDelayConditionsâ| Prop | Tipe |
|---|---|
delayConditions | DelayCondition[] |
DelayCondition
Bagian berjudul âDelayConditionâ| Prop | Tipe | Deskripsi |
|---|---|---|
kind | DelayUntilNext | Atur delay conditions di setMultiDelay |
value | string |
LatestVersion
Bagian âLatestVersionâ| Prop | Tipe | Deskripsi | Sejak |
|---|---|---|---|
version | string | Hasil method getLatest | 4.0.0 |
checksum | string | 6 | |
major | boolean | ||
message | string | ||
sessionKey | string | ||
error | string | ||
old | string | ||
url | string | ||
manifest | ManifestEntry[] | 6.1 |
GetLatestOptions
Bagian âGetLatestOptionsâ| Prop | Tipe | Deskripsi | Default | Sejak |
|---|---|---|---|---|
channel | string | Channel untuk mendapatkan versi terbaru. Channel harus mengizinkan âself_assignâ agar ini berfungsi | undefined | 6.8.0 |
ChannelRes
Bagian berjudul âChannelResâ| Prop | Tipe | Deskripsi | Sejak |
|---|---|---|---|
status | string | Status saat ini dari set channel | 4.7.0 |
error | string | ||
message | string |
SetChannelOptions
Bagian berjudul âSetChannelOptionsâ| Prop | Tipe |
|---|---|
channel | string |
triggerAutoUpdate | boolean |
UnsetChannelOptions
Bagian berjudul âUnsetChannelOptionsâ| Prop | Tipe |
|---|---|
triggerAutoUpdate | boolean |
GetChannelRes
Bagian berjudul âGetChannelResâ| Prop | Tipe | Deskripsi | Sejak |
|---|---|---|---|
channel | string | Status terkini dari get channel | 4.8.0 |
error | string | ||
message | string | ||
status | string | ||
allowSet | boolean |
ListChannelsResult
Bagian berjudul âListChannelsResultâ| Prop | Tipe | Deskripsi | Sejak |
|---|---|---|---|
channels | ChannelInfo[] | Daftar channel yang tersedia | 7.5.0 |
ChannelInfo
Bagian berjudul âChannelInfoâ| Prop | Tipe | Deskripsi | Sejak |
|---|---|---|---|
id | number | ID channel numerik | 7.5.0 |
name | string | Nama channel | 7.5.0 |
public | boolean | Jika true, ini adalah channel default/fallback. Perangkat tidak bisa menetapkan dirinya sendiri ke public channel. Sebaliknya, saat perangkat menghapus channel override-nya (menggunakan unsetChannel()), perangkat akan otomatis menerima update dari public channel yang sesuai. | 7.5.0 |
allow_self_set | boolean | Jika true, perangkat dapat secara eksplisit menetapkan dirinya sendiri ke channel ini menggunakan setChannel(). Ini biasanya digunakan untuk beta testing, A/B testing, atau jalur update opt-in. | 7.5.0 |
Perintah channel menggunakan channel name, bukan numerik ini id.
SetCustomIdOptions
Bagian berjudul âSetCustomIdOptionsâ| Prop | Tipe |
|---|---|
customId | string |
BuiltinVersion
Bagian berjudul âBuiltinVersionâ| Prop | Tipe |
|---|---|
version | string |
DeviceId
Bagian berjudul âDeviceIdâ| Prop | Tipe |
|---|---|
deviceId | string |
PluginVersion
Bagian berjudul âPluginVersionâ| Prop | Tipe |
|---|---|
version | string |
AutoUpdateEnabled
Bagian berjudul âAutoUpdateEnabledâ| Prop | Tipe |
|---|---|
enabled | boolean |
PluginListenerHandle
Bagian berjudul âPluginListenerHandleâ| Prop | Tipe |
|---|---|
remove | () => Promise<void> |
DownloadEvent
Bagian berjudul âDownloadEventâ| Prop | Tipe | Deskripsi | Sejak |
|---|---|---|---|
percent | number | Status download saat ini, antara 0 dan 100. | 4.0.0 |
bundle | BundleInfo |
NoNeedEvent
Bagian berjudul âNoNeedEventâ| Prop | Tipe | Deskripsi | Sejak |
|---|---|---|---|
bundle | BundleInfo | Status download saat ini, antara 0 dan 100. | 4.0.0 |
UpdateAvailableEvent
Bagian berjudul âUpdateAvailableEventâ| Prop | Tipe | Deskripsi | Sejak |
|---|---|---|---|
bundle | BundleInfo | Status download saat ini, antara 0 dan 100. | 4.0.0 |
DownloadCompleteEvent
Bagian berjudul âDownloadCompleteEventâ| Prop | Tipe | Deskripsi | Sejak |
|---|---|---|---|
bundle | BundleInfo | Emit saat ada update baru yang tersedia. | 4.0.0 |
MajorAvailableEvent
Bagian berjudul âMajorAvailableEventâ| Prop | Tipe | Deskripsi | Sejak |
|---|---|---|---|
version | string | Emit saat ada bundle major baru yang tersedia. | 4.0.0 |
UpdateFailedEvent
Bagian berjudul âUpdateFailedEventâ| Prop | Tipe | Deskripsi | Sejak |
|---|---|---|---|
bundle | BundleInfo | Dipicu saat update gagal diinstal. | 4.0.0 |
DownloadFailedEvent
Bagian berjudul âDownloadFailedEventâ| Prop | Tipe | Deskripsi | Sejak |
|---|---|---|---|
version | string | Dipicu saat download gagal. | 4.0.0 |
AppReadyEvent
Bagian berjudul âAppReadyEventâ| Prop | Tipe | Deskripsi | Sejak |
|---|---|---|---|
bundle | BundleInfo | Dipicu saat aplikasi siap digunakan. | 5.2.0 |
status | string |
AutoUpdateAvailable
Bagian berjudul âAutoUpdateAvailableâ| Prop | Tipe |
|---|---|
available | boolean |
SetShakeMenuOptions
Bagian berjudul âSetShakeMenuOptionsâ| Prop | Tipe |
|---|---|
enabled | boolean |
ShakeMenuEnabled
Bagian berjudul âShakeMenuEnabledâ| Prop | Tipe |
|---|---|
enabled | boolean |
Type Aliases
Bagian berjudul âType AliasesâBundleStatus
Bagian berjudul âBundleStatusâpending: Bundle sedang menunggu untuk SET sebagai bundle berikutnya. downloading: Bundle sedang diunduh. success: Bundle telah diunduh dan siap untuk SET sebagai bundle berikutnya. error: Gagal mengunduh bundle.
âsuccessâ | âerrorâ | âpendingâ | âdownloadingâ
DelayUntilNext
Bagian berjudul âDelayUntilNextââbackgroundâ | âkillâ | ânativeVersionâ | âdateâ
Lanjutkan dari Functions dan settings
Bagian berjudul âLanjutkan dari Fungsi dan pengaturanâJika Anda menggunakan Fungsi dan pengaturan untuk merencanakan operasi dashboard dan API, hubungkan dengan Menggunakan @capgo/capacitor-updater untuk fitur native di bagian Menggunakan @capgo/capacitor-updater, Ringkasan API untuk detail implementasi di API Overview, Pendahuluan untuk detail implementasi di Introduction, Kunci API untuk detail implementasi di API Keys, dan Perangkat untuk detail implementasi di Devices.