Lompat ke Konten

Auto Update

GitHub

Dokumentasi ini akan menjelaskan cara menjalankan server auto-update Anda.

Pastikan bundle Anda disajikan melalui HTTPS, dan server memiliki header CORS yang tepat untuk memungkinkan aplikasi mengunduh update. https://myserver.com/app/updates/updates.json

Jika Anda tidak familiar dengan menyajikan sebuah bundle, kami merekomendasikan Anda mencoba Capgo Cloud atau melihat contoh di sini:

Tambahkan updateUrl ke dalam capacitor.config.json.

{
"plugins": {
"CapacitorUpdater": {
"updateUrl": "https://myserver.com/app/updates/updates.json",
}
}
}

Plugin akan melakukan panggilan POST ke API Anda setiap kali aplikasi dibuka, dengan tubuh ini:

interface AppInfos {
"platform": "ios" | "android" | "electron",
"device_id": "UUID_of_device_unique_by_install",
"app_id": "APPID_FROM_CAPACITOR_CONFIG",
"custom_id": "your_custom_id_set_on_runtime",
"plugin_version": "PLUGIN_VERSION",
"version_build": "VERSION_NUMBER_FROM_NATIVE_CODE",
"version_code": "VERSION_CODE_FROM_NATIVE_CODE",
"version_name": "LAST_DOWNLOADER_VERSION" | "builtin"
"version_os": "VERSION_OF_SYSTEM_OS",
"is_emulator": boolean,
"is_prod": boolean,
}

Server API harus menjawab, dalam format JSON, ke plugin pembarui capacitor. Dengan data ini jika pembaruan diperlukan:

{
"version": "1.2.3",
"url": "https://myserver.com/app/updates/my-new-app-2.0.0.zip",
"checksum": "sha256_checksum_of_bundle"
}

Pada mode pembaruan otomatis, server harus membandingkan versi dan mengembalikan yang tepat, jika kunci URL ada, plugin memulai proses download.

Jika Anda menambahkan kunci “message” dan “error”, versi tidak akan diset, dan pesan akan ditampilkan di log bukan.

version Kunci harus ada di semver format.

Arsip zip harus memiliki index.html sebagai file di root, atau hanya satu folder di root dengan index.html di dalamnya.

Anda dapat menggunakan perintah dari CLI untuk mengompres bundle Anda:

Buatlah bundle dengan file-file Anda untuk disajikan dari server Anda
npx @capgo/cli bundle zip --path [/path/to/my/bundle]

Penting: Anda harus menggunakan Capgo CLI untuk membuat file zip bundle Anda. Plugin Capgo memerlukan format dan struktur zip tertentu yang hanya dapat dipastikan ketika menggunakan alat resmi CLI. Utilitas zip standar mungkin menciptakan arsip yang tidak kompatibel.

Untuk menghitung ceksum untuk bundle Anda, gunakan perintah Capgo CLI zip dengan flag: --json Buat bundle dengan informasi ceksum

Salin ke clipboard
npx @capgo/cli bundle zip [appId] --json

Buatlah bundle dengan informasi ceksum

  • Buat file zip yang sesuai dengan format plugin Capgo
  • Generasi checksum SHA256 untuk verifikasi integritas
  • Tampilkan informasi bundle dalam format JSON

Contoh output:

{
"version": "1.2.3",
"checksum": "a1b2c3d4e5f6789...",
"size": 1234567
}

Gunakan checksum nilai dari output ini dalam respons API Anda untuk memastikan plugin dapat memverifikasi integritas bundle sebelum instalasi.

Lanjutkan dari Auto Update

Jika Anda menggunakan

Auto Update untuk merencanakan migrasi dan operasi bisnis, hubungkan dengan Jika Anda menggunakan Auto Update untuk merencanakan migrasi dan operasi bisnis, hubungkan dengan Menggunakan @capgo/capacitor-updater untuk kemampuan asli dalam Menggunakan @capgo/capacitor-updater Capgo Enterprise untuk alur kerja produk dalam Capgo Enterprise Alternatif Plugin Enterprise Ionic untuk alur kerja produk dalam Alternatif Plugin Enterprise Ionic Capgo Alternatif untuk alur kerja produk dalam Capgo Alternatif, dan Capgo Konsultasi untuk alur kerja produk dalam Capgo Konsultasi.