H5唤醒App之scheme方案

更新日期: 2019-05-25阅读: 3.4k标签: h5

前言

在写移动端页面会遇到唤醒App的需求, 一般都是通过scheme协议唤起的,这里记录一下


代码片段

以新浪微博为例: 其协议为 sinaweibo://splash; 这些协议需要自己去收集,或者去官方查询; 有些App分IOS和Android; 有些应用又不分;
这个根据终端做处理即可

// 测试地址
<a href="sinaweibo://splash">微博app</a>
<a href="sinaweibo://userinfo?uid=3177804914">微博个人主页</a>

// 跳转代码: 手机装了app就打开; 没有就跳转页面或者跳转app store去下载, 逻辑自己定义即可
goToWeibo() {
      let u = navigator.userAgent;
      let isAndroid = u.indexOf("Android") > -1; //安卓终端
      let isIOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端
      if (isAndroid) {
        // 安卓weibo的scheme协议跳转
        window.location.href = "sinaweibo://userinfo?uid=3177804914";
        setTimeout(function() {
          let hidden =
            window.document.hidden ||
            window.document.mozHidden ||
            window.document.msHidden ||
            window.document.webkitHidden;
          if (typeof hidden == "undefined" || hidden == false) {
            window.location.href = "https://m.weibo.cn/u/3177804914";
          }
        }, 2000);
      }
      // IOS下的scheme协议跳转
      if (isIOS) {
        window.location.href = "sinaweibo://userinfo?uid=3177804914";
        setTimeout(function() {
          let hidden =
            window.document.hidden ||
            window.document.mozHidden ||
            window.document.msHidden ||
            window.document.webkitHidden;
          if (typeof hidden == "undefined" || hidden == false) {
            window.location.href =
              "https://m.weibo.cn/u/3177804914";
          }
        }, 2000);
      }
    },


附上几个常用应用的协议

推特: twitter://user?screen_name=
ins: instagram://user?username=
youtube: iOS: youtube://www.youtube.com/user/ Android : vnd.youtube://www.youtube.com/user/

其他app scheme协议快速通道: 

国内: https://blog.csdn.net/
海外: https://help.emplify.com/hc/


链接: https://fly63.com/article/detial/3886

H5/web混合开发,js获取android,ios原生应用返回数据的实例方法

在很多应用都采用同H5页面混合开发模式,这篇主要讲解JS中如何获取原生应用返回给js的数据方法,包括android和ios

h5中新属性 data-属性名的获取与设置,详解原生js操作h5的属性data-*

h5中新功能用来描述自定义的数据属性,也就是 data-* 自定义属性。在h5中我们可以使用以 data- 为前缀来设置我们需要的自定义属性,来进行一些数据的存放 ,在实际项目中使用比较多。这篇文章就总结如何通过原生js对data-*属性的操作。

H5和原生的职责划分

减少工作量(一套代码,多个平台),以及快速的更新迭代(譬如线上更新),而且还需要考虑Native端的高性能以及系统API调用能力,混合页面导航栏组件由原生实现,一些重要的业务页面、带有复杂动画或交互的页面以及一些固定页面由原生实现

常见的H5移动端Web页面Bug问题解决方案总汇

移动web的兼容性bug的解决方法:远程接口的跨域问题,背景图片会模糊问题,图片加载,拨号功能等

h5手机摇一摇功能实现:基于html5重力感应DeviceMotionEvent事件监听手机摇晃

DeviceMotionEven是html5提供的一个用来获取设备物理方向及运动的信息(比如陀螺仪、罗盘及加速计)的Dom事件,利用devicemotion实现手机h5页面摇一摇功能

h5通过连接打开本地app_以及常见应用的URL Scheme

在做h5活动页面的时候,有这样的一个需求:点击页面的一个按钮就打开本地的一个app应用,如果该应用未下载,则跳转到app的下载页。这个操作是通过连接跳转的形式来实现的,这篇文章就简单讲解下如何操作的?

h5实现名片扫描识功能

点击名片识别按钮,将名片上的个人信息扫描并解析出来显示。需要调出手机摄像头和相册,让用户进行选择;获取照片或者图片的base64数据;调取第三方的orc接口进行图片解析,得到名片上的个人信息,并显示。

h5通过css实现禁止ios端长按复制选中文字的方法

在ios端默认的长按选择,可以对文字进行复制粘贴。但是在实际开发中,针对一些按钮一般要避免长按时弹出选中文字,或者一些罩层要避免弹出。 这篇文章通过css3实现禁止ios端长按复制选中文字的方法

H5与企业微信jssdk集成

注册企业微信,在应用与小程序栏目中,设置可信域名,配置公众号菜单。可信域名不得不说下,在最初开发时,认为设置并验证后,微信认证接口会实现跨域请求,其实并没有。所以全在H5端还得配合服务端完成票据获取等操作。

H5页面中唤起APP的方法

需要在从APP分享出去的H5页面中,带有一个立即打开的按钮,如果本地安装了app,那么就直接唤起本地的app,如果没有安装,则跳转到下载。这是一个很正常的推广和导流量的策略。

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!