Lebih cepat ke konten

Endpoint Perbarui API

GitHub

Berikut adalah contoh code dalam JavaScript untuk mengirimkan pembaruan ke plugin

interface AppInfos {
version_name: string
version_build: string
version_os: string
custom_id?: string
is_prod?: boolean
is_emulator?: boolean
plugin_version: string
platform: string
app_id: string
device_id: string
}
export const handler: Handler = async (event) => {
const body = JSON.parse(event.body || '{}') as AppInfos
const {
platform,
app_id,
version_os,
device_id,
version_name,
version_build,
plugin_version,
} = body
console.log('update asked', platform,
app_id,
version_os,
device_id,
version_name,
version_build,
plugin_version)
if (version_name === '1.0.0') {
return {
version: '1.0.1',
url: 'https://apiurl.com/mybuild_101.zip',
checksum: 'sha256_checksum_of_bundle',
}
}
else if (version_name === '1.0.1') {
return {
version: '1.0.2',
url: 'https://apiurl.com/mybuild_102.zip',
checksum: 'sha256_checksum_of_bundle',
}
}
else {
return {
message: 'Error version not found'
version: '',
url: '',
}
}
}

Untuk bundel tidak terenkripsiUntuk

{
"version": "1.0.2",
"url": "https://apiurl.com/mybuild_102.zip",
"checksum": "sha256_checksum_of_bundle"
}

Untuk Bundle yang dienkripsi Anda juga perlu termasuk kunci sesi:

{
"version": "1.0.2",
"url": "https://apiurl.com/mybuild_102.zip",
"checksum": "encrypted_checksum_from_encrypt_command",
"session_key": "ivSessionKey_from_encrypt_command"
}

Dan jika tidak ada update atau kesalahan, tambahkan message Kunci dan secara opsional error:

{
"message": "Version not found",
"error": "The backend crashed",
"version": "1.0.2",
}
  • checksum: Hash SHA256 dari file zip bundle Anda untuk verifikasi integritas
  • session_key : Diperlukan hanya untuk bundle yang dienkripsi - ini adalah ivSessionKey : Diberikan oleh perintah enkripsi
  • version : Versi identifier di : Dalam format semver
  • url : URL HTTPS di mana bundle dapat diunduh

Untuk belajar cara membuat bundle yang kompatibel dan menghasilkan cek checksum, lihat dokumentasi Untuk bundle yang dienkripsi, lihat dokumentasi .

yang menjelaskan alur kerja enkripsi lengkap. : Diperlukan hanya untuk bundle yang dienkripsi - ini adalah : Diberikan oleh perintah enkripsi

Jika Anda menggunakan Pembaruan Endpoint API untuk merencanakan otomatisasi CI/CD, hubungkannya dengan Menggunakan @capgo/capacitor-updater untuk kemampuan asli di Menggunakan @capgo/capacitor-updater, Capgo CI/CD untuk alur kerja produk di Capgo CI/CD, Capgo Pembangunan Asli untuk alur kerja produk di Capgo Pembangunan Asli, Capgo Integrasi untuk alur kerja produk di Capgo Integrasi, dan Integrasi CI/CD context:Halaman/area: Capgo Builder / produk halaman build awan asli. Peran: Label UI pendek atau item navigasi.