首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >何时响应本机RNIap.purchaseErrorListener被调用?

何时响应本机RNIap.purchaseErrorListener被调用?
EN

Stack Overflow用户
提问于 2022-01-04 12:42:04
回答 1查看 302关注 0票数 1

我在应用程序购买中集成了react-native-iap。Android支付流程正常工作(付款成功,付款失败,用户取消支付)。但是当显示购买卡时,面对问题,我点击卡外,卡被取消,但在RNIap.purchaseErrorListener中没有得到事件。因此,我的状态变量没有更新。

这是样本:

侦听器代码:

代码语言:javascript
复制
  useEffect(() => {
  initPurchase()

  purchaseErrorSubscription = RNIap.purchaseErrorListener(

    (error) => {
      console.log('purchaseErrorListener INAPP>>>>', error);
    
      if(error.code == "E_USER_CANCELLED") {
        //for cancelled or refund sku
        setSelectedPackage(null)
        RNToasty.Show({
          title: error.message,
        });
      } else if(error.code == "E_ITEM_UNAVAILABLE") {
        //item not found
        setSelectedPackage(null)
      } else {
        setSelectedPackage(null)
      }
      
    },

  );

 

}, [])  

当我执行上述操作时,未调用侦听器。

有人能帮我办这个活动吗?提前谢谢!!

EN

回答 1

Stack Overflow用户

发布于 2022-08-10 14:18:25

您需要将其放入函数中,并在useEffect中调用此函数

代码语言:javascript
复制
const checkCurrentPurchaseError = async () => {
    purchaseErrorListener(async currentPurchaseError => {
      if (currentPurchaseError) {
        Here is your code...
      }
    });
  };
  
  useEffect(() => {
    checkCurrentPurchaseError(currentPurchaseError);
  }, []);

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70578982

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档