之前給公司的App添加代碼混淆,在代碼的混淆過程也遇到了不少的問題,再加上最近學習了一下Android Studio插件的開發,所以就開發一個代碼混淆插件方便項目的代碼混淆。
截圖

第三方庫列表清單
目前插件的后台已集成了如下圖的第三方開源庫的代碼混淆以及基本的代碼混淆,還在努力地添加中,也歡迎大家通過new issue提交列表中沒有的第三方開源庫混淆代碼。(你認為微不足道的事情,也許可以幫到別人的大忙~)

使用
- 下載AndroidProGuard插件並安裝重啟。download
- 在菜單欄的Edit下拉菜單中選擇AndroidProGuard選項。
- 如果彈出成功對話框,就可以按Ctrl+V粘貼到項目的proguard-rules.pro文件。
- 根據proguard-rules.pro報錯的提示進行修改成。
- 將項目app下gradle文件將minifyEnabled修改成true就可以測試混淆效果。 (你可以使用AndroidKiller反編譯看一下效果,AndroidKiller的使用可以參考我寫的這篇文章here)
注意
-
實際的項目通常會有多個的Module,對於多個Module的代碼混淆網上資料比較少,經過我實驗得出:對於多個Module的項目,在應用的Module(即app)下的proguard-rules.pro文件添加混淆代碼以及在Gradle里minifyEnabled開啟即可。
-
如果項目在編譯的時候報warn信息,那么你可以使用-keep或者-dontwarn保留warn的類。
最后
我知道項目的代碼混淆一般通常混淆一次就可以了,很多人認為這個插件的意義不太,但是我可以告訴你我也是這么想的,可是我也無辦法阻止我的行動~哈哈~~
項目GitHub地址:https://github.com/zhonghanwen/AndroidProguardPlugin