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 相关文章推荐
纯css3实现图片翻牌特效
Mar 10 HTML / CSS
css3实现的多级渐变下拉菜单导航效果代码
Aug 31 HTML / CSS
CSS3哪些新特性值得称赞
Mar 02 HTML / CSS
HTML5中的nav标签学习笔记
Jun 24 HTML / CSS
HTML5中微数据概述及在搜索引擎中的使用举例
Feb 07 HTML / CSS
Html5实现如何在两个div元素之间拖放图像
Mar 29 HTML / CSS
HTML5 在canvas中绘制文本附效果图
Jun 23 HTML / CSS
浅谈html5增强的页面元素
Jun 14 HTML / CSS
HTML5 canvas 瀑布流文字效果的示例代码
Jan 31 HTML / CSS
HTML5的postMessage的使用手册
Dec 19 HTML / CSS
Html5之webcoekt播放JPEG图片流
Sep 22 HTML / CSS
CSS的calc函数用法小结
Jun 25 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
建立文件交换功能的脚本(一)
2006/10/09 PHP
PHP5中实现多态的两种方法实例分享
2014/04/21 PHP
PHP中spl_autoload_register()和__autoload()区别分析
2014/05/10 PHP
PHP实现微信小程序用户授权的工具类示例
2019/03/05 PHP
jQuery弹出层插件简化版代码下载
2008/10/16 Javascript
jQuery 操作XML入门
2008/12/25 Javascript
js中的string.format函数代码
2020/08/11 Javascript
jquery实现点击弹出层效果的简单实例
2014/03/03 Javascript
全面解析Bootstrap中tooltip、popover的使用方法
2016/06/13 Javascript
JS中innerHTML和pasteHTML的区别实例分析
2016/06/22 Javascript
weUI应用之JS常用信息提示弹层的封装
2016/11/21 Javascript
Bootstrap基本样式学习笔记之标签(5)
2016/12/07 Javascript
用React-Native+Mobx做一个迷你水果商城APP(附源码)
2017/12/25 Javascript
vux uploader 图片上传组件的安装使用方法
2018/05/15 Javascript
Layer弹出层动态获取数据的方法
2018/08/20 Javascript
javascript+HTML5 canvas绘制时钟功能示例
2019/05/15 Javascript
nodejs处理tcp连接的核心流程
2021/02/26 NodeJs
深入解析Python中函数的参数与作用域
2016/03/20 Python
Python 和 JS 有哪些相同之处
2017/11/23 Python
对numpy中布尔型数组的处理方法详解
2018/04/17 Python
使用NumPy和pandas对CSV文件进行写操作的实例
2018/06/14 Python
Python3实现转换Image图片格式
2018/06/21 Python
python3使用flask编写注册post接口的方法
2018/12/28 Python
Python Excel处理库openpyxl使用详解
2019/05/09 Python
python打包exe开机自动启动的实例(windows)
2019/06/28 Python
Django获取该数据的上一条和下一条方法
2019/08/12 Python
python提取照片坐标信息的实例代码
2019/08/14 Python
深入理解css属性的选择对动画性能的影响
2016/04/20 HTML / CSS
HTML5 input元素类型:email及url介绍
2013/08/13 HTML / CSS
Zavvi荷兰:英国大型音像制品和图书游戏零售商
2018/03/22 全球购物
秋季运动会加油稿200字
2014/01/11 职场文书
大学生党员批评与自我批评
2014/09/28 职场文书
2014年街道办事处工作总结
2014/12/11 职场文书
Python办公自动化之Excel(中)
2021/05/24 Python
Python3.10的一些新特性原理分析
2021/09/15 Python
Python实现聚类K-means算法详解
2022/07/15 Python