Cordova - Publier une application Android sur Google Play

1 1 1 1 1 1 1 1 1 1 Rating 3.75 (6 Votes)
Submit to DeliciousSubmit to DiggSubmit to FacebookSubmit to Google PlusSubmit to StumbleuponSubmit to TechnoratiSubmit to TwitterSubmit to LinkedIn

Vous venez de terminer le développement de votre application Cordova. Maintenant vous souhaitez que votre application soit disponible dans Google Play. Dans ce tutoriel, nous verrons quelques outils Google Play (icônes, badges, captures d'écran de vos applications...) ainsi que la signature de l'application et son déploiement sur Google Play. A la fin de cet article, nous créerons un script sh pour automatiser la release de l'application Cordova.

Google Play

Avant d'envoyer votre application, il faut créer un compte "Google developper". Ce compte coûte 25$ (pour information, le compte m'a couté 23,30€ + 1€ de frais soit 24,30€).

La création d'un compte "Google develloper" compte 4 étapes (https://support.google.com/googleplay/android-developer/answer/6112435?hl=fr) :

  • Étape 1 : ouvrez un compte de développeur Google Play : https://play.google.com/apps/publish/signup/
  • Étape 2 : acceptez le contrat relatif à la distribution (pour les développeurs)
  • Étape 3 : réglez les frais d'inscription
  • Étape 4 : remplissez les informations relatives au compte

Outils pour Google Play

Avant de publier votre application, il faut par exemple, créer des icônes, des badges, des captures d'écran de vos applications...). Si vous en avez d'autres, n'hésitez pas à les mettre en commentaire.

Icônes

Vous souhaitez réaliser des icônes.

Android Asset Studio - Launcher Icon Generator

Vous pouvez utiliser un générateur d'icônes comme Android Asset Studio - Launcher Icon Generator :

167 cordova publier une application android sur google play 01

Badges

Vous souhaitez réaliser des badges, Google vous met à disposition un générateur de badges.

Google Play Badge Generator

167 cordova publier une application android sur google play 02

Cliquez sur "Build my badge" du code HTML est généré :

<a href="https://play.google.com/store/apps/details?id=fr.erlem.blog">
  <img alt="Get it on Google Play"
       src="https://developer.android.com/images/brand/fr_generic_rgb_wo_60.png" />
</a>

Exemple de badge pour "Blog Erlem" :

Get it on Google Play

Capture d'écran

Vous souhaitez avoir des captures d'écran de bonnes qualités, Google vous met aussi à disposition un utilitaire.

Android Device Art

Pour avoir des screenshots, tu peux utiliser "Android Device Art" qui permet d’inclure ses screenshots dans un device adapté.

167 cordova publier une application android sur google play 03

Exemple de screenshots pour l'application "Blog Erlem" :

166 cordova creer une application android embarquant votre site web 01166 cordova creer une application android embarquant votre site web 02

166 cordova creer une application android embarquant votre site web 03

Publier son application

Rédaction de la fiche Google Play

Maintenant que vous êtes prêt à publier votre application, vous pouvez aller sur le lien : https://play.google.com/apps/publish/

Vous devez compléter les informations de votre application, et mettre des éléments graphiques comme par exemple :

  • Icône haute résolution Par défaut – Français – fr-FR 512 x 512 Fichier image PNG 32 bits (avec canal alpha)
  • Image Par défaut – Français – fr-FR 1 024 (l) x 500 (h) JPG ou PNG 24 bits (sans canal alpha)
  • Image promotionnelle Par défaut – Français – fr-FR 180 (l) x 120 (h) JPG ou PNG 24 bits (sans canal alpha)
  • ...

167 cordova publier une application android sur google play 04

Vérifier votre application

Bien vérifier votre fichier config.xml (exemple ci-dessous) :

<?xml version='1.0' encoding='utf-8'?>
<widget id="fr.erlem.blog" version="0.2.2" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
    <name>Blog Erlem</name>
    <description>
        Blog - Jean-François Erlem
    </description>
    <author email="contact_AT_erlem.fr" href="http://blog.erlem.fr">
        Jean-François Erlem
    </author>
    <content src="/index.html" />
    <access origin="*" />
</widget>

Bien respecter les numéros de version. Traditionnellement, la première version fonctionnelle d'un logiciel est notée 1.0. Certaines versions de logiciels sont notées 0.x ou 0.x.x, indiquant ainsi que le logiciel n'est pas encore abouti (version bêta). Lorsqu'un numéro de version est composé de trois nombres, ils sont respectivement appelés : majeur, mineur et micro (en anglais major, minor, micro). Les notions de « majeur » ou « mineur » n'ont pas le même sens pour les développeurs et les utilisateurs. Par exemple, une restructuration profonde de l'application mais sans nouvelles fonctionnalités, sera vue comme « majeure » par les développeurs, mais ne sera pas perçue par les utilisateurs. Afin que le changement de version reste compréhensible par ces derniers, le premier chiffre du numéro de version diffusée ne devrait changer que s'il y a modification des fonctionnalités.

N'oubliez pas de supprimer les logs et autres éléments de débug.

Générer un APK signé

Avant de publier votre apk, il doit être signé. Vous pouvez consulter la documentation officielle http://developer.android.com/tools/publishing/app-signing.html. De notre côté, nous allons signer notre apk manuellement (sans Android Studio).

Vous n'avez pas besoin Android Studio pour signer votre application . Vous pouvez signer votre application à partir de la ligne de commande en utilisant des outils standards du SDK Android et le JDK. Ci-dessous les étapes pour signer votre application :

  • Générer une clef privée en utilisant keytool  (cette opération n'est a effectué que la première fois, retenez bien le mot de passe et stockez bien en lieu sûr):
# Générer une clef privée (à faire qu'une seul fois, bien garder le mot de passe et le fichier)
keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000

Cet exemple vous invite à entrer un mot de passe pour le fichier,de fournir d'autres informations comme :

  • nom et prénom
  • nom de l’unité organisationnelle
  • nom de l’entreprise
  • ville de résidence
  • état
  • code pays sur deux lettres

Il génère ensuite le fichier de clés dans un fichier appelé my-release-key.keystore. Le fichier ketstore contient une clef unique, valable pour dix mille jours (environ 27 ans). L'alias est un nom que vous utiliserez plus tard, lors de la signature de votre application.

  • Compiler votre application en mode release pour obtenir un APK non signé.
# Construire la release
cordova build --release
  • Signez votre application en utilisant jarsigner :
# Signer l'application
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore CordovaApp-release-unsigned.apk alias_name

Cet exemple vous invite à entrer le mot de passe. Il signe le fichier APK. Notez que vous pouvez signer un APK plusieurs fois avec des clés différentes.

  • Vérifiez que votre APK est bien signé . Par exemple:
# Vérifier la signature de l'APK
jarsigner -verify -verbose -certs CordovaApp.apk
  •  Pour finir, optimiser le fichier APK en utilisant le package zipalign :
# Optimiser l'application 
zipalign -v 4 CordovaApp-release-unsigned.apk CordovaApp.apk

zipalign garantit que toutes les données non compressées commence par un alignement par rapport au début du fichier, ce qui réduit la quantité de mémoire vive consommée par une application.

Vous pouvez maintenant déployer votre APK dans le Google Play : https://play.google.com/apps/publish/

Une fois votre application déployée, elle peut mettre quelques heures avant d'apparaitre dans Google Play : https://play.google.com/store/apps/details?id=fr.erlem.blog

Réaliser le script de release de Cordova

Dans cette partie, nous allons créer un script permettant d'automatiser la release Cordova.

Créer le fichier cordova-build-release.sh à la racine du projet :

vi cordova-build-release.sh

Puis insérez le script ci-dessous :

#!/bin/bash
# Script permettant de releaser une application Cordova

# Supprimer le fichier CordovaApp.apk
rm CordovaApp.apk

# Construire la release
cordova build --release

# Aller dans le répertoire où est générer l'apk
cp platforms/android/ant-build/

# Signer l'application
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore CordovaApp-release-unsigned.apk alias_name

# Optimiser l'application 
zipalign -v 4 CordovaApp-release-unsigned.apk CordovaApp.apk

# Supprimer le fichier CordovaApp-release-unsigned.apk
rm CordovaApp-release-unsigned.apk

echo 'Vous pouvez publier "platforms/android/ant-build/CordovaApp.apk" sur Google Play'

N'oubliez pas de rendre le script exécutable :

chmod +x cordova-build-release.sh

Pour exécuter le script :

./cordova-build-release.sh

Conclusion

Dans cet article, nous avons appris à releaser et publier une application Cordova sur Google Play. Ce tutoriel est la suite des articles Cordova - Construire des applications multiplateformes et Cordova - Créer une application Android embarquant votre site Web. N'hésitez pas à télécharger mon application qui a permis de réaliser les 3 articles : https://play.google.com/store/apps/details?id=fr.erlem.blog

Autres articles

Submit to DeliciousSubmit to DiggSubmit to FacebookSubmit to Google PlusSubmit to StumbleuponSubmit to TechnoratiSubmit to TwitterSubmit to LinkedIn