mk-*_*v-1 8 notifications server-to-server ios firebase in-app-subscription
我已成功为 Google Play 实施订阅验证,但我很难理解 iOS 自动续订订阅的验证流程,想寻求您的帮助。以下是 Google Play 的高级逻辑:
一段时间以来,这一直运行得非常好且稳健。
据我所知,developerPayload已被弃用,它可用于传递,例如UserID,以确定订阅属于谁。(来源)
您认为有没有更简单的方法可以做到这一点,可能 只使用 Google Play 开发者通知?
我在订阅更改的每一步都会收到通知,我只是根据到期日期更新我的订阅和hasActiveSubscription标志。这很有效,因为我会在订阅到期时收到通知(通知类型SUBSCRIPTION_EXPIRED),并且在任何时候订阅都会延长,例如。(来源)
该验证逻辑中是否缺少任何内容或任何潜在风险?
到目前为止,这两个问题只是为了确保我不会遗漏一些重要的东西。同样,根据我的经验,这工作得很好。
我的应用程序(顺便说一下,基于 Flutter)要在 iOS 上发布,剩下的就是为 iOS 实现验证逻辑。
让 google 验证逻辑变得相当简单的一件事是googleapis库,它本质上为我提供了所有响应的模型类,例如通知或订阅详细信息。我一直无法为 Apple 找到类似的东西,我不确定是否有。
是否有任何(官方)库为我提供与Node.js 的googleapis类似的功能?
对于新订阅,我目前正在查询verifyReceipt端点,它似乎运行良好。但是,Apple 似乎并未在任何地方说明需要准确验证哪些字段,以便为用户提供应用程序内的访问权限。我遵循相同的逻辑,意思是:如果我确实从端点收到了有效的收据并且它没有过期,我会授予访问权限。
该逻辑是否足以满足新订阅的需求,还是我遗漏了什么?
到目前为止,对于 Google,我只是存储了通过查询 api 收到的订阅详细信息,包括UserID和token。这样做主要是为了懒惰,因为收到的文档结构相当简单。Apple 的回应要复杂得多,所以我很不确定要存储什么(如果你问我,记录很差),所以我想知道:
对于 Google 和 Apple,我实际上需要哪些详细信息,尤其是当我依赖通知来更新订阅时?
关于订阅的更新,我想知道如何处理来自 Apple 的服务器到服务器通知。
它们究竟是什么时候发送的,我可以实现与上述 Android 相同的逻辑吗?
因为我似乎找不到这部分的好的文档或教程:
您可能知道有关这些通知的任何好的教程吗?
非常感谢您的支持,马蒂亚斯
我已经有一段时间没有问这些问题了,虽然技术上这些问题还没有得到解答,但我仍然想与大家分享我的解决方案。
我寻求的解决方案只是实施 RevenueCat,它专注于为您管理应用程序订阅,因此无需再担心所有这些问题。
| 归档时间: |
|
| 查看次数: |
692 次 |
| 最近记录: |