浏览器加载HTML页面唤起手机中的App最全攻略

2024-06-16 12:48

本文主要是介绍浏览器加载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最全攻略的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1066502

相关文章

Android实现两台手机屏幕共享和远程控制功能

《Android实现两台手机屏幕共享和远程控制功能》在远程协助、在线教学、技术支持等多种场景下,实时获得另一部移动设备的屏幕画面,并对其进行操作,具有极高的应用价值,本项目旨在实现两台Android手... 目录一、项目概述二、相关知识2.1 MediaProjection API2.2 Socket 网络

HTML5中的Microdata与历史记录管理详解

《HTML5中的Microdata与历史记录管理详解》Microdata作为HTML5新增的一个特性,它允许开发者在HTML文档中添加更多的语义信息,以便于搜索引擎和浏览器更好地理解页面内容,本文将探... 目录html5中的Mijscrodata与历史记录管理背景简介html5中的Microdata使用M

html5的响应式布局的方法示例详解

《html5的响应式布局的方法示例详解》:本文主要介绍了HTML5中使用媒体查询和Flexbox进行响应式布局的方法,简要介绍了CSSGrid布局的基础知识和如何实现自动换行的网格布局,详细内容请阅读本文,希望能对你有所帮助... 一 使用媒体查询响应式布局        使用的参数@media这是常用的

HTML5表格语法格式详解

《HTML5表格语法格式详解》在HTML语法中,表格主要通过table、tr和td3个标签构成,本文通过实例代码讲解HTML5表格语法格式,感兴趣的朋友一起看看吧... 目录一、表格1.表格语法格式2.表格属性 3.例子二、不规则表格1.跨行2.跨列3.例子一、表格在html语法中,表格主要通过< tab

Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案

《Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案》:本文主要介绍Vue3组件中getCurrentInstance()获取App实例,但是返回nu... 目录vue3组件中getCurrentInstajavascriptnce()获取App实例,但是返回n

如何解决idea的Module:‘:app‘platform‘android-32‘not found.问题

《如何解决idea的Module:‘:app‘platform‘android-32‘notfound.问题》:本文主要介绍如何解决idea的Module:‘:app‘platform‘andr... 目录idea的Module:‘:app‘pwww.chinasem.cnlatform‘android-32

JS+HTML实现在线图片水印添加工具

《JS+HTML实现在线图片水印添加工具》在社交媒体和内容创作日益频繁的今天,如何保护原创内容、展示品牌身份成了一个不得不面对的问题,本文将实现一个完全基于HTML+CSS构建的现代化图片水印在线工具... 目录概述功能亮点使用方法技术解析延伸思考运行效果项目源码下载总结概述在社交媒体和内容创作日益频繁的

前端CSS Grid 布局示例详解

《前端CSSGrid布局示例详解》CSSGrid是一种二维布局系统,可以同时控制行和列,相比Flex(一维布局),更适合用在整体页面布局或复杂模块结构中,:本文主要介绍前端CSSGri... 目录css Grid 布局详解(通俗易懂版)一、概述二、基础概念三、创建 Grid 容器四、定义网格行和列五、设置行

前端下载文件时如何后端返回的文件流一些常见方法

《前端下载文件时如何后端返回的文件流一些常见方法》:本文主要介绍前端下载文件时如何后端返回的文件流一些常见方法,包括使用Blob和URL.createObjectURL创建下载链接,以及处理带有C... 目录1. 使用 Blob 和 URL.createObjectURL 创建下载链接例子:使用 Blob

Vuex Actions多参数传递的解决方案

《VuexActions多参数传递的解决方案》在Vuex中,actions的设计默认只支持单个参数传递,这有时会限制我们的使用场景,下面我将详细介绍几种处理多参数传递的解决方案,从基础到高级,... 目录一、对象封装法(推荐)二、参数解构法三、柯里化函数法四、Payload 工厂函数五、TypeScript