android studio...混淆打包全揭秘
2015-01-10 15:25
295 查看
前言,当前android studio使用的版本较新,低版本的如果有差异,或者问题,欢迎拍砖!
找到配置文件,build.gradle,修改如下。
以前版本中。
a> 我们使用的是runProguard不过现在是使用minifyEnabled了。设置为true就是进行混淆。
b> proguradFiles 指定配置混淆项目的文件,可以看到使用的是progurad-rules.pro。这是我们后续配置排除混淆和运行环境会用到的。
进入此文件下,我们可以看到我们已经有的*.keysotre文件。
我这里已经有了一个debug.keystore文件了,不过我暂时用不着,也不记得密码啥子的了。
所以我们重新生成一个,也可以删除原有内容,然后重新生成一个文件。
当然,我们要先进入.android文件夹下面才能操作。运行cmd => 输入:cd .android =>再输入我们的命令
keytool -genkey -v -keystore release.keystore -alias androiddebugkey -keyalg RSA -validity 10000
完成后续的生成这样一个release.keystore文件我们就生成了。生成的文件,我们需要拷贝到和上面的配置(build.gradle),同目录下即可。
好了,下面就再次运行程序就已经加密了。不过我们也要配置后续的环境。
添加如下内容。这样完整的混淆后的文件我们就可以使用了。
注:如果你使用了第三方的 jar.又不需要混淆,或者已经混淆为了避免出问题。你可以在progurad-rules.pro文件中加上下面内容。
这里使用了有米举例。。。
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程序
欢迎拍砖哈!
1、修改配置文件
找到配置文件,build.gradle,修改如下。
signingConfigs { release { // 下面各值的意思将在后续进行讲解 storeFile file('release.keystore') storePassword "123456" keyAlias "androiddebugkey" keyPassword "123456" } debug { storeFile file('release.keystore') storePassword "123456" keyAlias "androiddebugkey" keyPassword "123456" } } buildTypes { release { minifyEnabled true // 设置代码进行混淆 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' signingConfig signingConfigs.release // 签名配置 } }
以前版本中。
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-optimizationpasses 5 -dontusemixedcaseclassnames -dontskipnonpubliclibraryclasses -dontpreverify -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程序
欢迎拍砖哈!
相关文章推荐
- android studio 混淆打包全揭秘
- [置顶] Android Studio多渠道打包和代码混淆教程 【亲测可用】
- android studio 将引用第三方jar和.so的项目打包jar并混淆
- android studio环境下代码混淆(混淆完了直接打包就可以运行)
- Android Studio 打包混淆时getDefaultProguardFile报错
- 【Android Studio】代码混淆与多渠道打包
- 使用Android Studio手把手教你将应用打包+代码混淆
- Android Studio多渠道打包和代码混淆教程
- Android Studio 打包成jar文件并混淆代码
- Android Studio打包混淆问题总结
- Android Studio(十一):代码混淆及打包apk
- android studio 代码混淆打包错误 The same input jar is specified twice
- Android Studio混淆打包
- Android Studio 打包混淆
- 使用Android Studio 混淆签名打包apk流程
- Android studio 代码混淆及打包apk
- Android Studio 混淆打包
- Android Studio(十一):代码混淆及打包apk
- Android Studio 混淆打包
- Android Studio 项目混淆打包时,报错Caused by: java.lang.NoSuchMethodError: android.util.Xml.newPullParser