代码之家  ›  专栏  ›  技术社区  ›  Sneh Pandya

Android Studio 3.1“运行”不编译代码

  •  88
  • Sneh Pandya  · 技术社区  · 6 年前

    当我尝试安装应用程序时,有两种可能性:

    1. 运行时,从生成文件夹安装现有APK app
    2. 执行后安装APK clean build

    对于build文件夹中的现有APK,该应用程序运行良好。但是当我用 Build -&燃气轮机; Clean Project ,然后尝试运行 应用程序 (即,将应用程序安装到我的模拟器或物理设备上),它会显示错误:

    APK文件/用户/MyApplicationName/应用程序/构建/输出/APK/应用程序调试。磁盘上不存在apk。

    注意:只有当我清理项目时,这种行为才会发生,而不是当我的构建文件夹中已经有一个预构建的应用程序APK时

    我提到: The APK file does not exist on disk 但我的观点是,当我们通常在清理项目后运行应用程序时,我们永远不需要构建它,如果构建文件夹中不存在APK,它会自动生成并安装最新的APK。

    我尝试过的事情:

    1. 在生成文件夹中存在APK文件时运行应用程序(工作正常)
    2. 运行 清理项目 -&燃气轮机;运行应用程序(预期将生成项目并安装应用程序,但它会显示上述错误!)
    3. 完成后清理和运行应用程序的过程相同 Invalidate Caches/Restart
    5 回复  |  直到 6 年前
        1
  •  157
  •   Nimantha tooMuchLagWillKillYou    3 年前

    我有办法解决你的问题。

    还确认人 Android Studio 在…上 啁啾 : https://twitter.com/androidstudio/status/981914632892960768

    1. 编辑应用程序配置,如下所示。

    enter image description here

    1. 在这里,您可以看到您的应用程序配置,如下所示。

    enter image description here

    1. 这里缺少启动前配置中的Gradle aware make属性。你可以在这里看到。

    enter image description here

    1. 请通过这种方式添加此Gradle aware Make属性。单击+图标并选择Gradle aware Make,如本屏幕所示。

    enter image description here

    1. 您可以在不编写任何任务的情况下添加此任务,只需按“确定”按钮,任务就会被添加,现在应该是这样。现在应用更改并运行应用程序。

    enter image description here

    它将在新的Android Studio 3.1版本的干净构建上解决旧的apk安装问题。

    注: 此问题已在新中解决 Android Studio 3.1.1 稳定释放。

        2
  •  6
  •   IntelliJ Amiya    6 年前

    APK文件 /用户/MyApplicationName/app/build/outputs/apk/app debug。apk没有 存在于磁盘上。

    可能是bug。您应该更改设置。

    您应该打开 Run/Debug Configurations dialog &选择 Run > Edit Configurations

    确保 Gradle-aware Make 是否在任务列表中添加。如果没有,则单击 + &从选项中选择。

    enter image description here

    笔记

    如果您收到

    生成依赖项拆分APK时在0ms内关闭完成错误 com。安卓ide。常见的过程ProcessException:未能执行 aapt at com。安卓建设者果心AndroidBuilder。processResources(AndroidBuilder.java:809) 在 com。安卓建设者果心AndroidBuilder。processResources(AndroidBuilder.java:797) 在 com。安卓建筑格拉德尔。内部的变换。InstantRunSplitApkBuilder。generateSplitApkResourcesAp(InstantRunSplitApkBuilder.java:373)

    你应该取消检查 INSTANT RUN

    文件--设置--构建、执行、部署--即时运行和 取消选中启用即时运行

        3
  •  2
  •   Vidhi Dave    6 年前

    清理项目并再次运行

    如果不行的话

    • 步骤1 关闭项目。
    • 第2步 转到项目文件夹并删除所有生成文件夹。
    • 步骤3 运行项目。
        4
  •  0
  •   0xAliHn    6 年前

    Android studio 3.1.1(2018年4月)版本已解决此问题。 将您的android studio更新为3.1.1。

    以下是重新分类问题详细信息、原因和解决方案的说明:

    在某些情况下,当在中创建项目时 Android Studio 3.0 was opened for the first time in Android Studio 3.1, the Gradle-aware Make task was removed from the Before launch area in Run/Debug Configurations. 结果是,当单击“运行”或“调试”按钮时,项目没有生成,这反过来会导致失败,例如部署不正确的APK,以及使用“即时运行”时崩溃。

    为了解决这个问题, Android Studio 3.1.1 adds the Gradle-aware Make task to the run configuration for projects that are missing this entry. 加载项目时,此修改发生在第一次梯度同步之后。

    官方发行说明: https://developer.android.com/studio/releases/index.html#3-1-0

        5
  •  0
  •   Robert    3 年前

    对于所有在Android Studio+4.0.0上发布此问题的人:

    Run -> Edit configurations... -> disable check box (Allow parallel run)
    

    这可能会让你的构建速度慢一点,但比多次运行应用程序要好。