5

GPay 集成在 2 天前完全正常,但现在它在 gpay 应用程序中显示相同的错误。要求 gpay 付款的意图不起作用。我在几天前成功完成了交易。但现在它不起作用。任何帮助,将不胜感激!提前致谢。

我的代码

 uriapp = new Uri.Builder()
            .scheme("upi")
            .authority("pay")
            .appendQueryParameter("pa", getString(R.string.vpa))
            .appendQueryParameter("pn", getString(R.string.payee))
            .appendQueryParameter("tr", orderId)
            .appendQueryParameter("tn", description)
            .appendQueryParameter("am", String.valueOf(amount))
            .appendQueryParameter("cu", "INR")
            .build();

 Intent intent = new Intent(Intent.ACTION_VIEW);
        intent.setData(uriapp);
        intent.setPackage(model.getPackageName());
        if (intent.resolveActivity(getPackageManager()) != null) {
            startActivityForResult(intent, GOOGLE_REQUEST_CODE);
        } else {
            Toast.makeText(this, "This payment mode is not available on your device.", Toast.LENGTH_LONG).show();
        }

我正在使用正确的 vpa 业务 ID。

GPay 错误:

this transaction may be risky. for your safety it cant be completed at this time
4

1 回答 1

0

目前这个片段正在测试应用程序中工作。让我知道它是否不适用于您的。

    private static final int TEZ_REQUEST_CODE = 123;

    private static final String GOOGLE_TEZ_PACKAGE_NAME = 
    "com.google.android.apps.nbu.paisa.user";

Uri uri =
    new Uri.Builder()
        .scheme("upi")
        .authority("pay")
        .appendQueryParameter("pa", "test@okbizaxis")
        .appendQueryParameter("pn", "Test")
        .appendQueryParameter("mc", "1234")
        .appendQueryParameter("tr", "1234")
        .appendQueryParameter("tn", "test")
        .appendQueryParameter("am", "10")
        .appendQueryParameter("cu", "INR")
        .appendQueryParameter("url", "")
        .build();
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(uri);
intent.setPackage(GOOGLE_TEZ_PACKAGE_NAME);
startActivityForResult(intent, TEZ_REQUEST_CODE);
于 2021-03-09T08:45:19.827 回答