Flutter In-App-Purchase,每次重启应用如何查看是不是已购买?

Posted

技术标签:

【中文标题】Flutter In-App-Purchase,每次重启应用如何查看是不是已购买?【英文标题】:For Flutter In-App-Purchase, how to check the purchase has been made each time app is restarted?Flutter In-App-Purchase,每次重启应用如何查看是否已购买? 【发布时间】:2022-01-17 19:41:09 【问题描述】:

我正在测试我的第一个 Flutter In-App-Purchase 应用。购买后我应该将购买的信息存储在哪里,以便应用程序可以检查每次重新启动的时间?如果我在设备上本地存储,则用户清除用户数据后信息将丢失。如果我将其远程存储在 firebase 或其他服务器上,则设备必须在线才能使用付费功能。似乎找不到最佳解决方案。

似乎_inAppPurchase.purchaseStream.listen 仅在进行购买或“恢复以前的购买”时才发出数据流,而不是在每次应用程序被重述时。此外,在 Play 商店中卸载并重新安装应用程序不会自动恢复以前的购买,因此我必须提供一个手动恢复购买的按钮。

【问题讨论】:

【参考方案1】:

_inAppPurchase.purchaseStream.listen 是正确的。

如果每次运行应用程序时都检查它,会产生大量流量。因此,购买后,我们将其存储在本地。而如果你卸载再安装该应用,则需要通过恢复购买列表的方式再次使用本地存储该应用的处理器。

【讨论】:

以上是关于Flutter In-App-Purchase,每次重启应用如何查看是不是已购买?的主要内容,如果未能解决你的问题,请参考以下文章

iOS In-App-Purchase Sandbox 恢复消耗品购买

从 App 内获取 iOS In-App-Purchase 产品的产品参考名称

每 5 分钟或定期刷新 Flutter Text 小部件内容

Flutter & Firebase - 如何只允许每台设备有 1 个帐户

Android Flutter App 中的持久后台工作程序,每 30 秒获取一次 Web API

Flutter 查看当前页面甚至到每一个细节的weight