smial基础语法及其常用代码块

前言

当前文章主要记录smial常用的语法代码块!

一、Log打印(插桩)

代码如下(示例):

  const-string v0,"一个哈巴狗,坐在大门口!"
  const-string v1,"tag"
 invoke-static {v1,v0}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I

二、方法调用

1.virtual method 是指 protected和 public 函数

代码如下(示例):

#资源ID
const v1, 0x7f0b005b
invoke-virtual {p0, v1}, Lhfdcxy/com/myapplication/MainActivity;->findViewById(I)Landroid/view/View;
#获取执行结果
move-result-object v1

2.direct method 是指private函数

代码如下(示例):

#实例化StringBuilder 对象
new-instance v6, Ljava/lang/StringBuilder;

invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V

3.invoke-static 是指static函数

代码如下(示例):

invoke-static {}, Lcom/aaa;->CheckSignature()Z

4.invoke-super method 是指父类函数

代码如下(示例):

invoke-super {p0}, Landroid/app/Activity;->onStart()V

5.invoke-xxxxx/range method 当方法的参数多于5个时(含5个),不能直接使用以上的指令,而是在后面加上“/range”,range表示范围,使用方法也有所不同

代码如下(示例):

 invoke-virtual/range {p1 .. p1}, Lcom/csdk/basicprj/bean/AuthorInfoBean;->getChannelKey()Ljava/lang/String;

6.invoke-interface 是指调用接口函数

代码如下(示例):

invoke-interface {v0, v1, v2}, Lcom/aaa/CallBackAll;->exitFail(ILjava/lang/String;)V

总结

以上内容就是对smial的的
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值