Android 签名大解

前言:

   开发一个android项目,签名是必须需要学会的,好在android studio 已经强大到你只需选择几下就可以搞定签名文件,接下来我总结一下大体的签名步骤吧!(图片是共享同仁的图片,哈哈哈,别像我这么懒)

1.keystore.jks文件生成,打包APK

选择Build > Generate Signed APK 出现如下弹框:


然后点击Create new...(创建的意思)出现另一个弹框,在做如下操作,如图


第一项,keystore path是路径,点击后面的省略号按钮来选择路径

第二项密码,是个人就能看懂

Alias:别名

confirm:确认,理解为重复输入一次密码

First and Last Name:姓名全称

certificate:证明

organizational Unit:组织单位

organizational: 公司

City or Location :地理位置(城市地点)

State or Province:省市

Country Code:国家编码

d填完这些信息,直接next就可以了。

2.Android Studio 打包时 Signature Version V1 V2

前几天更新了一下Android Studio ,今天在打正式包的时候发现多了个签名版本选择:

(注:偷懒截图,直接共享这位大神的图片了,哈哈。。。)

问题描述(v1和v2)

Android 7.0中引入了APK Signature Scheme v2,v1呢是jar Signature来自JDK
V1:应该是通过ZIP条目进行验证,这样APK 签署后可进行许多修改 - 可以移动甚至重新压缩文件。
V2:验证压缩文件的所有字节,而不是单个 ZIP 条目,因此,在签名后无法再更改(包括 zipalign)。正因如此,现在在编译过程中,我们将压缩、调整和签署合并成一步完成。好处显而易见,更安全而且新的签名可缩短在设备上进行验证的时间(不需要费时地解压缩然后验证),从而加快应用安装速度。


解决方案一

v1和v2的签名使用
只勾选v1签名并不会影响什么,但是在7.0上不会使用更安全的验证方式
只勾选V2签名7.0以下会直接安装完显示未安装,7.0以上则使用了V2的方式验证

同时勾选V1和V2则所有机型都没问题

解决方案二

在app的build.gradle的android标签下加入如下

    signingConfigs {  
        debug {  
            v1SigningEnabled true  
            v2SigningEnabled true  
        }  
        release {  
            v1SigningEnabled true  
            v2SigningEnabled true  
        }  
    }  

3.Installation failed with message Failed to finalize session : INSTALL_FAILED_INVALID_APK

Android Studio 运行AVD的时候出现:

Installation failed with message Failed to finalize session : INSTALL_FAILED_INVALID_APK: /data/app/

解决方法:

File -> Settings... -> Build -> Debuger ->Instant Run 在如图所示取消勾选,OK即可。

4.判断Apk是否签名


用命令:jarsigner -verify -verbose -certs <apk文件>

如果有Android Debug字樣就是debug

  如果已经签名: [证书的有效期为13-8-31 下午2:31至41-1-16 下午2:31]

   X.509, CN=demoandroid, OU=tianya, O=tianya, L=haikou, ST=hainan, C=cn
      [证书的有效期为18-5-1 下午11:16至43-4-25 下午11:16]
      [CertPath 未验证: Path does not chain with any of the trust anchors]

sm       372 Fri Nov 30 00:00:00 AST 1979 res/drawable/notification_icon_background.xml



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值