【问题标题】:Android Studio debugger stepping though old version of code, not up to dateAndroid Studio 调试器单步执行旧版本的代码,不是最新的
【发布时间】:2015-03-26 17:58:13
【问题描述】:

我是 Android 开发新手,所以我可能会遗漏一些我可以尝试的明显内容。

我正在尝试调试一些代码,但调试器正在逐步执行旧版本的代码,而不是我项目中的当前版本。

显然它已经跳过我的异常“抛出”并进入注释代码

我试过了:

  • 卸载之前安装到设备的 apk
  • 重建/清理
  • 使用 Genymotion 和真实设备(姜饼)
  • adb kill-server
  • 重新启动和。工作室
  • 关于 SO 的类似问题

这实际上是cwac demo v9,所以它是一个使用'camera'库的demo app,它在我正在调试的cwac camera library项目中。

我不清楚 gradle 构建的位置和内容,因此我没有从 Windows 资源管理器中“硬清理”任何内容。我什至无法检查文件日期...

关于如何检查最新代码是否发送到设备,您能给我什么提示?

谢谢。

【问题讨论】:

  • 我遇到了同样的问题。你有运气吗?
  • 我在 C:\Users\Jim\.gradle\caches\modules-2\files-2.1 找到缓存文件,并删除它们 - 只要我可以让调试器连接到再次模拟器,我会发现它是否有所作为:)
  • @Dave 好的,显然不是,即使缓存文件非常旧......我会继续撞墙

标签: android adb android-debug cwac-camera


【解决方案1】:

试试这个。打开应用程序的 build.gradle 文件,并进行更改(只需添加空格)。然后,单击右上角的“立即同步”按钮。

我不太确定缓存发生了什么,但这似乎为我解决了问题。

【讨论】:

    【解决方案2】:

    作为一个 Android 新手,面对 IDE/gradle 的复杂性(希望它更像 Visual Studio!),我很难找到问题,但我找到了,而且它是 CWAC-Camera 特有的项目(来自 GitHub)。

    FWIW 为什么它是一个如此复杂的 IDE/构建系统,似乎很多都可以内部化(我的意思是,让 gradle 消失)..?

    解决方案

    文件->项目结构->(选择左侧运行的模块,对我来说是camera-v9)->(选择依赖项选项卡)

    应该有一个 CWAC 相机的 Maven 库条目,标记为 Scope=="Release compile",还有一个 Module 库,scope=="Debug编译”。

    我删除了 Maven 库条目,并将模块条目更改为 scope=="Compile"。然后就成功了。

    所以发生的事情是使用库的 Maven 副本而不是模块。为什么?不确定,因为我会认为在某些东西上运行“调试器”将需要“调试”构建模式。我发现了这一点,但无法遵循公认的答案(因为我不太了解 IDE)Why does Gradle build my module in Release mode when the app is in Debug

    我不知道这只是 CWAC 演示项目中的失误,还是我的设置有问题。在我看来,使用 Maven 库进行发布可能会产生意想不到的结果(即,自定义消失了)。

    说了这么多,CWAC 似乎是救命稻草,非常感谢!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-06-07
      • 2021-03-04
      • 2018-06-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多