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 相关文章推荐
网页布局中CSS样式无效的十个重要原因详解
Aug 10 HTML / CSS
玩转CSS3色彩
Jan 16 HTML / CSS
html5 css3 动态气泡按钮实例演示
Dec 02 HTML / CSS
详解CSS3 rem(设置字体大小) 教程
Nov 21 HTML / CSS
css3编写浏览器背景渐变背景色的方法
Mar 05 HTML / CSS
html5 input元素新特性_动力节点Java学院整理
Jul 06 HTML / CSS
详解Html5原生拖拽操作
Jan 12 HTML / CSS
html5 application cache遇到的严重问题
Dec 26 HTML / CSS
利用HTML5的新特点实现图片文件异步上传
May 29 HTML / CSS
完美解决IE8下不兼容rgba()的问题
Mar 31 HTML / CSS
html5 外链式实现加减乘除的代码
Sep 04 HTML / CSS
详解盒子端CSS动画性能提升
May 24 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下通过系统信号量加锁方式获取递增序列ID
2009/09/25 PHP
PHP MemCached高级缓存配置图文教程
2010/08/05 PHP
PHP使用strstr()函数获取指定字符串后所有字符的方法
2016/01/07 PHP
在一个form用一个SUBMIT(或button)分别提交到两个处理表单页面的代码
2007/02/15 Javascript
js下将字符串当函数执行的方法
2011/07/13 Javascript
ECMAScript6函数默认参数
2015/06/12 Javascript
盘点javascript 正则表达式中 中括号的【坑】
2016/03/16 Javascript
纯JavaScript手写图片轮播代码
2016/10/20 Javascript
jquery实现自适应banner焦点图
2017/02/16 Javascript
解决vue-quill-editor上传内容由于图片是base64的导致字符太长的问题
2018/08/20 Javascript
JS中数据结构之栈
2019/01/01 Javascript
学习node.js 断言的使用详解
2019/03/18 Javascript
JS使用正则表达式实现常用的表单验证功能分析
2020/04/30 Javascript
[01:01:13]2018DOTA2亚洲邀请赛 4.5 淘汰赛 Mineski vs VG 第三场
2018/04/06 DOTA
使用PYTHON接收多播数据的代码
2012/03/01 Python
python基础教程之python消息摘要算法使用示例
2014/02/10 Python
Python黑帽编程 3.4 跨越VLAN详解
2016/09/28 Python
tensorflow学习笔记之简单的神经网络训练和测试
2018/04/15 Python
python删除文本中行数标签的方法
2018/05/31 Python
Sanic框架请求与响应实例分析
2018/07/16 Python
python如何生成各种随机分布图
2018/08/27 Python
python [:3] 实现提取数组中的数
2019/11/27 Python
Python3.7将普通图片(png)转换为SVG图片格式(网站logo图标)动起来
2020/04/21 Python
Python多线程:主线程等待所有子线程结束代码
2020/04/25 Python
python 利用百度API识别图片文字(多线程版)
2020/12/14 Python
联想法国官方网站:Lenovo法国
2018/10/18 全球购物
教导处工作制度
2014/01/18 职场文书
运动会通讯稿50字
2014/01/30 职场文书
会计核算科岗位职责
2014/03/19 职场文书
小学英语课后反思
2014/04/26 职场文书
申报优秀教师材料
2014/12/16 职场文书
员工试用期转正自我评价
2015/03/10 职场文书
2015年七一建党节演讲稿
2015/03/19 职场文书
2015大学迎新晚会策划书
2015/07/16 职场文书
Redis实现订单自动过期功能的示例代码
2021/05/08 Redis
MySQL into_Mysql中replace与replace into用法案例详解
2021/09/14 MySQL