Lompat ke konten

Tes Pembangunan Natively Tanpa Perbarui Hidup

Ketika menguji aplikasi biner native baru, pastikan aplikasi tersebut dimulai dari aset web yang dibundel dalam aplikasi tersebut—bukan dari pembaruan live yang telah diunduh sebelumnya. Gunakan salah satu atau kombinasi perlindungan di bawah ini.

Atur CapacitorUpdater.version dari versi yang digunakan untuk rilis native Anda, dan tingkatkan untuk setiap build native. Versi dasar native yang lebih baru membuat aplikasi biner yang terpasang berbeda dari bundle yang lebih tua dan, dengan pengaturan default resetWhenUpdate: truemenghapus bundle yang diunduh ketika aplikasi native yang lebih baru diinstal.

import type { CapacitorConfig } from '@capacitor/cli';
import pkg from './package.json';
const config: CapacitorConfig = {
plugins: {
CapacitorUpdater: {
// Keep this aligned with, and increase it for, every native build.
version: pkg.version,
autoUpdate: 'atBackground',
},
},
};
export default config;

Contohnya, sebuah biner yang dibangun dengan version: '1.4.1' memiliki dasar native yang lebih tinggi daripada bundle yang ada. Jangan mengulangi versi native ketika Anda perlu memverifikasi aset yang dibundel. 1.4.0 2. Blokir Perbaruan Emulator dan Pembangunan-Build di Konsole

Judul bagian “2. Blokir Perbaruan Emulator dan Pembangunan-Build di Konsole”

Buka aplikasi Anda di konsole __CAPGO_KEEP_0__, pergi ke

Open your app in the Capgo console, go to , pilih saluran yang digunakan oleh build, dan buka tabInformasi , matikan keduanya off both Biarkan pembangunan build dan Biarkan Emulator.

Capgo tab Informasi saluran menampilkan pengaturan Biarkan pembangunan build dan Biarkan Emulator
Pengaturan ini berada di tab Informasi saluran. Nonaktifkan kedua pengaturan yang dihiglight untuk menjaga build pembangunan dan emulator pada aset web yang dibundel.

Kebijakan saluran ini hanya menghalangi pengiriman update untuk jenis build yang dipilih. Perangkat fisik yang telah ditandatangani produksi masih dapat menerima update sesuai dengan pengaturan saluran lainnya.

3. Aktifkan Update Hidup Hanya di Build CI Asli

Judul bagian “3. Aktifkan Update Hidup Hanya di Build CI Asli”

Untuk tim yang ingin membuat build lokal, emulator, dan pengembang menjadi aman secara default, aktifkan update hidup melalui variabel lingkungan. Konfigurasi di bawah mengaktifkan pengaturan update hanya jika CAPGO_LIVE_UPDATES adalah tepatnya true:

import type { CapacitorConfig } from '@capacitor/cli';
import pkg from './package.json';
const liveUpdatesEnabled = process.env.CAPGO_LIVE_UPDATES === 'true';
const config: CapacitorConfig = {
appId: 'com.example.app',
appName: 'Example App',
plugins: {
CapacitorUpdater: {
// Bump package.json for every native build.
version: pkg.version,
// Local builds are off; native CI explicitly enables live updates.
autoUpdate: liveUpdatesEnabled ? 'atBackground' : false,
},
},
};
export default config;

Set variabel hanya di langkah CI yang sinkronisasi dan membangun aplikasi native:

- run: CAPGO_LIVE_UPDATES=true npx cap sync
- run: ./build-native-app.sh

Jalankan npx cap sync setelah mengatur variabel karena Capacitor menyalin konfigurasi ini ke proyek native selama sinkronisasi. Tanpa variabel, build lokal dan emulator tetap autoUpdate: false dan tidak memeriksa pembaruan hidup.

  1. Naikkan versi yang digunakan oleh CapacitorUpdater.version untuk biner native.
  2. Nonaktifkan Biarkan pembangunan build dan Biarkan Emulator pada saluran ketika menguji jenis build tersebut.
  3. Buat secara lokal tanpa CAPGO_LIVE_UPDATES.
  4. Tetapkan CAPGO_LIVE_UPDATES=true hanya sebelum npx cap sync di pekerjaan CI asli yang seharusnya menerima update live.