为了最大限度地提高兼容性,请按照 v1、v2、v3 的先后顺序采用所有方案对应用进行签名。与只通过 v1 方案签名的应用相比,还通过 v2+ 方案签名的应用能够更快速地安装到 Android 7.0 及更高版本的设备上。更低版本的 Android 平台会忽略 v2+ 签名,这就需要应用包含 v1 签名,目前具体的限制有: Android 7 (sdk version 24)以下必须有v1签名,如果没有,apksigner验证签名失败; Android11(sdk version 30)及以上必须有v2签名,如果只有v1签名,apksigner验证签名通过,但是设备装不上apk。 Android 9 支持APK密钥轮替,这使应用能够在APK更新过程中更改其签名密钥。为了实现轮替,APK必须指示新旧签名密钥之间的信任级别。需要注意的是,如果使用轮替签名,那么对于同一个apk,如果想在设备上正常更新的话,必须满足新版本apk的轮替签名证书和历史签名证书完全涵盖了历史版本apk的所有签名证书。简而言之,针对原始签名的apk,如果使用不同的证书生成不同的轮替签名的apk,那么他们之间将不能覆盖更新。
|