Xamarin.android 密钥库格式无效-在Azure DevOps构建管道中签名Android APK

Xamarin.android 密钥库格式无效-在Azure DevOps构建管道中签名Android APK,xamarin.android,azure-devops,azure-pipelines,signing,android-keystore,Xamarin.android,Azure Devops,Azure Pipelines,Signing,Android Keystore,我有一个Xamarin Android应用程序,我想为使用Azure DevOps构建管道生成一个签名的APK 现在,我收到一个java.io.IOException:Invalid keystore format 我使用以下命令从命令行生成密钥库文件: keytool.exe -genkeypair -v -keystore myAppName.keystore -alias myAppNamekey -keyalg RSA -keysize 2048 -validity 10000 这个密

我有一个Xamarin Android应用程序,我想为使用Azure DevOps构建管道生成一个签名的APK

现在,我收到一个java.io.IOException:Invalid keystore format

我使用以下命令从命令行生成密钥库文件:

keytool.exe -genkeypair -v -keystore myAppName.keystore -alias myAppNamekey -keyalg RSA -keysize 2048 -validity 10000
这个密钥库在我的本地设备上工作

我还尝试将默认的debug.keystore文件添加到azure管道中,结果成功

我在Azure DevOps中的“签名和对齐”部分下,将密钥添加到我的(已经工作的)CI构建管道中

当它到达此部分时,我收到以下错误:

未能加载签名者“签名者#1”java.io.IOException:无效 密钥库格式 [错误]错误:进程“C:\Program Files(x86)\Android\Android sdk\build tools\24.0.3\apksigner.bat”失败 出口代码为2


我想我找到了解决办法。但我改变了两件事,所以可能是这两件事中的任何一件

  • 我有一个'啊在我的密钥库密码中。我删除了这一点,因为我看到他们的角色有特殊的问题。(这可能不是修复它的更改,但我想添加它以确保)
  • 我用jdk1.8.0_13版本重新生成了一个密钥。这是我使用的keytool“C:\ProgramFiles(x86)\Java\jdk1.8.0\u 131\jre\bin\keytool.exe”的路径

  • 在做这两件事时,签名任务起作用。希望这有帮助

    我想我找到了解决办法。但我改变了两件事,所以可能是这两件事中的任何一件

  • 我有一个'啊在我的密钥库密码中。我删除了这一点,因为我看到他们的角色有特殊的问题。(这可能不是修复它的更改,但我想添加它以确保)
  • 我用jdk1.8.0_13版本重新生成了一个密钥。这是我使用的keytool“C:\ProgramFiles(x86)\Java\jdk1.8.0\u 131\jre\bin\keytool.exe”的路径

  • 在做这两件事时,签名任务起作用。希望这有帮助

    就是这样-密码的允许字符范围非常窄。非常感谢。就是这样-密码的允许字符范围非常窄。非常感谢。