钥匙串中没有找到有效的iOS代码签名密钥。您需要请求一个代码签名证书。

7
我已经构建了一个Xamarin Forms应用程序,现在想在物理iOS设备上测试。调试器成功地运行了我的程序,但不幸的是,在将程序部署到物理iPhone时遇到了问题。
为了部署我的应用程序,我做了以下操作:
1.按照此教程创建了一个免费的应用程序配置文件https://learn.microsoft.com/en-us/xamarin/ios/get-started/installation/device-provisioning/free-provisioning?tabs=windows(成功运行xcode 1视图应用程序,并在手机上安装配置文件)。 2.将Xamarin切换到物理设备上的调试模式。
包标识符自然匹配,我已经采取以下措施解决问题:
- 将.csproj中的“CodesignEntitlements”值设置为null。
仍然没有成功。我好奇为什么Xamarin要求代码签名密钥,而我仍然只是在调试。
非常感谢任何帮助。

在调试时使用签名密钥,我觉得这很奇怪?- 不管怎样,我没有遇到其他异常。 - Jeppe Christensen
是的,即使您只想在 iPhone 上进行调试,也需要签名密钥。 - uprightbassfan78
这很奇怪,我记得大约半年前可以通过xCode创建具有相同Bundle标识符的免费配置文件,然后使用它调试Xamarin。 - Jeppe Christensen
我当前正在测试一个完全空白的Forms应用程序,只是为了让它工作!这意味着一切都是默认的。我的info.plist中的provisioning scheme设置为手动配置,并且bundle signing identity设置为“Developer(自动)”。 在签名标识中,我唯一拥有的其他选项是“distribution(自动)”,尽管我已经登录到我的帐户中。 - Jeppe Christensen
@JeppeChristensen 你应该在“开发人员(自动)”中保持相同的签名标识(这将会自动生成)。 - Junior Jiang
显示剩余5条评论
3个回答

8

在构建过程中,请确保选择“远程设备(Remote Device)”,而不是“本地设备(Local Device)”。


5

我费尽心机之后才发现自动配置在我的项目中已经不能使用了,但我手动在iOS项目的.csproj文件中添加了调试代码签名密钥,并将“iPhone Developer”替换为“Apple Development: yourmail.icloud.com (XYZ12345678)”。您可以在"钥匙串"中找到此标识符。


2
  • 确保您已使用您的Apple ID登录XCode
    • XCode菜单 > 文件 > 首选项 > 帐户

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接