通过 intent Android 启动 Phonepay 等支付应用

Launching payments app like Phonepay via intent Android

Whosebug 上有类似的问题,但 none 对我有用。

问题列表

  1. UPI Payment Gateway using Android Deep Link
  2. UPI App Deep linking using Intent - inconsistent and buggy behavior

我设法使用 startActivity(new Intent(ACTION_VIEW).setData(Uri.parse(upi_string))); 打开以 upi://pay 开头的 Uri 但是当我尝试使用 createChooser 时,没有检测到可以处理 UPI 付款的应用程序。

如何为 UPI 应用创建选择器?

当我点击 google pay 或任何 upi 应用程序图标时,我正在使用 flutter 并在我的应用程序中 url 启动器已启动 函数是:

_launchgooglepay() async {
  const url =
      'upi://pay?pa=kechamadavipul@okhdfcbank&pn=Payee Name&tn=Payment Message&cu=INR';
  if (await canLaunch(url)) {
    await launch(url);
  } else {
    throw 'Could not launch $url';
  }
}

url

upi://pay?pa=kechamadavipul@okhdfcbank&pn=Payee Name&tn=Payment