没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
Path Profiling for
Android App
Section 0: Overview
Section 1 :介绍如何构造Android App CFG(control-flow
graph)
Section 2 :介绍如何对Android App 进行path profiling
Section 3 :展示path profiling for Android App的测试效果
Section 4: path profiling for Android App的局限性以及未
来的改进方向
Section 1:构造Android App CFG
1.1基本思路:
1.Apktool反编译
App
Dalvik字节码
(smali)
2.分析控制结构特
征,将代码分块
public void function()
.locals x
. prologue
i-get v0, v1……
If eqz v0 :cond
i-get v2, v3……
goto :cond
……
return-void
3.将分块代码连接成
CFG
.catch ……{:try_start_0 ..
:try_end_0} :cond
2.分析控制结构特
征,将代码分块
3.将分块代码连接成
CFG
Section 1:构造Android App CFG
1.2代码分块与连接——if-else,for,try
:goto
const/4 v2, 0x0
sget-object
v0, …………/Handler;
if-eqz v0, :cond_0
sget-object v0, ……/Handler;
const/4 v1, 0x1
invoke-virtual {v0,
v1}, ……removeMessages(I)V
sput-object v2, ……/Handler;
:cond_0
sput-object v2, ……/Activity;
return-void
goto :goto
:try_start_0
const/16 v2, 0x2000
sget-object v0, ……/Handler;
:try_end_0
……
.catch ……Exception
{:try_start_0 .. :try_end_0} :
catch_0
F
T
:goto
sput-object v2, ……/Activity;
return-void
:catch_0
deal exception
goto :goto
catch
If-else and for
Try catch
next
剩余15页未读,继续阅读
资源评论
helloDesword
- 粉丝: 27
- 资源: 31
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功