In App Purchase产品ID是否必须以Reverse-DNS开头?

时间:2010-08-31 02:18:26

标签: iphone ios4 ios in-app-purchase storekit

In App Purchase产品ID是否必须以com.mycompany.My_Awesome_Game.Level_Pack_1等反向DNS开头,还是只能像Level_Pack_1一样独立?

3 个答案:

答案 0 :(得分:23)

产品ID可以是您想要的任何内容,但建议您遵循反向域名样式。但最终对产品ID的命名没有限制。它也不需要使用您的应用包ID作为前缀。

来自the source

  问:我正在实施In App Purchase   并且必须注册我的产品   身份标识。什么是产品   标识符以及如何创建和   在我的申请中使用它们?

     

答:产品标识符是一个字符串   用于唯一识别每一个   您希望从您的产品销售的产品   应用。 App Store使用它   检索有关产品的信息。   它是一个字符串标识符   仅包含字母数字   (A-Z,a-z,0-9),下划线(_),和   句号(。)字符。你可以使用任何   你的这些人物的序列   标识符。但是,我们建议这样做   您使用反向域名样式   (例如,   com.companyname.application.productid)   在创建标识符时。

所以'Level_Pack_1' - 在您的示例中 - 将是有效的产品ID。

答案 1 :(得分:0)

我遇到了“没有收到应用内商品(0)”多个月试图解决这个问题。结果:

credits_1不被允许,但credit1工作正常!所以,不要使用任何_-符号

答案 2 :(得分:0)

这是一个古老的问题,但是自从我最近一直在想关于同一问题的问题以来,我一直在这里。最终,当我在项目中逐步完成IAP的实施时,这对我来说已经很清楚了:

  1. 如果您不需要App Store来托管应用内购买内容,则产品ID可以是字母数字(A-Za-z0-9),下划线(_)和点(。)的任意组合; < / li>
  2. 如果您确实需要App Store来托管内容,则产品ID必须是反向DNS,例如( com.yourCompany.yourProduct ),并且必须与应用内购买内容项目的捆绑包标识符匹配。稍后,当您存档内容项目并使用Xcode存档上传器将其上传时,App Store Connect便知道如何将上传的内容与应用内购买产品相关联。