Android构建aab程序时,我们一般情况下都会使用apksigner工具来进行v1、v2加密签名:
apksigner sign --ks [.jks文件路径] --ks-key-alias [别名] --out [签名过导出的aab文件] [即将签名的aab]
但往往会提示如下错误:
Exception in thread "main" com.android.apksig.apk.MinSdkVersionException: Failed to determine APK's minimum supported platform version. Use --min-sdk-version to override
at com.android.apksigner.ApkSignerTool.sign(ApkSignerTool.java:387)
at com.android.apksigner.ApkSignerTool.main(ApkSignerTool.java:88)
Caused by: com.android.apksig.apk.MinSdkVersionException: Failed to determine APK's minimum supported Android platform version
at com.android.apksig.ApkSigner.getMinSdkVersionFromApk(ApkSigner.java:957)
at com.android.apksig.ApkSigner.sign(ApkSigner.java:278)
at com.android.apksig.ApkSigner.sign(ApkSigner.java:214)
at com.android.apksigner.ApkSignerTool.sign(ApkSignerTool.java:381)
... 1 more
Caused by: com.android.apksig.apk.ApkFormatException: Missing AndroidManifest.xml
at com.android.apksig.ApkSigner.getAndroidManifestFromApk(ApkSigner.java:913)
at com.android.apksig.ApkSigner.getMinSdkVersionFromApk(ApkSigner.java:955)
... 4 more
在官网 apksigner 却没有明确提示要添加最低构建版本,根据错误提示,以及官网的文档说明,我们很容易知道,需要制定最低构建版本进行验证即可
apksigner sign --ks [.jks文件路径] --ks-key-alias [别名] --min-sdk-version [你的最低支持版本] --out [签名过导出的aab文件] [即将签名的aab]
这样就可以正常构建出v1+v2的aab包了。
参考文献
- Android官网apksigner https://developer.android.com...
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。