====== Déploiement Android sur une solution Cordova ====== ===== Etapes ===== - Tester l'application - Release - Erreurs et solutions ===== Tester l'application ===== Déployer l'application sur un device android physique. - Brancher à votre PC en USB - Autoriser le débuggage USB - Autoriser la liaison - Déverouiller le téléphone cordova run android --device ===== ===== ===== Release ===== Générer une release qui se base sur les paramètres du config.xml ''cordova build --release android'' Un fichier se terminant par "release-unsigned.apk" est créé dans le chemin suivant :'' ''''\platforms\android\build\outputs\apk'' \\ Maintenant nous devons signer et optimiser l'apk pour le store. **Etape keytool seulement pour le premier déploiement. Ensuite il faudra garder le fichier pour pouvoir mettre à jour l'application** Déplacez-vous jusqu'au fichier apk créé puis générer votre clé privée avec keytool ''keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000'' Si vous n'avez pas configuré votre path pour utiliser cette commande (not found) "C:\Program Files\Java\jre1.8.0_121\bin\keytool.exe" -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000 Pour signer l'APK, executez l'outil jarsigner (inclus jdk) avec le keystore et l'apk au même niveau. TODO "C:\Program Files\Java\jdk1.8.0_121\bin\jarsigner.exe" -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore interaction.keystore android-release-unsigned.apk interactioninterim Si vous ne retrouvez pas le keystore alias : ''keytool -list -keystore .keystore'' Le fichier devrait maintenant être signé. Nous avons plus qu'à utiliser ''zipalign ''pour optimiser l'apk. Zipalign peut être trouvé dans ''/path/to/Android/sdk/build-tools/VERSION/zipalign'' ''"C:\Android\sdk\build-tools\25.0.0\zipalign.exe" -v 4 android-release-unsigned.apk interactions.apk'' Un fichier interactions.apk devrait être généré. ===== Erreurs et solutions ===== **Erreur google services :** Supprimer le pugin firebase (ou firebasex ) : cordova plugin remove cordova-plugin-firebasex\\ **Erreur duplication de classes SQLite :** Supprimer le plugin sqlite evplus : cordova plugin remove cordova-sqlite-evplus-legacy-free\\ **Erreur withelist :** Dans le fichier plugins\cordova-plugin-whitelist\src\android\WhitelistPlugin.java modifier la classe omportée "Whitelist" par "AllowList", et tout ce qui se rapporte à cette classe Tuto précédemment réalisé chez Cmantika : [[https://docs.google.com/document/d/1faiPoCPI_zkEdyl8QhSsax5JWiJj5LbRes6KJrZjt8E/edit|https://docs.google.com/document/d/1faiPoCPI_zkEdyl8QhSsax5JWiJj5LbRes6KJrZjt8E/edit]]