AS+smalidea插件动态调式

往期推荐

JEB动态调试

Method Profiling

方法栈跟踪

Log插桩调试smali代码

一:Android Studio 调试的原理

使用 Android Studio 进行动态调试,通过 Android Studio 导入反编译出的完整的 smali 代码,设置好调试所需的条件,设置断点。将移动设备连接至 PC端,然后运行待调试的apk应用程序,当该应用程序执行流程,运行至smali代码的断点处时,就会触发断点。从而可以进行进一步的分析和调试,让程序的运行流程和中间参数更清晰。

二:Android Studio 调试的流程

1.下载并安装Android Studio工具和smalidea插件

下载两款工具以及安装Android Studio工具之前有过讲解,这里略过。

着重介绍安装smalidea插件,打开Android Studio工具,点击File,选择Settings,或者按快捷键Ctrl+Alt+S打开设置界面,点击Plugin,再点击install plugin from disk。找到之前我们下载的smalidea插件选中点击OK,插件就添加成功了,会弹出弹窗,提示重启Android Studio,点击重启,如下图所示。

注意:如果没有重启,smalidea是没有生效的,就会导致后面无法在smali代码上打断点。

在这里插入图片描述

2.反编译待调试的apk

使用AndroidKiller工具,反编译我们要调试的APK文件,反编译成功后,在“工程管理器”找到AndroidManiFest.xml文件,再找到该文件里的application标签,查看标签中是否存在android:debuggable=“true”属性,如果文件中不存android:debuggable=“true”,则需要进行添加,如下图所示。

在这里插入图片描述

探究:为什么要增加这个属性呢?

因为在开发的过程中,这个属性是由开发人员开发并调试的属性,但是在发布的时候这个属性会自动删除,而我们要调试该程序,就需要将其进行增加。当然如果是使用第三方模拟器或安卓自带模拟器,它是自动默认开启的,就不需要进

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值