如何解决错误:'应用程序标识符“com.example.apple-samplecode.BreakfastFinder”无法注册到您的开发团队。'

5
当我尝试从Apple构建BreakfastFinder示例代码时,它可以在模拟器上构建,但无法在我的iOS 13(Public Beta 3)的iPhone X上构建。
我尝试了取消配对并重新配对设备,将标识符从"com.example.apple-samplecode.BreakfastFinder"切换到com..TestApp2
从这里下载项目示例:https://developer.apple.com/documentation/vision/recognizing_objects_in_live_capture 只有在崩溃后我才改变了Build Identifier。
我期望构建完成并运行,但它给了我以下错误。两个错误来自Xcode:
1. 注册包标识失败。应用标识符“com.example.apple-samplecode.BreakfastFinder”无法注册到您的开发团队。更改您的包标识符为一个唯一的字符串以再次尝试。 2. 没有找到“com.example.apple-samplecode.BreakfastFinder”的配置文件:Xcode找不到与“com.example.apple-samplecode.BreakfastFinder”匹配的任何iOS应用程序开发配置文件。

请还检查我的答案(https://dev59.com/D7Xna4cB1Zd3GeqPHTyD#63578106)以获取更优雅的解决方案。 - mgyky
4个回答

3

永久解决方案

  • 如果您在目标的构建设置下添加SAMPLE_CODE_DISAMBIGUATOR key作为用户定义条目,那么您就不需要在SampleCode.xcconfig文件中手动添加开发团队

  • 当您在签名和能力下选择团队时,它会自动填充SampleCode.xcconfig文件中的开发团队


这个在https://github.com/appium/ios-uicatalog/tree/master/UIKitCatalog对我没用。 - Tim Boland

3
在项目目录中,查找文件Configuration> SampleCode.xcconfig 在第13行,你会看到:
SAMPLE_CODE_DISAMBIGUATOR=${DEVELOPMENT_TEAM}

用您自己的团队名称替换${DEVELOPMENT_TEAM}
SAMPLE_CODE_DISAMBIGUATOR=your_team_name

那对我起作用了。


如果你不知道在哪里找到your_team_name,你可以在这里找到答案其他线程的回答 - Philipp NXT
这个在 https://github.com/appium/ios-uicatalog/tree/master/UIKitCatalog 对我没用。@PhilippNXT - Tim Boland

0

当我将以下内容放入SampleCode.xcconfig文件中时,这对我起作用:

SAMPLE_CODE_DISAMBIGUATOR=3323GT3XP

这对我没有用:https://github.com/appium/ios-uicatalog/tree/master/UIKitCatalog - Tim Boland

0
这种方法是苹果公司用于示例代码的。我在 Soup Chef 项目中找到了它,他们在其中演示如何设置Siri Shortcuts和donate intents。
如果您打开 Configuration/SampleCode.xcconfig 文件,您会看到:

SAMPLE_CODE_DISAMBIGUATOR 配置使构建和运行示例代码项目变得更加容易。一旦您设置了项目的开发团队,您将拥有一个唯一的 bundle 标识符。这是因为 bundle 标识符是基于 'SAMPLE_CODE_DISAMBIGUATOR' 值推导出来的。不要在自己的项目中使用这种方法——它只对示例代码项目有用,因为这些项目经常被下载,并且没有设置开发团队。

您可以自行验证:例如,在 SoupChef 的情况下,SoupChef.xcodeproj/project.pbxproj 包含类似以下内容的行:
PRODUCT_BUNDLE_IDENTIFIER = "com.example.apple-samplecode.SoupChef${SAMPLE_CODE_DISAMBIGUATOR}";

现在,您需要查找团队。正如其他人在评论中提到的那样,您可以按照此线程进行查找。

据我所见,您实际上可以使用任何消歧器,唯一重要的是它对您来说是唯一的。然而,您可能希望遵循他们的建议并查找您的团队ID,因为这减少了以后出现某些未知问题的风险。

确保您阅读并遵循示例代码描述中的其他说明。

我仍然需要浏览所有目标并在“签名和功能”选项卡中选择团队,但我不必手动修改每个目标的包标识符。

在我的示例项目中,还必须手动设置应用程序组,并编辑一个Swift文件Shared/Support/UserDefaults+DataSource.swift

一旦更新了所有这些内容,我就可以在我的手机上构建和启动应用程序。


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