APK-файл не существует на диске



когда я пытаюсь отладить приложение на Android Studio дает этот вывод журнала:




файл APK
/Пользователи/MyApplicationName/приложение/сборка/выходы/Android игры/приложения-отладка.АПК не
существовать на диске.




я перезапустил Android Studio, но я не могу решить эту проблему . Как я могу решить эту проблему ?
Спасибо

608   30  

30 ответов:

Нажмите эту опцию, чтобы устранить ошибку:

enter image description here

Если вы столкнулись с этой проблемой после обновления до Android Studio V 3.1, то попробуйте ниже.

я столкнулся с этой же проблемой, когда я обновился до Android Studio 3.1. Все другие решения, которые я нашел здесь, были довольно ручными, потому что вам нужно каждый раз чистить и перестраивать, что совсем не хорошо. Но благодаря Иман Марашиответ здесь я был в состоянии решить эту проблему.

на Выполнить -> Редактировать Конфигурации...

убедитесь, что у вас есть "Gradle-aware Make" В разделе перед запуском:

Run/Debug Configurations

добавить кнопку + и выберите Gradle-aware Make и появится всплывающее окно, просто оставьте текстовое поле пустым и нажмите ОК и ОК.

в моем случае помогло выполнение "синхронизировать проект с файлами Gradle". Ни перезапуск Andoid Studio, ни очистка кэша ничего не сделали.

Если вы просто хотите знать заключение, пожалуйста, перейдите к последнему разделу. Спасибо.

обычно, когда строительный проект терпит неудачу, некоторые общие уловок, которые вы могли бы попробовать:

  • Build ->Очистить Проект
  • Регистрация Построить Варианты
  • перезагрузка Android Studio (как вы упомянули)

но чтобы быть более конкретным для вашей проблемы-когда Android Studio не удалось найти файл APK на диске. Это означает, что Android Studio фактически успешно построила проект, а также сгенерировала APK, однако по какой-то причине Android Studio не может найти файл.

в этом случае, пожалуйста, проверьте печатный каталог в соответствии с журналом. Это полезно.

например:

С Android Studio 2.0 Preview (build 143.2443734).

  1. проверка на конкретную фиксацию (чтобы она была отделена от головы):git checkout [commit_hash]
  2. запустить проект
  3. Android Studio рассказывает: APK-файл / пользователи / MyApplicationName / app / build / outputs / apk/ app-debug-HEAD.apk отсутствует на диске
  4. перейдите в каталог, там есть файл с именем:app-debug-(HEAD.apk (С дополнительной скобкой)
  5. Run git branch

    *(голова отсоединена на 1a2bfff)

Так что здесь вы могли видеть, из-за ошибки моего скрипта сборки gradle, имя файла как-то неправильно.

выше пример-это всего лишь один сценарий, который может привести к той же проблеме, но не обязательно быть той же основной причиной, что и ваша.

в результате, я настоятельно рекомендую вам!--7-->регистрация Каталог (чтобы найти разницу), и проверьте ваш построить.gradle скрипт (вы можете изменить имя apk там, что-то вроде ниже):

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);
        }
    }

убедитесь, что у вас нет Апостроф или & в путь

Я наблюдал подобную проблему обычно, когда я переключаю ветви git. Для меня закрытие Android Studio rm -rfv ~/Library/Caches/AndroidStudio* и перезапустить Android Studio-это билет.

убедитесь, что есть сортировка с учетом Make на запуск/отладка конфигураций >> перед запуском:

Like this image

год 2018. Версия Android Studio - 3.2.0 alpha3, и мы все еще получаем эту проблему. Как ни один из выше работал для меня, вот мои 2 цента:

каждый раз, когда это происходит, я просто генерирую apk из командной строки:

gradlew assembleDebug

обновление

удалить папку .AndroidStudio[version] и потерять все ваши предпочтения и схроны... кажется, чтобы решить эту проблему

в моем случае, я использовал специальные символы в пути к файлу. Я закрыл Android Studio и удалил ' символ из моего пути к файлу приложения. Все работало нормально, когда я снова открыл проект.

Я решил построить apk, используя опцию сборки из верхнего окна и построить APK. Не нужно делать что-то странное.

для Unix, как пользователи (Linux / MacOs X), вместо удаления ~/.gradle/caches/, в командной строке do:

$ cd path_to_you_project
$ touch build.gradle

затем задать для Android Studio для разработки Android игры, он будет сбросить Gradle в себя кэш.

в Android Studio 3.1.1 выберите проект File / Sync с файлами Gradle.

в Android Studio 3 Выберите файл / синхронизировать.

затем снова запустите свой проект.

моя проблема заключается в том, что я добавлял номер версии в APK. Изменение номера версии и повторная синхронизация Gradle исправили проблему для меня.

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)
    }
}

Если вы попробовали все вышеперечисленные ответы, и это не сработало, попробуйте отключить функцию "мгновенного запуска". Это помогло мне после всех попыток.

-3 - > настройки -> сборки, выполнения, развертывания -> мгновенный запуск -> снимите галку здесь

Я также получил эту проблему, после очистки сборки. Для меня решение было просто синхронизировать gradle, и это сработало для меня.

Build - - - > Build APK (Ы) и убедитесь, что он работает

столкнулся с той же проблемой с gradle 1.5

Мне пришлось очистить файлы сборки:

Build - > Clean project

и построить APK, чтобы заставить полную компиляцию и синхронизацию файлов gradle:

построение -> построить АПК

Я до сих пор не знаю, почему и как это произошло.

File - > Invalidate Caches / Restart

У меня была та же проблема. это было из-за ложного имени в пути. там был специальный символ в пути, как это: C:\User\My App\Projekte-Планшет И Удобный я удалил символ"&", и он работал хорошо.

моя проблема была в том числе минут в имени файла-он искал appname_debug_0.9.0.1_170214_2216.apk, когда сгенерированный файл был appname_debug_0.9.0.1_170214_2217.apk таким образом, выходной код имени файла (набранный из другого места) явно вызывался из двух разных точек сборки.

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)
        }
    }

решена в мае 2018 года с новой Android Studio 3.1. Удалить .Gradle, а .идея и создание каталогов внутри папки приложения. Затем попробуйте запустить его снова, и вы не увидите ошибку.

Если вы используете Linux, то попробуйте установить разрешение на запись в папку app/папке.

изменить построение.gradle файл немного информации,и нажмите кнопку "Синхронизировать сейчас", просто хорошо.

удалить каталог ~/.gradle/caches/. Это нормально, чтобы сделать это в то время как Android Studio открыт. (См. pm установка неправильного имени пакета) Нажмите кнопку" Синхронизировать проект с файлами Gradle " на Android Studio Запустите проект и удаленный путь будет правильным.

см. ответ @ Android Studio получает имя пакета неправильно при запуске .apk

убедитесь, что в пути, сгенерированном в ваших журналах -в вашем случае:

/пользователи/MyApplicationName/приложение/сборка/выходы/Android игры/приложения-отладка.apk

папка " выходы "действительно имеет папку" apk".

Это была моя проблема, если ее там нет, вам нужно будет запустить задачу "assembleRelease" в gradle, следуя приведенному ниже скриншоту;

Steps to run the gradle assembleRelease task Затем будет создана папка.

ничто выше не помогло мне, но я понял это, переключившись на другой вкус в панели инструментов сборки, а затем переключившись обратно на нужный.

изменить файл:построить.gradle (каталог приложений). в самом деле:вы не должны изменять этот файл , только чтобы получить советы по синхронизации,а затем синхронизировать проект.

кнопка называется "синхронизировать проект с файлами Gradle" и выглядит так:Gradle Sync... всегда нужно щелкнуть по нему, при обновлении номера версии, что приводит к другому имени файла APK (если имя файла не изменилось, установка пакета всегда работает, что указывает на то, что имя файла кэшируется). Эквивалентный параметр командной строки Gradle в, Кажется --recompile-scripts.

@see Приложение D. Командная Строка Gradle.

Сначала удалите очиститель, перейдя к редактированию конфигурации, он может очищать сборку после сборки 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).

используя Android Studio 2.2.1, я нажал на опцию синхронизировать проект с файлами Gradle, из выпадающего списка вверху, инструменты>Android

аналогично ответу, опубликованному выше, см. ниже скриншот того, как добраться до этой опции.

enter image description here

Comments

    Ничего не найдено.