通过浏览器直接打开iOS/Android App 应用程序 - Cundong's log - 开源中国社区
Update:
更新了实现方式:http://my.oschina.net/liucundong/blog/354029
2014-12-9
---------我是分割线------------------------------------------------------------------------------
原文:
最近遇到这么一个需求:
当用户在手机浏览器中点击一个按钮时,如果手机上已经该应用程序,则直接打开,如果没有安装,则转向应用下载页面。 再详细一点就是:通过点击网页中一个按钮,打开本地某个Activity(如果有的话)或用浏览器打开某个url。
查了一下文档,Android是支持这个的:
http://developer.android.com/guide/topics/manifest/data-element.html
解释一下文档中的描述:scheme://host:port/path or pathPrefix or pathPattern
这里面定义的schema+host+port+(path or pathPrefix or pathPattern)能拼凑出一个http链接,包含这个filter的Activity,能处理这个http链接。
实现:
网页代码
点击这个按钮:
<a id="applink1" href="http://test.xx.com/demo/test.php">打开</a>
在 http://test.xx.com/demo/test.php中,直接开始下载xxxx.apk。
Activity代码
给目标Activity增加以下filter:
<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:host="test.xx.com " android:path="/demo/test.php" android:scheme="http" />
</intent-filter>
增加该filter后,该Activity就能处理 http://test.xx.com/demo/test.php。在浏览器中点击“开始”,发起对该URL的请求时,如果本机安装了这个应用,系统就会弹出一个选择,询问你想使用浏览器打开,还是使用该应用打开,如下图:
如果本机没有安装这个应用,则直接会使用浏览器(多个浏览器的话,还需要选择一下)打开 http://test.xx.com/demo/test.php,浏览器会提示你下载应用,如下图:
通过浏览器直接打开iOS/Android App 应用程序 - Cundong's log - 开源中国社区相关推荐
- 白鹭引擎用java_白鹭引擎发布 5.1.6 版 优化打包 iOS Android App 的运行性能
原标题:白鹭引擎发布 5.1.6 版 优化打包 iOS Android App 的运行性能 在3月12日,我们将为白鹭引擎推出5.1.6 版本.5.1.6版本是对去年12月份发布的5.1版本的一次功能 ...
- [免费专栏] Android安全之Android APP应用程序的汉化功能 (修改so中的字符串内容)
也许每个人出生的时候都以为这世界都是为他一个人而存在的,当他发现自己错的时候,他便开始长大 少走了弯路,也就错过了风景,无论如何,感谢经历 Android安全付费专栏长期更新,本篇最新内容请前往: [ ...
- 实时获取股票数据的android app应用程序源码分享
From:http://www.jb51.net/article/72449.htm 本文我们分享一个实时获取股票数据的android app应用程序源码分享,可以作为学习使用,本文贴出部分重要代码, ...
- 通过扫码打开IOS的App Store下载APP(Android版暂时没找到解决方法)
项目需求:扫码根据不同平台下载不同版本的APP.主要是ios和Android. 网上找了很多,前面判断平台的代码很容易找到,但是后面的就有些坑了.有的人的是根本跑不通.有的是代码补全. 下面是 微信扫 ...
- 浏览器中打开IOS应用并传参
原创文章,转载请注明 开发中遇到这么一个问题,就是动态地指定联接服务器地址,或其它数据.如果是其它数据还好说一些,可以通过在服务器上获得的方式来弄.但如果服务器地址都需要动态指定的话.那就得另想办法了 ...
- android在浏览器中打开,在android浏览器中打开一个链接(WebView)
我最近实现了shouldInterceptRequest方法来检测链接"http://sitemercado.com.br/valida"点击在Android浏览器中打开它而不是在 ...
- 通过浏览器直接打开android应用程序,通过浏览器直接打开Android App 应用程序
点击浏览器中的URL链接,启动特定的App. 首先做成HTML的页面,页面内容格式如下: 启动应用程序 这一句就可以了. 当然上面的 在标准形式,对于正常情况而言是OK的,但是每个浏览器有自己的特定义 ...
- android打开应用程序,通过浏览器直接打开Android App 应用程序
点击浏览器中的URL链接,启动特定的App.首先做成HTML的页面,页面内容格式如下:a href=[scheme]://[host]/[path]?[query]启动应用程序a 这一句就可以了.当然 ...
- iOS+Android+APP+IAP
网易首页-新闻-体育-娱乐-财经-汽车-科技-数码-手机-女人-房产-游戏-读书-论坛-视频-博客-微博 新闻 App成长记第二期 锐徳无限 吕鹤立 第02期 游戏的运营和推广一直以来是游戏行业的关键 ...
最新文章
- j详细说明ava于clone办法
- C 语言内联汇编介绍
- BZOJ 3224 普通平衡树 treap or vector
- .Net Core+mySqlSugar的一些稍复杂操作
- 完全开源im框架_【行业资讯】移动端开源 IM 框架 MobileIMSDK v5.0 发布!
- 拼装机器人感想_智能机器人心得体会
- 设计模式之:深入浅出 java 单例模式(Singleton)
- day08【后台】权限控制-上
- rosweb,roslib,ROS2D.PolygonMarker 绘制多边形
- Ribbon和Feign的对比-带简易例子
- 配置xml文件来实现FlightGear通信,接收与发送数据
- python判断图片模糊_用Python进行图像模糊处理和特征提取
- X(解释变量)增加一单位标准差,Y(被解释变量)增加多少标准差?
- 看病(版权所有翻版必究)
- 设计模式学习--观察者模式(Observer Pattern)
- WIN10键盘无法使用,什么按键都不管用
- 解决Onenote不能同步
- icp光谱仪的工作原理_ICP2060T ICP光谱仪工作原理
- Linux ARM平台开发系列讲解(GMSL摄像头篇)1.2 MAX9296 GMSL链路配置
- 风向风速图将Series中的风向风速数据data和xAxis中的时间data一一对应
热门文章
- 微信小程序——小程序去除文本中的<br>标签
- 让数据不再“裸奔”,隐私计算“四小龙”亮出通关密码
- 华为交换机端口模式trunk⇌access互改
- 【多图警告】彻底搞懂浮点数
- 2-了解GeoServer的Web管理界面
- 徒有虚名的黄页,分类,垂直类网站评测 我对114.com.cn的分析[原创]
- Promise原理详解及实现方式
- Qt使用Qt Designer进行界面设计
- android的orm框架有哪些,android orm 框架有哪些
- QML学习 QML文件当做组件使用