在 Razorpay onPaymentError 方法 Intent 不工作

In Razorpay onPaymentError method Intent not working

我已经在我的一个项目中实现了 Razorpay 支付网关。我正在使用测试密钥。支付成功后,onPaymentSuccess 方法调用成功并进入下一步activity,如onPaymentSuccess 方法中所述。

但是,当付款失败时,会调用 onPaymentError 并且显示 Toast 消息但不会转到下一个 activity。请帮忙

Checkout checkout = new Checkout();
checkout.setKeyID("rzp_test_key");
checkout.setImage(R.drawable.ic_logo_short);
JSONObject jsonObject = new JSONObject();
try {
jsonObject.put("name", name);
jsonObject.put("description", description);
jsonObject.put("order_id", order_id);
jsonObject.put("currency", "INR");
jsonObject.put("amount", finalAmount);
jsonObject.put("prefill.contact", mobile);
jsonObject.put("prefill.email", email);

JSONObject retryObj = new JSONObject();
retryObj.put("enabled", false);
jsonObject.put("retry", retryObj);

checkout.open(PaymentActivity.this, jsonObject);
} catch (JSONException e) {
e.printStackTrace();
}

@Override
    public void onPaymentSuccess(String s, PaymentData paymentData) {

        try {
            Intent intent = new Intent(PaymentActivity.this, PaymentStatusActivity.class);
            intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            intent.putExtra("payment_status", paymentData.getData().toString());
            startActivity(intent);
            finish();

        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    @Override
    public void onPaymentError(int i, String s, PaymentData paymentData) {

        try {
            Utility.showToastMessage(this, s);
            Intent intent = new Intent(PaymentActivity.this, PaymentStatusActivity.class);
            intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            intent.putExtra("payment_status", paymentData.getData().toString());
            startActivity(intent);
            finish();

        } catch (Exception e) {
            e.printStackTrace();
        }

    }


删除这一行:intent.putExtra("payment_status", paymentData.getData().toString());来自 onPaymentError 方法的工作是因为付款失败时 paymentData 中没有数据。