如何确定购买应用程序(不是应用内购买)的原始版本或日期

时间:2016-05-29 13:42:55

标签: ios in-app-purchase testflight receipt-validation

我的应用目前是付费应用。我想将应用程序转换为免费的应用程序与IAP和祖父(给所有付费应用程序的用户)免费的IAP功能。我认为我可以使用收据验证(1)确定应用程序的原始购买日期 - 但这似乎仅适用于IAP或(2)使用原始应用程序版本(似乎是构建版本而不是应用程序版本)。但是,当我在testflight中测试时,原始版本号始终是' 1.0'。各种消息来源称这是一个testflight问题,发布应用程序将在购买应用程序的日期正确识别构建。 https://forums.developer.apple.com/message/42107#42107我还没有在stackoverflow上看到这个问题 - 许多关于查找应用购买日期的问题都是在iOS 7中的收据验证之前或应用于应用内购买,而不是最初购买的应用

我有3个相关的问题,看看我是否走上了正确的轨道:
问题1:我可以使用原始应用程序版本来识别在我的应用程序转换之前购买的用户。也就是说,购买1.30或更早版本的用户可以通过将它们与最新版本2.0进行比较来识别,然后我可以授予任何原始版本号为< 2.0,免费访问IAP功能。

问题2:在应用发布之前,有没有办法测试代码,例如使用testflight?

问题3.是否有其他方法可以将应用程序转换为免费增值而不让现有用户偿还(即使他们在新设备上下载应用程序)?

我使用Receigen获取收据数据并测试我的模型 - Receigen指出测试原始版本号是零还是零,但是当应用程序发布时,不会说这是否已修复。

1 个答案:

答案 0 :(得分:6)

更新:Apple技术支持已确认(1)原始应用程序版本是用于识别现有用户的字段(不是每个WWDC 2013的原始购买日期)。 (2)TestFlight和Sandbox不起作用,因为当前用户没有应用程序历史记录。被鼓励提交错误报告(正如其他人已经做过的那样)。即使TestFlight中的应用程序收据都将original_app_version返回为“1.0”,您应该在应用程序投入生产时获得真实版本。只希望你没有搞砸开发!