//获取url参数 export function getQueryVariable(variable, urlInfo) { let url = decodeURI(decodeURI(urlInfo || window.location.href)) console.log(url) let i = url.indexOf('?') let queryStr = url.substr(i+1) let vars = queryStr.split("&"); for (let i=0;i<vars.length;i++) { let pair = vars[i].split("="); if(pair[0] == variable){return pair[1];} } return ''; } // 判断ios还是安卓 export function isIOSWebKit() { const aa = window.navigator.userAgent; if (!!aa.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/)) {// ios端 return true; } else if (aa.indexOf('Android') !== -1 || aa.indexOf('Adr') !== -1) {// 安卓端 return false; } } //当前方法传参数两种 字符串或者map export function callMobile(handlerInterface, parameters) { let classStr = Object.prototype.toString.call(parameters); if (classStr === '[object String]' || classStr === '[object Object]') { let param = parameters; if (classStr === "[object Object]") { //判断传参是str ,还是object //handlerInterface由iOS addScriptMessageHandler与andorid addJavascriptInterface 代码注入而来。 param = JSON.stringify(parameters);//参数必须转化成json格式 } try { if (isIOSWebKit()) {//ios if (window.webkit !== undefined) { if (param == '{}') { window.webkit.messageHandlers[handlerInterface].postMessage(null); } else { window.webkit.messageHandlers[handlerInterface].postMessage(param); } } } else if (isIOSWebKit() === false) { //安卓传输不了js json对象,只能传输string if (param == '{}') { window.H5page[handlerInterface](); } else { window.H5page[handlerInterface](param); } } } catch (e) { } } }