您的位置:首页 > 移动开发

Sign Your App签名应用,Android studio打包生成release版本

2016-10-31 14:48 956 查看
以下是读Android官网Sign Your App得到的一些总结:https://developer.android.com/studio/publish/app-signing.html上面链接打不开,肯定没翻墙(如何翻墙?百度lantern,下载这个软件打开就可以用了)先分清楚3个概念:debug版本、release版本、混淆debug版本:就是我们平常写程序的时候用run安装在手机上面调试的那种,这种东西应用商店是不会接收的。顶多我们调试用;release版本:要发布上线的版本,这时候app必须签名(签名是什么意思?为了保证唯一性android搞的)混淆:发布release版本,混淆有两个优点:1、安全(不被反编译,让人家看你源代码)2、xxx.apk变小了我们发布relea版本也可以不混淆,但是风险自己承担,apk那么大谁下载你的啊。所以在Android Studio中,混淆同时也是压缩。minifyEnabledfalse
打包release版本步骤1、新建Key Store(这一步不是难事)

Sign Your Release Build(在官网这个标题下有步骤)

2、key建立好了,发布的两种方式(1)Android Studio工具栏 Build -> Generate Signed APK -> 选key(选过了就不用了) -> Next  -> Finish直接点完了,就可以在APK D饿死提nation Folder文件夹下(刚才点Finish界面有,不记得自己回过头看),会有app-release.apk(2)1、Project Structu中配置Signing   2、在Build Types中选择 Under Signing Config,select the signing configuration you just created.上面两步弄完了,你会发现在app下面的build.gradle下多了些代码
signingConfigs {
config_test {
keyAlias 'testkey'
keyPassword 'qwerty'
storeFile file('C:/Users/ysc/ysc_keystore/testkey.jks')
storePassword '123456'
}
}
buildTypes {release {minifyEnabled falseproguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'signingConfig signingConfigs.config_test}}
多了signingConfigs,然后buildTypes也多了一句话。自己试了就知道了。
以前我还以为这些代码自己敲出来的。也许当然也可以。但是谁没事,整天记这么多配置代码?那也是有毛病。
signingConfigs是靠配置出来的,不用自己写。当初也是被各种博客坑的不浅,反正大家最好看官方文档。
3、在Android Studio左下角,有这么个玩意儿把Build Variant变成release4、然后在Android Studio工具栏Build -> Build APK注意这次生成的xxx.apk就不是在app的根目录下面了,而是在这里在那个输出目录里面。反正网上各种乱起八糟的各种文档,写得很乱,我百度一下,没搞懂,自己看了Android官网文档,稍微明白一些。

总结

很多app/build.gradle的内容修改,可以在Project Structure里面修改,自己多研究研究。

下面是如何打开混淆的开关所在位置

我的博客写得也是比较乱的。时间紧,凑合看。

Flavors用法

目前我还没用过。不知道啥用处,貌似可以用来打包不同签名的包(有啥用我也不知道)官网这么说的,可以打包很多不同你想要的release包If your project uses product flavors,you can select multiple product flavors while holding down the Ctrl keyon Windown/Linux, or theCommand key on Mac OSX. Android Studio will generate a separateAPK for each selected product flavor.大概就这些,不懂看android官网
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: