我很高兴尝试在iTunes Connect上首次添加一个新的App来测试我的GAMEKIT功能。
我已经阅读了this技术说明,我感到困惑,因为我已经开始开发它时创建了我的应用程序的边界ID(这是我当前的捆绑ID,我创建了当前的配置和测试档案:你好 - *)。
为了使用GameKit和InApp Purchase我应该创建一个新的Bundle Id吗?
我很困惑因为:
任何帮助将不胜感激,特别是我需要解决我的第一个问题:我应该在ordert中使用哪个捆绑ID来使用GameKit和InAppPurchase?
答案 0 :(得分:25)
在回答你的问题之前有一些定义:
捆绑ID :反向DNS字符串,可准确识别单个应用。
捆绑ID搜索字符串:它用于匹配一组捆绑ID,其中每个捆绑ID标识单个应用。例如,如果捆绑包ID搜索字符串为com.mycompany.MyApp
或通配符(例如com.mycompany.*
),则它将与捆绑包ID com.mycompany.MyApp
匹配。
应用ID :标识单个团队中的一个或多个应用的字符串。应用程序ID由团队ID搜索字符串组成,后面是团队ID ,这是Apple生成的10个字符的字符串,用于唯一标识团队。在您链接的technical note中,它是ABCDE12345
并称为捆绑种子ID。
(开发)配置文件:您可以使用它来授权您的应用在设备上启动,并在开发时使用某些商店技术。它包括:单个App ID,一组设备和一组开发证书。配置文件在会员中心中创建,您需要在设备上运行它们才能运行您的应用。 XCode可以下载配置文件并将其安装到设备上。
现在我将回答你的子弹:
这个过程对大型团队非常有用。如果你有一个小团队和很少的应用程序,它真的很混乱,但它有助于理解它背后的原因。
但是还有更多关于这一切的说法。我建议你像我最近一样阅读“App Distribution Guide”。这是一个广泛的指南,但目前您只需阅读主题“Maintaining Your Signing Identities and Certificates”和“Maintaining Identifiers, Devices, and Profiles”的部分。该指南非常清晰,充满了截图,它将回答您的所有问题。此外,您可以回到路上指南以快速解决一些问题(并且您将遇到问题)。
我第一次使用Game-Center和IAP在一年多前创建了一个应用程序,我查找了stackoverflow来回答我的所有问题。但是,当证书过期,我添加新设备等时,我遇到了问题,每次我发现和Ad-hoc解决方案经过大量的摆弄并回到stackoverflow之后。不要误解我的意思,在stackoverflow中有很好的答案,但根据我的经验,阅读更长的内容可以解释大局。应用程序ID,捆绑ID,证书,私钥等是一个混乱的主题,特别是如果你不明白它为什么以这种方式构建。
答案 1 :(得分:5)
捆绑包ID只是您应用的标识符。它主要用于为您提供在提交到App Store之前用于签署应用程序所需的证书,或者在开发设备上使用它(例如用于测试)。 bundle id可以是你想要的任何东西。 Apple建议使用语法com.yourcompany.yourapp
使其与您开发的应用程序保持一致,并避免与其他应用程序的标识符冲突。
可以在所有应用中使用通配符,而特定ID只能与一个应用一起使用。我建议你为你的每个应用程序设置一个id,并且只有一个用于开发的通配符(这样你就可以在你的设备上运行任意数量的应用程序,而不必担心证书,直到你决定发布应用程序)。您无需在所有应用程序上访问所有服务(如Game Center或iCloud),因此您只需使用应用所需的服务即可更好地签署单个证书。
答案 2 :(得分:2)
我认为Apple想要的是:
为使用应用内购买/ GameKit或两者的每个应用创建不同的捆绑ID。
对于不使用这些应用的应用,您可以拥有相同的App-ID和捆绑ID。
如果您的应用程序的bundleID未用于任何其他应用程序,则可以使用它。
有些人知之甚少,如果我错了,请纠正我。