//获取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) {

        }
    }
}