请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册
搜索

互动交流 怎么判断网页是在快应用中打开的

4
回复
111
查看
[复制链接]

6

主题

14

帖子

100

积分

 楼主| 2019-3-28 16:21:22 显示全部楼层 |阅读模式
怎么判断网页是在快应用中打开的?
回复

使用道具 举报

6

主题

14

帖子

100

积分

 楼主| 2019-3-28 16:27:48 显示全部楼层
比如微信小程序通过引用https://res.wx.qq.com/open/js/jweixin-1.3.2.js,然后代码判断 var ua = navigator.userAgent.toLowerCase();
    if(ua.match(/MicroMessenger/i)=="micromessenger") {
        //ios的ua中无miniProgram,但都有MicroMessenger(表示是微信浏览器)
        wx.miniProgram.getEnv((res)=>{
           if (res.miniprogram) {
               alert("在小程序里");
           } else {
               alert("不在小程序里");
           }
        })
    }else{
        alert('不在微信里');
    }
其他app中,一般是通过userAgent来判断。
怎么判断网页是在快应用中打开的?
回复

使用道具 举报

9

主题

136

帖子

775

积分

2019-3-29 10:57:02 显示全部楼层
给配置在快应用的网页url上加个标记参数呗
回复

使用道具 举报

6

主题

14

帖子

100

积分

 楼主| 2019-3-29 13:44:46 显示全部楼层
vivo官方技术团队 发表于 2019-3-29 10:57
给配置在快应用的网页url上加个标记参数呗

这个方法针对单个页面是可以,如果有下级页面的话,就比较麻烦一些,我分别抓了一下快应用和UC浏览器中的userAgent,可以通过package(应用包名)‘com.test.demo’来区分是否是快应用环境。

Mozilla/5.0 (Linux; Android 9; PCT-AL10 Build/HUAWEIPCT-AL10; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/70.0.3538.110 Mobile Safari/537.36 hap/1.4/huawei org.hapjs.mockup/1.4.0.0 com.test.demo/1.0.0 ({"packageName":"org.hapjs.mockup","type":"other","extra":{}})

Mozilla/5.0 (Linux; U; Android 9; zh-CN; PCT-AL10 Build/HUAWEIPCT-AL10) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.108 UCBrowser/12.3.6.1016 Mobile Safari/537.36

点评

老哥稳  详情 回复 发表于 2019-3-29 15:56
回复

使用道具 举报

9

主题

136

帖子

775

积分

2019-3-29 15:56:17 显示全部楼层
QAQ 发表于 2019-3-29 13:44
这个方法针对单个页面是可以,如果有下级页面的话,就比较麻烦一些,我分别抓了一下快应用和UC浏览器中的 ...

老哥稳
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册