无效的 IAP 产品标识符

Invalid IAP product identifiers

我了解,对于应用内购买,我向商店发出请求,然后应用加载 UI,用户点击 "buy" 并进行购买,并且然后应用程序会传送它。

这是关于第一步的问题:发出请求。

对于我的游戏,我正在制作一个 IAP 以去除广告,费用为 1.00 美元。

我的困惑在于产品标识符。在这种情况下我不能使用我的 Bundle ID,因为它包含连字符。我放什么?反向域名?任何字母数字标识符?

我尝试在 iTunes Connect 和我的代码中使用类似 noads 的东西,但是这个 returns 无效。

我会使用 com.example.noads 吗?

与我的困境相关的其他一些信息:

在产品标识符中,您在整个 Apple 系统中放置了一个唯一的字符串。这个想法是放置一个标识符字符串,而不是像 153e31xp 这样的 id。

在我的特殊情况下,我将反向域与描述产品的子集结合使用,例如:com.mydomain.myapp.mycategories.myproduct

编辑: 请注意,在您创建 IAP 之后,您可能需要等待几个小时才能 return 提出请求时作为有效产品

那么您的意思是您实际上收到了一个 SKProductsResponse,其中包含您随请求发送的 ID 的 invalidProductIdentifiers 字段?

如果是这样,我会仔细检查您是否真的使用您在 iTunes Connect 中设置的相同字符串。

如果检查成功,则问题可能出在您的测试用户身上。您只能通过 iOS 从您的应用程序启动的对话框 登录,不要使用应用程序外部的测试用户登录[=19= 】,喜欢在应用商店的应用!如果你这样做了,你的测试用户就没用了,你需要创建一个新的测试用户。

确保您的销售合同有效。在我设置之前,它一直返回无效的标识符。