1. android studio / gradle
androidandroid studio會同時使用預定義(預設)的混淆編譯規則和自定義的混淆規則(在proguard-rules.pro檔案中)。}}
android proguard doc
thegetdefaultproguardfile('proguard-android.txt')
method obtains the default proguard settings from the android sdktools/proguard/
folder.
-libraryjars ***
新增了反而有可能在打包的時候遭遇同乙個jar多次被指定的錯誤,
一般只需要新增忽略警告和保持某些class不被混淆的宣告。
例如
#忽略警告的宣告
-dontwarn org.androidannotations.api.rest.**
#保留簽名 這個比較重要
-keepattributes signature
#只有乙個 * 表示僅僅是該目錄下的類不混淆,子目錄依然會被混編
-keep class cn.beecloud.*
#兩個 * 表示該目錄下的所有類 包括子目錄下的都不混淆編譯
-keep class com.google.**
#一般用到的自定義bean(entity)也需要新增例外
#...
2. eclipse adt
在專案根目錄下檔案 project.properties 中新增
proguard.config=proguard-project.txt
然後在專案根目錄下檔案 proguard-project.txt 中定義混淆內容,需要新增的內容相對來說比較多,而且
-libraryjars ***
也是必須的。
不額外介紹,網上資源比較多。
android開發之 混淆編譯
眾所周知,android的apk檔案是非常容易被反編譯的,這樣對於開發者來說,辛辛苦苦開發應用被破解是一件很令人懊惱的事情,谷歌也認識到了這一點,所以從2.3之後就為開發者提供了乙個 混淆工具proguard,新版的adt建立的工程預設都會有多兩個 混淆檔案。proguard.cfg就是傳說中的混淆...
android混淆和反編譯
buildtypes 這個proguard android.txt是sdk中groguard預設的檔案,具體位址在 opt sdk tools proguard proguard android.txt 而proguard rules.pro是as中專用的proguard配置檔案,其實只是字尾名不同...
android混淆和反編譯
buildtypes 這個proguard android.txt是sdk中groguard預設的檔案,具體位址在 opt sdk tools proguard proguard android.txt 而proguard rules.pro是as中專用的proguard配置檔案,其實只是字尾名不同...