iOS应用程序内购买和订阅:测试

时间:2013-02-05 14:48:06

标签: ios in-app-purchase subscription

我的一所大学已经按月自动续订实施了iOS应用内购买。我正在接管代码库,并希望测试它是否正常工作。我知道购买正在进行,但自动更新是我所担心的。

我已经设置了一个测试用户并阅读了Apple文档,该文档在沙箱模式下显示,沙箱中的一个月是5分钟。

但是我在5分钟后没有收到苹果的任何回复信息?我应该吗?

在AppDelegate中我有

 inAppPurchase = [TFInAppPurchase new];
[[SKPaymentQueue defaultQueue] addTransactionObserver:inAppPurchase];
[inAppPurchase updateAvailableProductsCache];

我预计5分钟后会发出通知或其他内容吗?

3 个答案:

答案 0 :(得分:14)

iTunes development guide中,列出了自动续订订阅在沙箱模式中持续的时间:

  

沙盒测试您的应用内购买

     

您需要在提交之前在沙箱环境中测试应用内购买   由Apple审核。您必须先退出iTunes Store帐户   在尝试使用沙箱之前,从您的测试设备设置   环境。如果您错误地使用了测试用户帐户凭据   登录测试设备上的生产环境(而不是   在您的测试环境中),您的帐户凭据将变为无效   并且不能再次用作测试帐户。有关如何更多详细信息   避免在测试帐户使用期间出现错误,请参阅“使用测试用户”   帐户“。

     

在测试中自动更新的应用内购买订阅时   沙箱环境,持续时间将被压缩以允许   更简化的测试。另外,沙盒订阅   只会自动续订最多6次。订阅后有   自动续订6次,它将不再在沙盒中续订。该   压缩持续时间如下:

   Actual duration      Sandbox duration
   1 week               3 minutes 
   1 month              5 minutes
   2 months             10 minutes 
   3 months             15 minutes 
   6 months             30 minutes 
   1 year               1 hour

答案 1 :(得分:3)

没有通知。你自己跟踪它(持续时间)。您将收到包含您保存的原始交易的收据。使用此选项验证(可能每次启动时)用户的订阅仍处于活动状态。

答案 2 :(得分:0)

苹果不会生成任何通知。 您必须使用nsuserdefaults或keychain将配方保存在服务器或设备上。 你必须自己追踪持续时间。通过计算 将相关产品标识与每个应用内购买收据的产品标识进行比较。 如果有匹配的收据,则验证成功。否则,验证失败。

验证成功后,您的应用程序将启用购买的功能 - 例如,通过下载内容或添加功能。验证失败时,您的应用程序根本不启用该功能。