Le fichier APK n'existe pas sur le disque

quand j'essaie l'application de débogage sur Android Studio donne cette sortie de journal:

le fichier APK /Utilisateurs/MyApplicationName/app/build/sorties/apk/app-debug.apk n'a pas de existe pas sur le disque.

J'ai redémarré Android Studio, mais je ne peux pas résoudre ce problème . Comment puis-je le résoudre ? Merci

181
demandé sur Vadim Kotov 2015-12-02 13:02:27

30 réponses

cliquez sur cette option pour résoudre l'erreur:

enter image description here

433
répondu 指尖上的Android 2016-01-08 02:51:37

si vous êtes confronté à ce problème après la mise à jour vers Android Studio V 3.1 puis essayer ce qui suit.

je faisais face à ce même problème lorsque j'ai mis à jour pour Android Studio 3.1. Toutes les autres solutions que j'ai trouvées ici étaient très manuelles parce que vous devez nettoyer et reconstruire à chaque fois, ce n'est pas bon du tout. Mais grâce à la réponse de Iman Marashi j'ai pu la résoudre.

passer à exécuter -> modifier les Configurations...

assurez-vous d'avoir une "Gradle-aware Make" sur la section Avant de lancer:

Run/Debug Configurations

pour l'Ajouter, cliquez sur le signe + et sélectionnez Grad-aware Make et un popup apparaîtra, laissez le champ de texte vide et cliquez sur OK et OK .

97
répondu Seven 2018-04-05 06:36:48

dans mon cas, l'exécution du projet de synchronisation avec les fichiers Gradle a aidé. Ni redémarrer Andoid Studio ni nettoyer la cache n'a rien fait.

53
répondu Bartek 2015-12-16 10:53:33

si vous voulez juste connaître la conclusion, s'il vous plaît aller à la dernière section. Grâce.

habituellement, lorsque le projet de construction échoue, quelques trucs communs que vous pourriez essayer:

  • Build -> Propre Projet
  • Check Build Variantes
  • redémarrer Android Studio (comme vous l'avez mentionné)

mais à être plus spécifique à votre problème-lorsque Android Studio ne pouvait pas trouver le fichier APK sur le disque. Cela signifie que Android Studio a effectivement construit avec succès le projet, et a également généré L'APK, mais, pour une raison quelconque, Android Studio n'est pas en mesure de trouver le fichier.

Dans ce cas, veuillez consulter l'annuaire imprimé selon le journal. Il est utile.

par exemple:

With Android Studio 2.0 Preview (build 143.2443734).

  1. passer à la Caisse à un commit (de sorte qu'il est détaché de la tête): git checkout [commit_hash]
  2. l'Exécution du projet
  3. Studio Android raconte: le fichier APK / Users/MyApplicationName/app/build/outputs/ apk / app-debug-HEAD.apk n'existe pas sur disque
  4. allez dans le répertoire, il y a un fichier nommé: app-debug-(HEAD.apk (avec une parenthèse supplémentaire)
  5. Run git branch

    *(tête détachée au 1a2bfff)

Donc ici vous pouvez voir, en raison de l'erreur de mon script de construction de Grad , le nom du fichier est quelque peu erroné.

exemple ci-Dessus est juste un scénario qui pourrait conduire à la même question, mais pas besoin d'être la même cause que le vôtre.

en conséquence, je vous recommande fortement de vérifier le répertoire (pour trouver la différence), et de vérifier votre construire.gradle script (vous pouvez changer le nom apk là, quelque chose comme ci-dessous):

applicationVariants.all { variant ->
        variant.outputs.each { output ->
            def newFileName = "whatever you want to name it";
            def apk = output.outputFile;
            output.outputFile = new File(apk.parentFile, newFileName);
        }
    }
32
répondu Jing Li 2015-12-02 19:44:54

assurez-vous que vous n'avez pas apostrophe ou & dans votre chemin

19
répondu Rim Gazzeh 2016-11-16 14:39:40

j'ai été témoin d'un problème similaire habituellement quand je suis en train de changer de branche git. Pour moi la fermeture de studio Android rm -rfv ~/Library/Caches/AndroidStudio* et redémarrer Studio Android est le billet.

17
répondu user213493 2015-12-03 18:10:02

assurez - vous qu'il y a Grading-aware Make dans Run/Debugging configurations > > avant de lancer section:

Like this image

15
répondu Iman Marashi 2017-11-27 18:09:41

l'année est 2018. La version Android Studio est 3.2.0 alpha3 et nous avons toujours ce problème. Comme rien de ce qui précède n'a fonctionné pour moi, voici mes 2 cents:

chaque fois que cela arrive, je génère l'apk à partir de la ligne de commande:

gradlew assembleDebug

UPDATE

supprimer le dossier .AndroidStudio[version] et perdre toutes vos préférences et caches... semble résoudre le problème

10
répondu Androiderson 2018-04-01 01:16:30

dans mon cas, j'utilisais un caractère spécial dans mon chemin de fichier app. J'ai fermé le studio Android et j'ai supprimé le caractère de mon chemin de fichier app. Tout a bien fonctionné quand j'ai rouvert le projet.

7
répondu Immortal Code 2016-10-10 23:57:44

j'ai résolu la construction d'un apk en utilisant L'option construire à partir de la fenêtre supérieure et construire APK. Pas besoin de faire quelque chose de bizarre.

6
répondu Mun0n 2015-12-23 12:17:37

pour les utilisateurs de type Unix (Linux/MacOs X), au lieu de supprimer ~/.gradle/ caches/, en ligne de commande do:

$ cd path_to_you_project
$ touch build.gradle

puis demandez à Android Studio de construire APK, il va réinitialiser gradle cache lui-même.

6
répondu Jean-Marc Delafont 2016-03-30 09:43:13

Dans Android Studio 3.1.1 sélectionnez Fichier | Sync Projet avec Gradle Fichiers.

dans Android Studio 3, sélectionnez File / Synchronize.

puis lancer votre projet à nouveau.

6
répondu live-love 2018-04-17 15:36:33

mon problème est que j'ajoutais le numéro de version à L'APK. Changer le numéro de version et re-synchroniser Gradle a résolu le problème pour moi.

def appendVersionNameVersionCode(variant, defaultConfig) {
    variant.outputs.each { output ->
        if (output.zipAlign) {
            def file = output.outputFile
            def removeApp = file.name.replace("app-", "")
            def removeType = removeApp.replace("-release", "")
            def fileName = removeType.replace(".apk", "." + defaultConfig.versionName + ".apk")
            output.outputFile = new File(file.parent, fileName)
        }

        def file = output.packageApplication.outputFile
        def removeApp = file.name.replace("app-", "")
        def removeType = removeApp.replace("-release", "")
        def fileName = removeType.replace(".apk", "." + defaultConfig.versionName + ".apk")
        output.packageApplication.outputFile = new File(file.parent, fileName)
    }
}
4
répondu Lou Morda 2016-05-17 22:56:52

si vous avez essayé toutes les réponses ci-dessus et que cela n'a pas fonctionné essayez de désactiver la fonctionnalité" course instantanée". Cela m'a aidé après toutes les tentatives.

Fichier -> Paramètres -> Construire, l'Exécution, le Déploiement -> Instantanée Exécuter -> Décocher la case "il y 151940920"

2
répondu AnZ 2016-11-14 13:17:10

j'ai aussi eu ce problème, après avoir nettoyé la construction. Pour moi, la solution était de synchroniser le Grad et ça marchait pour moi.

2
répondu u_pendra 2016-12-07 05:55:03

Build ---> Construire APK(s) et de vous assurer qu'il fonctionne

2
répondu Kadir altınok 2018-03-28 09:42:00

face à la même question avec gradle 1.5

j'ai dû nettoyer les fichiers de construction:

construire - > projet propre

et construire une APK pour forcer la compilation complète et la synchronisation des fichiers gradle:

Build - > Build APK

Je ne sais toujours pas pourquoi ni comment c'est arrivé.

1
répondu Simon PA 2016-02-08 18:01:55

Fichier - > Invalider Les Caches / Redémarrer

1
répondu dvrm 2016-07-28 10:53:46

j'ai eu le même problème. c'était dû à un faux nom dans le chemin. il y avait un personnage spécial dans le chemin comme celui-ci: C:\User\My App\Projekte-Tablet&Handy j'ai supprimé le caractère "&" et il a bien fonctionné.

1
répondu Orientos 2016-10-04 11:58:44

mon problème était d'inclure des minutes dans le nom du fichier - il cherchait appname_debug_0.9.0.1_170214_2216.apk lorsque le fichier généré était appname_debug_0.9.0.1_170214_2217.apk donc le code de nom de fichier de sortie (nabbed from elsewhere) était clairement appelé à partir de deux points différents dans la compilation.

applicationVariants.all { variant ->
        variant.outputs.each { output ->
            def project = "appname"
            def SEP = "_"
    //        def flavor = variant.productFlavors[0].name
            def buildType = variant.variantData.variantConfiguration.buildType.name
            def version = variant.versionName
            def date = new Date();
            def formattedDate = date.format('yyMMdd_HHmm')

            def newApkName = project + SEP + /*flavor + */ SEP + buildType + SEP + version + SEP + formattedDate + ".apk"

            output.outputFile = new File(output.outputFile.parent, newApkName)
        }
    }
1
répondu Ian Spencer 2017-02-14 22:44:22

Résolu en mai 2018 avec le nouvel Android Studio 3.1. Supprimer la .gradle, .idée et construire des répertoires à l'intérieur de votre dossier app. Ensuite, essayez de l'exécuter à nouveau, et vous n'en voyez pas l'erreur.

1
répondu Gerardo Suarez 2018-04-02 17:28:35

si vous utilisez Linux, essayez de définir la permission d'écriture dans le dossier app/build.

0
répondu Catalin Clabescu 2016-02-25 14:42:23

je change de construction.enregistrez un peu d'info,et cliquez sur "Synchroniser maintenant", juste ok.

0
répondu 凤清云 2016-02-26 05:50:35

Supprimer le répertoire ~/.Grad / caches/. Il est possible de faire cela pendant que Android Studio est ouvert. (Référez pm installant le mauvais nom de paquet) Appuyez sur l'icône "Sync project with Gradle files" sur Android Studio. Exécutez le projet et le chemin distant sera correct.

Refer answer @ Android Studio obtient le nom de paquet erroné lors de l'exécution .apk

0
répondu mask 2017-05-23 12:34:42

, assurez-vous que le chemin généré dans vos journaux -dans votre cas:

/Users/MyApplicationName/app/build/outputs/apk / app-debug.apk

folder " outputs "a en effet un dossier" apk".

C'était mon problème, si elle n'est pas là, vous devrez exécuter la tâche" assembleRelease "dans gradle en suivant la capture d'écran ci-dessous;

Steps to run the gradle assembleRelease task Puis le dossier sera généré.

0
répondu Amgad 2016-08-30 09:00:30

rien au-dessus ne m'a aidé, mais j'ai compris cela en passant à une autre saveur dans le panneau des outils de construction et ensuite revenir à la nécessaire.

0
répondu Dmytro Karataiev 2017-01-16 09:41:01

modifier le fichier:construire.gradle(répertoire app). en fait:vous ne devriez pas changer ce fichier , seulement par ceci pour obtenir des conseils de synchronisation,puis synchroniser le projet.

0
répondu 兰坡阳 2017-02-22 07:32:19

le bouton S'appelle "Sync Project with Gradle Files" et il ressemble à: Gradle Sync ... toujours besoin de cliquer dessus, lors de la mise à jour du numéro de version, ce qui entraîne un autre nom de fichier APK (à moins que le nom de fichier n'ait pas changé, l'installation du paquet fonctionne toujours, ce qui indique que le nom de fichier est caché). L'option Gradle CLI équivalente semble être --recompile-scripts .

@voir Annexe D. Ligne De Commande Gradle .

0
répondu Martin Zeitler 2017-07-14 14:12:25

tout d'abord enlever le nettoyeur en allant à modifier la configuration, il peut être le nettoyage de la construction après la construction de l'apk.

Click on edit from set run/debug then click on gradle list select the clean project item and then click on -(top 2nd from left).
0
répondu Sonu Kumar 2017-10-20 06:35:25

avec Android Studio 2.2.1, j'ai cliqué sur L'option Sync Project avec Gradle Files, à partir du menu déroulant en haut, Outils>Android

similaire, à une réponse affichée ci-dessus, voir ci-dessous pour une capture d'écran de la façon d'accéder à cette option.

enter image description here

0
répondu Lee Brindley 2018-01-15 18:22:38