gpt4 book ai didi

xml 更改后构建变体的 Android Studio 陈旧 APK

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:12:49 25 4
gpt4 key购买 nike

这是一个非常奇怪的问题。今天 AS (1.4) 停止在我的项目中正确地重新创建调试 apk:

  • 运行项目时,任何XML 更改都不会反射(reflect)在代码中
  • 对 Java 代码的更改正在传播,即使 XML 更改没有传播也是如此
  • 清理然后点击运行似乎可以解决问题,每次都会成功创建更新的 APK。
  • 我的项目中有两个构建变体,这个问题只影响其中一个
  • 我正在使用 Genymotion,但问题也存在于常规模拟器和硬件上。
  • 我怀疑 xml 文件上有某种锁。例如,如果我重命名一个文件并点击运行,更改就会传播。但是检查 R.java 会显示旧文件名和新文件名的条目 - 旧文件根本没有被清除/刷新。
  • 我正在测试的 xml 布局现在已被剥离回具有背景颜色的空白相对布局。颜色没有在应该更新的时候更新。

我对构建过程不太了解,所以我尝试的只是删除构建文件夹,重新导入项目以及 Android Studio 上的旧重启/无效缓存。关于可能导致这种奇怪行为的原因或如何解决它的任何建议?

编辑:很难确定这背后的行为 - 有时我注意到它始终只影响某些 xml 文件。看起来这个人有同样的问题:Android Studio project build issue

我花了几个小时从头开始重新安装 Android Studio,但问题仍然存在。

最佳答案

Daniel,我自己也确实注意到了这个问题。似乎某些更改根本不会传播,除非 ADB 检测到该应用程序当前未安装在目标设备上。

免责声明:这是一种解决方法,而不是对行为的解释,但它对我有用。为了解决这个问题,我将我的运行配置配置为在再次安装之前卸载有问题的包。请注意,卸载 APK 显然会影响数据库、首选项中的持久数据等,因此如果您的开发过程依赖于这些,请不要使用它。

步骤:(来自 here )

  1. 在 Android Studio 中,点击“运行”按钮左侧的下拉列表,然后选择“编辑配置...”
  2. 点击 Android 应用程序下的应用程序,然后在常规选项卡中找到标题“启动前”
  3. 点击+按钮,选择运行外部工具,点击弹出窗口中的+按钮。
  4. 提供一些名称(例如 adb uninstall)和描述,然后输入 adb在程序中:和 uninstall <your-package-name>在参数中:在弹出窗口中单击“确定”时,确保选择了新项目。

注意:如果您的 PATH 环境变量中没有 adb,请在 Program: 字段中提供 adb 的完整路径(例如/home/user/android/sdk/platform-tools/adb)。

再次抱歉,这不是对问题本身的解释,但这确实为我解决了问题。

让我知道它是如何为您服务的。

关于xml 更改后构建变体的 Android Studio 陈旧 APK,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33324668/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com