0
我有一個Android庫的jar,可以直接使用,或者在另一個包裝器(如PhoneGap或Xamarin)中使用。找出是否在一個插件中使用android java類
是否有一種可靠的方法來檢查該庫中的類的環境,並報告該庫是否在包裝器中使用?
我有一個Android庫的jar,可以直接使用,或者在另一個包裝器(如PhoneGap或Xamarin)中使用。找出是否在一個插件中使用android java類
是否有一種可靠的方法來檢查該庫中的類的環境,並報告該庫是否在包裝器中使用?
您可以檢查堆棧跟蹤以查找您知道與包裝器關聯的類。例如:
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
}
}
}
謝謝,我已經想到這一點(這是我的「B計劃」),但我不知道這是正確的方式(?如果包名明天改變什麼) – 2014-08-28 14:36:37
我不是真的很確定你怎麼能做到這一點。我很確定所有的方法都會在一定程度上變得脆弱。 – 2014-08-28 14:38:23