相关疑难解决方法(0)

在使用旧API的设备上调试时,Android studio会显示来自compileSdkVersion的API的源代码

我正在调试Android Studio(AS)1.0.2,并在build.gradle中设置了compileSdkVersion 21.使用带有API 21的模拟器时,一切正常.在具有API 19的设备上进行调试时会出现此问题.调用堆栈中的每一行(在AS中标记为"帧")正确显示与API 19匹配的函数名称,源文件和行号.但是,当我单击一个时与其中一个框架源(例如Activity.java)对应的行,AS错误地打开并显示文件的API 21版本而不是API 19版本.

在我的android sdk文件夹中,我有./sources/android-19和./sources/android-21

知道为什么AS显示错误的文件版本?

我试过的事情(按顺序):

  • 重置Android Studio(删除〜/ .AndroidStudio*)
  • 将Android Studio更新到最新版本
  • 使用API​​ 21在AS模拟器上运行 - AS显示文件的正确版本(21).
  • 将compileSdkVersion更改为19并在API 19设备上运行 - AS在调用堆栈中显示正确的行号,并在正确的行中打开文件的正确版本(API 19).
  • 将compileSdkVersion更改为19并在API 21仿真器上运行 - AS在调用堆栈中显示与API 21对应的行号(在我看来这是正确的行为),但是,当单击它时,AS错误地打开了API 19版本的文件而不是API 21版本.

总而言之,当单击调用堆栈中的一行时,AS将打开由compileSdkVersion表示的文件版本,而不是调试会话期间设备/仿真器使用的版本.

api debugging android android-studio

37
推荐指数
2
解决办法
4901
查看次数

Android Studio:如何逐步调试旧版Android SDK

我有一个针对Android SDK v21的Android项目.现在我需要在Android 4.4(即SDK v20)的设备上进行调试.如何告诉Android Studio将旧版本的源附加到内部类,以便我可以逐步完成它们?

debugging android intellij-idea android-studio

27
推荐指数
3
解决办法
4715
查看次数

标签 统计

android ×2

android-studio ×2

debugging ×2

api ×1

intellij-idea ×1