Flutter Revenuecat、Flatter-PurchasePackage不起作用,但也没有例外

Flutter Revenuecat、Flatter-PurchasePackage不起作用,但也没有例外,flutter,revenuecat,Flutter,Revenuecat,以下是场景: Sandbox用户购买了订阅,但该订阅已过期 沙盒用户再次尝试购买相同的订阅 苹果的IAP UX不会被触发,PurchaserInfo对象返回时会显示新的购买和新的授权。没有抛出异常 在Purchaser Info对象中,我看到了旧的权利和过期的订阅 我在这里遗漏了什么?对于不同的场景,我面临着相同的问题。 有时“purchasePackage”方法成功,有时不返回。没有抛出异常,产品的底部未显示。如果再次点击purchase按钮,我将获得PurchaseErrorCode.Ope

以下是场景:

  • Sandbox用户购买了订阅,但该订阅已过期
  • 沙盒用户再次尝试购买相同的订阅
  • 苹果的IAP UX不会被触发,PurchaserInfo对象返回时会显示新的购买和新的授权。没有抛出异常

    在Purchaser Info对象中,我看到了旧的权利和过期的订阅


    我在这里遗漏了什么?

    对于不同的场景,我面临着相同的问题。 有时“purchasePackage”方法成功,有时不返回。没有抛出异常,产品的底部未显示。如果再次点击purchase按钮,我将获得
    PurchaseErrorCode.OperationalReadyProgressError
    。沙盒和普通用户都会遇到这种情况


    在我看到的日志中,购买已开始,仅此而已。

    最后,经过一周的调查,我发现了问题和解决方法:问题是AudioService和RevenueCat购买插件之间存在冲突。在“initState”中调用“Purchases.setup”方法解决了这个问题。

    对于正在获取PurchaseErrorCode的用户。OperationalReadyProgressError:


    purchases flatter
    Yep中有一个bug。完全相同的问题。我可以问你你在使用哪些插件吗?这可能是插件之间的冲突。对于
    identify
    方法,我也遇到了同样的问题,即插件冲突。我用超时修复了它。我使用了大量插件!但是,对我来说,它90%的时间都能正常工作(我还向应用商店提交了应用程序并获得了批准)。但偶尔我会犯这样的错误,问题是我们可能会损失多少钱!这对meDo来说非常关键。你是说我们应该在调用purchasePackage()之前调用Purchases.setup()?我在main()上调用了Purchases.setup(),但问题仍然存在。如果您面临此插件冲突,您需要在获取购买信息和产品之前重新设置购买(最有可能在initState方法中)。问题不是获取OperationalReadyProgressError。呼叫被卡住,没有错误。您应该始终尝试在应用程序流中尽早设置SDK。这是为了让SDK在事务发生时立即捕获队列中的事务,其中可能包括在应用程序之外发生的事务(如从iOS设置菜单)。此外,您应该只需要调用
    setup
    一次,不需要再次调用它。如果用户注销,您可以使用
    reset
    重置SDK以使用新的匿名ID,但您不应该在应用程序中多次调用
    setup
    。正如我在下面解释的,AudioService和RevenueCat之间存在插件冲突。通常情况下,例如,在示例应用程序中,一切都如您所解释的那样正常工作。但就我而言,在播放音频后,RevenueCat呼叫被卡住了。