1.在前端开发过程中,遇见过一个需求,需要H5页面判断是在手机APP内打开,还是在手机浏览器里面打开的。
2.js获取window.navigator.userAgent浏览器信息,唯一的区别是在最后面会有一个当前APP里面的协议头。使用APP的协议头来加以判断。
3.然后我们可以使用JS方法来判断,建议使用三种方式以或者的条件进行判断,预防众多安卓的兼容性问题。
**varuserAgent=window.navigator.userAgentif(userAgent.indexOf(‘你的app协议头’)>-1||userAgent.search(‘你的app协议头’)-1){//是当前APP打开的页面}else{//不是当前APP打开的页面};
方式一:
userAgent.indexOf(‘你的app协议头’)
方式二:
userAgent.search(‘你的app协议头’)。
手机开发者选项开启显示布局边界,页面有布局的是native否则为h5页面。或者,长按页面,如果出现文字选择、粘贴功能的是H5页面,否则是native页面,我在我们自己的App里面试了一下是可以判断的。但是有一种情况,如果H5页面就是一张图片,那么是不能通过这个方法验证的。