Deep Link( H5页面打开App)详解

在我们实际开发过程中,会有这么一种需求:很多App都会有一个分享功能,也许是分享某个商品,或者是分享某一个帖子等,当我们分享给别人的时候,如果别人手机上安装有我们的App我们更希望别人点击分享链接之后能直接打开App更快的进行购买或者互动。

在安卓系统中,google给我买提供了一种叫做Deep Link的东西,可以为我们解决这个问题。

Deep Link本质是是一种自定义协议,我们可以按照http协议的方式来进行定义。

  • 在Manifest中Activity下定义
      <intent-filter>
              <action android:name="android.intent.action.VIEW"/>
              <category android:name="android.intent.category.DEFAULT"/>
              <category android:name="android.intent.category.BROWSABLE"/>
              <data android:scheme="demo" android:host="test" android:path="/detail"/>
      </intent-filter>
  • H5中定义方式
      <a href="demo://test/detail?key=value">打开App</a>
  • 代码中获取方式
        Intent data=getIntent();
        Uri uri=data.getData();
        String scheme=uri.getScheme(); // demo
        String host=uri.getHost();     // test
        String path=uri.getPath();     // /detail
        String value=uri.getQueryParameter("key"); //value

推荐阅读更多精彩内容

  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 4,960评论 0 17
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 152,850评论 22 670
  • 又是一年一度的祗园祭,如果不写一点什么就感觉自己的七月不真实了。这个热气朝天的七月,从世界各地,全国各地,大量的人...
    裙裙喜欢白衬衫阅读 137评论 1 2
  • 纪实生活 体悟人生 自从开始写日志以来 好些朋友觉得奇怪 干嘛会突然写起日志 其实 写日志是一件很享受的事 一者可...
    木风恒阅读 66评论 0 0
  • 阴寒戎山, 酷雪缭峰阵阵。 独卧疆土, 嗜血成魔,殊不知此非我愿。 经脉具毁, 冰冷的铁钩穿心而过, 苦熬十八层地...
    井溢阅读 150评论 6 5