Salta al contenuto principale
Migrazione

Migrare da App Center a Capgo

In questa guida vedremo la migrazione completa a Capgo Live Updates, un'alternativa a Microsoft CodePush.

Illustrazione del blog: migrazione da App Center a Capgo Capgo

Riepilogo migrazione

  • Capgo è un servizio che aiuta i team di sviluppo a inviare Live Update alle app già distribuite.
  • Anche le app Capacitor JS scritte in jQuery Mobile, Framework 7, Sencha, KendoUI, Ionic o la tua soluzione custom possono essere migrate. Non è necessaria un'app Ionic esistente..
  • Colt offre servizi equivalenti per App Center Build (build di app Android/iOS). Per i servizi Test, Diagnostics e Analytics.
Nota

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

Creato dal team di Ionic come successore spirituale di Cordova, Capacitor permette di sviluppare più vicino ai tool e alle capacità native, con l'obiettivo di offrire un'esperienza utente e performance ancora migliori.

Fortunatamente, il processo di migrazione è semplice e la maggior parte dei plugin Cordova è retrocompatibile con Capacitor. Inizia la migrazione qui.

Su Capgo

Capgo gestisce l'aggiornamento delle app nel tempo. I team di sviluppo possono concentrarsi totalmente sulle feature uniche della propria app e delegare il complesso processo di delivery a Capgo.

Capgo colma il divario tra distribuzione web e mobile.

Prerequisiti Capgo

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

Installa Capgo CLI

nota

Assicurati di avere Node e NPM installati sul tuo computer prima di procedere. Usa sempre la versione LTS attuale Capgo non supporta versioni precedenti.

Crea package.json e i file di configurazione Capacitor

nota

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

Da Capgo è stato creato per automatizzare le app capacitor, ma richiede un file che la tua app potrebbe non avere. Per prima cosa, crea un capacitor.config.json file. Il modo più semplice per crearlo è eseguire questo comando nella root della tua app:

npm install @capacitor/core

Poi, inizializza Capacitor seguendo il questionario CLI:

npx cap init

Il CLI ti porrà alcune domande, partendo dal nome della tua app e dal package ID che desideri utilizzare.

Infine, fai il commit dei nuovi file nel tuo progetto:

git add .git commit -m "added package json and capacitor config" && git push

Migra il Code

Ora che hai i nuovi file richiesti Capgo file al loro posto, possiamo concentrarci sull'app vera e propria. Capgo si aspetta che l'intera app compilata sia all'interno di una directory chiamata dist.

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

Ecco come dovrebbe apparire la struttura delle directory dell'app:

Struttura dell'app

Configurazione Capgo

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

Una volta effettuato l'accesso a Capgo, vai alla pagina Account, clicca sulla chiave API e poi clicca sulla chiave 'write' per copiarla negli appunti.

Installa Capgo SDK

Da una 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 code come alternativa a CodePush:

import { CapacitorUpdater } from '@capgo/capacitor-updater'

CapacitorUpdater.notifyAppReady()

Questo comunicherà al plugin nativo che l'installazione è riuscita.

Deploy di Live Update (Alternativa a CodePush)

La funzione Live Update funziona utilizzando il Capgo SDK nella tua applicazione nativa per ascoltare una specifica Deploy Channel Destination. Quando un build Web viene assegnato a una Channel Destination, quell'update verrà distribuito ai dispositivi degli utenti che eseguono i binari configurati per ascoltare la Channel Destination specificata.

Accedi a Capgo CLOUD

Per prima cosa, usa l' all apikey presente nel tuo account per accedere con CLI:

npx @capgo/cli@latest login YOURKEY

Aggiungi la tua prima app

Let’s get started by first creating the app in Capgo Cloud with the CLI.

npx @capgo/cli@latest app add

Questo comando userà tutte le variabili definite nel file di config di Capacitor per creare l'app.

Carica il tuo primo bundle

Esegui il comando per buildare la tua code e inviala a Capgo con:

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

Di default, il nome della versione sarà quello presente nel tuo package.json file.

Controlla Capgo se la build è presente.

Puoi anche testarla con la mia app sandbox mobile.

Imposta il canale come default

Dopo aver inviato la tua app a Capgo, devi creare il tuo channel default per permettere alle app di ricevere gli update da Capgo.

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

Configura l'app per validare gli update

Aggiungi questa configurazione al tuo file JavaScript principale.

import { CapacitorUpdater } from '@capgo/capacitor-updater'

CapacitorUpdater.notifyAppReady()

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

Ricevi un Live Update su un device

Per ricevere un live update da Deploy, devi avviare l'app su un dispositivo o un emulatore. Il modo più semplice è usare questo comando per lanciare la tua app locale su un emulatore o su un dispositivo collegato al computer.

npx cap run [ios | android]

Apri l'app, mettila in background e riaprila: nei log dovresti vedere che l'app ha eseguito l'update.

Complimenti! 🎉 Hai deployato con successo il tuo primo Live Update. Questo è solo l'inizio di quello che puoi fare con Live Updates. Per saperne di più, consulta la documentazione di Live Updates.

Rimuovi le dipendenze da App Center

Ora che abbiamo integrato i servizi di Capgo, dovresti rimuovere ogni riferimento ad App Center. Oltre a essere una best practice eliminare i code non utilizzati, rimuovere SDK dovrebbe ridurre le dimensioni delle tue app.

Per prima cosa, apri il terminale e disinstalla i plugin di App Center:

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

Next, open config.xml e rimuovi i seguenti preference valori. Saranno 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 preferences elementi: APPCENTER_ANALYTICS_ENABLE_IN_JS e APPCENTER_CRASHES_ALWAYS_SEND.

Rimuovi i seguenti <access /> elementi:

    <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 nella CSP meta tag nel index.html file (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 ogni riferimento code ai servizi di App Center, come codePush.sync();.

Prossimi passi

Sei passato da App Center a Capgo, utilizzando i Live Updates. Questo è solo l'inizio di ciò che puoi fare con Capgo. Esplora il resto del servizio, che include Channel (multi-ambiente) e override. Per l'integrazione con CLI Cloud, usa Capgo all'interno della tua piattaforma CI/CD preferita (come GitHub Action, GitLab, Jenkins e altro).

Invia l'update dell'app automaticamente

Se il tuo code è ospitato su GitHub, puoi configurare build e release automatiche in pochi passaggi, grazie alle action di GitHub.

Ho scritto un secondo articolo per spiegarti come fare.

Crediti

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

Continua con: Migrazione da App Center a Capgo

Se stai usando Migrare da App Center a Capgo per pianificare la migrazione e le operazioni enterprise, collegalo a Capgo Enterprise per il workflow del prodotto in Capgo Enterprise, Alternative ai plugin Ionic Enterprise per il workflow del prodotto nelle alternative ai plugin Ionic Enterprise, Alternative a Capgo per il workflow del prodotto in Capgo Alternatives, Consulenza Capgo per il workflow di prodotto in Capgo Consulting, e Supporto Premium Capgo per il workflow di prodotto in Capgo Premium Support.

Live updates per le app Capacitor

Quando un bug nel web-layer è live, rilascia la fix tramite Capgo invece di aspettare giorni l'approvazione degli store. Gli utenti ricevono l'update in background, mentre le modifiche native restano nel normale processo di review.

Ultimi articoli dal blog

Capgo ti offre gli insight migliori che ti servono per creare un'app mobile davvero professionale.