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实现的响应式导航
Oct 31 HTML / CSS
css3实例教程 一款纯css3实现的发光屏幕旋转特效
Dec 07 HTML / CSS
利用CSS3实现文本框的清除按钮相关的一些效果
Jun 23 HTML / CSS
分享CSS3制作卡片式图片的方法
Jul 08 HTML / CSS
css3实现文字首尾衔接跑马灯的示例代码
Oct 16 HTML / CSS
HTML5应用之文件上传
Dec 30 HTML / CSS
HTML5的结构和语义(4):语义性的内联元素
Oct 17 HTML / CSS
HTML5实现获取地理位置信息并定位功能
Apr 25 HTML / CSS
详解前端HTML5几种存储方式的总结
Dec 27 HTML / CSS
记一次高分屏下canvas模糊问题
Feb 17 HTML / CSS
HTML5 背景的显示区域实现
Jul 09 HTML / CSS
html2 canvas svg不能识别的解决方案
Jun 03 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与C#分别格式化文件大小的代码
2011/05/14 PHP
用PHP即时捕捉PHP中的错误并发送email通知的实现代码
2013/01/19 PHP
php删除文件夹及其文件夹下所有文件的函数代码
2013/01/23 PHP
合并ThinkPHP配置文件以消除代码冗余的实现方法
2014/07/22 PHP
PHP中的use关键字概述
2014/07/23 PHP
Php连接及读取和写入mysql数据库的常用代码
2014/08/11 PHP
php实现插入排序
2015/03/29 PHP
Windows平台实现PHP连接SQL Server2008的方法
2017/07/26 PHP
XP折叠菜单&amp;仿QQ2006菜单
2006/12/16 Javascript
javascript 同时在IE和FireFox获取KeyCode的代码
2010/02/07 Javascript
jquery.combobox中文api和例子,修复了上面的小bug
2011/03/28 Javascript
ASP.NET jQuery 实例8 (动态添加内容到DropDownList)
2012/02/03 Javascript
基于jquery扩展漂亮的CheckBox(自己编写)
2013/11/19 Javascript
jquery操作checked属性以及disabled属性的多种方法
2014/06/20 Javascript
node.js中的console用法总结
2014/12/15 Javascript
javascript实现tab切换特效
2015/11/12 Javascript
浅析node连接数据库(express+mysql)
2015/11/30 Javascript
Bootstrap Table使用方法详解
2016/08/01 Javascript
微信小程序 出现错误:{&quot;baseresponse&quot;:{&quot;errcode&quot;:-80002,&quot;errmsg&quot;:&quot;&quot;}}解决办法
2017/02/23 Javascript
ES6中Iterator与for..of..遍历用法分析
2017/03/31 Javascript
详解如何用模块化的方式写vuejs
2017/12/16 Javascript
详解基于Vue/React项目的移动端适配方案
2019/08/23 Javascript
vue改变循环遍历后的数据实例
2019/11/07 Javascript
js实现验证码功能
2020/07/24 Javascript
Django处理文件上传File Uploads的实例
2018/05/28 Python
python使用__slots__让你的代码更加节省内存
2018/09/05 Python
Python提取视频中图片的示例(按帧、按秒)
2020/10/22 Python
Python代码覆盖率统计工具coverage.py用法详解
2020/11/25 Python
应届大学生的推荐信
2013/11/20 职场文书
八年级物理教学反思
2014/01/19 职场文书
《独坐敬亭山》教学反思
2014/04/08 职场文书
法律系毕业生求职信
2014/05/28 职场文书
学校清明节活动总结
2014/07/04 职场文书
四风对照检查材料范文
2014/09/27 职场文书
人工作失职检讨书
2015/05/05 职场文书
多人股份制合作协议书
2016/03/19 职场文书