【问题标题】:Return navigation is not working in wallets for Razorpay payment gateway返回导航在 Razorpay 支付网关的钱包中不起作用
【发布时间】:2021-12-19 06:36:57
【问题描述】:

我使用 RazorPay Android SDK 作为我产品的支付网关。我已经实现了他们所描述的正确代码,该代码在实时模式下可以正常工作以进行卡支付。但是对于像 PhonePe 和 GPay 这样的钱包来说,问题就来了。

问题是当用户选择任何钱包时,它会以适当的金额导航钱包。然后,用户可以从 RazorPay 仪表板中填充的钱包支付金额。但是在从钱包中支付金额后,流程会自动导航到我的应用程序的支付页面,在该页面我实施了 RazorPay onSuccess 和 onFailour 方法,而不是支付流程留在钱包本身,所以我无法使用付款详情,也无法更新付款界面。

我在下面添加了我为付款实施的代码。

chackout = new Checkout();
    chackout.setKeyID(razorpayKey);
    try {
        JSONObject options = new JSONObject();
        options.put("name", "Company");
        options.put("description", "Advance for "+mBookings.getPartyName());
        options.put("currency", "INR");
        options.put("amount", finalAdvAmount);
        options.put("send_sms_hash",true);

        JSONObject preFill = new JSONObject();
        preFill.put("email", ud.getUserMailId());
        preFill.put("contact", mBookings.getBookingPersonPhoneNumber());
        options.put("prefill", preFill);

        chackout.open(this, options);
    } catch (Exception e) {
        AppUtils.showSnackBar(this, "There is some issues when starting payment. Please try 
         after sometimes");

    }

我还实现了PaymentResultWithDataListener,通过它我也处理onSuccessonFailour 方法。

有人遇到过同样的问题吗?

【问题讨论】:

    标签: android razorpay razorpay-andoid-sdk


    【解决方案1】:

    您提供的代码无关紧要;回调监听器是最重要的。在Activity(您也没有提供)中注册这些回调时,当前显示哪个Fragment 并不重要。您只需要在该Activity 中处理NavController - 以便它可以在回调时导航。最终,您需要检查正在显示哪个Fragment - 然后只需触发相应的NavAction - 因为并非每个NavAction 都不适用于每个Fragment(除非是全局的)。

    【讨论】:

      【解决方案2】:

      经过长时间的努力,我得到了运行良好的答案。要使用任何钱包,例如 phonePe 或 GPay,我们需要在清单中使用 <queries> 并使用适当的导航意图。 如下所示:

      <queries>
          <!--google pay-->
          <package android:name="com.google.android.apps.nbu.paisa.user"/>
          <!--phonePe-->
          <package android:name="com.phonepe.app"/>
          <intent>
              <action android:name="android.intent.action.SEND"/>
      
          </intent>
          <intent>
              <action android:name="com.google.android.youtube.api.service.START" />
          </intent>
      </queries>
      

      【讨论】:

        猜你喜欢
        • 2014-08-11
        • 2023-03-20
        • 2020-09-26
        • 1970-01-01
        • 2022-07-28
        • 2020-10-23
        • 2020-02-01
        • 2017-02-28
        • 1970-01-01
        相关资源
        最近更新 更多