android程式碼混淆時,如何防止第三方jar包被混淆導致程式出錯
阿新 • • 發佈:2019-01-22
程式碼混淆是給其他人破解自己的程式帶來更多困難,但混淆不能影響我們程式的正常執行.最近在程式碼混淆時出現一個問題:就是第三方jar被混淆時出現程式錯誤,錯誤主要是說找不到相關的類.
這個問題也不奇怪,我們要使用的第三方jar包被混淆成我們程式不能認識的程式碼,結果肯定找不到類.我們要如何解決這個問題呢?
解決方案:
1.首先把android工程中project.properties檔案proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt前註釋符"#"號去掉.
2.找到檔案proguard-project.txt,開啟並新增如下內容:
-ignorewarnings # 作用是忽略混淆時出現的警告
-libraryjars libs\httpcore-4.0.1.jar # 作用指定第三方jar包路徑
-dontwarn org.apache.* # 忽略警告
-keep class org.apache.** { *;} # 指定我們不進行混淆的類包, 其中org.apache.**{*;}為類包名
3.匯出apk包,再用破解工作破解,你會發現程式碼被混淆(注意:正常情況下,工程bin目錄下生成的apk包是沒被混淆的包)