80 votes

Obtention de l'erreur "The package appears to be corrupt" lors de l'installation du fichier apk.

J'ai eu cette erreur après avoir mis à jour Android Studio de 2.3.3 à 3.0. Le problème est que lorsque j'essaie d'installer le fichier apk il est dit

L'application n'est pas installée. Le paquet semble être corrompu.

J'ai essayé de générer l'apk dans les versions debug et release et j'ai essayé de l'installer mais à chaque fois que j'installe l'apk il montre le même message .

Lorsque je lance le projet Android à partir d'Android studio, cela fonctionne. C'est peut-être un problème de gradle mais je n'ai pas pu le résoudre. Merci de m'aider.

1 votes

Répondez à quelques questions, 01. Quel est le nom de votre paquet ? 02. Cette application est-elle déjà installée sur votre appareil ? 03. Est-ce que cela fonctionnait avant la mise à niveau de votre studio ? 04. Avez-vous vérifié les paramètres de votre appareil, "Installer à partir de sources externes".

1 votes

1) Utilisez-vous l'émulateur ? 2) Y a-t-il une autre application avec le même nom de paquet dans votre appareil ?

0 votes

@Shekhar.. 01. Mon nom de paquet est similaire avant de mettre à jour Android studio 02. J'ai essayé les deux méthodes en gardant l'ancienne version de l'application dans l'appareil ainsi qu'en désinstallant l'ancienne application 03.. Oui, cela fonctionnait avant la mise à jour d'Android Studio 04. Oui, c'est déjà vérifié

134voto

tej shah Points 1974

Après avoir beaucoup cherché, j'ai trouvé une solution :

Allez dans Build-> Build Apk(s).

Après avoir créé l'apk, vous verrez un dialogue comme ci-dessous.

enter image description here

Cliquez sur localiser et installez-le dans votre téléphone

Profitez de

3 votes

Ouf ! Merci. Je ne comprends pas pourquoi cela ne fonctionne pas sans Build Apk(s).

6 votes

@usman :- problème de sécurité. si n'importe quel non-développeur veut votre APKso son facilement obtenu de votre dossier. ainsi maintenant il ne se produit pas seulement le développeur pourra créer APK de partage.

2 votes

Merci ! Si vous remarquez, l'APK généré par ce processus est presque 3 fois plus gros qu'un APK généré par un Run/Build normal.

8voto

Muhammed Refaat Points 570

Comme j'ai eu ce cas par moi-même et que les réponses ici ne m'ont pas aidé, ma situation est due au fait que j'ai rétrogradé l'ordinateur de l'entreprise. targetSdkVersion dans le fichier module de l'application gradle de 24 à 22 pour une raison quelconque, et apparemment l'apk n'accepte pas un autre apk avec une mise à niveau inférieure. targetSdkVersion à installer par-dessus.

Donc, une fois que je l'ai changé en 24 l'erreur a disparu et l'application s'est installée correctement.

1 votes

Merci, c'était ça pour moi aussi. J'avais seulement regardé le manifeste, mais build.gradle semble remplacer targetSdkVersion du manifeste.

1 votes

@FrankKrumnow Je suis heureux d'avoir pu vous aider à résoudre votre problème, bonne chance.

4voto

Sangeet Suresh Points 1386

Lorsque vous publiez l'apk signé, assurez-vous de cocher les deux cases suivantes v1 et v2 sur versions de signature

Voir la capture d'écran ci-dessous pour plus d'informations Signed APK generation

2voto

Sabri Points 74

Dans mon cas, si vous recevez cette erreur lors de la mise à jour de votre application, cela peut être dû à la version du SDK cible. Dans ce cas, vous recevrez cette erreur dans les journaux ;

"Package com.android.myapp new target SDK 22 doesn't support runtime permissions but the old target SDK 23 does"

C'est parce que votre application précédente a été construite avec une version plus élevée de sdk. Si votre nouvelle application a été construite avec la version 22 et que votre application installée a été construite avec la version 23, vous obtiendrez The package appears to be corrupt erreur lors de la mise à jour.

2voto

HarsH Points 35

C'est bizarre. Je ne sais pas pourquoi cela m'est arrivé pendant la génération de l'apk signé mais les étapes ci-dessous ont fonctionné pour moi.

  1. Allez dans le fichier et sélectionnez invalider les caches/redémarrages.
  2. Après cela, allez dans build et sélectionnez clean project
  3. Et ensuite, sélectionnez Reconstruire le projet

C'est tout.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X