Soyez informé que nous avons créé un fichier apk par ligne de commande à l'aide du SDK Android. Maintenant, depuis le télécharger sur Google Play Store, l'apk doit être signé. Comment allons-nous faire cela.
Tout d'abord, vous devez générer une clé de signature privée
keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000
Cette commande vous demandera un mot de passe pour votre magasin de clés et votre clé (ainsi que pour certains champs supplémentaires). N'oubliez pas de garder votre keystore file private à tout moment.
Ensuite, vous devez configurer gradle
my-release-key.keystore
que vous avez généré à l'étape 1 sous Android/app
Mettez à jour votre ~/.gradle/gradle.properties
sous Android/app
et ajoutez ce qui suit
MYAPP_RELEASE_STORE_FILE=my-release-key.keystore
MYAPP_RELEASE_KEY_ALIAS=my-key-alias
MYAPP_RELEASE_STORE_PASSWORD=<The password you choose earlier with the keytool>
MYAPP_RELEASE_KEY_PASSWORD=<The password you choose earlier with the keytool>
Enfin, vous devez mettre à jour votre Android/app/build.gradle
.
Android {
...
defaultConfig { ... }
signingConfigs {
release {
if (project.hasProperty('MYAPP_RELEASE_STORE_FILE')) {
storeFile file(MYAPP_RELEASE_STORE_FILE)
storePassword MYAPP_RELEASE_STORE_PASSWORD
keyAlias MYAPP_RELEASE_KEY_ALIAS
keyPassword MYAPP_RELEASE_KEY_PASSWORD
}
}
}
buildTypes {
release {
...
signingConfig signingConfigs.release
}
}
}
Maintenant, vous pouvez simplement générer une version signée via la ligne de commande en exécutant la commande suivante dans votre répertoire Android
./gradlew assembleRelease
L'apk généré peut ensuite être trouvé dans votre répertoire build/outputs/apk/release
.
Tout d'abord, vous avez besoin d'un magasin de clés pour commencer le processus. Vous allez signer votre apk avec ce magasin de clés et vous devez vous connecter avec le même magasin de clés pour les futures mises à jour. En savoir plus sur le fichier de clés ici: https://developer.Android.com/studio/publish/app-signing#generate-key
Une fois que vous avez généré le fichier de clés, vous devez utiliser l'utilitaire jarsigner
(disponible dans le dossier JDK).
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore votre-release-key.keystore Android-release-unsigned.apk alias -storepass mot de passe
La prochaine étape consiste à utiliser l'outil zipalign
(disponible dans le dossier du SDK Android) pour vérifier l'apk.
chemin d'accès à Android-sdk/build-tools/version/zipalign -v 4 Android-release-unsigned.apk Android-prod-release-signed.apk
La dernière étape consiste à vérifier avec l'outil apksigner
(disponible dans le dossier du SDK Android)
chemin d'accès à Android-sdk/build-tools/version/apksigner vérifier Android-prod-release-signed.apk
PS: Remplacer les chemins, fichiers et mots de passe par les valeurs réelles
Suivez ces commandes pour préparer le Play Store apk:
Étape 1: Créez un apk non signé:
./gradlew assembleRelease
Étape 2: Créez un apk signé:
jarsigner -keystore YOUR_KEYSTORE_PATH -storepass YOUR_KEYSTORE_PASSWORD app/build/outputs/apk/release/app-release-unsigned.apk YOUR_KEY_ALIAS
Étape 3: Zipaligning the apk:
your_Android-sdk_path/Android-sdk/build-tools/your_build_tools_version/zipalign -v 4 app/build/outputs/apk/release/app-release-unsigned.apk release.apk