Jimple

Soot program converts Android application file into Jimple code.

Jimple contains two general concepts

  • Local – local variables
  • Units – statements

 

IdentityStatements

  • $r0 := @this: de.ecspride.RV2013;
  • $r1 := @parameter(): android.view.View;

 

AssignStatements

  • Assignments between locals, constants, and fields

 

CastExpr

  • Right-hand side of the assignment is a typecast
  • $r4 := (android.widget.EditText) $r1;

 

Four different expressions to call methods

  • VirtualInvokeExpr
    • Virtual dispatch invoke to an instance method
  • StaticInvokeExpr
    • Calling a static method
  • InterfaceInvokeExpr
    • Calling a method of an object of which only its interface type is known
  • InvokeStmt
    • Any invoke expression which can be part of standalone statement

Leave A Comment

Your email address will not be published. Required fields are marked *