HTML5Plus

之前写过在 vue 中使用 mui 框架的方法,因为用 vue 开发后打包 5+App 会有一些问题,所以当时用到了,最近又一次开发移动端,不同的是这次使用的是 vue3 开发的,导致之前使用的 vue-awesome-mui 依赖不能使用了,因为作者很长时间没有维护了,vue3 不适用,后来了解到使用 plus 对象不需要 mui 的支持,是本身 html5+的对象,所以记录一下 plus 直接使用的方法

首先说一下,plus 在浏览器中是不起作用的,专门在 5+App 中使用的,主要作用是调用手机原生的一些功能。
以前认为 app 都是 java 写原生开发才是正宗的,挺早之前就用过 5+App 打包 app 应用,但始终觉得是一层覆盖到底层之上的,操作不了底层的功能,最近才终于真实的了解了 5+App。

各种操作方法,方法的说明、参数、回调、示例,可以查看html5plus 官方文档,里面都记录的很详细

值得一提的是plus.runtime.openURL(url, errorCB, identity)方法,这个可以用来唤醒其他的 app,这里的 url 的值可以是 UrlSchemes+“😕/”,UrlSchemes 就是在打包 app 时填写的 App 常用其他设置里的一项 Android 设置

在这里插入图片描述

下面就具体说一下

这里需要监听一下 plusready 事件,在这个成功的回调函数进行一些涉及到 plus 的操作,这个事件看字面意思就可以理解,plus ready就是 plus 准备好了的意思,这里我打印一下 plus 对象,因为打印在浏览器上无效,只能使用 HbuilderX 启动手机模拟器调试,所以需要使用JSON.stringify()格式化成字符串,否则在 HBuilderX 打印出来就是[Object Object]

      document.addEventListener("plusready",function () {console.log(JSON.stringify(plus));},false);

打印出来的结果,我这里复制转回 JSON 格式的,里面有用的信息还是挺多的,但是这个只显示属性,不像浏览器的打印对象还给显示可操作的方法

{"isReady": true,"tools": {"__UUID__": 1,"UNKNOWN": -1,"IOS": 0,"ANDROID": 1,"platform": 1,"debug": false},"bridge": {"NO_RESULT": 0,"OK": 1,"CLASS_NOT_FOUND_EXCEPTION": 2,"ILLEGAL_ACCESS_EXCEPTION": 3,"INSTANTIATION_EXCEPTION": 4,"MALFORMED_URL_EXCEPTION": 5,"IO_EXCEPTION": 6,"INVALID_ACTION": 7,"JSON_EXCEPTION": 8,"ERROR": 9,"callbacks": {},"isInEvalJs": 0},"obj": {},"accelerometer": {},"audio": {"ROUTE_SPEAKER": 0,"ROUTE_EARPIECE": 1},"barcode": {"QR": 0,"EAN13": 1,"EAN8": 2,"AZTEC": 3,"DATAMATRIX": 4,"UPCA": 5,"UPCE": 6,"CODABAR": 7,"CODE39": 8,"CODE93": 9,"CODE128": 10,"ITF": 11,"MAXICODE": 12,"PDF417": 13,"RSS14": 14,"RSSEXPANDED": 15},"cache": {},"camera": {},"contacts": {"ADDRESSBOOK_PHONE": 0,"ADDRESSBOOK_SIM": 1},"downloader": {"__taskList__": []},"gallery": {"__galleryStatus": 0,"onPickImageFinished": null},"geolocation": {"lastPosition": null},"io": {"PRIVATE_WWW": 1,"PRIVATE_DOC": 2,"PUBLIC_DOCUMENTS": 3,"PUBLIC_DOWNLOADS": 4},"maps": {"MapType": {"MAPTYPE_SATELLITE": "MAPTYPE_SATELLITE","MAPTYPE_NORMAL": "MAPTYPE_NORMAL"},"SearchPolicy": {"TRANSIT_TIME_FIRST": "TRANSIT_TIME_FIRST","TRANSIT_TRANSFER_FIRST": "TRANSIT_TRANSFER_FIRST","TRANSIT_WALK_FIRST": "TRANSIT_WALK_FIRST","TRANSIT_FEE_FIRST": "TRANSIT_FEE_FIRST","DRIVING_TIME_FIRST": "DRIVING_TIME_FIRST","DRIVING_NO_EXPRESSWAY": "DRIVING_NO_EXPRESSWAY","DRIVING_FEE_FIRST": "DRIVING_FEE_FIRST"},"__bridge__": {"callback": []}},"messaging": {"TYPE_SMS": 1,"TYPE_MMS": 2,"TYPE_EMAIL": 3},"ui": {"__nviews__": {}},"orientation": {},"payment": {},"push": {},"runtime": {"arguments": "","version": "13.6.5","innerVersion": "1.9.9.81507","uniVersion": "","launchLoadedTime": "103","launcher": "default","origin": "default","processId": "5981","startupTime": "1670852291370","isRecovery": false,"appid": "HBuilder","channel": "","versionCode": 130605},"share": {},"speech": {},"statistic": {},"storage": {},"uploader": {"__taskList__": {}},"widget": {},"net": {},"zip": {},"proximity": {},"android": {"__Tool": {"undefObjectHash": {}}},"ios": {"__Tool": {"undefObjectHash": {}}},"nativeUI": {},"navigator": {"__statusBarHeight__": 24},"key": {},"webview": {"__JSON_Window_Stack": {}},"oauth": {},"nativeObj": {},"stream": {},"device": {"imei": "358240051111110,358240051111110","imsi": ["310260000000000"],"model": "Android SDK built for x86_64","vendor": "unknown","uuid": "358240051111110,358240051111110"},"os": {"language": "en-US","version": "7.1.1","name": "Android","vendor": "Google"},"screen": {"resolutionHeight": 640,"resolutionWidth": 360,"scale": 2,"dpiX": 320,"dpiY": 320,"height": 1280,"width": 720},"display": {"resolutionHeight": 640,"resolutionWidth": 360},"networkinfo": {"CONNECTION_TYPE": 0,"CONNECTION_UNKNOW": 0,"CONNECTION_NONE": 1,"CONNECTION_ETHERNET": 2,"CONNECTION_WIFI": 3,"CONNECTION_CELL2G": 4,"CONNECTION_CELL3G": 5,"CONNECTION_CELL4G": 6,"CONNECTION_CELL5G": 7},"fingerprint": {},"video": {},"shortvideo": {},"bluetooth": {},"ibeacon": {},"sqlite": {},"ad": {},"__tag__": "onPageFinished"
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/73374.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【vue】vue2.x解决兼容IE8以上问题:

文章目录 一、vue-cli:【1】安装依赖:【2】main.js【3】配置vue.config.js文件chainWebpack方法中添加【4】babel.config.js【5】没有被编译的依赖报错 二、webpack-cli:【1】下载babel-polyfill包【2】在webpack.base.conf.js中修改【3】在.…

解决Pycharm的available packages为空的问题

解决Pycharm的available packages为空的问题: 链接地址

智能小区与无线网络技术

1.1 智能小区 智能小区指的是具有小区智能化系统的小区。所谓小区智能化系统,指的是在 现代计算机网络和通信技术的基础上,将传统的土木建筑技术与计算机技术、自动 控制技术、通信与信息处理技术、多媒体技术等先进技术相结合的自动化和综…

快速完成工信部APP备案流程_以阿里云APP备案为例

阿里云APP备案流程分为6步,APP备案成功后应用可以上架,登录阿里云账号填写APP信息,等待阿里云初审,初审通过后进行工信部短信核验,管局审核通过后APP即可备案成功,最后移动APP应用可以分发平台上架&#xf…

网络层重点协议-IP协议(结构分析)

IP协议数据报格式 一.4位版本号 用来表示IP协议的版本,现有的IP协议只有两个版本IPv4和IPv6 二.4位首部长度 IP协议数据报报头的长度 三.8位服务类型 3位优先权字段(已经弃用),4位TOS字段,和1位保留 字段(必…

企业的固定资产管理怎么操作

企业是一家拥有多台大型设备的工厂,这些设备需要定期进行保养和维护,以确保其正常运转。而企业内部员工由于专业知识和技能的不同,需要分工协作才能更好地完成各项工作任务。因此,在设备资产管理方面,如何实现高效、便…

SpringBoot常用注解

SpringBoot常用注解 SpringBoot摒弃了xml配置方式&#xff0c;改为了全注解驱动。 准备 创建SpringBoot模块 pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"ht…

使用JS实现一个简单的观察者模式(Observer)

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 手撸Observer⭐ 写在最后 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入门之旅&#xff01;这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领…

【TypeScript】基础知识学习笔记

theme: channing-cyan TypeScript的特点&#xff1a; JavaScript的超集&#xff0c;满足所有的JS语法含有面向对象的静态类型 起步安装&#xff1a;1、npm i typescript -g 2、tsc 文件名 一、TS的基本数据类型 基本数据类型&#xff1a;number、boolean、string、undefin…

Unity之3D物理导航系统

一 介绍 Unity自带寻路(导航)系统是unity官方自带的一种寻路系统。我们可以通过它来制作简单的寻路&#xff0c;比如可以制作点击某个位置&#xff0c;让角色自动的绕开障碍走到目标点的效果&#xff0c;比如可以制作敌人AI&#xff0c;让它可以通过NavMesh绕开障碍追击我方单…

深入理解 JVM 之——字节码指令与执行引擎

更好的阅读体验 \huge{\color{red}{更好的阅读体验}} 更好的阅读体验 类文件结构 Write Once&#xff0c;Run Anywhere 对于 C 语言从程序到运行需要经过编译的过程&#xff0c;只有经历了编译后&#xff0c;我们所编写的代码才能够翻译为机器可以直接运行的二进制代码&#x…

【web开发】4、JavaScript与jQuery

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 一、JavaScript与jQuery二、JavaScript常用的基本功能1.插入位置2.注释3.变量4.数组5.滚动字符 三、jQuery常用的基本功能1.引入jQuery2.寻找标签3.val、text、appe…

笔记 | 排序算法实现(Python)

排序算法 一、选择排序二、合并/归并排序三、快速排序四、计数排序 排序类型时间复杂度选择排序(Selection Sort) O ( n 2 ) O(n^{2} ) O(n2)合并/归并排序&#xff08;Merge Sort&#xff09; O ( n log ⁡ n ) O(n\log n ) O(nlogn)快速排序(Quick Sort)平均情况 O ( n log ⁡…

如何使用SQL系列 之 如何在SQL中使用CASE表达式

引言 编程语言通常以条件语句为特征&#xff0c;它们是执行特定操作直到满足特定条件的命令。一个常见的条件语句是if, then, else语句&#xff0c;它通常遵循以下逻辑: if conditiontruethen action Aelse action B这条语句的逻辑可以翻译成如下语言:“如果condition为真&am…

帧动画实现

背景&#xff1a; pag实现痛点 文档&#xff1a;libpag参考文档 1.打包依赖的类型缺失问题 2.pagview初始化文件过大,影响小程序打包 3.兼容性较差关键帧动画实现痛点: 当关键帧变化过多的时候&#xff0c;无法准确分辨出需要写出多少个关键帧&#xff0c;以及各个关键帧的具…

SpringBoot-配置优先级

配置 SpringBoot项目支持的三种格式的配置文件 application.properties&#xff1a;这是最常用的配置文件类型&#xff0c;使用键值对的形式来配置应用程序的属性。可以在该文件中配置应用程序的端口号、数据库连接信息、日志级别等。 application.yml&#xff1a;这是一种更…

微信小程序开发---小程序的页面配置

目录 一、小程序页面配置的作用 二、页面配置和全局配置的关系 三、页面配置中常用的配置项 一、小程序页面配置的作用 在每个小程序中&#xff0c;每个页面都有自己的.json配置文件&#xff0c;用来对当前页面的窗口外观&#xff0c;页面效果进行配置。 二、页面配置和全局…

视频监控/视频汇聚/安防视频监控平台EasyCVR如何将默认快照的raw格式改为jpg/base64格式?

视频监控/视频汇聚/安防视频监控平台EasyCVR可拓展性强、视频能力灵活、部署轻快&#xff0c;可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等&#xff0c;以及支持厂家私有协议与SDK接入&#xff0c;包括海康Ehome、海大宇等设备的SDK等。视频云存储EasyCVR平台能在复…

身份识别与鉴权技术调研方案

对称加密算法 对称加密方式又称为私钥加密方式&#xff0c;该方式的加密和解密过程使用同一个密钥&#xff0c;因此该密钥又称为共享密钥。如图2.2所示&#xff0c;在对称加密方式中&#xff0c;发送方使用对称加密算法和共享密钥处理原始数据&#xff0c;得到一个加密后的密文…

IDEA新建的Moudle失效显示为灰色

现象&#xff1a;IDEA新建的Moudle失效显示为灰色&#xff01;&#xff01;&#xff01; 解决方案&#xff1a; 1. 右键点击父模块&#xff0c;选择Open Moudle Settings&#xff1a; 2. 点击加号&#xff0c;选择Import Moudle - 导入模块&#xff1a; 3. 找到对应模块的po…