3年前 (2016-01-09)  算法语言 |   3 条评论  1123 
文章评分 0 次,平均分 0.0

在京东、百度糯米等网站的手机端网页上,常常有有个悬浮提示“点击打开客户端”,如果用户在手机上安装了客户端,将会自动调用客户端打开与当前网页内容一致的客户端页面;如果用户没有安装这些APP,浏览器将会跳转到下载网址,让用户下载客户端。在王柏元的博客客户端中也实现了这一功能。

之前在《安卓实现打开指定链接调用其他应用程序》介绍了如果让客户端点击特定链接(APPLINK)时自动调用客户端软件,在此再次重复一遍:

在打开指定链接需要跳转到的Activity的AndroidManifest.xml清单文件中中加入一条intent-filter标签,并如下面的例子设置scheme、HOST等属性。

怎样链接到客户端指定页面

通过

category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="wbyblog" android:host="wangbaiyuan.cn" android:pathPrefix="/home"/>

这一Intent调用Activity不仅能在applink被点击时启动该APP,还支持类似HTTP的GET传值,这就是跳转到网页对应的客户端页面的前提。

比如:王柏元的博客客户端注册了android:scheme="wbyblog" android:host="wangbaiyuan.cn" android:pathPrefix="/post" 的Intent的postActivity,在浏览器打开链接:"wbyblog://wangbaiyuan.cn/post?postid=1234**&title=网页添加链接调用APP与跳转下载网址 "时,将把postid:1234**和title:网页添加链接调用APP与跳转下载网址 传入postActivity;在postActivity中通过下列代码实现获取传入的值。

这样你就可以根据传值显示特定的app页面了

网页端实现已安装客户端则调用、无则下载

在服务端我们需要动态生成当前网页对应的APPLINK,并通过一个悬浮固定的div显示applink,以便醒目吸引用户点击。比如极客人实现的在手机网页、文章页面,生成有该链接的div(电脑不予显示):

网页添加链接调用APP与跳转下载网址

博客app自动链接调用下载

其中关键部分为下面的js代码:

js实现了让浏览器打开applink从而自动调用你的app(当然前提是你安装了),并在1000m后跳转到app下载页面,其它并不能判断你的手机上是否安装了你的APP,但是展现的效果是一样的!

 

本文已在版权印备案,受著作权法律保护,未经允许不得转载!如需转载请联系作者或访问版权印获取授权,如果你觉得这篇文章对你有用,可以点击下面的“赞助作者”打赏作者!

转载注明原文出处:王柏元的博客>>http://wangbaiyuan.cn/page-add-links-call-app-jump-download-url.html

关于
记录生活,镌刻心路;泼洒文墨,分享技术!王柏元的博客致力于IT经验交流,并原创翻译引进外文文章,打开IT国际化视野

发表评论

格式
  1. Hi there 比臉大牛排 sharing which blog platform you’re using?

    I’m looking to start my own blog soon but I’m having
    a tough time making a decision between BlogEngine/Wordpress/B2evolution and
    Drupal. The reason I ask is because your design and style
    seems different then most blogs and I’m looking for something completely unique.

    P.S Sorry for getting off-topic but I had to ask!

    宅配 评论达人 LV.1 7个月前 (12-29) [0] [0]
  2. 关注一下

    好文推荐 评论达人 LV.1 3年前 (2016-01-15) [0] [0]

登录

忘记密码 ?

您也可以使用第三方帐号快捷登录

切换登录

注册