当我尝试在Android Studio上调试应用程序时,给出了以下日志输出:

APK文件 /Users/MyApplicationName/app/build/outputs/apk/app-debug.apk没有 存在于磁盘上。

我重启了Android Studio,但是我无法解决这个问题。我怎么解决呢? 谢谢你!


当前回答

这些方法我都试过了,但没有一个奏效。我最终不得不在同一时间内做一些这样的事情。花了这么多时间真是令人沮丧。

我遇到的问题与升级到AS 3.1后运行单元测试有关。

以下是我所做的… 1)。运行/编辑配置/选择测试.... 2)。为“Gradle-aware Make”添加选项 3)。选中Misc选项卡上的“如果ADK未更改,则跳过安装”复选框

祝你好运。

其他回答

我让它工作:

关闭项目 从Android Studio欢迎窗口(或文件> New),单击导入项目。

我猜这迫使它重新安装APK,现在一切正常。

使用Android Studio 2.2.1,我从顶部的下拉菜单中点击了“用Gradle文件同步项目”选项,Tools>Android

与上面的答案类似,请参见下面的屏幕截图,了解如何获得这个选项。

我已经解决了使用顶部窗口和构建apk的构建选项构建apk。没必要做什么奇怪的事。

我的问题是我将版本号附加到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)
    }
}

File ->使缓存失效/重新启动