20

我正在使用模拟器和 Nexus 4 设备使用 Android Studio(0.89 Build #AI-135.1404660,构建于 2014 年 9 月 3 日)开发一个 Android 应用程序。

在此之前的版本中,我遇到了同样的问题。

问题是在我更改了我的代码和资源文件之后,我仍然在设备或模拟器上安装了旧的 apk。

我需要做什么才能让它运行当前代码?是建筑配置吗?

这是 Android Studio 的一个已知问题吗?

还是使用 Nexus 4 设备?

这是它第二次发生,我在尝试以下步骤之一后解决了它(然后)。他们再也没有为我工作过。

这是我尝试过的

  1. 构建 > 清理项目 >​​ 重启 Android Studio > 运行
  2. 构建 > 重建项目 > 运行
  3. 第 1 步加上在设备上卸载 apk
  4. 第 2 步加上在设备上卸载 apk
  5. 添加错误的资源条目然后运行。

我已阅读以下内容:

  1. Android apk 安装:如何从旧版本中清除文件?
  2. adb - 如何在不保留数据的情况下重新安装应用程序?
  3. 设备仍然有旧的 apk
  4. Android 构建不会更新设备上目标 .apk 的代码库或资源

到目前为止没有一个工作。

4

14 回答 14

28

我有同样的问题。在尝试了许多不起作用的方法后,我意识到我不小心更改了“运行配置”中的一个选项。这正是我为解决这个问题所做的。

  1. 运行 --> 编辑配置
  2. 在左侧面板上选择您的配置(我的说是“应用程序”),在右侧面板的“常规”选项卡中,有一个名为“启动前”的部分。这部分应该添加一个名为“Gradle-aware Make”的选项,但我不小心删除了它。
  3. 我通过按“+”重新添加它,然后在弹出窗口中单击“确定”(将弹出窗口中的输入框留空)。
  4. 单击应用。

这立即解决了问题。希望这对某人有帮助!

于 2016-02-14T21:02:35.090 回答
7

Run / Debug Configurations / Miscellaneous TAB [] Uncheck: Skip installation if APK has not changed

Android Studio 并不总是能检测到代码中的微小变化。

于 2016-05-03T23:03:32.310 回答
2

行为不稳定。我通过查看我的代码解决了它。原来有一个资源文件无效。尝试在当前更改之前恢复到您的代码的最后一个工作版本...可能是一个已知问题,将/已在 Beta 版中解决

于 2015-07-13T18:04:27.353 回答
1

检查您的布局文件。

我遇到了同样的问题,我意识到,如果你在多个方向(纵向和横向)有相同的布局,它会带来一些问题。如果一个被改变,另一个保持不变,然后它就会产生冲突。所以android studio安装了之前布局的那个

PS:这发生在我的案例中。

于 2020-07-24T18:07:03.200 回答
1

该问题发生在我的 Android 11 设备上。我猜 ART 运行的是旧代码 dex2oated。

解决方案:

运行/调试配置 - 常规 - 始终使用包管理器安装(在 Android 11 及更高版本上禁用部署优化),并选中该选项。

于 2021-12-01T14:13:34.080 回答
1

谷歌认为这是一个功能,而不是一个错误

https://code.google.com/p/android/issues/detail?id=156263

他们提出的解决方案是复制 apk,而不是操纵文件名,例如

在 Android Gradle 项目中复制 APK 文件

于 2017-05-01T21:32:13.230 回答
1

我正在使用 android studio 构建颤振应用程序,在执行以下操作之前我一直面临同样的问题:

  1. 在 Android Studio 中,转到 Tools-Flutter-FlutterClean

它解决了我现在的问题。

于 2020-04-24T09:15:22.187 回答
1

我花了太多时间来保密。我修复它的方法是,几个小时后我注意到我在 res/ .... 中使用了不同的布局版本。我实际上有两个版本的布局 (layout-v26) 和 (layout)。一直以来,我都在修改另一个并上传不同的。也许这只是一个新手错误,但我希望有人会发现它有用。

之所以有 2 个版本是因为“ autofillHints="" -> quickfix -> create new version of layout ”

我的树的图像

于 2019-03-16T16:22:51.440 回答
0

我也面临这个问题并通过手动删除构建文件夹来获得解决方案,因为有时 ide 无法删除它。所以去应用程序文件夹并找到构建文件夹删除它,然后清理并构建项目并再次运行。项目名称->应用程序->构建

于 2015-01-27T17:35:27.410 回答
0

在安卓工作室。在右侧。请参阅 gradle 选项。点击它。然后按红色方块所示的圆形箭头按钮。

在安卓工作室。 在右侧。 请参阅 gradle 选项。 点击它。 然后按红色方块所示的圆形箭头按钮。

于 2019-01-09T09:13:41.247 回答
0

您应该在运行/调试配置中选择“部署默认 APK”选项。之后,当您运行应用程序时,Android Studio 将上传并安装新的 apk 到您的模拟器/设备。

于 2015-07-10T22:21:41.053 回答
0

这个问题的解决方法其实很简单。Android Studio 实际上并没有检测到您对应用程序所做的一些小改动。这就是为什么它要安装以前的版本。解决方案很简单 -> 删除以前的版本。

在右侧,转到 gradle 选项卡。

  1. 展开任务。查找“clean”或“cleanCache”任务或任何以“clean”开头的任务。双击运行该任务。
  2. 展开“应用程序”。并做同样的事情。

然后文件>使缓存无效并重新启动。

享受!!你的问题解决了...

在此处输入图像描述

于 2021-10-30T18:05:12.293 回答
0

我的设备也运行旧状态 - 不知道它从我的 git 中的哪个位置获取这些。

我创建了一个新配置(默认为“app”)并且它有效。

于 2021-11-24T19:55:43.257 回答
0

同样的问题,这里提到的解决方案都没有任何效果。我不得不在“菜单 > 运行 > 编辑配置...”中禁用“允许并行运行”。

您可以在此处阅读有关此选项的更多信息:如何在 IntelliJ IDEA 中多次运行同一个项目?

于 2021-02-06T15:48:56.103 回答