7

我在苹果商店上传了应用程序。现在我正在开发更新版本。但是在处理现有项目时,我创建了具有不同名称的新项目。完成后,我更改了名称和捆绑标识符以匹配现有应用程序。

我尝试上传应用程序进行试飞,但出现错误

"Invalid IPA: The keychain-access-group in the embedded.mobileprovision and your binary don't match."

所以我开始在网上浏览答案......我想出的是启用权利。我做了,但无济于事......然后我编辑了权利,从这个改变:

$(AppIdentifierPrefix)com.xxxx

对此:

12HJ2312.com.xxxx (the number is number of prefix from developer portal)

它有效,我可以上传。世界又好了。或者是吗?我仍然不明白为什么我必须改变这个。从哪里来

$(AppIdentifierPrefix)

是红色的?我认为是来自钥匙串的红色,但似乎不是,因为钥匙串中的值与我输入的值相同。那么我怎样才能看到这个值,它在哪里绘制它的内容呢?

4

3 回答 3

14

应用标识符前缀在您使用的配置文件中指定。在 finder 中找到配置文件。为此,在 Xcode 中,转到 Window>Organizer。在管理器中,右键单击配置文件并选择“在 Finder 中显示配置文件”)。在 TextEdit 或其他文本编辑器中打开文件,您会在中间的某处看到与此类似的内容(搜索“权利”)。

<key>Entitlements</key>
<dict>
    <key>application-identifier</key>
    <string>A1B2C3D4E5.com.example.*</string>
    <key>get-task-allow</key>
    <false/>
    <key>keychain-access-groups</key>
    <array>
        <string>A1B2C3D4E5.*</string>
    </array>
</dict>

在这种情况下,应用标识符前缀是 A1B2C3D4E5

于 2013-07-12T21:06:38.063 回答
6

正如艾哈迈德回答的旁注:

${AppIdentifierPrefix}值为"A1B2C3D4E5."

所以OP的原始问题是

${AppIdentifierPrefix}.com.xxx评估为A1B2C3D4E5..com.xxx,这与您的个人资料所说的不匹配。

于 2015-06-05T22:58:31.690 回答
4

这在 Xcode 5 中发生了变化。我是这样做的:

在 Mac 上打开钥匙串访问应用程序。为开发人员构建寻找“iPhone Developer”证书,或为临时和 App Store 构建寻找“iPhone Distribution”证书。

如果有多个证书,您可以通过查看项目 Build Settings 中的 Code Signing Identity 字段来找到您在 Xcode 中使用的证书。它可能会说“iOS 开发人员”。单击它,它将列出“钥匙串中的身份”。这应该可以让您了解您实际使用的身份。

返回 Keychain Access,选择证书(例如“iPhone Developer”),然后单击窗口底部的“i”按钮。几秒钟后将弹出另一个窗口,其中包含证书信息。查看详细信息部分,您将看到“组织单位”。如果一切正常,该 ID 值将与您的 $(AppIdentifierPrefix) 相同,并且对于开发人员和分发证书也应该相同。此外,“iPhone Distribution”证书的标题中应具有相同的 ID 权限。

于 2013-12-03T01:00:38.800 回答