Xamarin Studio 无法识别配置文件

Posted

技术标签:

【中文标题】Xamarin Studio 无法识别配置文件【英文标题】:Xamarin Studio not Recognizing Provisioning Profiles 【发布时间】:2016-01-23 20:38:22 【问题描述】:

我对这些苹果证书束手无策。我有一个 Xamarin.Forms 应用程序,我需要使用配置文件对其进行签名,以便启用推送通知。但是,Xamarin Studio 无法识别我正在制作的任何配置文件。有人可以帮忙吗?

Xamarin Studio 尝试链接配置文件,未找到配置文件 23devpp:

Xcode 找到省。配置文件 23devpp:

开发人员窗口已将配置文件标记为活动:

【问题讨论】:

注意:实际答案在所选答案的评论部分。尽管如此,有时仍需要重新启动 Xamarin Studio 以刷新配置文件。 【参考方案1】:

编辑:这是解决方案

Xamarin ios 项目的 Info.plist 中的捆绑标识符必须与您用于个人资料的应用 ID 中的标识符相匹配。我刚试过这个,我复制了你的问题 - 当我更正了捆绑标识符时,我的测试配置文件出现了


(我想对此发表评论,但我还不能)抱歉,我不得不问这个愚蠢的问题——您是否尝试重新启动 Xamarin?

注意:有时需要停止并重新启动 Xamarin Studio,然后它才能看到由 Xcode 更新的任何新的或修改的证书或配置文件。

【讨论】:

是的,我已经多次重启,甚至尝试关闭我的整个计算机。 好的,我想我找到了您的解决方案 - Xamarin iOS 项目的 Info.plist 中的捆绑标识符必须与您用于个人资料的 App ID 中的标识符相匹配。我刚试过这个,我复制了你的问题 - 当我更正了捆绑标识符时,我的测试配置文件出现了 哇,非常感谢!我已经为此工作了几个小时,但从未想过要检查 Info.plist。我不敢相信我没有在网上找到其他任何地方。感谢您的帮助。 @BoombaleOsby 为什么不编辑答案以包含该答案?现在你可以发表评论了:) 谢谢 - 你也为我节省了很多时间。【参考方案2】:

如果上述接受的响应中的包标识符匹配,则可能存在第二个原因,您无法在 Xamarin Studio 中找到您的配置文件:您的签名身份必须与您正在使用的配置文件匹配。如果您生成了用于签署应用程序的新证书,例如因为您的旧证书即将过期,Xamarin Studio 不一定有权访问新证书的私钥。这是在 Xamarin Studio 中显示正确的签名身份和关联的配置文件所必需的。

要检查这是否是您的问题,请登录 Apple 的 Developer Portal -> Certificates, Identifiers & Profiles -> Provisioning Profiles。选择您要使用的配置文件,并记下配置文件的“过期”日期。

然后,打开 Keychain Access 并在证书下找到具有匹配“过期”日期的签名证书。应该可以扩展证书,并且在扩展时应该会出现一个私钥。如果您没有证书的私钥,或者证书本身丢失,则必须安装证书及其关联的私钥。

为此,请在开发者门户中生成一个全新的证书,或者让团队中的其他人使用其私钥导出证书。您可以通过在 Mac 上双击它并输入其密码来安装它。

【讨论】:

非常感谢您指出这一点!我很高兴我读到了这个未经投票的答案!现在已经搜索了大约两个小时...【参考方案3】:

1.转到Xcode,创建一个新项目。 选择您的公司名称(不要选择用户),然后输入您想要的任何内容作为捆绑标识符。

2.返回 Xamarin 工作室并更改包标识符以匹配您刚刚在 Xcode 中创建的标识符。

3.更新选项中的配置文件以包含您在 Xcode 中创建的包标识符。构建,然后调试解决方案,它应该可以工作。

对我来说,问题是团队标识符包含唯一的规定,而 Xamarin 工作室中唯一的选择是用户。我刚刚在 Xcode 中创建了一个指向团队配置的新项目,然后在 Xamarin 工作室中使用了新的包标识符(已上传到 Apple 开发站点)。

【讨论】:

【参考方案4】:

如果其他人看到这篇文章(这是我现在在谷歌上搜索此错误时的第二次点击),我的问题不完全是上述任何一个。

我在 Xcode 中创建的配置文件基于 com.company.myapp,但在 Visual Studio 中的标识符是 com.company.MyApp。区分大小写很重要。但是,当在 Xcode 中更改以匹配 VS 时,它一直失败并出现错误。我必须在末尾附加一个数字,所以两者都读取 com.company.MyApp1 - 然后它工作了(在重新启动 VS 之后)。

以防万一它对其他人有所帮助。

【讨论】:

【参考方案5】:

在我的情况下,Visual Studio 列出了我的配置文件,但问题未更新。

问题


XX.mobileprovision 是使用 10 台设备和一些权利生成的。 客户要求添加更多设备,并且还修改了权利以支持新功能。 已安装 XX_new.mobileprovision

我遇到的问题,Visual Studio 考虑的是旧的 PP,而不是我通过 XX_new.mobileprovision 安装的新信息

解决方案


Visual Studio 从 ~/Library/MobileDevice/Provisioning Profiles 获取此配置文件

转到此目录并删除相应的配置文件。

安装 XX_new.mobileprovision 即可,Visual Studio 将识别配置文件的所有更改,配置文件列表也将更新。

【讨论】:

【参考方案6】:

对于那些在 Visual Studio 2019 (Windows) 上使用 Xamarin.Forms 的人:

    Solution Explorer 窗口中,右键单击 iOS 项目 > 属性。 点击 iOS Bundle Signing(左侧)并输入您的 Apple ID(区分大小写,必须与 Mac 上 XCode 中的 Apple ID 相同) . 保存您的更改。进度指示器将永远运行(运行自动配置),它一定是一个错误。只需关闭选项卡并构建您的项目。

注意:如果您在 Mac 上的 XCode 中没有 Apple ID。去找你 MAC:

    打开 XCode。 从 XCode 菜单中,选择 XCode > Preferences,然后单击 Accounts 选项卡并配置您的 Apple ID。

别忘了重启 Visual Studio 2019

【讨论】:

以上是关于Xamarin Studio 无法识别配置文件的主要内容,如果未能解决你的问题,请参考以下文章

通过 Xamarin Studio 6.3 获取配置文件

Xamarin/Visual Studio 2015:自定义 Proguard 配置

Xamarin for Visual Studio 2015 中的配置文件错误(不匹配)

Xamarin Visual Studio不识别JDK路径

无法使用 Visual Studio 2015 编辑 Xamarin .axml 布局文件

VScode配置C++出现无法识别g++问题怎么办?