Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 如何使用in_app_purchase插件实现子承诺?_Flutter - Fatal编程技术网

Flutter 如何使用in_app_purchase插件实现子承诺?

Flutter 如何使用in_app_purchase插件实现子承诺?,flutter,Flutter,我正在使用in_app_purchase flatter插件来实现订阅 我不明白如何检查某个用户是否仍然订阅: QueryCastPurchases方法为每个订阅返回一个PurchaseDetails对象,但我找不到当前订阅的状态“活动/非活动”等 我可以检查transactionDate字段,但这不是一个好的解决方案 通知有关此问题的任何帮助循环查看每个PurchaseDetails,如果purchase.billingClientPurchase.sku==您的订阅ID,则存在活动订阅。 如

我正在使用in_app_purchase flatter插件来实现订阅

我不明白如何检查某个用户是否仍然订阅: QueryCastPurchases方法为每个订阅返回一个PurchaseDetails对象,但我找不到当前订阅的状态“活动/非活动”等

我可以检查transactionDate字段,但这不是一个好的解决方案


通知有关此问题的任何帮助

循环查看每个PurchaseDetails,如果purchase.billingClientPurchase.sku==您的订阅ID,则存在活动订阅。 如果用户取消订阅且订阅已超过结束期限30天,则response.pastPurchases列表将不包含您的订阅ID的订阅/购买

for (PurchaseDetails purchase in response.pastPurchases) {

    if(purchase.billingClientPurchase.sku == "your_subscriptionID"){
      hasSubscription = true;
    }

    if (Platform.isIOS) {
      InAppPurchaseConnection.instance.completePurchase(purchase);
    }
  }