js ios或安卓内嵌H5网页,如何调用app的方法

2023年 9月 28日 74.9k 0

返回

appGetBack 就是ios或安卓定义好的方法

// 返回
goBack() {
    //        判断环境
    let ran = navigator.userAgent;
    let isAndroid = ran.indexOf('Android') > -1 || ran.indexOf('Linux') > -1;
    let isIOS = !!ran.match(/(i[^;]+;( U;)? CPU.+Mac OS X/);
    if (isAndroid) {
       // 安卓环境
       window.android.appGetBack();
       return;
    }
    if (window.webkit != undefined && isIOS) {
       // IOS环境
       window.webkit.messageHandlers.appGetBack.postMessage(null);
       return;
    }
},

传参

receivePrize 就是ios或安卓定义好的方法

//去领取(跳转到app)
gotoCollect() {
    geCustomerService().then(res => {
        let data = res.data;
        let ran = navigator.userAgent;
        let isAndroid = ran.indexOf("Android") > -1 || ran.indexOf("Linux") > -1;
        let isIOS = !!ran.match(/(i[^;]+;( U;)? CPU.+Mac OS X/);
        let status = data.status === 0 //0=在线
        if (isAndroid) {
            try {
                // 安卓app环境
                window.android.receivePrize(JSON.stringify(data));
            } catch (e) {
                location.href = `https://xxxx.com/im/xxx/${data.id}/1/${data.nickname}/${status}`
            }
        }
        if (window.webkit !== undefined && isIOS) {
            window.webkit.messageHandlers.receivePrize.postMessage({ ...data });
        }

    })
},

相关文章

服务器端口转发,带你了解服务器端口转发
服务器开放端口,服务器开放端口的步骤
产品推荐:7月受欢迎AI容器镜像来了,有Qwen系列大模型镜像
如何使用 WinGet 下载 Microsoft Store 应用
百度搜索:蓝易云 – 熟悉ubuntu apt-get命令详解
百度搜索:蓝易云 – 域名解析成功但ping不通解决方案

发布评论