天天看點

Android Studio(十一):代碼混淆及打包apk Android Studio相關部落格: Android Studio(二):快捷鍵設定、插件安裝 代碼混淆導出APK檔案

<a target="_blank" href="http://blog.csdn.net/zuiwuyuan/article/details/48201111">android studio(一):介紹、安裝、配置</a>

<a target="_blank" href="http://blog.csdn.net/zuiwuyuan/article/details/48201141">android studio(三):設定android studio編碼</a>

<a target="_blank" href="http://blog.csdn.net/zuiwuyuan/article/details/48201155">android studio(四):android studio內建genymotion</a>

<a target="_blank" href="http://blog.csdn.net/zuiwuyuan/article/details/48201171">android studio(五):修改android studio項目包名</a>

<a target="_blank" href="http://blog.csdn.net/zuiwuyuan/article/details/48201185">android studio(六):android studio添加注釋模闆</a>

<a target="_blank" href="http://blog.csdn.net/zuiwuyuan/article/details/48201213">android studio(七):項目從eclipse到android studio遷移</a>

<a target="_blank" href="http://blog.csdn.net/zuiwuyuan/article/details/48444487">android studio(八):android studio設定教程</a>

<a target="_blank" href="http://blog.csdn.net/zuiwuyuan/article/details/48201655">android studio(九):引用jar及so檔案</a>

<a target="_blank" href="http://blog.csdn.net/zuiwuyuan/article/details/48201713">android studio(十):添加assets目錄</a>

<a target="_blank" href="http://blog.csdn.net/zuiwuyuan/article/details/48552701">android studio(十一):代碼混淆及打包apk</a>

<a target="_blank" href="http://blog.csdn.net/zuiwuyuan/article/details/48636283">android studio(十二):打包多個釋出管道的apk檔案</a>

  最近終于把項目做完了,天天加班,累成狗了。 而昨日又忽聞慕和網絡ceo吳波猝然離世的消息,深感網際網路行業在高薪(其實好多人并不高薪哇

Android Studio(十一):代碼混淆及打包apk Android Studio相關部落格: Android Studio(二):快捷鍵設定、插件安裝 代碼混淆導出APK檔案
Android Studio(十一):代碼混淆及打包apk Android Studio相關部落格: Android Studio(二):快捷鍵設定、插件安裝 代碼混淆導出APK檔案
Android Studio(十一):代碼混淆及打包apk Android Studio相關部落格: Android Studio(二):快捷鍵設定、插件安裝 代碼混淆導出APK檔案

)的同時,也是高壓力高風險的啊,也在此希望廣大同行可以珍惜生命,遠離代碼,啊呸,是遠離加班熬夜!

  好啦,繼續今天的話題,當項目做完之後,作為一個稱職的開發者,接下來任務自然是打包測試釋出了。

  而打包之前,你必須要混淆你的代碼,前提是你不希望别人看到你的代碼!

  如果你不混淆你的代碼,會有怎樣的後果呢?知道不?

  通過反編譯你的apk檔案,你的源代碼和資源檔案都将暴漏無疑,就像光着屁股在别人眼瞎亂晃一樣,我覺得它們一定不好受。 作為一手造就它的你來說,怎麼能讓它不好受呢?

 好啦,知道不去混淆代碼會有怎樣的影響之後,那我們來看看如何在android studio上混淆你的工程代碼吧。

首先,在你的工程目錄下,找到proguard-rules.pro檔案,它就是你要進行編寫混淆配置的檔案:

Android Studio(十一):代碼混淆及打包apk Android Studio相關部落格: Android Studio(二):快捷鍵設定、插件安裝 代碼混淆導出APK檔案

光編寫該檔案還不夠哦,你還需要在你module的build.gradle檔案中引用該混淆檔案:

Android Studio(十一):代碼混淆及打包apk Android Studio相關部落格: Android Studio(二):快捷鍵設定、插件安裝 代碼混淆導出APK檔案

好了,知道在哪配置混淆檔案後,下面開始講講如何配置混淆:

混淆檔案 proguard-rules.pro 參數詳解:

以上是最基礎的配置,幾乎每個項目都需要進行這些地方的混淆(或保持不混淆)。

如果你仔細看過上方的注釋,就會了解一些基本代碼混淆政策了。 

隻是,這還遠遠不夠,因為你在項目中,總會不可避免的引用第三方的library庫或是jar包,那,如果你不能夠正确的混淆第三方的資源,可能會導緻你的應用無法使用。(我就因為忘了配置gson相關的混淆,導緻頁面一直沒有資料顯示,蛋疼的一筆)。

貼出我項目中關于第三方的混淆部分:

以上的配置,即是對一個項目的混淆配置了,相對比較完整,大家可以依葫蘆畫瓢,寫更多的配置,對于一些第三方項目的使用,一般官方會給出如何配置混淆,大家需要小心,别忘了配置。

好啦,如果你已經寫好自己的混淆配置檔案,不要忘了在build.gradle檔案中再次配置下,打開混淆檔案:

release節點下,minifyenabled設定為true。

  學會了如何混淆你的項目代碼之後,接下來,我們看下,如何使用android studio導出apk檔案吧。

(1)android studio菜單build-&gt;generate signed apk 

Android Studio(十一):代碼混淆及打包apk Android Studio相關部落格: Android Studio(二):快捷鍵設定、插件安裝 代碼混淆導出APK檔案

(2)彈出簽名選擇、建立視窗

Android Studio(十一):代碼混淆及打包apk Android Studio相關部落格: Android Studio(二):快捷鍵設定、插件安裝 代碼混淆導出APK檔案

(3)建立密鑰庫及密鑰,建立後會自動選擇剛建立的密鑰庫和密鑰(已擁有密鑰庫跳過) 

    點選“create new...”按鈕建立密鑰庫 

Android Studio(十一):代碼混淆及打包apk Android Studio相關部落格: Android Studio(二):快捷鍵設定、插件安裝 代碼混淆導出APK檔案

key store path:密鑰庫檔案的位址 

password/confirm:密鑰庫的密碼 

alias:密鑰名稱 

password/confirm:密鑰密碼 

validity(years):密鑰有效時間 

first and last name:密鑰頒發者姓名 

organizational unit:密鑰頒發組織 

city or locality:城市 

country code(xx):國家 

(4)選擇已存在密鑰庫及密鑰(在(3)中建立密鑰庫後跳過此步驟) 

    點選“choose existing...”按鈕找到密鑰庫檔案 

    key store password輸入已選擇的密鑰庫檔案的密碼 

    點選key alias後的“...”按鈕,選擇或者建立一個密鑰 

Android Studio(十一):代碼混淆及打包apk Android Studio相關部落格: Android Studio(二):快捷鍵設定、插件安裝 代碼混淆導出APK檔案

(5)點選“next”按鈕,選擇儲存路徑後,點選“finish”按鈕完成 

Android Studio(十一):代碼混淆及打包apk Android Studio相關部落格: Android Studio(二):快捷鍵設定、插件安裝 代碼混淆導出APK檔案

(全章結束)

繼續閱讀