我有一个带有minSdkVersion = 24
的应用程序,但当我使用Android Studio签名对话框时,apk永远不会被v1签名(我使用的商店强制包含v1签名(。我尝试了渐变选项,但不起作用。此外,我尝试使用选项为--v1-signing-enabled true
和--max-sdk-version 23
的apksigner来强制v1签名,但似乎不起作用。CCD_ 4还报告apk没有用v1进行签名。
有没有办法强制安卓工作室或apksigner在minSdkVersion >= 24
的情况下始终使用v1签名?
冒着实现StackOverflow构造型的风险,你能解释一下为什么你想用v1绝对签名吗?
由于v2签名严格来说比v1签名更安全、更快,而且所有安卓版本24+都支持v2签名,因此在这种情况下没有理由使用v1签名,因此安卓工作室优化了在这种情况中不使用v1签名的做法,因为它毫无理由地降低了构建速度。
此外,由于安卓11,安装应用程序需要v2签名,因此除非您不打算支持此版本(或任何更高版本(,否则您将需要v2签名。因此,安卓平台将始终忽略v1签名。
如果你打算使用v1签名进行自己的安全检查,你可能不应该,但我们需要知道你使用它的目的是什么,以提出替代方案。
我遇到了同样的问题,似乎apksigner verify
在欺骗我们。
如果您先运行apksigner sign ...
,然后使用jarsigner -verify -certs your.apk
(可选-verbose
选项(,它应该打印jar verified.