[Soot-list] Question about instrument using soot

nudt_liujihao nudt_liujihao at 163.com
Sun Mar 26 16:37:43 EDT 2017


Hi everyone,
     I want instrument android apps using soot, and insert the following statements:
                 Date date = new Date();
                 Long time=date.getTime();




    I write some code, as follows:
                SootMethod mytime = Scene.v().getMethod("<java.util.Date: long getTime()>");
  List<Unit> beforegenerated = new ArrayList<Unit>();
  List<Unit> aftergenerated = new ArrayList<Unit>();
  Local startdate = generateNewLocal(body, RefType.v("java.util.Date"));
  VirtualInvokeExpr anotherinvokeExpr = Jimple.v().newVirtualInvokeExpr(startdate,mytime.makeRef());
  Local starttime =Jimple.v().newLocal("starttime",RefType.v("long"));
  body.getLocals().add(starttime);
  AssignStmt astmt1 = Jimple.v().newAssignStmt(starttime, anotherinvokeExpr);
  beforegenerated.add(astmt1);
  body.getUnits().insertBefore(beforegenerated, u);




      However, I encounter the errors:
                          Exception in thread "main" (<com.android.volley.toolbox.HttpClientStack: org.apache.http.HttpResponse performRequest(com.android.volley.Request,java.util.Map)>) no defs for value: $r7!
 at soot.validation.UsesValidator.validate(UsesValidator.java:77)
 at soot.Body.validate(Body.java:256)
 at soot.jimple.JimpleBody.validate(JimpleBody.java:120)
 at soot.jimple.JimpleBody.validate(JimpleBody.java:110)
 at instrumentation.MyBodyTransformer.internalTransform(MyBodyTransformer.java:201)
 at soot.BodyTransformer.transform(BodyTransformer.java:51)
 at soot.Transform.apply(Transform.java:106)
 at soot.BodyPack.internalApply(BodyPack.java:49)
 at soot.Pack.apply(Pack.java:126)
 at soot.PackManager.runBodyPacks(PackManager.java:916)
 at soot.PackManager.runBodyPacks(PackManager.java:609)
 at soot.PackManager.runBodyPacks(PackManager.java:508)
 at soot.PackManager.runPacksNormally(PackManager.java:485)
 at soot.PackManager.runPacks(PackManager.java:392)
 at instrumentation.Main.main(Main.java:12)



Could anybody help me?
Thanks a lot.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.CS.McGill.CA/pipermail/soot-list/attachments/20170327/05d2eb7a/attachment.html>


More information about the Soot-list mailing list