1、 在ht ML 中设置链接
hr ef=][scheme]://[host]/[path]?[query]]
scheme可以自己在app内部设置成任意的,把and ROI d和ios的设置成一样的
2 、若本地应用存在,直接打开app;若不存在,计时一段时间跳到 AppStore
需要判断ios还是android平台下的 浏览器 ,需要判断微信浏览器
VAR o PE nApp = function () { var BT nOpenApp = document.getElementById(open-app); btnOpenApp.onclick = function () { //打开本地应用函数 var open=function(url){ var timeout; function try_to_open_app() { timeout = setTimeout(function(){ window.location.href=url; console. LOG (22) }, 10); } try_to_open_app(); } if (/android/i. test (navigator.userAgent)) { //alert(This is Android & # 39; br owser.);//这是Android平台下浏览器 if (/Mic rom essenger/i.test(navigator.userAgent)) { alert(This is MicroMessenger browser,请使用本地浏览器打开);//这是微信平台下浏览器 } else { open(andorid应用市场url); } } if (/(iPhone|iPad| IPO d|iOS)/i.test(navigator.userAgent)) { //alert(This is iOS'browser.);//这是iOS平台下浏览器 if (/MicroMessenger/i.test(navigator.userAgent)) { alert(微信内置浏览器不支持打开本地应用,请点击右上角使用本地浏览器打开);//这是微信平台下浏览器 } else { open(ios应用市场url); } } }; }
Android配置
<activ IT y android:n am e=".ui.UploadActivity" android:screen orientation ="portr ai t"> <intent-filter> <data android:scheme="http" android:host="192.168.167.33" android:port="8088" android:path="/mi -t racker-web/download.html"> <action android:name="android.intent.action.VIEW"> <category android:name="android.intent.category.DEFAULT"> <category android:name="android.intent.category.BROWSABLE"> </category></category></action></data></intent-filter> </activity>
Open Application
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%><script type="text/javascript"> window.location="market://se Arch ?q=com.singtel.travelbuddy.android";</script>
String str = " ;m arket://details?id=" + getPackageName(); Intent localIntent = new Intent("android.intent.action.VIEW"); localIntent.setData(Uri.parse(str)); startActivity(localIntent);
&nbs p; HTML 配置示例
Open app
Open Market
Open Market Details
Android获取参数:
Uri uri = getIntent().getData(); String test1 = uri.getQueryParameter(" arg 0"); String test2 = uri.getQueryParameter("arg1");
webView.setWebViewClient(new WebViewClient(){ @ override p ub lic boolean shouldOverrideUrlLoading(WebView view, String url) { Uri uri=Uri.parse(url); if(uri.getScheme().equals("m") && uri.getHost().equals("my .COM ")){ String arg0=uri.getQueryParameter("arg0"); String arg1=uri.getQueryParameter("arg1"); }else{ view.loadUrl(url); } return true; } });
1、 在html中设置链接
href=][scheme]://[host]/[path]?[query]]
scheme可以自己在app内部设置成任意的,把android和ios的设置成一样的
2 、若本地应用存在,直接打开app;若不存在,计时一段时间跳到app Store
需要判断ios还是android平台下的 浏览器 ,需要判断微信浏览器
var openApp = function () { var btnOpenApp = document.getElementById(open-app); btnOpenApp.onclick = function () { //打开本地应用函数 var open=function(url){ var timeout; function try_to_open_app() { timeout = setTimeout(function(){ window.location.href=url; console.log(22) }, 10); } try_to_open_app(); } if (/android/i.test(navigator.userAgent)) { //alert(This is Android 'browser.);//这是Android平台下浏览器 if (/MicroMessenger/i.test(navigator.userAgent)) { alert(This is MicroMessenger browser,请使用本地浏览器打开);//这是微信平台下浏览器 } else { open(andorid应用市场url); } } if (/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) { //alert(This is iOS'browser.);//这是iOS平台下浏览器 if (/MicroMessenger/i.test(navigator.userAgent)) { alert(微信内置浏览器不支持打开本地应用,请点击右上角使用本地浏览器打开);//这是微信平台下浏览器 } else { open(ios应用市场url); } } }; }
Android配置
<activity android:name=".ui.UploadActivity" android:screenorientation="portrait"> <intent-filter> <data android:scheme="http" android:host="192.168.167.33" android:port="8088" android:path="/mi-tracker-web/download.html"> <action android:name="android.intent.action.VIEW"> <category android:name="android.intent.category.DEFAULT"> <category android:name="android.intent.category.BROWSABLE"> </category></category></action></data></intent-filter> </activity>
Open Application
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%><script type="text/javascript"> window.location="market://search?q=com.singtel.travelbuddy.android";</script>
String str = "market://details?id=" + getPackageName(); Intent localIntent = new Intent("android.intent.action.VIEW"); localIntent.setData(Uri.parse(str)); startActivity(localIntent);
HTML配置示例
Open app
Open Market
Open Market Details
Android获取参数:
Uri uri = getIntent().getData(); String test1= uri.getQueryParameter("arg0"); String test2= uri.getQueryParameter("arg1");
webView.setWebViewClient(new WebViewClient(){ @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { Uri uri=Uri.parse(url); if(uri.getScheme().equals("m")&&uri.getHost().equals("my.com")){ String arg0=uri.getQueryParameter("arg0"); String arg1=uri.getQueryParameter("arg1"); }else{ view.loadUrl(url); } return true; } });
觉得 可用,就经常来吧! 欢迎评论哦! html5教程 ,巧夺天工,精雕玉琢。小宝典献丑了!
总结
以上是 为你收集整理的 html5教程-html5写链接打开ios和android本地应用 全部内容,希望文章能够帮你解决 html5教程-html5写链接打开ios和android本地应用 所遇到的问题。
如果觉得 网站内容还不错, 推荐好友。
查看更多关于html5教程-html5写链接打开ios和android本地应用的详细内容...