本文主要是介绍浏览器加载HTML页面唤起手机中的App最全攻略,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Android通过Scheme协议打开APP界面
web页通过浏览器打开
<body><a href="javascript:;" id="openApp">打开户端</a>
</body><script type="text/javascript">document.getElementById('openApp').onclick = function(e){if(navigator.userAgent.match(/(iPhone|iPod|iPad);?/i)){window.location.href = "com.baidu.tieba://";//ios app协议window.setTimeout(function() {window.location.href = "https://itunes.apple.com/cn/app/id477927812";}, 2000)}if(navigator.userAgent.match(/android/i)){window.location.href = "dxst://com.zmzx.college.search/web?url=https://www.baidu.com";//android app协议window.setTimeout(function() {window.location.href = "https://www.qq.com/";//android 下载地址}, 2000) }};
</script>
js scheme 打开手机app的方法
function schemeUrl(url,callbak){var ifr = document.createElement("iframe");ifr.src = url; /***打开app的协议,如zhe800://goto_home***/ifr.style.display = "none";document.body.appendChild(ifr);//app没反应1s后执行另外的方法window.setTimeout(function(){document.body.removeChild(ifr);if(typeof callbak == 'function'){callbak();}},1000)
};
Android 中 配置scheme
<activityandroid:name="xxx"android:label="@string/app_name"android:launchMode="singleTask"android:screenOrientation="portrait"><intent-filter><action android:name="android.intent.action.VIEW" /><category android:name="android.intent.category.DEFAULT" /><category android:name="android.intent.category.BROWSABLE" /><dataandroid:scheme="scheme1"android:host="host1"android:path="/path1"android:port="8080" /></intent-filter>
</activity>
APP 中获取 Scheme中的参数值
Uri uri = getIntent().getData();
if (uri != null) {// 完整的url信息String url = uri.toString();Log.i(TAG, "url:" + uri);// scheme部分String scheme = uri.getScheme();Log.i(TAG, "scheme:" + scheme);// host部分String host = uri.getHost();Log.i(TAG, "host:" + host);// port部分int port = uri.getPort();Log.i(TAG, "port:" + port);// 访问路径String path = uri.getPath();Log.i(TAG, "path:" + path);List<String> pathSegments = uri.getPathSegments();// Query部分String query = uri.getQuery();Log.i(TAG, "query:" + query);//获取指定参数值String success = uri.getQueryParameter("success");Log.i(TAG, "success:" + success);
}
参考:https://www.jianshu.com/p/57f79fc83233
如果你也热衷技术欢迎加群一起进步:230274309 。 一起分享,一起进步!少划水,多晒干货!!欢迎大家!!!(进群潜水者勿加) |
点击链接加入群聊【编程之美】:https://jq.qq.com/?_wv=1027&k=h75BfFCg
或者扫码
这篇关于浏览器加载HTML页面唤起手机中的App最全攻略的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!