生成签名文件

一、生成签名文件

在菜单栏中依次点击Build--->Generate Signed APK... --->Create new ...(如果之前没有生成签名文件,则创建一个)

或者选择Choose existing...(如果有签名文件,可以选择之前的签名文件)-->填写keystore的保存路径以及keystorekey的密码,务必记住,否则影响升级-->点击ok-->Build Type类型中选择release,点击finish

然后将生成的keystore.jks文件添加到build.gradle

在菜单栏中点击Project Structure--->点击module名称--->点击Signing--->点击添加‘+-->填写相应的内容,单击ok即可在build.gradle文件中看到signingConfigs


二、releasedebug签名的区别

1、debug签名的应用程序不能在Android Market上架销售,它会强制你使用自己的签名;Debug模式下签名用的证书自从它创建之日起,1年后就会失效。

2、debug.keystore在不同的机器上所生成的可能都不一样,就意味着如果你换了机器进行APK版本升级,那么就会出现上面那种程序不能覆盖安装的问题,相当于软件不具备升级功能

 

 

三、Jar Signature (V1)Full APK Signature(V2)的区别

V1:应该是通过ZIP条目进行验证,这样可以APK 签署后可进行许多修改 - 可以移动甚至重新压缩文件。

V2:验证压缩文件的所有字节,而不是单个 ZIP 条目,因此,在签名后无法再更改(包括 zipalign)。正因如此,现在,在编译过程中,我们将压缩、调整和签署合并成一步完成。

解决方案:

只勾选v1并不会影响什么,但是在7.0上不会使用更安全的验证方式

只勾选v2那么7.0以下会直接显示安装未完成,7.0以上则会使用更安全的验证方式

同时勾选v1v2则所有机型都没有问题

解决方案:

appbuild.gradle文件下的signingConfigs下的debugrelease中添加

v1SigningEnabled true

v2SigningEnabled true



你可能感兴趣的:(android)