[Soot-list] Unable to detect inner classes present in an apk using isInnerClass()

Aniya Aggarwal aniya1234 at iiitd.ac.in
Fri Jul 11 09:36:06 EDT 2014


Hi All,
I need to detect the inner classes present in an Android app (apk file).
The approach I have used is to iterate over all classes using
SceneTransformer and check if isInnerClass() on a class returns true.

For instance, there is an activity named "MyActivity" in the test apk which
has B as an inner class. For class B SootClass.isInnerClass() should return
true and SootClass.getOuterClass() should return MyActivity. But, on the
contrary the two method calls return false and null respectively.


public class MyActivity extends Activity {

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    A();
  }

  private void A() {
    B b = new B();
    b.display();
  }

  private class B {
    public void display() {
     System.out.print("Hi");
    }
  }
}

I cannot really figure out how to get it to work correctly. Any help on
that will be highly appreciated!

Thanks
Aniya



Thanks & Regards,
Aniya Aggarwal
MT-12034
M.Tech CSE (Data Engineering)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.CS.McGill.CA/pipermail/soot-list/attachments/20140711/b2ade485/attachment-0003.html 


More information about the Soot-list mailing list