Android Studio 无法调试APK:要为调试设置断点,请附加Java源文件

rqqzpn5f  于 2023-04-12  发布在  Android
关注(0)|答案(1)|浏览(254)

我有一个APK是debuggable="true"(根据AndroidManifest),这意味着我可以调试它,这就是我想要做的。
Android Studio:File -〉Profile or Debug APK以加载apk(app.apk)。
当我尝试调试它时(Shift+F9),它会写我:
分解的classes.dex文件。要设置断点进行调试,请附上Java源文件
我使用jadx通过运行以下命令将APK反编译为java源代码:

"c:\tmp\jadx-0.8.0\bin\jadx.bat" -d java_source app.apk

我现在在java_source目录中有两个目录:

  • 资源
  • 来源
    sources文件夹中有java文件。
    如何按照消息请求将它们附加到Android Studio项目?
    把它作为一个新项目打开?
laik7k3q

laik7k3q1#

看起来你想要的答案可以在android文档(https://developer.android.com/studio/debug/apk-debugger#attach_java)中找到:
默认情况下,Android Studio会从APK中提取Java代码并将其另存为.smali文件。要使用断点调试Java代码,您需要将IDE指向与要调试的.smali文件对应的.java源文件。
要附加Java源,请执行以下操作:
双击Project窗格中的.smali文件(使用Android视图)。打开该文件后,编辑器将显示一个警告横幅,要求您选择Java源代码,类似于图1所示。单击编辑器窗口顶部横幅中的Attach Java Sources。导航到包含应用程序Java源文件的目录,然后单击Open。
在“项目”窗口中,IDE会将.smali文件替换为相应的.java文件-IDE还自动包含内部类。现在,您可以像往常一样添加断点并调试应用。

相关问题