我正在尝试使用Google Pay
.Phone Pay
PayTM
deep links
openPaymentApp = async (payApp) => {
let url = '';
switch(payApp) {
case 'PAYTM' : url = 'paytmmp'; break;
case 'GPAY' : url = 'gpay'; break;
case 'PHONEPE' : url = 'phonepe'; break;
}
url = url + '://upi/pay?pa=7024293076@upi&pn=DK Bose&mc=0000&tr=123456789ABCDEFG&tn=HelloWorld&am=11&cu=INR'
console.log('URL : ',url);
try {
await Linking.openURL(url);
}
catch (err) {
console.error('ERROR : ',err);
}
}
render(){
return (
<View style={{alignItems:"center",justifyContent:"center",flex:1}}>
<Button title='PAYTM' onPress={() => this.openPaymentApp('PAYTM')}/>
<Button title='GPAY' onPress={() => this.openPaymentApp('GPAY')}/>
<Button title='PHONE PE' onPress={() => this.openPaymentApp('PHONEPE')}/>
</View>
);
}
它在 iOS 中运行良好,即在打开相应应用程序的深层链接时,应用程序会自动跳转到 UPI 支付页面,其中预先填写了 VPA、名称、金额、注释等字段。
但是在Android上我有以下问题:
GPay
: 应用程序打不开。Paytm
:应用程序打开但未转到 UPI 付款页面PhonePe
:应用程序打开但未转到 UPI 付款页面
当我尝试使用默认的 upi 深层链接时,在 android 上它会弹出一个选择 UPI 应用程序的窗口。但是那里只列出了 Google Pay 和 iMobile(来自 ICICI),Paytm 和 Phonepe 没有在该弹出窗口中列出。
upi://pay?pa=7024293076@upi&pn=DK...
Deeplinks
iOS 和 Android 的 UPI 支付应用程序是否不同?
还需要做什么才能打开应用程序并移动到预填字段的 UPI 支付页面?