1. 程式人生 > >Android jar包混淆

Android jar包混淆

在專案中,有時候我們會把某些程式碼,通過jar的形式,放到伺服器上,

然後在客戶端下載,用反射呼叫,這樣很方便,也能不通過升級APK隨時更新這部分程式碼,

但是這樣,別人也能拿到我們的jar隨意反編譯,就會暴露,

所以這個時候,我們就要搞安全工作。

百度告訴我們有兩種方法:1.jar混淆,2.加密。

加密的方法,我也試過,通過base64,把jar包加密了,然後本地解密成功,但是載入的時候懵逼了...所以放棄。

混淆

首先得匯出jar包,本人out,用eclipse

在需要被匯出的專案點選右鍵,然後選擇Export

這個時候,就在對應的位置,生成了一個5.jar   我的是在桌面,那個輸出地址可以自己規定

————————————————————————以上為第一步————————————————————

拿到這個jar之後,我們就可以開始混淆工作了

首先,我們進入SDK目錄,跟著對應的路勁,找到proguardgui.bat

開啟之後,可以看到一個命令視窗,等待一會就回彈出我們的混淆工具了

按照順序,選擇對應的txt檔案,用來生成我們自己的一個混淆配置檔案,大神也可以自己寫,

這個配置檔案在SDK目錄下的tools\proguard資料夾裡面,

開啟之後,點選左邊的PROCESS

點選儲存,儲存我們的配置資訊,然後找到這個a.pro

呼叫入口一定要keep,暴露出來,不然找不到入口

修改之後儲存,然後再用我們的混淆工具種,開啟,

具體操作和上面的開啟工具後的第一張相同,然後選擇輸入輸出,以及依賴的jar

記得將optimization中的optimize的勾去掉

最後,在process中點選右下角的process,就能生成混淆後的jar

如圖,成功

——————————————————————第三部,二次打包————————————————————————————————

最後一步,進入到sdk\build-tools\android-4.4W,具體版本自行決定

打包成功,完成