我们运行SAAS Web应用程序,并将在Apple的应用程序商店中启动我们的应用程序(到目前为止,我们已经有了一个移动Web应用程序).
由于我们的客户易于使用,我们希望能够在应用程序中购买订阅.没问题,我们知道怎么做.
我们的问题是,是否有一种简单的方法可以使用户当前的订阅状态更新我们的Web应用程序的数据库,因此如果他们访问我们的Web应用程序,我们就知道他们的订阅是否有效.
理想情况下,如果Apple提供了一个Web钩子选项,他们会在我们的服务器上发布更新到URL,这将是很好的.据我所知,这不是一个选择.
我们总是可以在用户登录时从iPhone应用程序将数据发布到我们的服务器,但如果用户暂时不在iPhone上登录,我们服务器上记录的订阅状态将会过期.
其他人如何处理这个问题?我们错过了什么吗?
更新:
我找到的最接近的是这个帖子:https://forums.developer.apple.com/message/70707#70707
该应用在首次购买订阅或恢复订阅时会收到收据.该应用程序可以将原始收据发送到任何人的服务器.然后,任何人的服务器都可以使用该原始收据来随时验证当前的子收据.您不能使用不续订订阅但使用非续订订阅,用户必须在每个时间段从iOS设备购买扩展程序.
跟进这个:https: //hetzel.net/2011-04-01/server-side-auto-renewable-subscription-receipt-verification/
从Apple来看,听起来他们肯定不会为了同步而做出任何规定:
跨平台注意事项
产品标识符与单个应用相关联.同时具有iOS和OS X版本的应用程序具有在每个平台上具有单独产品标识符的单独产品.您可以让在iOS应用程序中订阅的用户访问OS X应用程序中的内容(反之亦然),但实现该功能是您的责任.您需要一些系统来识别用户并跟踪他们订阅的内容,类似于您为使用不可续订订阅的应用程序实现的内容.
在我的iOS应用程序中,我使用了自动续订订阅.我们需要一个跨平台的解决方案.我在iOS中使用RMStore购买产品.
在当前场景中:我从服务器获取最新收据didFinishLaunchingWithOptions并向AppStore验证,而RMStoreAppReceiptVerifier不是服务器的更新到期日期.我们始终从两个平台(iOS和Android)更新服务器数据.从iOS方面来说,我们必须在应用程序启动时始终检查收据.当我在续订付款时收到推送通知?如果可能,那么我们当时已经更新了服务器数据
Q-1)如何检查我的新续订流程是否完成?
Q-2)如果用户从iTunes取消了他们的自动续订订阅,我如何通知我以便更新我的数据库?我是否需要一个检查过期订阅的守护程序,以查看用户是否续订?
Q-3)在iOS中.如果我从其他设备登录,那么如何验证来自其他设备的收据?
请建议我如何使用服务器数据库在跨平台处理自动续订订阅.我希望有人可以帮助我.谢谢!
我创建了一个由Apple webhook调用的API来处理订阅.我在Itunes中设置了API网址,由webhook调用.
据苹果开发者网站https://developer.apple.com/library/content/documentation/LanguagesUtilities/Conceptual/iTunesConnectInAppPurchase_Guide/Chapters/TestingInAppPurchases.html#//apple_ref/doc/uid/TP40013727-CH4-SW5在问候中Testing Auto-Renewable Subscription,当在测试环境中测试自动更新订阅时,如果我选择1个月的订阅持续时间,Apple webhook将在5分钟后调用API.
但问题是,在第一次购买之后,apple webhook没有跟进我创建的用于续订潜艇的API的调用.即使在我等了5分多钟之后.所以我不能从API进行任何处理来更新数据库中的用户子.
我是否需要进行一些配置以测试自动续订并使apple webhook调用API以更新子?
我正在开发跨平台移动应用程序并使用InAppBiling 插件作为我应用程序的应用程序内购买功能,但我对 iOS 上的以下场景有疑问:
场景:
目前,它允许用户 B 购买此项目,但它说此用户有订阅并请求修改此订阅的权限。
我的问题是如何防止用户B修改用户A的订阅?在创建收据之前我找不到任何解决方案。我不想让用户 B 修改用户 A 的订阅。我想通知用户 B 使用不同的 Apple ID 继续购买订阅。
提前致谢
ios ×4
subscription ×2
apple-id ×1
iphone ×1
objective-c ×1
rest ×1
rmstore ×1
storekit ×1
xamarin ×1