web-dev-qa-db-fra.com

Android APK signé par Studio ne s'installe pas

Je suis dans Android Studio et je signe un APK sous Build> Generate Signed APK et j'utilise l'assistant. Tout semble bien signer et un fichier .apk est généré.

Lorsque je copie ce fichier sur mon appareil (Nexus 7 ou Moto X), il ne s'installe pas. Je reçois un message "échec de l'installation".

Je ne peux pas du tout comprendre ce qui ne va pas. J'ai mis ce fichier .apk dans la console développeur de Google Play sous "alpha testing" et il a été accepté très bien (j'attends que le lien du testeur devienne actif pour essayer de télécharger/installer à partir de là).

Les instructions de l'assistant ici ( http://developer.Android.com/tools/publishing/app-signing.html#studio ) montrent dans la capture d'écran de l'étape finale un menu déroulant appelé "Build Tapez "sélectionné pour" libérer ". Je n'ai pas cela dans ma version de Android Studio. Il n'y a rien que je puisse trouver dans cet assistant qui me permette de spécifier une version "release".

Toute aide que n'importe qui peut me donner serait tellement appréciée. Merci!

18
James Miller

Vous devez être en mode release pour générer un APK signé. Dans le coin inférieur gauche de votre Android Studio devrait être une petite icône carrée. Cliquez dessus et un menu apparaîtra. Maintenant, choisissez Build Variants et vous obtiendrez un tableau avec deux colonnes: Module et version de build. Il doit y avoir un débogage écrit sous la version de build. Cliquez dessus et vous obtiendrez une liste déroulante. Cliquez maintenant sur la version et Gradle commencera à construire la version de la version. Une fois terminée, générez l'APK signé.

31
Bidhan A

mes 2 cents: avec Android Studio 2.3, vous pouvez signer une application de deux manières: signature de pot v1, signature apk complète v2. J'utilisais l'option v2 et cela a empêché l'application signée de s'installer sur mon Android. J'ai ensuite décoché l'option v2, vérifié la v1 et l'apk s'installe maintenant comme prévu.

26
edestrero

Tard dans le jeu, mais voici quelque chose de stupide qui a fonctionné pour moi:
J'ai dû désinstaller l'application pour tous les utilisateurs dans Paramètres> Applications> MyApp

Si vous venez de le désinstaller, il suffit parfois de le supprimer de votre compte et ne pas l'appareil, de sorte que vous auriez une incompatibilité de version ou de certificat lorsque vous essayez d'installer le nouvel APK.

J'espère que cela aide quelqu'un

7
Saik Caskey

Oui. Si vous avez deux options avant la génération signée apk (V1 et V2), vous devez utiliser la signature du pot V1 maintenant, car il n'y a pas de compatibilité descendante et tous les téléphones Android avec la version <7 n'accepteront pas cela La compatibilité descendante sera ajoutée dans la prochaine prévisualisation du développeur N. Voir: https://developer.Android.com/about/versions/nougat/Android-7.0.html#apk_signature_v2

6
Daniil Yakovlev