2014-08-28 42 views
0

我有一个Android库的jar,可以直接使用,或者在另一个包装器(如PhoneGap或Xamarin)中使用。找出是否在一个插件中使用android java类

是否有一种可靠的方法来检查该库中的类的环境,并报告该库是否在包装器中使用?

回答

1

您可以检查堆栈跟踪以查找您知道与包装器关联的类。例如:

String[] suspiciousPackages = {"com.wrapper.foo", "bar.baz.bazamm"};  

StackTraceElement[] elements = Thread.currentThread().getStackTrace(); 
for (StackTraceElement element : elements) { 
    for (String s : suspiciousPackages) { 
     if (element.getClassName().startsWith(s)) { 
      // in a wrapper 
     } 
    } 
} 
+0

谢谢,我已经想到这一点(这是我的“B计划”),但我不知道这是正确的方式(?如果包名明天改变什么) – 2014-08-28 14:36:37

+0

我不是真的很确定你怎么能做到这一点。我很确定所有的方法都会在一定程度上变得脆弱。 – 2014-08-28 14:38:23

相关问题