标签: non-renewing-subscription

非续订订阅已购买警报轨道

我正在我的应用程序中实现非续订订阅IAP,我将使服务器实现到期订阅.当我点击我已经购买的订阅时,我感到困惑,它显示一个对话框,"此应用内购买已经被购买.它将免费恢复." 用OK按钮.我这里有两个问题:

  1. 有时它会显示上面的对话框,但有时会显示"Tap buy to renew or extend it".对话.谁能告诉我这背后的原因是什么?或者它只是一个沙盒问题.(此截图来自另一个主题.)
  2. 当我收到"这个应用内购买已经被购买.它将免费恢复." 警报,我怎么能停止活动指标?是否有委托方法来跟踪这个?

我找不到但iOS 8中有什么新东西?

在此输入图像描述

谢谢

objective-c in-app-purchase ios non-renewing-subscription ios8

18
推荐指数
1
解决办法
3485
查看次数

不续订订阅:从收据中删除?

我正在为我的应用实施应用内购买(即将发布),并为iOS6和iOS7提供支持.我的问题与iOS6和iOS7上的非续订订阅机制之间的差异有关,更具体地说,关于如何实现恢复.为了适应iOS6和iOS7,我实现了一个服务器端解决方案来启用恢复.我可以选择允许用户创建可以在不同设备上使用的用户名/密码(如果数据丢失,则使用同一设备)进行恢复.我的大部分工作基本上都在工作,但随着我的测试进展,我发现了一些奇怪的东西.

iOS7恢复过程的初始部分使用SKReceiptRefreshRequest刷新应用程序中的收据.当我从iOS7设备上删除应用程序时,重新安装(此时没有收据;使用iExplorer进行测试),并进行恢复,SKReceiptRefreshRequest恢复10次购买(我在测试期间为此特定用户创建) .其中一个是非消耗品,其中九个不续订.这让我很困惑.从Apple文档中,我预计只会在刷新的收据中看到非消费品购买.来自https://developer.apple.com/library/ios/releasenotes/General/ValidateAppStoreReceipt/Chapters/ValidateLocally.html:

"消耗品和非更新订阅:在购买时,消费品或非续订订购的应用内购买收据会添加到收据中.它会保留在收据中,直到您的应用完成该交易.在此之后,下次更新收据时会将其从收据中删除 - 例如,当用户再次购买时,或者您的应用明确刷新收据时.

与非续订订阅有关,请访问https://developer.apple.com/in-app-purchase/In-App-Purchase-Guidelines.pdf:

使用iCloud或您自己的服务器跟踪购买情况,并允许用户将购买的订阅恢复到单个用户拥有的所有iOS设备

以及下表(https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/StoreKitGuide/Chapters/Products.html)

在此输入图像描述

有人有任何见解吗?

问题:为什么SKReceiptRefreshRequest会在收据中留下非续订产品的购买?这是Apple文档中的错误还是还有其他事情发生?

14年2月23日; 更新:我最近在Apple上发布了一个错误报告.还没回来.虽然,实际上,我不希望这个"虫子"消失!

15年10月20日; 更新:似乎Apple实际上已经解决了这个"错误".现在,当我使用恢复时SKReceiptRefreshRequest(这似乎是Apple推荐的恢复方法,请参阅https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/StoreKitGuide/Chapters/Restoring.html) ,我现在没有在收据中显示未续订的订阅购买.我只收到非消耗品(我的应用程序只有非续订订阅和非消耗品购买).在我写完这篇文章后,我会立即向Apple提交一份错误报告,他们的文档对预期的行为不明确.

到目前为止,我对此测试的测试包括我在iOS 8.4和iOS9上运行的应用程序(实际上因为我没有正确的设备运行生产版本,因此测试版为9.1 beta),因此看起来这是Apple的服务器端更改而不是严格说iOS /设备方改变.另请注意,到目前为止,我的所有测试都是在我的应用程序的开发版本中,因此在应用内购买沙箱中也是如此.我很快就会进行生产测试.

15年12月3日; 更新; 在Apple技术支持的提示下,我又进行了一些测试.这一次,在运行iOS9.2 beta 4(13C75)的iPad上.现在看来我们已经恢复"正常",不续订订阅.也就是说,当我进行恢复时,我再次看到收据中未续订的订阅.

restore storekit ios7 non-renewing-subscription

13
推荐指数
1
解决办法
3024
查看次数

使用 storekit 设置不可续订订阅的到期日期

我正在为我的新应用程序编写一个不可更新的订阅模块。包括1个月、3个月和6个月的订阅期。我不明白如何使用 icloud 设置到期日期。任何帮助,将不胜感激?

objective-c in-app-purchase ios non-renewing-subscription

5
推荐指数
1
解决办法
1646
查看次数