2013-05-04 51 views
0

我的代碼工作正常,但應用的ProGuard後,我得到了以下異常Proguard的的NoSuchMethodError ITelephony

05-04 16:12:00.803: E/AndroidRuntime(22257): java.lang.NoSuchMethodError: com.android.internal.telephony.ITelephony.a

我是個有Itelephony.aidl但仍然得到錯誤。誰能告訴我是否有辦法解決這個問題?

在谷歌上,我無法獲得關於如何保持接口,接口成員和內部類以及內部類成員的示例的更多信息。

其實我想保留在我的應用程序的一切,但只是obsfucate和優化它。有沒有辦法實現它?

回答

6

你需要從ProGuard的,即添加此排除ITelephony類...

-keep class com.android.internal.telephony.ITelephony { *; } 

...進入你的proguard.cfg文件。你會在你的項目根文件夾中找到它。

Proguard是一種混淆代碼的工具,即通過應用各種優化(例如重命名類)使代碼變得更緊湊和更少可讀。因此,在某些情況下,這可能會對功能產生負面影響,例如,如果你考慮動態反射調用。

乾杯!

+0

謝謝..這沒有把戲 – Adithya 2013-05-04 18:09:40