Smali Syntax – Types
.method private doSomething()V
V void
Z boolean
B byte
S short
C char
F float
I int
J long
D double
[ array
Smali Syntax – Classes
Lcom/example/myapp/MyClass;
full name space slash separated
prefixed with L
suffixed with ;
StringBuilder sb = new StringBuilder(“str”)
---->
new-instance v1, Ljava/lang/StringBuilder;
const-string v2,“str"
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
Smali Syntax – Methods
method private delayedAnimationFrame(J)Z
.registers 8
.parameter "currentTime”
private
: keyworddelayedAnimationFrame
: method name(J) Z
: parameters/return
Smali Syntax – Registers
.locals : # registers of a method without parameters
#parameters -> # input parameters + (p0: this reference)
v0 - local 0 p0 - parameter 0 (this) p1 - parameter 1
Smali Syntax – Opcodes
Smali Syntax – Opcodes
invoke-super vx, vy, …
new-instance vx
invoke-direct vx, vy, …
const-string vx
invoke-virtual vx, vy, …
return-void
No comments:
Post a Comment