2017-07-02 2 views
5

J'avais signé l'APK en utilisant les utlités keytool, jarsigner et zipalign.Le téléchargement de l'APK a échoué pour la version Alpha. Erreurs d'apksigner: Algorithme Digest et Signature Algorithm Qui n'est pas supporté sur les niveaux API [[16, 17]]

J'utilise les commandes suivantes:

keytool -genkey -v -keystore myAppTransporterKey.keystore -alias myTransporter -keyalg RSA -keysize 2048 -validity 10000 

plug-in rm cordova cordova-plugin-console

cordova construire --release androïde

jarsigner -verbose -keystore C:\Users\ali\Documents\transporterApp\myAppKey.keystore C:\Users\ali\Documents\transporterApp\platforms\android\build\outputs\apk\android-release-unsigned.apk myTransporter 


jarsigner -verify C:\Users\ali\Documents\transporterApp\platforms\android\build\outputs\apk\android-release-unsigned.apk 

Après l'exécution:

jarsigner -verify -verbose -certs C:\Users\ali\Documents\transporterApp\platforms\android\build\outputs\apk\android-release-unsigned.apk 

obtenir ce message: jar vérifié

Après l'exécution:

zipalign -v 4 C:\Users\ali\Documents\transporterApp\platforms\android\build\outputs\apk\android-release-unsigned.apk C:\Users\ali\Documents\transporterApp\platforms\android\build\outputs\apk\myTransporter-Final.apk 

obtenir le message: Vérification succesful

Après le téléchargement sur ALPAH dans Google Play console J'obtiens l'erreur suivante

Upload new APK to Alpha

Uploading

You have uploaded an APK with an invalid signature (read more about signing). Errors from apksigner: ERROR (Jar signer D2DTRANS.RSA): JAR signature META-INF/D2DTRANS.RSA uses digest algorithm 2.16.840.1.101.3.4.2.1 and Signature Algorithm 1.2.840.113549.1.1.1 Which is not supported on API levels [[16, 17]]

Répondre

9

Vous avez besoin de ces stepps:

1) jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore C: \ Utilisateurs \ ali \ Documents \ transporteurApp \ myAppKey.keystore C: \ Utilisateurs \ ali \ Documents \ transporteurApp \ plateformes \ android \ build \ sorties \ apk \ androïde-release-unsigned.apk myTransporter

2) jarsigner -verify C: \ Users \ ali \ Documents \ plates-formes transporterApp \ \ \ build androïde sorties \ \ apk \ androïde-release-unsigned.apk

3) zipalign -v 4 C: \ Utilisateurs \ ali \ Documents \ transporteurApp \ plates-formes \ android \ build \ sorties \ apk \ android-version-unsigned.apk C: \ Users \ ali \ Documents \ transporteurApp \ plates-formes \ android \ build \ outputs \ apk \ monTransporter-Final.apk

Espérons que cela vous aidera ^^

+0

Son woking ... Merci – Krishnaraj

+0

Vous, monsieur, sont une vie une saveur. – Raymond

+0

Oui, cela a fonctionné. thnx –

1

Vous avez besoin de ces étapes:

zipalign -v 4 C:\Users\ali\Documents\transporterApp\platforms\android\build\outputs\apk\android-release-unsigned.apk C:\Users\ali\Documents\transporterApp\platforms\android\build\outputs\apk\android-release-unsigned-aligned.apk 

apksigner sign --ks C:\Users\ali\Documents\transporterApp\myAppKey.keystore --ks-pass pass:[PASSWORD] --key-pass pass:[PASSWORD] --out C:\Users\ali\Documents\transporterApp\platforms\android\build\outputs\apk\android-release-singned.apk C:\Users\ali\Documents\transporterApp\platforms\android\build\outputs\apk\android-release-unsigned-aligned.apk 

Pour signer les applications utilisent les buildtools 24,0.3

https://developer.android.com/studio/releases/build-tools.html

+0

stackoverflow est une plate-forme destinée à être en anglais, donc les personnes ayant différentes langues natives peuvent communiquer entre elles. S'il vous plaît demander et répondre en anglais. Voir: https://stackoverflow.blog/2009/07/23/non-english-question-policy/ – stamanuel

0

Selon le official documentation, vous pouvez effectuer les étapes suivantes:

  1. Générez le fichier .apk
  2. données Aligner: zipalign -v -p 4 my-app-unsigned.apk my-app-unsigned-aligned.apk
  3. signe l'APK: apksigner sign --ks my-release-key.jks --out my-app-release.apk my-app-unsigned-aligned.apk

Vous devrez peut-être définir le type de keystore avec l'option --ks-type:

~/Android/Sdk/build-tools/26.0.2/apksigner sign --ks-type pkcs12 --ks ~/[…].p12 \ 
--out android-release-signed-aligned.apk android-release-unsigned-aligned.apk 
0

Ceci est fixé dans apksigner 0,8 qui a été publié dans SDK Android Construits Outils 26.0.2.

Si un problème persiste, veuillez nous en informer au Google issue tracker et le ré-ouvrir pour examen.