大家好,又见面了,我是全栈君。
首先要注意一点,Android Studio中把proguard.txt已经命名为proguard-rules.pro,由此可见,採用Gradle打包,混淆规则文件的名称是不重要的。能够自己随便命名。
混淆规则跟原来一样。没有变化。不懂能够搜一下别人怎么写的。
增加签名文件。在Build->Generate Signed APK
就会看到以下的弹出框
假设没有签名文件就创建新的签名文件,假设已经有签名文件,那么选择签名文件的位置,并填写好password就能够点Next了。
创建签名文件的方式跟老版本号(Eclipse ADT)的签名方式一样,这里就不再多说了。
你会发现AS生成的签名文件是jks后缀名的,跟原来的能够说tore不一样。其实。签名文件也并非受文件名称影响。
Next后会弹出以下的框
在Buid Type中默认有两个选项,故名思议,我们寻经常使用的是debug,正式打包,我们须要用release。选中后点Finish就能够打包了。可是这样打包并没有做代码混淆。以下我们继续增加代码混淆。
选中项目的Open Module Setting,然后我们会看到以下这个框
我们选中app->Signing 点击 号,新增一般配置,这个配置就是刚刚须要手动输入和导入签名文件的操作,我们能够在这个config(能够随便命名)填好签名password和签名文件的路径。
然后我们再点到Build Types选卡
这个就是我们的正式发包的须要配置的内容。其它选默认。须要改两个地方:Signing Config,选择我们刚刚设置好的签名配置;在Proguard File这一栏选中项目中的proguard-rules.pro的绝对路径,也就是项目根文件夹下的app/proguard-rules.pro,然后点击ok。
Gradle会自己主动同步改动过的内容。
这个时候我们来看一下app文件夹下的build.gradle的内容。你会发现跟我们刚才配置的内容是一模一样的。
以下我能够打包正式签名的apk包。
有三种方式:
1. 在Build-> Generate Signed APK… 直接下一步下面一步就能够打包了;
2. 在AS 提供的终端中输入gradlew release,或者外部的终端打开到项目的跟文件夹再输入gradlew release。但这个前提是已经在本机安装了gradle。而且配置了环境变量,不然终端是无法识别这种命令的。
3. 使用AS默认Gradle插件,在我们窗体的最右边能够找到Gradle(默认是最小化),打开它并点击项目名称再下一层,看到有一个Tasks->build。找到assembleRelease(批量打包)并双击,就自己主动打包。
正式签名包假设没有更改过文件夹默认是在app文件夹下或者是app/build/output/apk文件夹下,个人比較喜欢放在后面那个文件夹。
还要注意一点。改动打包的版本号信息,须要在build.gradle中改动以下红色的内容,跟manifest.xml一样
defaultConfig {
applicationId ‘com.arjinmc.goddnessplan’
minSdkVersion 14
targetSdkVersion 22
versionCode 2
versionName ‘0.0.2’
signingConfig signingConfigs.config
}
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/115517.html原文链接:https://javaforall.cn