Automatizzare la distribuzione e il rilascio delle applicazioni per dispositivi mobili con servizi di recapito continuo

Gli sviluppatori scrivono il codice e lo controllano nel repository di codice, ma i commit verificati nel repository potrebbero non essere sempre coerenti. Quando più sviluppatori lavorano sullo stesso progetto, i problemi possono verificarsi con l'integrazione. I team potrebbero riscontrare situazioni in cui le cose non funzionano, i bug si accumulano e lo sviluppo del progetto viene ritardato. Gli sviluppatori devono attendere fino a quando l'intero codice software viene compilato e testato per verificare la presenza di errori, il che rende il processo lento e meno iterativo.

Con il recapito continuo, è possibile automatizzare la distribuzione e il rilascio delle applicazioni per dispositivi mobili. Non importa se si distribuisce l'applicazione a un gruppo di tester o dipendenti aziendali (per il test beta) o a un app store (per la produzione). Il recapito continuo rende le distribuzioni meno rischiose e incoraggia iterazioni veloci. È anche possibile rilasciare nuove modifiche ai clienti in modo continuo.

Distribuire i file binari dell'applicazione ai tester beta

Il test beta dell'applicazione per dispositivi mobili è uno dei passaggi critici durante il processo di sviluppo dell'applicazione. Consente di individuare tempestivamente bug e problemi nell'applicazione. Il feedback migliora la qualità dell'applicazione quando si è pronti per l'uso in produzione.

Usare i servizi seguenti per abilitare una pipeline di recapito continuo nelle app per dispositivi mobili.

Distribuzione di Visual Studio App Center

App Center Distribute è uno strumento che consente agli sviluppatori di rilasciare rapidamente le build nei dispositivi. Con un'esperienza completa del portale di installazione, App Center Distribute è una soluzione potente per la distribuzione dei tester di app beta. È anche un'alternativa pratica alla distribuzione tramite app store pubblici. Gli sviluppatori possono automatizzare ulteriormente il flusso di lavoro di distribuzione con le integrazioni di App Center Build e Public Application Store.

Funzionalità di distribuzione di Visual Studio App Center

  • Distribuire l'app ai tester beta e agli utenti e assicurarsi che tutti i tester siano nella versione più recente dell'applicazione.
  • Notificare ai tester nuove versioni senza tester che passano di nuovo attraverso il flusso di download.
  • Gestire i gruppi di distribuzione per versioni diverse dell'applicazione.
  • Distribuisci nei negozi:
  • Ottenere il supporto della piattaforma per iOS, Android, macOS, tvOS, Xamarin, React Native, Unity e Cordova.
  • Registrare automaticamente i dispositivi iOS nel profilo di provisioning.

Riferimenti alla distribuzione di Visual Studio App Center

Azure Pipelines

Azure Pipelines è un servizio di integrazione continua (CI) e recapito continuo (CD) completo che funziona con il provider Git preferito. Azure Pipelines può eseguire la distribuzione nella maggior parte dei principali servizi cloud, ad esempio i servizi di Azure. È possibile iniziare con il codice in GitHub, GitHub Enterprise Server, GitLab, Bitbucket Cloud o Azure Repos. È quindi possibile automatizzare la compilazione, il test e la distribuzione del codice in Microsoft Azure, Google Cloud Platform o Amazon Web Services (AWS).

Funzionalità di Azure Pipelines

  • Esperienza semplificata basata su attività per la configurazione di un server di integrazione continua: Configurare un server CI per applicazioni mobili native (Android, iOS e Windows) e multipiattaforma (Xamarin, Cordova e React Native).
  • Qualsiasi linguaggio, piattaforma e cloud: Compilare, testare e distribuire Node.js, Python, Java, PHP, Ruby, Go, C/C++, C#, Android e app iOS. Esecuzione in parallelo in Linux, macOS e Windows. Eseguire la distribuzione in provider di servizi cloud come Azure, AWS e Google Cloud Platform. Distribuire applicazioni per dispositivi mobili tramite canali beta e app store.
  • Supporto dei contenitori nativi: Creare nuovi contenitori con facilità ed eseguirne il push in qualsiasi registro. Distribuire contenitori in host indipendenti o Kubernetes.
  • Flussi di lavoro e funzionalità avanzati: Creare facilmente catene di compilazione e compilazioni multifase. Ottenere supporto per YAML, integrazione di test, controlli di versione, creazione di report e altro ancora.
  • Extensible: Usare una gamma di attività di compilazione, test e distribuzione create dalla community, che include centinaia di estensioni da Slack a SonarCloud. È anche possibile eseguire la distribuzione da altri sistemi CI, ad esempio Jenkins. Gli hook Web e le API REST possono essere utili per l'integrazione.
  • Compilazioni gratuite ospitate nel cloud: Queste build sono disponibili per i repository pubblici e privati.
  • Supporto per la distribuzione ad altri fornitori di servizi cloud: I fornitori includono AWS e Google Cloud Platform.

Riferimenti ad Azure Pipelines

Distribuire l'applicazione direttamente negli App Store

Dopo che l'applicazione è pronta per l'uso in produzione e si vuole che venga usata pubblicamente, deve essere inviata agli app store in cui può essere scaricata dai clienti. Esistono diversi modi per distribuire l'applicazione direttamente negli App Store.

Archivi di distribuzione di Visual Studio App Center

Con App Center Distribute è possibile pubblicare le applicazioni per dispositivi mobili direttamente negli App Store. Dopo che l'applicazione è pronta per essere scaricata dagli utenti, è possibile pubblicare i file binari dell'applicazione direttamente dal portale di Visual Studio App Center.

È possibile eseguire direttamente la distribuzione in:

Apple App Store

Nell'App Store sviluppato e gestito da Apple, gli utenti possono esplorare e scaricare applicazioni sviluppate per dispositivi iOS, MacOS, WatchOS e tvOS. Gli sviluppatori devono inviare le proprie app iOS al App Store Apple per l'uso pubblico.

Google Play

Google Play è l'app store ufficiale per il sistema operativo Android, in cui gli utenti possono esplorare e scaricare le applicazioni sviluppate per i dispositivi Android pubblicati tramite Google.

Intune

Microsoft Intune è un servizio basato sul cloud nello spazio di gestione della mobilità aziendale che consente alla forza lavoro di essere produttivi mantenendo protetti i dati aziendali. Con Intune è possibile:

  • Gestire i dispositivi mobili e i PC usati dalla forza lavoro per accedere ai dati aziendali.
  • Gestire le applicazioni per dispositivi mobili usate dalla forza lavoro.
  • Proteggere le informazioni aziendali controllando il modo in cui la forza lavoro accede e la condivide.
  • Assicurarsi che i dispositivi e le applicazioni siano conformi ai requisiti di sicurezza aziendali.

Distribuire gli aggiornamenti direttamente nei dispositivi degli utenti

CodePush

Con CodePush in App Center, Apache Cordova e React Native sviluppatori possono distribuire gli aggiornamenti delle applicazioni mobili direttamente nei dispositivi degli utenti. Funge da repository centrale in cui gli sviluppatori possono pubblicare determinati aggiornamenti, ad esempio JavaScript, HTML, CSS e modifiche alle immagini. Le applicazioni possono quindi eseguire query per gli aggiornamenti dal repository usando gli SDK client forniti. In questo modo, è possibile avere un modello di engagement più deterministico e diretto con gli utenti durante la risoluzione dei bug o l'aggiunta di piccole funzionalità. Non è necessario ricompilare un file binario o ridistribuirlo tramite qualsiasi app store pubblico.

Funzionalità principali di CodePush

  • Cordova e React Native sviluppatori possono distribuire gli aggiornamenti delle applicazioni mobili direttamente nei dispositivi degli utenti senza rilasciarli in un negozio.
  • Utile per correggere i bug o aggiungere e rimuovere funzionalità di piccole dimensioni che non richiedono di ricompilare il file binario e ridistribuirlo tramite i rispettivi archivi.

Riferimenti codePush