2014-08-28 40 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

相關問題