【问题标题】:UPI Deeplinking from IONIC to GooglePay does not work as expected从 IONIC 到 GooglePay 的 UPI 深层链接无法按预期工作
【发布时间】:2019-02-26 10:50:06
【问题描述】:

我们开发了一个基于 IONIC 的移动应用,以使用 UPI 执行应用内支付。它使用 IONIC Native Web Intent 插件。 一种。 湾。 "@ionic-native/web-intent": "^4.14.0",

这是 Android Intent 机制的 shim 层,用于对 BHIM/PhonePe/GooglePay 进行网络 Intent 调用

它适用于所有 UPI 应用程序,如 BHIM、PhonePe。但不适用于 GooglePay,由于某些原因使用相同的代码,即使 UPI 付款成功,Google Pay 也会向 OnActivityResult() 返回 NULL Intent

  1. 我在一个示例原生 Android 应用中编写了类似的功能,并尝试使用 GooglePay 付款,它可以正常工作

  2. 所以我很困惑。我确实调试了我的 IONIC 应用程序,这就是我发现在 GooglePay 付款成功后,回调返回到 Android,然后返回到 Cordova,然后返回到我的应用程序。似乎 Android 的 Intent 代码或 GooglePay 代码正在向调用方应用发送 null Intent。

感谢您对此的任何反馈。

谢谢你和热烈的问候

哈雷什古吉拉特语

【问题讨论】:

  • 我正在尝试将我的 Ionic 应用程序与 BHIM 集成,您能建议我实现这一目标的方法吗?

标签: ionic3 deep-linking webintents upi google-tez


【解决方案1】:

以下是我在 Ionic 项目中使用的代码,用于在 Android 中进行 UPI 支付。我能够从 Google Pay 获得回复。我已经用 Paytm、Whatsapp 和 Google pay 对此进行了测试。

// I'm using this to open the app user has choosen to pay with
private packages = {
  'paytm': 'net.one97.paytm',
  'google': 'com.google.android.apps.nbu.paisa.user',
  'whatsapp': 'com.whatsapp'
};
// Deep link URL
const url = 'upi://pay?pa=<UPI ID>&pn=<Payee name>&tr=<Transaction ID>&tn=<id>&am=<amount>&cu=INR';
// Deep link options
const options = {
  action: this.webIntent.ACTION_VIEW,
  url,
  package: this.packages[serviceName]
};
// Open the intent with options
this.webIntent.startActivityForResult(options).then(console.log, console.error);

【讨论】:

  • 交易ID不应该是付款完成或拒绝后的响应吗?
  • 我从 google pay 得到了很好的结果。但不是来自whatsapp,paytm
  • 使用上面的代码如何知道支付成功或失败。谁能解释一下?
  • @sanjayKumar 您将如何了解 UPI 应用用户选择的内容?你在哪里填写 serviceName 变量的值?
  • @sachinrathod 您可以将包以某种形式的 UI 呈现给用户,然后根据用户的选择,您可以选择包。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-05-30
  • 1970-01-01
  • 2022-12-15
  • 2018-11-17
  • 2016-11-12
  • 2019-10-11
相关资源
最近更新 更多