1、在html中设置链接
href=”[scheme]://[host]/[path]?[query]”
scheme可以自己在app内部设置成任意的,把android和ios的设置成一样的
2、若本地应用存在,直接打开app;若不存在,计时一段时间跳到appstore
需要判断ios还是android平台下的浏览器,需要判断微信浏览器
XML/HTML Code复制内容到剪贴板
- code class="hljs" javascript="">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()
- }, );
- }
- 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);
- }
- }
- };
-
}code>
Android配置
XML/HTML Code复制内容到剪贴板
- 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
XML/HTML Code复制内容到剪贴板
- %@ 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获取参数:
XML/HTML Code复制内容到剪贴板
- 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 arg=uri.getQueryParameter("arg");
-
String arg=uri.getQueryParameter("arg");
- }else{
- view.loadUrl(url);
- }
- return true;
- }
- });
以上所述是小编给大家介绍的Android本地应用打开方法——通过html5写连接 ,希望对大家有所帮助!