2016-05-18 34 views
0

我寫了一個java庫,我不希望用戶能夠看到源代碼。因此,我使用proguard來將java庫模糊處理成調試並釋放AAR。我試圖通過將它作爲AAR文件導入來測試演示項目中的模糊處理。當我導入發行版AAR文件時,所有內容都被模糊處理,我甚至無法解析這些符號。如何將Proguard混淆模塊導入Android Studio?

有什麼辦法可以混淆源代碼,但允許將AAR導入到另一個項目中?類似於iOS中的靜態庫/框架。

感謝

回答

0

你必須確保保持類名和方法「原樣」對於那些使用您的應用程序庫外部訪問這些類。

例如,爲了保持由外部的應用程序使用的類聲明的所有公共方法和變量,以下內容添加到您的proguard-project.txt文件:

-keep public class com.your.class {public *;} 

更多信息請參見here

+0

感謝您的快速響應。我迷惑了工作!最後一件事是我得到了'java.lang.NoClassDefFoundError:失敗的解決方案:Lcom/google/common/hash/Hashing;'我使用了一些外部庫。我試過''''-keep public class com.google.common。** { public *;} '''''但它似乎不起作用。 – sonoluminescence

+0

嘗試添加此 '-keepattributes例外,InnerClasses,已棄用,EnclosingMethod' –