zoukankan      html  css  js  c++  java
  • 动态调试某个apk的smali代码,微信举例

    本地环境:

      PC:windows 10,Intellij IDEA (android studio应该一样的)

      手机:nexus5   8.1系统,

      其他依赖:smalidea插件,xposed

    插件  https://github.com/JesusFreke/smali

    我使用的版本的下载链接,也是官方的:https://bitbucket.org/JesusFreke/smali/downloads/smalidea-0.05.zip

    这个插件不能在线安装,需要下载后通过Install plugin from desk来安装

    apktool 反编译出smali,多dex的apk会反编译出很多个smali文件夹,我们把它们复制到同一个文件夹内

    然后在命令行启动ddms,命令是monitor,如果没配置环境变量可以去Sdk ools里运行,启动后应该是这个样子的

     但是此时应该看不到应用列表,需要安装一个xposed模块来把微信变成debuggable的,我用的是BDOpener,地址在:https://github.com/riusksk/BDOpener

    模块生效后应该和上图就差不多了,但是只能看到debug列表,不能通过正常的点小虫子的方式debug,这时去手机端设置。

     

    在开发者选项中找到 选择调试应用,选上微信,然后打开等待调试程序的开关。

    这时运行微信就会变成这样

     

     是不是熟悉多了?

    然后回到IDEA,来配置我们的调试器。

    先把刚才反编译出来的smali整理一下,放到一个src文件夹,比如wechat/src

    然后用IDEA打开项目,Android Studio可以用Open an existing Android Studio Project

    然后需要右键点击src,选择Mark Directory As   >  Sources Root

    然后给项目设置一个jdk,我的是1.8

    然后配置run config

     

    取个名字,配好端口号就行。

    让手机端打开微信,运行我们的调试器吧,当然手机要usb连接电脑。

    出现下图就是成功连接上了,

    然后就可以愉快的下断点了

  • 相关阅读:
    一个简单的CSS3+js 实现3D BOX
    jquery $.extend()扩展插件获取焦点或失去焦点事件
    菜单滑动
    全选反选
    纯css,编写菜单移入效果
    登录窗口抖动效果
    [WCF]WCF起航
    FastReport 数据过滤
    [Oracle]TRIGGER
    两种递归方法的比较
  • 原文地址:https://www.cnblogs.com/xirtam/p/11046513.html
Copyright © 2011-2022 走看看