Langsung ke konten

自動アップデート

Dokumentasi ini akan menjelaskan cara menjalankan server pembaruan otomatis Anda

Menyajikan bundle Anda

Pastikan bundle Anda disajikan melalui HTTPS, dan server memiliki header CORS yang tepat untuk mengizinkan aplikasi mengunduh pembaruan contoh https://myservercom/app/updates/updatesjson

Jika Anda tidak familiar dengan menyajikan bundle, kami sarankan Anda mencoba Capgo Cloud atau lihat contoh di sini:

Konfigurasi

Tambahkan updateUrl ke capacitorconfigjson Anda

{
"plugins": {
"CapacitorUpdater": {
"updateUrl": "https://myservercom/app/updates/updatesjson",
}
}
}

API Pembaruan

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

interface AppInfos {
"platform": "ios" | "android",
"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_SYSYEM_OS",
"is_emulator": boolean,
"is_prod": boolean,
}

API server harus merespons, dalam JSON, ke plugin capacitor-updater dengan data ini jika pembaruan diperlukan:

{
"version": "123",
"url": "https://myservercom/app/updates/my-new-app-200zip"
}

Dalam mode Auto-update, server harus membandingkan versi dan mengembalikan yang benar, jika kunci URL ada, plugin memulai proses unduhan

Jika Anda menambahkan kunci “message” dan “error”, versi tidak akan diatur, dan pesan akan ditampilkan dalam log sebagai gantinya

Kunci version harus dalam format semver

Zip harus memiliki indexhtml sebagai file di root, atau hanya satu folder di root dengan indexhtml di dalamnya

Anda dapat menggunakan perintah CLI untuk mengzip bundle Anda:

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