Android Studio2.3+打包apk后应用未安装

我的简书:简书

前言

Android 要求所有 APK 必须先使用证书进行数字签署,然后才能安装。当然这么做的原因是为了保证APK的唯一性,安全性。本文主要介绍在Android Studio2.3+打包apk后应用未安装的解决办法。

Android Studio2.3+签名打包,应用未安装

这几天在整项目的时候发现一个问题,通过Android Studio2.3+打包出来的apk,在android7.0+的手机上安装正常,但是在android7.0以下的均显示应用未安装,或者用PC工具都显示安装失败。

在studio2.3版本以上打包会发现与之前的打包不一样了,下面多了一项Signature Versions的选择,如下图:

签名打包.png

经过打包实践会发现:

  • 如果只选V1,打包之后的apk在android7.0+或者7.0以下的手机安装均正常;

  • 如果只选V2,打包之后的apk在android7.0+的手机上安装正常,在android7.0以下的手机安装失败。

  • 如果同时勾选V1,V2,打包后的apk在android7.0+或者7.0以下的手机安装也都正常;

APK signature scheme v2

Android 7.0 引入一项新的应用签名方案 APK Signature Scheme v2,它能提供更快的应用安装时间和更多针对未授权 APK 文件更改的保护。在默认情况下,Android Studio 2.2 和 Android Plugin for Gradle 2.2 会使用 APK Signature Scheme v2 和传统签名方案来签署您的应用。

虽然我们建议您对您的应用采用 APK Signature Scheme v2,但这项新方案并非强制性的。如果您的应用在使用 APK Signature Scheme v2 时不能正确开发,您可以停用这项新方案。禁用过程会导致 Android Studio 2.2 和 Android Plugin for Gradle 2.2 仅使用传统签名方案来签署您的应用。

android {
    ...
    defaultConfig { ... }
    signingConfigs {
      release {
        storeFile file("myreleasekey.keystore")
        storePassword "password"
        keyAlias "MyReleaseKey"
        keyPassword "password"
        v2SigningEnabled false
      }
    }
  }

所以要使用传统的方式签名的话,我们只需要在签名配置的release下添加:v2SigningEnabled false即可。或者个人建议打包时只选择V1。

总结

  • 1、在开发的过程中遇到一些问题,多查阅官方API或文档。

  • 2、及时了解Android和Android Studio新版的特性,便于解决因版本不同带来的各种问题。

  • 3、多亲自实践,积累经验。

参考阅读

Android官网-签署您的应用
官方介绍:APK signature scheme v2

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值