内容简介:下载地址:1.将apk转成smalijava -jar baksmali-2.2.6.jar disassemble 201901231140356079733.apk -o /Users/meetyou/mypojie/src
下载地址: https://bitbucket.org/JesusFreke/smali/downloads
1.将apk转成smali
java -jar baksmali-2.2.6.jar disassemble 201901231140356079733.apk -o /Users/meetyou/mypojie/src
2.导入AndroidStudio
一直Next!!!
工程创建成功后,在src目录上右键并选择 Mark Directory As——Sources Root
在Module Settings中勾选一个SDK版本,进行构建
旧方法废弃~
这时候,我们要调试某个APP,按照以往的做法,我们需要先
让APP以调试的形式开起来
adb shell am start -D -n com.test.appstore/.AppStoreActivity
然后再进行tcp端口的转发:
查询端口:adb shell ps | grep com.test.appstore
u0_a110 11259 917 2346792 54944 futex_wait_queue_me 0 S com.test.appstore
进行转发:adb forward tcp:8899 jdwp:11259
然后在AS中配置这个转发的tcp端口:8899
然后运行~~~~~~~~!!!!调试,经常报错 这两种错误,你就止步于此了哈
新的调试方案:
首先思考下,我们喜欢这种Android Studio直接打了断点,然后调试的方式,但是为什么,我们现在没办法用。
因为我们用的是smali的语法文件,不是一个完整的Android项目
问题:我们在于找不到那个小虫子的按钮在哪里~
但是这个功能,Android Studio里是存在的,换个思路我们只要找到按钮能启动就行了哈。
---->这边我们从keymap 快捷键入手
设置一下快捷键:我这边是设置成这样,然后Ok即可,接下来就可以享受超级好的交互体验了。
1.一样需要启动app并且等待调试。
adb shell am start -D -n com.test.appstore/.AppStoreActivity
(当然,apk在xml里可能设置不可调试,这种情况要么用打包改xml(可能失败),要么用xposed hook掉直接改成可调试状态)
//https://github.com/deskid/XDebug 让所有进程处于可以被调试的状态
XposedBridge.hookAllMethods(Process.class, “start”, debugAppsHook);
private static final int DEBUG_ENABLE_DEBUGGER = 0x1;
private XC_MethodHook debugAppsHook = new XC_MethodHook() {
@Override
protected void beforeHookedMethod(MethodHookParam param)
throws Throwable {
XposedBridge.log("-- beforeHookedMethod :" + param.args[1]);
int id = 5;
int flags = (Integer) param.args[id];
if ((flags & DEBUG_ENABLE_DEBUGGER) == 0) {
flags |= DEBUG_ENABLE_DEBUGGER;
}
param.args[id] = flags;
}
};
2.按下设置好的快捷键,选中App进程,按下OK
(如果你这边是这样,那很不幸,你还需要多做一步比较复杂的操作)
一切来得这么突然~~~~~~~!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- Gradle插件开发系列之gradle插件调试方法
- eruda 的 webpack 插件,帮助调试移动端网页
- PerDev 1.1 发布,for Per.js 2.5 版本的官方调试插件
- PerDev 1.2 发布,for Per.js 2.5+ 版本的官方调试插件
- iOS常用调试方法:断点调试
- 断点调试和日志调试之间的平衡点:函数计算调试之 Python 篇
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
断点:互联网进化启示录
[美]杰夫·斯蒂贝尔 / 师蓉 / 中国人民大学出版社有限公司 / 2014-11-1 / CNY 49.00
一部神经学、生物学与互联网技术大融合的互联网进化史诗巨著。 我们正置身网络革命中。互联网的每一丝变化都与你我息息相关。当科技变得无处不在时,它就会改变你我。在《断点》一书中,大脑科学家和企业家杰夫·斯蒂贝尔将带领读者来到大脑、生物与技术的交汇处,向读者展示生物学和神经学是如何与互联网技术发生联系的;我们是如何通过生物学上的前车之鉴,来预测互联网的发展的;互联网在经历增长、断点和平衡后又会发生......一起来看看 《断点:互联网进化启示录》 这本书的介绍吧!