Migration

App Center から Capgo への移行

このガイドでは、Microsoft CodePushの代替となるCapgo Live Updatesへの完全な移行を行います。

App Center から Capgo への移行

Riepilogo della Migrazione

  • Capgo è un servizio che aiuta i team di sviluppo a inviare app live alle app distribuite.
  • Le app Capacitor JS scritte in jQuery Mobile, Framework 7, Sencha, KendoUI, Ionic o anche la tua soluzione personalizzata possono essere migrate. Non è necessaria un’app Ionic esistente.
  • Colt offre servizi equivalenti per App Center Build (build di app Android/iOS). Per servizi di Test, Diagnostica e Analytics.
Nota

Se la tua app usa ancora Cordova, è necessario migrare a Capacitor prima di migrare a Capgo.

Creato dal team Ionic come successore spirituale di Cordova, Capacitor permette allo sviluppo di avvicinarsi agli strumenti e alle funzionalità native con l’obiettivo di fornire un’esperienza utente e prestazioni ancora migliori.

Fortunatamente, il processo di migrazione è facile e la maggior parte dei plugin Cordova sono retrocompatibili con Capacitor. Inizia la migrazione qui.

Informazioni su Capgo

Capgo gestisce l’aggiornamento delle app nel tempo. I team di sviluppo possono concentrarsi completamente sulle caratteristiche uniche della loro app e affidare il complicato processo di distribuzione delle app a Capgo.

Capgo colma il divario tra la distribuzione web e mobile.

Prerequisiti di Capgo

Come App Center, Capgo supporta app ospitate in repository Git su Azure DevOps, Bitbucket, GitHub e GitLab.

Installare Capgo CLI

nota

È necessario avere Node e NPM installati sul computer prima di procedere. Usa sempre la versione LTS corrente. Capgo non supporta versioni precedenti.

Creare i file package.json e di configurazione Capacitor

nota

Prima di iniziare, consiglio di apportare modifiche su un nuovo branch Git.

Poiché Capgo è stato creato per automatizzare le app Capacitor, richiede un file che la tua app potrebbe non avere. Prima, crea un file capacitor.config.json. Il modo più semplice per crearlo è eseguire nella root della tua app:

Terminal window
npm install @capacitor/core

Quindi, inizializza Capacitor usando il questionario CLI:

Terminal window
npx cap init

La CLI ti farà alcune domande, iniziando con il nome della tua app e l’ID del pacchetto che vorresti usare.

Infine, committa i nuovi file al tuo progetto:

git add .git commit -m "aggiunti package json e config capacitor" && git push

Migrare il Codice

Ora che hai i nuovi file richiesti da Capgo, puoi concentrarti sull’app stessa. Capgo si aspetta che l’intera app compilata sia all’interno di una directory chiamata dist.

Se il tuo codice compilato non si trova in una directory dist, modifica questo valore nel file di configurazione Capacitor.

Ecco come dovrebbe apparire la struttura della directory dell’app:

Struttura App

Configurazione Capgo

Con la tua app pronta per l’integrazione con Capgo, è il momento di registrarsi e ottenere la tua chiave API per caricare la tua prima versione! Inizia registrandoti per un account Capgo.

Una volta effettuato l’accesso a Capgo, vai alla pagina Account, quindi fai clic su API key, poi clicca sulla chiave ‘write’ per copiarla negli appunti.

Installare l’SDK Capgo

Da riga di comando, direttamente nella root della cartella della tua app Capacitor, esegui il seguente comando:

npm i @capgo/capacitor-updater && npx cap sync Per installare il plugin nella tua app Capacitor.

E poi aggiungi alla tua app questo codice come sostituzione di quello CodePush:

import { CapacitorUpdater } from '@capgo/capacitor-updater'
CapacitorUpdater.notifyAppReady()

Questo informerà il plugin nativo che l’installazione è riuscita.

Distribuire Aggiornamenti Live (Alternativa a CodePush)

La funzionalità Live Update funziona utilizzando l’SDK Capgo installato nella tua applicazione nativa per ascoltare una particolare Destinazione del Canale di Distribuzione. Quando una build Web viene assegnata a una Destinazione del Canale, quell’aggiornamento verrà distribuito ai dispositivi utente che eseguono binari configurati per ascoltare la Destinazione del Canale specificata.

Accedere a Capgo CLOUD

Prima, usa la apikey ‘all’ presente nel tuo account per accedere con la CLI:

Terminal window
npx @capgo/cli@latest login YOURKEY

Aggiungere la tua prima app

Iniziamo creando l’app in Capgo Cloud con la CLI.

npx @capgo/cli@latest app add

Questo comando utilizzerà tutte le variabili definite nel file di configurazione Capacitor per creare l’app.

Caricare il tuo primo bundle

Esegui il comando per compilare il tuo codice e inviarlo a Capgo con:

Terminal window
npx @capgo/cli@latest bundle upload --channel production

Per impostazione predefinita, il nome della versione sarà quello nel tuo file package.json.

Controlla in Capgo se la build è presente.

Puoi anche testarla con la mia app sandbox mobile.

Rendere il canale predefinito

Dopo aver inviato la tua app a Capgo, devi rendere il tuo canale default per permettere alle app di ricevere aggiornamenti da Capgo.

Terminal window
npx @capgo/cli@latest channel set production -s default

Configurare l’app per validare gli aggiornamenti

Aggiungi questa configurazione al tuo file JavaScript principale.

import { CapacitorUpdater } from '@capgo/capacitor-updater'
CapacitorUpdater.notifyAppReady()

Quindi esegui npm run build && npx cap copy per aggiornare la tua app.

Ricevere un Aggiornamento Live su un Dispositivo

Per far sì che la tua applicazione riceva un aggiornamento live da Deploy, dovrai eseguire l’app su un dispositivo o un emulatore. Il modo più semplice per farlo è semplicemente usare il seguente comando per avviare la tua app locale in un emulatore o un dispositivo collegato al tuo computer.

npx cap run [ios | android]

Apri l’app, mettila in background e riaprila, dovresti vedere nei log che l’app ha eseguito l’aggiornamento.

Congratulazioni! 🎉 Hai distribuito con successo il tuo primo Aggiornamento Live. Questo è solo l’inizio di ciò che puoi fare con gli Aggiornamenti Live. Per saperne di più, consulta la documentazione completa sugli Aggiornamenti Live.

Rimuovere le Dipendenze di App Center

Ora che abbiamo integrato i servizi di Capgo, dovresti rimuovere qualsiasi riferimento ad App Center. Oltre ad essere una best practice rimuovere codice/servizi inutilizzati, rimuovere l’SDK dovrebbe ridurre la dimensione delle tue app.

Prima, apri un terminale quindi disinstalla i plugin di App Center:

Terminal window
cordova plugin remove cordova-plugin-appcenter-analytics cordova-plugin-appcenter-crashes cordova-plugin-code-push

Successivamente, apri config.xml e rimuovi i seguenti valori preference. Appariranno simili a:

<preference name="APP_SECRET" value="0000-0000-0000-0000-000000000000" /><preference name="CodePushDeploymentKey" value="YOUR-ANDROID-DEPLOYMENT-KEY" /><preference name="CodePushPublicKey" value="YOUR-PUBLIC-KEY" />

Se stavi usando App Center Analytics nella tua app, rimuovi i seguenti elementi preferences: APPCENTER_ANALYTICS_ENABLE_IN_JS e APPCENTER_CRASHES_ALWAYS_SEND.

Rimuovi i seguenti elementi <preference name="APP_SECRET" value="0000-0000-0000-0000-000000000000" />:

<access origin="https://codepush.appcenter.ms" /><access origin="https://codepush.blob.core.windows.net" /><access origin="https://codepushupdates.azureedge.net" />

Rimuovi il riferimento a CodePush nel tag meta CSP nel file index.html (https://codepush.appcenter.ms):

<meta http-equiv="Content-Security-Policy" content="default-src https://codepush.appcenter.ms 'self' data: gap: https://ssl.gstatic.com 'unsafe-eval'; style-src 'self' 'unsafe-inline'; media-src *" />

Infine, all’interno della tua app, rimuovi qualsiasi riferimento nel codice ai servizi App Center, come codePush.sync();.

Prossimi Passi

Hai migrato da App Center a Capgo, utilizzando gli Aggiornamenti Live. Questo è solo l’inizio di ciò che puoi fare con Capgo. Esplora il resto del servizio che include Channel (ambienti multipli) e override. Integrazione Cloud CLI, usa Capgo all’interno della tua piattaforma CI/CD preferita (come GitHub Action, GitLab, Jenkins e altro).

Invio automatico degli aggiornamenti dell’app

Se il tuo codice è ospitato su GitHub, puoi configurare la build e il rilascio automatici in pochi passaggi aggiuntivi, grazie alle GitHub actions.

Ho fatto un secondo articolo per permetterti di farlo.

Crediti

Grazie mille a Ionic, questo articolo è basato su questo articolo riscritto con chat-gpt-3 e adattato.

CapacitorJSアプリのための即時更新

CapacitorJSアプリに即座に更新、修正、機能をプッシュし、アプリストアの遅延を回避します。Capgoでシームレスな統合、エンドツーエンドの暗号化、リアルタイムの更新を体験してください。

今すぐ始めよう

最新のニュース

Capgoは、真にプロフェッショナルなモバイルアプリを作成するために必要な最高のインサイトを提供します。