订单页面是webview,但是支付页面是客户端做,所以要在去付款的标签上onclick js传参。
function OrderPay(order_id,pay_type,pay_account_id) {
if (navigator.userAgent.match(/(iPhone|iPod|iPad);?/i)) {
window.location.href = 'aoxintest://OrderId/' + order_id+'/PayType/'+pay_type+'/PayAccountId/'+pay_account_id;
} else if (navigator.userAgent.match(/(android);?/i)) {
window.androidOrderPay.AndroidOrderPay(order_id,pay_type,pay_account_id);
}
有点难懂,ios系统判断传参的那个还好,但是android的代码看得一头雾水。再网上查到了一篇讲Android WebView的文章:
http://www.cnblogs.com/mengdd/archive/2013/03/02/2940185.html
就是WebView的Js代码可以调用到Android代码中的方法,可以用AddJavascriptInterface方法在JS和Android间绑定一个新的窗口。因此JS代码中的androidOrderPay应该只是JAVA对象的别名的意思么。。。
public void addJavascriptInterface (Object object, String name)