search

Home  >  Q&A  >  body text

javascript - 请问怎么判断一个页面是通过app打开的

如果我们写了一个页面,它可能会放到app里面,也可能放到微信里面,也可能直接浏览器打开这个地址,我们可以怎么判断是否嵌在app里面打开的呢

大家讲道理大家讲道理2924 days ago474

reply all(6)I'll reply

  • 迷茫

    迷茫2017-04-10 15:06:43

    现代前端一般提倡探测能力而非检测终端,比如你需要兼容微信和非微信,微信多出来的能力就是微信的js api,那么直接探测这个api的存在(比如weixinJsBridge对象啊WeixinJSBridgeReady事件啊这些)

    如果你需要兼容app内嵌和非app内嵌,同理直接探测你的app内嵌后额外增加的能力

    reply
    0
  • PHP中文网

    PHP中文网2017-04-10 15:06:43

    是你们自己的页面就很好办啊
    在url里加不同的参数比如 ?from=app|weixin

    reply
    0
  • 阿神

    阿神2017-04-10 15:06:43

    做app公司的做法:

    如果是app可以自定义一些useragent
    如果是wechat本身自带了wechat

    网页的方式:
    分类请求也是个方式

    reply
    0
  • 巴扎黑

    巴扎黑2017-04-10 15:06:43

    我现在做的项目也有同样需求,不过我判断方法是,先判断ua是不是微信的,再判断是不是pc的,如果都不是,就是app的了。因为做app的人不肯帮忙改一下app内置的ua信息,所以没办法直接判断

    reply
    0
  • 大家讲道理

    大家讲道理2017-04-10 15:06:43

    if(plus.device.uuid){
      //能输出代表在android或者ios中打开
    }else{
      //那就是在浏览器中打开了
    }

    未经测试,理论上可行,在页面中添加即可

    reply
    0
  • PHP中文网

    PHP中文网2017-04-10 15:06:43

    谢谢大家,虽然没有好的办法,我大致知道是怎么回事了

    reply
    0
  • Cancelreply