原生支付 - wap2app教程
支付功能是app重要的组重部分,wap2app支持两种支付方式:原生支付、H5网页支付。
H5支付
H5网页支付主要是通过schame调起客户端达到支付的目的。
hello wap2app示例里的支付示例采用的就是这种(在HBuilder新建wap2app选择hello wap2app模版示例即可体验),在需要支付时将参数传入后台,生成相关参数然后跳转支付页面,在支付页面,会自动通过schame调起客户端进行支付。
开发wap2app时,使用H5支付的方式,改动较少,只需要将页面的url配置到的webview里面即可。
在实际开发中,可将微信或支付宝的支付页面配置到同一个webview里面简单命名为pay,支付成功或失败后新开到另外的webview,命名为paySuccess,在paySuccess这个页面onShow()的时候,关闭pay页面,这样,执行back操作的时候就可以直接退回订单生成的页面,开发者可根据自己的需求设置页面逻辑。
原生支付
wap2app是运行在5+runtime下的应用,所以支持5+plus的各种api,其中包含支付功能。
5+支付可参考教程http://ask.dcloud.net.cn/article/71,也可在HBuilder里面新建Hello H5+,在里面查看相关demo源码。
使用5+的支付方式需要改造原站,判断是5+引擎的环境下,调用pay模块的api即可实现。
document.getElementById("pay").addEventListener("click", function() {
if(navigator.userAgent.indexOf("Html5Plus") > -1) {
//5+ 原生支付
} else {
//原有wap站H5支付
}
});
使用原生支付体验较好,支持各种回调,可以得到不同的返回参数,开发起来逻辑更加清晰。