Quando il launcher è configurato è possibile inviare l’applicazione agli store. Per farlo occorre cliccare i pulsanti Compila iOS e Compila Android e scegliere Compila e invia.
La console di Instant Developer Cloud contatterà a questo punto il proprio build server, ovvero una macchina Mac nel cloud che si occuperà di compilare il pacchetto (apk, ipa, aab).
Se l’operazione va a buon fine l’applicazione verrà inviata allo store. In caso contrario verrà mostrato l’errore che ha interrotto la build o l’invio allo store.
Correzione degli errori iOS #
In questo paragrafo vengono elencati una serie di errori comuni in cui è possibile incorrere durante le operazioni di build e invio di un’applicazione iOS. Per ognuna di queste verrà illustrata la strada migliore per affrontarle.
The mobile provisioning profile used is not entitled for Push notifications
Questo errore si può verificare se nell’applicazione vengono usate le notifiche ma la configurazione dell’App ID utilizzato non è corretta. L’App ID in questione è quello che è stato scelto dalla combo durante la creazione del provisioning profile e l’errore indica che l’App ID non ha i permessi necessari per poter usare le notifiche.
Per risolvere questo errore occorre collegarsi alla console developer di Apple, scegliere Identificatori e poi l’App ID corretto. A questo punto è possibile selezionare Push Notification nella lista delle capability dell’App ID e poi cliccare Configura per associare i certificati per le notifiche.
Dopo aver apportato le modifiche e salvato, occorre scaricare nuovamente il provisioning profile e sostituirlo nella sezione Config.xml del launcher.
The mobile provisioning profile used does not have a matching bundle ID
Questo errore indica che il bundle impostato nel campo Bundle della sezione Config.xml del launcher non corrisponde a quello impostato al momento della creazione dell’App ID. L’App ID coinvolto è quello usato per creare il provisioning profile impostato nel launcher, sempre nella sezione Config.xml.
Occorre collegarsi alla console developer di Apple e, nella sezione Identificatori, verificare il bundle e riportarlo correttamente nelle impostazioni del launcher.
You may be using two-factor authentication for your AppleID. You need to specify an app-specific password as Apple ID password
Questo errore indica che la password indicata nel campo Password Apple ID delle credenziali della console di Instant Developer Cloud non è la password specifica per le app. Occorre creare la password specifica per le app e impostarla nelle credenziali per gli App Store della console di Instant Developer Cloud.
Correzione degli errori Android #
In questo paragrafo vengono elencati una serie di errori comuni in cui è possibile incorrere durante le operazioni di build e invio di un’applicazione Android. Per ognuno di questi verrà illustrata la strada migliore per risolverli.
APK Version code is lower than the published one #
Questo errore indica che la versione corrente dell’applicazione è inferiore alla versione presente sullo store, anche se essa non è ancora stata pubblicata e si trova in uno dei canali di test. Per risolvere questo errore occorre aumentare il numero di versione presente nel campo Codice versione APK corrente nella sezione Config.xml del launcher.
The apk has permissions that require a privacy policy
Questo errore indica che nell’applicazione è stato incluso un plugin che richiede la presenza di una policy per la privacy, ad esempio camera, localizzazione, registrazione audio, ecc… In generale la privacy policy è richiesta dallo store in tutti i casi in cui l’applicazione può accedere o raccogliere informazioni personali dell’utente.
Per risolvere l’errore occorre fornire la privacy policy come indicato a questo link.
Al di là dei requisiti dello store, occorre sottolineare che, secondo quanto stabilito dal GDPR, è obbligatorio fornire informazioni sul trattamento dei dati.
No matching client found in google-services.json. You may have entered the wrong bundle (package name)
Questo errore si verifica nel caso in cui siano state attivate le notifiche in un’applicazione per Android, come descritto nel relativo paragrafo, ma il file google-service.json usato per impostare il campo google-services.json nella sezione Plugin del launcher non è stato creato usando lo stesso bundle impostato nella sezione Config.xml del launcher.
Occorre collegarsi alla console di Firebase, verificare qual è il bundle usato ed eventualmente modificare il campo Bundle nella sezione Config.xml del launcher oppure creare un nuovo google-service.json con il bundle corretto.
Pubblicazione #
Dopo l’invio agli store l’applicazione non è ancora in fase di distribuzione. Per fare in modo che venga distribuita occorre prima promuovere la build tramite le relative funzioni nella console degli store. Per quanto riguarda il Play Store, l’applicazione si trova nella sezione Test Chiusi e per renderla pubblica sullo store è possibile seguire questa guida di Google a partire dal passaggio 2.
Per quanto riguarda l’App Store, l’applicazione si trova nella sezione dedicata a Test Flight.
Per renderla pubblica sullo store è possibile seguire questa guida di Apple.
Debug del launcher dall’ambiente nativo #
In alcuni casi può rendersi necessario eseguire il debug del launcher nell’ambiente di programmazione nativo (Android Studio o XCode). In tal caso è possibile scaricare il progetto Cordova già pronto per essere aperto nell’ambiente di programmazione desiderato.
A tal fine è sufficiente entrare nella sezione App e Pacchetti del launcher, poi cliccare il pulsante Compila Android (o Compila iOS) ed infine scegliere Crea Progetto. Dopo aver eseguito la compilazione, il link per scaricare il progetto diventa disponibile nella riga della lista corrispondente al pacchetto appena creato.
Nel caso di launcher Android è disponibile anche una seconda modalità di debug, che non richiede la presenza di Android Studio e dell’intero framework Android nel proprio PC. Infatti è possibile compilare un pacchetto per Android attivando l’opzione Attiva debug. In questo caso, dopo la compilazione del pacchetto, è possibile scaricare nel proprio PC l’applicazione in formato APK con le informazioni di debug.
A questo punto è possibile installare manualmente l’APK nel proprio dispositivo Android e poi collegare il dispositivo al PC per eseguire il debug direttamente usando il browser Chrome. I passaggi sono i seguenti:
- Abilitare nel dispositivo le opzioni sviluppatore e, al loro interno, attivare debug USB.
- scrivere il seguente url nella barra degli indirizzi di Chrome: chrome://inspect.
- accettare la richiesta di autorizzazione che potrebbe comparire sul dispositivo.
- eseguire l’applicazione sul dispositivo.
- cliccare il link blu inspect mostrato nell’immagine seguente: si aprirà una nuova videata di Chrome dalla quale sarà possibile effettuare il debug del codice JavaScript dell’applicazione.