Jetbrains Rider、Xamarin IOS 在钥匙串中找不到有效的 iOS 代码签名密钥
Posted
技术标签:
【中文标题】Jetbrains Rider、Xamarin IOS 在钥匙串中找不到有效的 iOS 代码签名密钥【英文标题】:Jetbrains Rider, Xamarin IOS No valid iOS code signing keys found in keychain 【发布时间】:2020-02-23 16:32:21 【问题描述】:我尝试将我的 Xamarin ios 应用程序部署到我的 Iphone。与 Jetbrains Rider 合作。
我收到此构建错误:
Xamarin.iOS.Common.targets(693, 3):在钥匙串中找不到有效的 iOS 代码签名密钥。您需要向https://developer.apple.com 申请共同签名证书。
我尝试在 XCode 中从 Rider 打开 IOS 项目,该项目有效,但我无法在那里运行它,因为缺少一些图标,所以收到一些其他警告.. 还有几个错误。
您能否将您的应用从 Rider 部署到您的 Iphone?
编辑:
XCode
Rider_1
Rider_2
【问题讨论】:
当你在 Visual Studio 中尝试同样的方法时?您是否在 Xcode 中添加了您的帐户并下载了配置文件并创建了开发者证书? 【参考方案1】:您不能只在 xCode 中打开 .NET 应用程序并运行它。它不以这种方式工作。
当您从 Rider(以及 VS4Mac)在 xCode 中打开项目时,IDE 会根据您的 .NET 项目结构生成一个带有 obj-c 存根的 xCode 项目,以允许您使用 xCode 界面/plist 设计器。
因此,在您的情况下,您可能必须创建和使用个人开发者证书。为此:
-
在 xCode 中打开您的项目
转到项目属性,“签名和功能”选项卡
启用“自动管理签名”
选择个人团队(用你的名字)。
之后,配置文件和签名证书应该会自动生成和安装。
返回 Rider 并确保 info.plist
文件中的 CFBundleIdentifier
等于 XCode 项目中的 Bundle Identifier:在我的情况下为 com.xtmq.App4
。
在 JetBrains 问题跟踪器中查看相关问题: https://youtrack.jetbrains.com/issue/RIDER-23621
【讨论】:
谢谢,试过了,在你的屏幕截图中设置相同的所有内容,还在 info.plist 中设置包标识符,但仍然出现相同的错误。谢谢链接。 可能您必须尝试从 XCode 运行应用程序(例如示例 swift 应用程序)您的设备可能有问题。 但是我的Iphone没有什么特别之处吗?有没有“特别”的设置?我可以从 Xcode 运行 Swift 应用程序,也可以使用 Rider 的模拟器。 如果您可以从 Xcode 运行 swift 应用程序,那么在 Rider 中一切都应该没问题。您能否转到项目属性(从解决方案资源管理器),转到您的活动配置(Debug\iPhone 左右)并检查 Rider 是否检测到您的配置文件。 嗯它设置为自动,我可以选择我的,但它也会产生错误..我用我的设置添加了图片,但没有错?!【参考方案2】:在GitHub 上找到了解决方案。
我必须在我的 IOS 项目中转到 .csproj 文件并设置
CodesignKey:Apple 开发:xxxx (5Pxxxxxxxx)
默认值为“iPhone 开发者” 之后我仍然收到警告,因为签名密钥错误,我必须选择另一个。无论如何我都可以单击“运行”并在我的 iPhone 上运行该应用程序。
(我也用包标识符做了 XCode 项目)
【讨论】:
以上是关于Jetbrains Rider、Xamarin IOS 在钥匙串中找不到有效的 iOS 代码签名密钥的主要内容,如果未能解决你的问题,请参考以下文章
无法在 JetBrains Rider 的物理 iOS 设备上部署 Xamarin 应用程序
Jetbrains Rider、Xamarin IOS 在钥匙串中找不到有效的 iOS 代码签名密钥
如何在 Jetbrains Rider 中构建 Android APK