安卓逆向初期调试APP时遇到的诸多问题及解决方法

安卓逆向遇到的问题手记 安卓实体机调试的问题

#作为初入Android 逆向小菜鸟的我遇到的一系列问题的解决方法

Andriod studio调试APP时问题的出现和解决

一开始是想调试某正在使用中的APP,但是在调试与Andriod studio连接中出现了许多问题。
首先,网络上调试APP的方法可自行查询,方法都有,下面说一下我遇到的问题
一、将APP 反编译成smail文件,设置andriod debuggable=“true”,在这一步就出现了问题,添加了andriod debuggable="true"语句后依旧无法调试。之后在某博客中看到,在反编译中的程序最开始的入口点 oncreate 出添加一段代码,之后就可以通过android studio调试了。下面为完整方法。
1、在AndroidManifest的application节点中添加 android:debuggable=“true”
2、在入口点的类的onCreate中添加如下代码等待调试
invoke-static{}, Landroid/os/Debug;->waitForDebugger()V
在这里插入图片描述
在这里插入图片描述
上述问题参照:https://www.cnblogs.com/1chavez/p/5187029.html
二、上述调试连接成功之后,因为要使用andriod device monitor ,但是andriod studio版本高了之后,取消了这个功能,就只能在本地去打开monitor.bat文件。遇到了打不开的问题,原因是JDK版本太高。重装JDK 1.8之后,竟然…出现了另一个错误信息。通过不断的查询,得到答案。不要打开在tools文件夹的monitor.bat,在tools\lib\monitor-x86_64文件夹下打开monitor.exe 。OK,终于成功打开了。泪流满面T.T。
三、虽然成功打开了andriod device monitor,但是连接实体机之后,竟然除了我重新编译过的可调试的APP之外,一个其他的进程都没有。可是我看教程上的device monitor 显示的是手机或者模拟器的全部进程啊!!!之后就开始了我的将手机设置为可调式模式的苦逼之旅了。。。

Android 动态分析,将手机设置为可调试模式

方法链接:

https://blog.csdn.net/hp910315/article/details/82769506

本人遇到的问题和解决方法

我所用的方法是上述链接中的第三种,也就是利用xposed框架,**BDopener,但是安装的框架版本要仔细选择。。。有些版本会提示你无法链接网络,有些则是xposed框架未安装,当我好不容易又找到了可下载的框架,下的确实最新的version89版本,接着就是提示框架未**,我用的是魅族的手机,之前已经root过一次,但是我用re文件管理器的时候,却提示手机未root。因为截图太麻烦,在这里就不放截图了。直接来说我出现的问题的解决方法:后来把手机恢复出厂设置,再用kingroot手机版root,接着找到可以选择
框架版本的xposed框架,选择version 80的版本,出现框架**成功。然后**BDopenr工具,这样子就可以接到电脑端使用andriod device monitor 进行任意APP调试了。附上软件的链接:
链接:https://pan.baidu.com/s/1XsrczmDraOFatuGrYuQCMQ
提取码:5p9u
链接永久有效

最后再提一下,AMD的CPU如果用Andriod studio进行模拟器调试的话,会很麻烦的。这个问题我再查阅了许多资料后,用了Android stuido提供的模拟器,外接模拟器太难了,不过用腾讯手游助手打开的模拟器就能连上,但是我只是用来调试自己写的APP,因为调试别的APP的话就会出现如何安装,如何连接上device monitor等一系列问题。所以转用实体机调试了。没想到啊,问题还是那么多。

手记给自己备忘用的,不知道能否帮到其他的人。下面附上实体机成功连接的图
在这里插入图片描述