问题描述
支付宝回调的付款页面,首次回调后,安卓系统无法调起支付控件,需重新刷新h5页面。
参考原因
当页面加载完后会创建 AlipayJSBridge对象,同时会触发AlipayJSBridgeReady事件,原因可能是当执行 AlipayJSBridge.call(’’)操作时,AlipayJSBridge还没有创建,所以无法执行。
//支付宝浏览器打开
var tradeNo1 = result.data;
document.addEventListener('AlipayJSBridgeReady', function() {
AlipayJSBridge.call("tradePay",{
tradeNO:tradeNo1
},function(result){
if(result.resultCode=='9000'){
AlipayJSBridge.call('closeWebview');
}else{
}
});
}, false);
支付宝官方源码
创建订单+JSAPI唤起收银台支付
// 由于js的载入是异步的,所以可以通过该方法,当AlipayJSBridgeReady事件发生后,再执行callback方法
function ready(callback) {
if (window.AlipayJSBridge) {
callback && callback();
} else {
document.addEventListener('AlipayJSBridgeReady', c

在支付宝H5支付中遇到问题,首次回调后安卓设备的支付控件无法正常启动,需要刷新页面才能使用。问题可能由于在调用AlipayJSBridge.call()时,该对象尚未创建,导致AlipayJSBridgeReady事件未被正确触发。解决方案需关注AlipayJSBridge的创建和事件监听。

304

被折叠的 条评论
为什么被折叠?



