web-dev-qa-db-fra.com

Impossible d'installer manuellement un apk signé sur le périphérique, erreur "Application non installée"

J'aimerais publier mon application sur GooglePlay, mais je voudrais d'abord effectuer un dernier test avec l'apk signé pour m'assurer que toutes les clés d'API utilisées fonctionnent correctement avec la version (GMaps, Facebook, etc.).

Donc, je viens de faire une version signée de mon application avec notre touche de version et quand j'essaye d'installer l'application sur le périphérique j'ai une erreur:

 enter image description here

J'ai essayé de copier l'apk sur l'appareil et l'installer avec une application d'installation apk.

Chose étrange, c’est quand je fais le même processus avec la clé de signature de débogage, tout va bien, je peux installer et exécuter l’application.

Voici les étapes de la procédure:

Je sélectionne la touche release, tapez mot de passe.

 Here are the steps of the procedure:

Je fais select release build type au lieu de déboguer

 I do select release build type instead of debugging

Juste au cas où j’ai aussi défini dans le fichier gradle les clés de signature mais je dois admettre que je ne sais pas si c’est nécessaire.

 Just in case i also defined in the gradle file the signing keys but I must admit i dont know is it necessary.

J'ai essayé comme 7 sept fois maintenant, donc je suppose que ce problème est pas seulement un mot de passe mal orthographié, aussi je peux le faire fonctionner avec la clé de signature de débogage Android standard.

S'il vous plait aidez si vous le pouvez.

72
Adam Varhegyi

Vous utilisez peut-être le périphérique Android 5.0 ou supérieur. 

Allez simplement dans Paramètres -> Applications -> Cliquez sur votre application. ---> Dans la page Informations sur l'application du menu de la barre d'actions, une option intitulée "Désinstaller pour tous les utilisateurs" s'affiche. Votre application sera complètement désinstallée et vous pouvez maintenant essayer d'installer la nouvelle version sans problème. J'espère que ceci vous aidera

Vérifiez ma solution de lien ci-dessous. 

Lien 1

J'espère que cela vous aidera.

61
Ragu Swaminathan

Pour les utilisateurs actuels de Updated Android Studio 2.3, cette réponse s'adresse à vous, car peu de gens utilisent Eclipse de nos jours pour le développement sur Android, car le studio Android présente des progrès considérables.

Alors, suivez cette méthode pour créer votre fichier Signed apk.

  1. Build> Générer Signed apk.
  2. Créez Keystore path.
  3. Mettez Password, alias, key password.
  4. Build type sélectionnez en conséquence (par exemple, pour publier dans le magasin, utilisez release).
  5. Signature Version cochez les cases V1 et V2.
  6. Finsih.
  7. Allez à partir de Explorer où vous avez sélectionné l’apk à stocker et votre nom de fichier .apk sera remplacé par app-release.apk.
51
Crime_Master_GoGo

en sélectionnant Signature Version v1 et v2, le problème a été résolu pour moi .... essayez-le enter image description here

38
Shubham Soni

"Application non installée" s'affiche lorsqu'une application contenant le même package est déjà installée sur le même appareil. Supprimez simplement votre première application que vous utilisiez à des fins de test avant de la convertir en apk signé. Cela fonctionnera. à votre santé!

13
Tara

Sélectionnez à la fois Signature Version v1 et v2 pour résoudre le problème.

 enter image description here

schéma v1

Un fichier JAR peut être signé à l’aide de l’outil jarsigner de la ligne de commande ou de directement via l'API Java.security. Chaque entrée de fichier, y compris Les fichiers non liés à la signature dans le répertoire META-INF seront signés si le fichier JAR est signé par l’outil jarsigner. Pour chaque entrée de fichier signé dans le fichier JAR signé, une entrée de manifeste individuelle est créée pour cela tant qu'il n'existe pas déjà dans le manifeste

Schéma V2

les signatures v1 ne protègent pas certaines parties de l'APK, telles que Zip métadonnées. Le vérificateur APK doit traiter un grand nombre de structures de données non approuvées (non encore vérifiées ), Puis ignorer les données non couvertes par le signatures. Cela offre une surface d'attaque importante. De plus, l'APK Le vérificateur doit décompresser toutes les entrées compressées, en prenant plus de temps et de la mémoire. Pour résoudre ces problèmes, Android 7.0 introduisait APK Schéma de signature v2

Par défaut, Android Studio 2.2 et Android Plugin pour Gradle 2.2 signent votre application à l'aide du schéma de signature APK v2 et du schéma de signature traditionnel, qui utilise la signature JAR.

Il est recommandé d'utiliser APK Signature Scheme v2 mais n'est pas obligatoire . veuillez consulter les détails

9
Lineesh K Mohan

La même chose m'est arrivée, tant que j'ai généré mon apk depuis Build> Build APK. Je pouvais installer et désinstaller l’APK autant de fois qu’ils étaient sans aucun problème, mais si j’ai généré le fichier Build> Generate Signed APK, lorsque j’ai passé l’apk au téléphone et que j’ai essayé de l’installer, il ne m’a permis occasion, le même qui est sorti le message suivant: 

 enter image description here

jusque-là, tout allait bien si je sélectionnais "INSTALLER DE TOUTE MANIÈRE", mais ce qui se passait si je désinstallais l'application et si je voulais le réinstaller (un scénario possible), voici ce qui s'est passé:

 enter image description here

j'ai donc résolu le problème en désactivant la protection de la lecture, ce que j'ai réalisé (dans Google Play)> Menu> Protection de la lecture> Rechercher des menaces à la sécurité (désactiver).

 enter image description here

 enter image description here

7
Gerrard

Ici j'ai résolu ce problème

La raison derrière ce problème est qu’il existe déjà une application portant le même nom de package dans le téléphone, mais que vous ne la trouvez pas dans le menu du téléphone (vous avez déjà effectué la désinstallation, mais en réalité, il reste dans votre téléphone). 

Pour voir l'application, accédez à téléphonesPARAMÈTRES->APPLICATIONS. Vous pouvez y voir l'application, mais le bouton UNINSTALL peut être désactivé. cliquez sur le bouton de débordement du menu pour voir Désinstaller pour tous les utilisateurs .

Après avoir effectué la désinstallation de tous les utilisateurs, j'ai installé avec succès mon apk signé . Vous pouvez également utiliser adb pour désinstaller l'application du téléphone.

adb uninstall package name

En plus de cela, si votre mobile prend en charge plusieurs utilisateurs , vérifiez si l'application correspondante n'est pas installée pour d'autres utilisateurs. S'il est installé pour d'autres personnes, commencez par désinstaller l'application précédente, puis réessayez.

3
Alex Chengalan

Cela peut être dû au fait que vous exécutez le fichier APK à partir du stockage sur carte SD externe . Il vous suffit de copier le fichier APK dans un problème interne de stockage qui sera résolu.

3
Vu Thai Duy

C'est une question assez ancienne, mais ma solution était de changer versionCode (augmenter) dans build.gradle

1
mateusz-dot

Cela peut arriver en raison de votre choix de la version de signature. Sur certains téléphones, des erreurs d'installation se produisent si la version de la signature a été sélectionnée en tant que V2. Donc, si cela se produit, essayez de sélectionner V1, cela fonctionnera sûrement.

1
Prashant Paliwal

minifyEnabled false

est le seul qui a fonctionné pour moi après 3 jours de recherche sur tous les forums!

1
Toto1

si votre Android version Studio supérieure à 3.0

On dirait que nous ne pouvons pas utiliser directement l'apk après avoir été exécuté sur le périphérique à partir du dossier build -> output-> apk.

Après la mise à niveau vers Android studio 3.0, vous devez accéder à Build -> Build Apk (s), puis copier l’apk depuis build -> output -> apk -> debug.

enter image description here

0
Keshav Gera

Aller à Build.Gradle (module: app)

utilise this - minifyEnabled false

0
Abhinav Pandey

Fichier> Structure du projet> Variantes de construction> Sélectionnez une version> Assurez-vous que 'Signing Config' n'est pas vide> s'il est sélectionné dans la fenêtre de dépôt, le $signingConfigs.release

Je l'ai fait avec Android Studio 3.1.4 et cela m'a permis de créer une version apk après avoir suivi toutes les étapes ci-dessus de la création de la version apk et de la clé de la version et ajouté les informations au dégradé de l'application. À votre santé!

0
Treewallie

Dans Android Studio 3.0 et versions supérieures

Comme décrit ici

Remarque: le bouton Exécuter crée un fichier APK avec testOnly = "true", ce qui signifie que le fichier APK ne peut être installé que via adb (utilisé par Android Studio). Si vous voulez un fichier APK débogable que les utilisateurs peuvent installer sans adb, sélectionnez votre variante de débogage, puis cliquez sur Créer un ou plusieurs ensembles/APK> Créer un fichier APK.

Ajouter Android:testOnly="false" à l'intérieur balise d'application dans AndroidManifest.xml

Référence: https://commonsware.com/blog/2017/10/31/Android-studio-3p0-flag-test-only.html

0
Ketan Ramani