标识符为“com.companyname.appname”的应用 ID 不可用。请输入不同的字符串

Posted

技术标签:

【中文标题】标识符为“com.companyname.appname”的应用 ID 不可用。请输入不同的字符串【英文标题】:An App ID with Identifier 'com.companyname.appname' is not available. Please enter a different string 【发布时间】:2018-01-19 23:30:07 【问题描述】:

我正在尝试将我的 ios 应用上传到 TestFlight 以进行 beta 测试。在 XCode 上,我的应用程序的包 ID 是 com.companyname.appname。当我尝试创建分发配置文件时,我被告知要创建一个应用 ID。

当我尝试在开发者门户上注册一个 IOS App ID 时,我在 App ID 描述com.companyname.appname下输入 appname > 在 捆绑 ID 下。我收到错误消息

There were errors in the data supplied. Please correct and re-submit.
An App ID with Identifier 'com.companyname.appname' is not available. 
Please enter a different string.

我目前没有捆绑 ID com.companyname.appname 的其他应用。当我将捆绑 ID 更改为其他字符串(如 com.companyname.io)时,它可以工作。

为什么捆绑名称 com.companyname.appname 不起作用?

我应该继续使用与 XCode 上不同的包 ID 吗?

我这样做对吗?

【问题讨论】:

【参考方案1】:

您是在问题中使用com.companyname.appname 作为您在门户中输入的真实字符串的占位符,还是您真的在使用它?

Bundle ID 需要是全局唯一的。不仅仅是你独有的。因此,其他人很可能使用与您相同的com.companyname.appname

您应该使用基于您的域名的捆绑 ID(以相反的顺序)。例如,如果您的域名是someguyfortune.com,而您的应用程序名为MyAwesomeApp,那么您应该使用com.someguyfortune.MyAwesomeApp 的Bundle ID。案件很重要。我个人更喜欢全部使用小写字母,但 Xcode 默认会使用大写字母,它们可以正常工作。

使用这种反向域名样式可以提高其他人不会使用相同 Bundle ID 的几率。

【讨论】:

com.companyname.appname 是一个占位符。如果其他人使用它,我会感到惊讶。公司名称和应用名称非常独特。 我见过这样的案例:团队中的其他开发人员在开发公司应用程序时将 Bundle ID 添加到他们的个人帐户中,但没有意识到他们稍后会引发冲突。与第三方承包商类似。我让其他人注册了我在开源项目中使用的 Bundle ID。最好只是改变你的并继续前进。【参考方案2】:

这很可能意味着已经有一个具有相同值的包标识符。包标识符必须是唯一的。

【讨论】:

如果我在开发者资料中重命名包标识符,它将与 XCode 上的不同。可以吗? 不,您在 Xcode 中的应用程序和开发人员/配置文件中的应用程序必须相同。如果您更改了一个,则需要更改另一个以匹配它。

以上是关于标识符为“com.companyname.appname”的应用 ID 不可用。请输入不同的字符串的主要内容,如果未能解决你的问题,请参考以下文章

标识符“sqlBean”解析为空

没有为实体指定标识符/主键(...)每个实体必须具有标识符/主键

无法出列同类视图:带有标识符的 UICollectionElementKindCell - 必须为标识符注册一个 nib 或一个类

将通配符捆绑标识符转换为单个 ID

如何将 TZInfo 标识符转换为 Rails 时区名称/键

@ORM\Id 不会为 symfony 中的实体创建标识符