android 反编译改log,android 反编译,逆向,注入LOG

反编译smali注入显示LOG的代码,备以后用:

.class public Lnet/iaround/connector/DebugClass;

.super Ljava/lang/Object;

.source "DebugClass.java"

# direct methods

.method public constructor ()V

.locals 0

.prologue

.line 5

invoke-direct {p0}, Ljava/lang/Object;->()V

return-void

.end method

.method public static showLog(Ljava/lang/String;)V

.locals 5

.parameter "log"

.prologue

.line 9

new-instance v2, Ljava/lang/Exception;

invoke-direct {v2}, Ljava/lang/Exception;->()V

invoke-virtual {v2}, Ljava/lang/Exception;->getStackTrace()[Ljava/lang/StackTraceElement;

move-result-object v2

const/4 v3, 0x1

aget-object v1, v2, v3

.line 10

.local v1, traceElement:Ljava/lang/StackTraceElement;

new-instance v2, Ljava/lang/StringBuilder;

invoke-virtual {v1}, Ljava/lang/StackTraceElement;->getClassName()Ljava/lang/String;

move-result-object v3

invoke-static {v3}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;

move-result-object v3

invoke-direct {v2, v3}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V

const-string v3, "."

invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

move-result-object v2

invoke-virtual {v1}, Ljava/lang/StackTraceElement;->getMethodName()Ljava/lang/String;

move-result-object v3

invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

move-result-object v2

const-string v3, ":\t"

invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

move-result-object v2

invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

move-result-object v0

.line 11

.local v0, pre:Ljava/lang/String;

const-string v2, "yangjianchao"

new-instance v3, Ljava/lang/StringBuilder;

invoke-static {v0}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;

move-result-object v4

invoke-direct {v3, v4}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V

invoke-virtual {v3, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

move-result-object v3

invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

move-result-object v3

invoke-static {v2, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I

.line 12

return-void

.end method

# virtual methods

.method public o()Ljava/lang/String;

.locals 1

.prologue

.line 15

const-string v0, "888888888888888"

.line 21

.local v0, rtn:Ljava/lang/String;

return-object v0

.end method

调用方法:

invoke-static {p2}, Lnet/iaround/connector/DebugClass;->showLog(Ljava/lang/String;)V

原文:http://blog.csdn.net/ultimater/article/details/44454707

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值