找不到可用的iOS配置文件

59

我们正在使用c#和Visual Studio 2017 for Xamarin开发一个iOS购物车应用程序。我有一个iPad Air iOS 10.3,在尝试发布到真实设备时,出现以下错误消息:“无法找到任何可用的iOS预配资料”,我已经尝试重启我的Mac电脑,但没有结果。请给我一些解决此问题的建议?


您是否拥有苹果开发者账户并为您的应用程序创建了配置文件?此外,您是否已将您创建的配置文件下载到您正在使用的 Mac 上? - pinedax
13个回答

53
在Visual Studio for OSX中,转到Visual Studio Community > Preferences > Publishing > Apple Developer Account,点击+按钮以登录并添加您的开发人员帐户。理论上,在此之后自动配置应该可以正常工作。
在Visual Studio for Windows中,转到Tools > Options > Xamarin > Apple Accounts,在自动配置下您的Apple ID将显示之前,会提示您安装FastLane。

在Mac版的VS和XCode中都找不到这些。 - pixel
正确的解决方案!适用于我。 - neurobot

34

您必须创建一个配置文件。在Google上搜索如何操作。

但是,关键是:当您创建一个配置文件时,必须将一个应用程序标识(App ID)与此配置文件关联,例如:"com.companyname.*"

当您在Visual Studio中创建您的应用程序时,您必须在IOS项目的INFO.PLIST文件中设置Bundle Identifier"com.companyname.myapp1"或其他任何名称。 如果您的Bundle Identifier的名称类似于"com.myapp.app1",则会出现此错误:无法找到可用的iOS配置文件,因为您的配置文件仅接受以com.companyname开头的应用程序名称,而您正在使用不同的应用程序名称。


6
我不知道为什么你的建议被踩了,但它是正确的。我也这样做了,对我有效。 - pixel
1
也是我在我的MAUI应用程序中的解决方案。 - Morten OC

19

针对那些只是想在真实设备上部署/测试其应用程序,并使用“免费配置文件”的人,请遵循此官方指南

总之:

  • 创建Apple ID
  • 将先前创建的Apple ID添加到XCode中,以添加配置文件。
  • 使用与Xamarin应用程序相同的束标识符创建一个新的空iOS应用程序(您可以在Xamarin.iOS项目的Info.plist中找到它)。
  • 通过使用免费的配置文件从XCode在您的设备上运行您的空iOS应用程序,确保您的空iOS应用程序可以部署。
  • 在Visual Studio中打开Info.plist,并单击Bundle Signing Options...。在Signing identity中选择Developper automatic,在Provisioning profile中选择Automatic
  • 在您的设备上运行Xamarin.iOS应用程序。

11
您可以在xCode中查看您的配置文件有什么问题。此外,此过程将更新配置文件、证书和应用程序ID:
  1. 进入xCode,创建空白的iOS应用程序,在Bundle标识符中输入与Visual Studio相同的内容。

  2. 在同一页上取消选择“自动管理签名”。 Provisioning Profiles in xCode

  3. 在“签名(Debug)”中单击“配置文件”。您将看到可选和不可选的配置文件。您可以选择其中的任何一个,如果其中一个是不合格的,则下面将显示错误。之后您可以修复它们。
  4. 之后,您可以转到 Visual Studio for Mac 并使用相同的Bundle ID创建相同的项目,并检查在“项目”-> “选项”->“iOS Bundle Signing”->“Provisioning profile”中的配置文件。 Provisioning profiles in Visual Studio for Mac
  5. 之后,您将在 Windows 的 Visual Studio 中找到您的配置文件

8

难以置信但却是事实...

要启用该接口,您首先需要使用自己的 Apple 帐户登录以下地址:
https://itunesconnect.apple.com

https://appleid.apple.com
并同意 Apple 的新隐私协议。没有任何错误信息提示您进行此操作(“您首先必须同意...”)。

在完成上述操作后,您就可以在 VS2017 中使用自动配置,并连接到 Mac 了。


没有帮助,我按照你说的做了,但在VS for Mac IOS Bundle Signing中,我发现Provisioning Profile下拉菜单被禁用了。 - pixel

8

我建议您阅读这篇文档,以了解更多关于iOS配置文件的信息。

不过,您需要的是自动配置。它会为您处理所有与配置文件相关的复杂事项,并仅部署应用程序。

Windows上的Visual Studio目前已经支持自动配置(称为15.7预览版),您可以试试看:https://learn.microsoft.com/en-us/visualstudio/releasenotes/vs2017-preview-relnotes#xamarin-provisioning
我建议您尝试一下,它应该能够帮助您自动将iPad添加到相关的配置文件中。

Mac上的Visual Studio自几个版本之前就已经支持自动配置了。

注意:您需要一个Apple开发者账户才能在设备上部署应用程序(可以是免费开发者账户)。


2
截至2018年7月,Windows版Visual Studio尚未为iOS设备进行自动设置。 - Gerry

3
所有这些答案都是正确的。
创建配置文件证书包失败的原因有很多。我没有在这里看到的一个原因是在(Apple developer account teams not showing up on VS Mac)中提到的。
只有XCode可以使用免费的苹果开发者ID为您设置配置文件。 您需要创建一个与Bundle Name和Bundle Identifier相同的虚拟项目。 在XCode中构建它,并让XCode为您创建证书。
只有在配对的Mac上完成这个步骤之后,Windows VS 2017才开始实际构建我的iOS目标。

1

我该如何解决这个问题?

第一个背景

我们正在构建的应用程序已经有了配置文件,但是偶尔我需要创建一个小型的POC应用程序来证明一些东西。而且经常我必须在真实的配置设备上使用那个小应用程序。

但是我甚至无法在可用设备下拉菜单中看到我的设备,只有我与团队正在构建的应用程序会显示。

解决方案

为了解决这个问题,我必须执行以下步骤:

  1. 在我的POC应用程序> Info.plist中,确保您的Bundle Identifier与您可以部署到设备的应用程序相同
  2. 在同一位置,在Signing下,选择“自动配置”,您应该会看到您的Apple ID。在团队下拉菜单中,选择您的团队

之后,我的设备出现了,我能够构建并部署到它,并且错误消失了。


1
我尝试了上述所有方法,但都没有成功。我正在使用手动配置。
为了确定为什么它不在VS中显示,我已经:
1. 在Xcode中打开了Xamarin.ios项目。 2. 在设置中选择手动配置文件,并选择适当的证书(注意:必须先安装才能出现在列表中)。 3. 它向我显示了一个错误,说“所选的配置文件与钥匙串中的分发证书不匹配”。 4. 当我登录developer.apple.com时,我发现了一个新的分发证书。 5. 我必须使用新的分发证书(所选)重新生成配置文件并安装它。 6. 安装后,错误消失了。 7. 此外,在Visual Studio的下拉列表中,配置文件开始出现。
我同意Meekohi和Vincent Dondain的建议,选择自动配置是更好的选择,如果没有遇到证书或配置文件问题,则会处理所有内容。然而,最好使用最新的Visual Studio for Mac。

0
可能的原因之一是没有配置文件。
对于MAC,路径为/Users/apple/Library/MobileDevice/Provisioning Profiles
您需要从苹果开发者帐户下载相应的配置文件,然后将其粘贴到上述目录中。
然后,它将开始在Visual Studio中反映。

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