android studio...混淆打包全揭秘


  前言,當前android studio使用的版本較新,低版本的如果有差異,或者問題,歡迎拍磚!

1、修改配置文件

  

  找到配置文件,build.gradle,修改如下。

  

 1 signingConfigs {
 2         release {
 3             // 下面各值的意思將在后續進行講解
 4             storeFile file('release.keystore')
 5             storePassword "123456"
 6             keyAlias "androiddebugkey"
 7             keyPassword "123456"
 8         }
 9         debug {
10             storeFile file('release.keystore')
11             storePassword "123456"
12             keyAlias "androiddebugkey"
13             keyPassword "123456"
14         }
15     }
16 
17     buildTypes {
18         release {
19             minifyEnabled true // 設置代碼進行混淆
20             proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
21             signingConfig signingConfigs.release // 簽名配置
22         }
23     }

以前版本中。

  a> 我們使用的是runProguard不過現在是使用minifyEnabled了。設置為true就是進行混淆。

  b> proguradFiles 指定配置混淆項目的文件,可以看到使用的是progurad-rules.pro。這是我們后續配置排除混淆和運行環境會用到的。

 

2、創建KeyStore文件

   

  進入此文件下,我們可以看到我們已經有的*.keysotre文件。

 

  我這里已經有了一個debug.keystore文件了,不過我暫時用不着,也不記得密碼啥子的了。

  所以我們重新生成一個,也可以刪除原有內容,然后重新生成一個文件。

  

當然,我們要先進入.android文件夾下面才能操作。運行cmd => 輸入:cd .android =>再輸入我們的命令

keytool -genkey -v -keystore release.keystore -alias androiddebugkey -keyalg RSA -validity 10000

完成后續的生成這樣一個release.keystore文件我們就生成了。生成的文件,我們需要拷貝到和上面的配置(build.gradle),同目錄下即可。

好了,下面就再次運行程序就已經加密了。不過我們也要配置后續的環境。

  

3、生成重新生成代碼,反編譯后可以查看文件已經加密了

  progurad-rules.pro

  

1 -optimizationpasses 5
2 -dontusemixedcaseclassnames
3 -dontskipnonpubliclibraryclasses
4 -dontpreverify
5 -verbose

添加如下內容。這樣完整的混淆后的文件我們就可以使用了。

 

注:如果你使用了第三方的 jar.又不需要混淆,或者已經混淆為了避免出問題。你可以在progurad-rules.pro文件中加上下面內容。

-dontwarn net.youmi.android.**
-keep class net.youmi.android.** {
*;
}

這里使用了有米舉例。。。

 

4、參考網頁:

  http://blog.csdn.net/zhaoxiao2008/article/details/7443020    debug.keystore文件不存在解決辦法

  http://blog.csdn.net/hudashi/article/details/9016805      android混淆打包

  http://www.bkjia.com/Androidjc/924623.html          快速掌握 Android Studio 中 Gradle 的使用方法

  http://www.cnblogs.com/youxilua/archive/2013/05/20/3087935.html       用Gradle 構建你的android程序

 

  歡迎拍磚哈!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM