Android本地应用打开方法——通过html5写连接


Posted in HTML / CSS onMarch 11, 2016

1、在html中设置链接

复制代码
代码如下:

href=”[scheme]://[host]/[path]?[query]”

scheme可以自己在app内部设置成任意的,把android和ios的设置成一样的
2、若本地应用存在,直接打开app;若不存在,计时一段时间跳到appstore
需要判断ios还是android平台下的浏览器,需要判断微信浏览器

XML/HTML Code复制内容到剪贴板
  1. <code class="hljs" javascript="">var openApp = function () {    
  2. var btnOpenApp = document.getElementById(open-app);    
  3. btnOpenApp.onclick = function () {    
  4. //打开本地应用函数    
  5. var open=function(url){    
  6. var timeout;    
  7. function try_to_open_app() {    
  8. timeout = setTimeout(function(){    
  9. window.location.href=url;    
  10. console.log()    
  11. }, );    
  12. }    
  13. try_to_open_app();    
  14. }    
  15. if (/android/i.test(navigator.userAgent)) {    
  16. //alert(This is Android'browser.);//这是Android平台下浏览器    
  17. if (/MicroMessenger/i.test(navigator.userAgent)) {    
  18. alert(This is MicroMessenger browser,请使用本地浏览器打开);//这是微信平台下浏览器    
  19. }    
  20. else {    
  21. open(andorid应用市场url);    
  22. }    
  23. }    
  24. if (/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) {    
  25. //alert(This is iOS'browser.);//这是iOS平台下浏览器    
  26. if (/MicroMessenger/i.test(navigator.userAgent)) {    
  27. alert(微信内置浏览器不支持打开本地应用,请点击右上角使用本地浏览器打开);//这是微信平台下浏览器    
  28. }    
  29. else {    
  30. open(ios应用市场url);    
  31. }    
  32. }    
  33. };    
  34. }</code>   

 Android配置

XML/HTML Code复制内容到剪贴板
  1. <activity android:name=".ui.UploadActivity" android:screenorientation="portrait">    
  2. <intent-filter>    
  3. <data android:scheme="http" android:host="192.168.167.33" android:port="8088" android:path="/mi-tracker-web/download.html">    
  4. <action android:name="android.intent.action.VIEW">    
  5. <category android:name="android.intent.category.DEFAULT">    
  6. <category android:name="android.intent.category.BROWSABLE">    
  7. </category></category></action></data></intent-filter>    
  8. </activity>   

Open Application

XML/HTML Code复制内容到剪贴板
  1. <%@ page language="java" contentType="text/html; charset=ISO-8859-1"    
  2. pageEncoding="ISO-8859-1"%>    
  3. <script type="text/javascript"> window.location="market://search?q=com.singtel.travelbuddy.android";</script>    
  4. String str = "market://details?id=" + getPackageName();    
  5. Intent localIntent = new Intent("android.intent.action.VIEW");    
  6. localIntent.setData(Uri.parse(str));    
  7. startActivity(localIntent);   

HTML配置示例
Open app
Open Market
Open Market Details
Android获取参数:

XML/HTML Code复制内容到剪贴板
  1. Uri uri = getIntent().getData(); String test1uri.getQueryParameter("arg0"); String test2uri.getQueryParameter("arg1");    
  2. webView.setWebViewClient(new WebViewClient(){    
  3. @Override    
  4. public boolean shouldOverrideUrlLoading(WebView view, String url) {    
  5. Uri uri=Uri.parse(url);    
  6. if(uri.getScheme().equals("m")&&uri.getHost().equals("my.com")){    
  7. String arg=uri.getQueryParameter("arg");    
  8. String arg=uri.getQueryParameter("arg");    
  9. }else{    
  10. view.loadUrl(url);    
  11. }    
  12. return true;    
  13. }    
  14. });  

以上所述是小编给大家介绍的Android本地应用打开方法——通过html5写连接 ,希望对大家有所帮助!

HTML / CSS 相关文章推荐
image-set实现Retina屏幕下图片显示详细介绍
Dec 24 HTML / CSS
7款设计巧妙的css3飘带状3D立体效果的导航菜单和表单窗口
Feb 04 HTML / CSS
使用CSS3来制作消息提醒框
Jul 12 HTML / CSS
Canvas 文字碰撞检测并抽稀的方法
May 27 HTML / CSS
HTML5的结构和语义(1):前言
Oct 17 HTML / CSS
用HTML5.0制作网页的教程
May 30 HTML / CSS
html5声频audio和视频video等新特性详细说明
Dec 26 HTML / CSS
HTML5画渐变背景图片并自动下载实现步骤
Nov 18 HTML / CSS
移动端解决悬浮层(悬浮header、footer)会遮挡住内容的3种方法
Mar 27 HTML / CSS
HTML5中Localstorage的使用教程
Jul 09 HTML / CSS
html5唤起app的方法
Nov 30 HTML / CSS
HTML5中form如何关闭自动完成功能的方法
Jul 02 HTML / CSS
利用简洁的图片预加载组件提升html5移动页面的用户体验
Mar 11 #HTML / CSS
使用HTML5 Canvas绘制直线或折线等线条的方法讲解
Mar 14 #HTML / CSS
借助HTML5 Canvas来绘制三角形和矩形等多边形的方法
Mar 14 #HTML / CSS
HTML5 Canvas绘制文本及图片的基础教程
Mar 14 #HTML / CSS
用HTML5 Canvas API中的clearRect()方法实现橡皮擦功能
Mar 15 #HTML / CSS
网页中的电话号码如何实现一键直呼效果_附示例
Mar 15 #HTML / CSS
HTML5使用Audio标签实现歌词同步的效果
Mar 17 #HTML / CSS
You might like
php smarty函数扩展
2010/03/15 PHP
Thinkphp搜索时首页分页和搜索页保持条件分页的方法
2014/12/05 PHP
php操作xml入门之xml标签的属性分析
2015/01/23 PHP
yum命令安装php7和相关扩展
2016/07/04 PHP
PHP带节点操作的无限分类实现方法详解
2016/11/09 PHP
PHP实现将几张照片拼接到一起的合成图片功能【便于整体打印输出】
2017/11/14 PHP
js去空格技巧分别去字符串前后、左右空格
2013/10/21 Javascript
jquery交替变换颜色的三种方法 实例代码
2013/11/19 Javascript
js实现在网页上简单显示时间的方法
2015/03/02 Javascript
PHP结合jQuery实现红蓝投票功能特效
2015/07/22 Javascript
莱鸟介绍javascript onclick事件
2016/01/06 Javascript
AngularJs动态加载模块和依赖注入详解
2016/01/11 Javascript
angular2使用简单介绍
2016/03/01 Javascript
分享JavaScript监听全部Ajax请求事件的方法
2016/08/28 Javascript
JQuery和PHP结合实现动态进度条上传显示
2016/11/23 Javascript
Webpack+Vue如何导入Jquery和Jquery的第三方插件
2017/02/20 Javascript
Javascript 一些需要注意的细节(必看篇)
2017/07/08 Javascript
解决js相同的正则多次调用test()返回的值却不同的问题
2018/10/10 Javascript
解决axios会发送两次请求,有个OPTIONS请求的问题
2018/10/25 Javascript
微信小程序防止多次点击跳转(函数节流)
2019/09/19 Javascript
vue实现简单图片上传
2020/06/30 Javascript
jQuery实现简单QQ聊天框
2020/08/27 jQuery
[55:35]VGJ.S vs Mski Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
[01:32]dota2拉比克至宝(222)
2018/12/20 DOTA
利用一个简单的例子窥探CPython内核的运行机制
2015/03/30 Python
深入讲解Java编程中类的生命周期
2016/02/05 Python
Python基于Socket实现的简单聊天程序示例
2017/08/05 Python
python实现操作文件(文件夹)
2019/10/31 Python
LACOSTE波兰官网:Polo衫、服装和鞋类
2020/09/29 全球购物
上班早退检讨书
2014/01/09 职场文书
部队万能检讨书
2014/02/20 职场文书
早会主持词
2014/03/17 职场文书
领导干部遵守党的政治纪律情况思想汇报
2014/09/14 职场文书
防暑降温通知书
2015/04/27 职场文书
行政答辩状范文
2015/05/21 职场文书
2016年中学清明节活动总结
2016/04/01 职场文书