我有一个Azure DevOps管道,可以很好地构建android应用程序。我现在想要签名这个管道创建的android活动包,这样我就可以分发它了。问题是,我得在上面签字。我使用这个yaml命令对它进行签名
- task: CmdLine@2
displayName: 'Signing and aligning AAB file(s) **/*.aab'
inputs:
script: 'jarsigner -verbose -sigalg SHA256withRSA -digestalg SHA-256 -keystore
releaskey.keystore -storepass $(KeystorePassword) -keypass $(KeystorePassword)
/Users/runner/work/1/s/Platforms/MobileApp.Android/obj/
Release/android/bin/mobileapp.aab'
下面是在管道中运行的最后一个命令:jarsigner -verbose -sigalg SHA256withRSA -digestalg SHA-256 -keystore releasekey.keystore -storepass *** -keypass *** /Users/runner/work/1/s/Platforms/MobileApp.Android/obj/Release/android/bin/mobileapp.aab
但问题是,最后我得到了错误:
请指定别名
我查看了这里的jar签名器文档,它声明"别名在由-keystore或默认keystore指定的密钥存储库中定义"。但是,尽管我精确地创建了一个密钥存储库,但是此时构建失败了。
您可以尝试为您的密钥存储库添加别名。
例如:
jarsigner -verbose -sigalg SHA256withRSA -digestalg SHA-256 -keystore xample.jks bundle.aab keystoreAlias
更多信息,可以参考这个线程:
如何使用azure pipeline签署Android应用包