文/程序员男神
前言
最近跟朋友小聚了一下,感触颇深。作为一个在一年前进入社会的人来说,他们的迷茫就像当初的自己一样,没有目标,很浮躁,总是在羡慕别人的高工资以及待遇。却少了一点脚踏实地。回归正题,让我们脚踏实地的去学习吧,也许某个瞬间我们也和他们一样,慢慢的忘记了当初的梦想。
目录
签名打包:
(1)为什么签名?
(2)Android Studio自带签名打包
(3)命令行签名打包
概述
1、为了保证每个应用程序开发商合法ID,防止部分开放商可能通过使用相同的Package Name来混淆替换已经安装的程序,我们需要对我们发布的APK文件进行唯一签名,保证我们每次发布的版本的一致性(如自动更新不会因为版本不一致而无法安装)。
注:给我们自己开发的app签名,就代表着我自己的版权,以后要进行升级,也必须要使用相同的签名才行。签名就代表着自己的身份(即keystore),多个app可以使用同一个签名。
2、方式1:通过Android Studio进行签名:
选中app这个module,选择菜单栏"Build-Generate signed apk":
弹出如下界面:
如果你已经有了签名文件.jsk那么就选择③导入文件,这时①中就是文件路径,④是keystore的密码,⑤是别名,⑥是文件的密码。
我们这里默认没有.jsk文件。所以点击②新建一个.jsk文件。
填写如下图:
点击Next:
点击"finish"之后,就可以生成相应的Apk文件。
3、方式2:通过命令行的方式进行签名:
(1)加载Key Store:
我们先删掉上面的通过第一种方式所签名的apk文件。接下来进行第二种方式来签名,即命令行的方式。
这种方法是在假设你已经有了jsk文件的前提下面(这里我们用在第一中方法中生成的winningkey.jks),打开Project Stucture图形化界面:
可以看到在app的build.gradle中生成了:
signingConfigs {
release {
keyAlias 'test'
keyPassword 'XXXXXX'
storeFile file('E:/Projects/winningkey.jks')
storePassword 'XXXXXX'
}
}
接下来:
可以看到在app的build.gradle中生成了:
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.release
}
}
在Android Studio中的terminal 中使用gradlew assembleRelease命令,可以在outputs的apk中生成签名后的apk文件:
至此,我们的Apk文件生成。
总结
参考文献:http://blog.csdn.net/zuiwuyuan/article/details/48552701
打包多个发布渠道:http://blog.csdn.net/zuiwuyuan/article/details/48636283
Android Studio的两种签名打包就是这样,上面图文并茂,很详细,希望可以帮助到你。