




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第八章HarmonyOS分布式应用开发武汉大学计算机学院赵小刚普通传感器分类工作原理普通传感器调用相机调用GPS调用传感器概述HarmonyOS传感器是应用访问底层硬件传感器的一种设备抽象概念。开发者根据传感器提供的SensorAPI,可以查询设备上的传感器,订阅传感器的数据,并根据传感器数据定制相应的算法,开发各类应用,比如指南针、运动健康、游戏等。根据传感器的用途,可以将传感器分为六大类:运动类传感器、环境类传感器、方向类传感器、光线类传感器、健康类传感器、其他类传感器(如霍尔传感器),每一大类传感器包含不同类型的传感器,某种类型的传感器可能是单一的物理传感器,也可能是由多个物理传感器复合而成。运动类传感器加速度传感器:主要用来检测手机运动状态,测量三个物理轴(x、y和z)上,施加在设备上的加速度(包括重力加速度),单位:m/s2。重力传感器:主要用来测量重力大小,测量三个物理轴(x、y和z)上,施加在设备上的重力加速度,单位:m/s2。陀螺仪传感器:主要用来测量手机旋转的角速度,测量三个物理轴(x、y和z)上,设备的旋转角速度,单位:rad/s。计步传感器:用于提供用户行走的步数数据,可以统计用户行走步数。运动类传感器工作原理主流传感器表示SENSOR_TYPE_ACCELEROMETER:加速度传感器SENSOR_TYPE_GRAVITY:重力传感器SENSOR_TYPE_GYROSCOPE:陀螺仪传感器SENSOR_TYPE_PEDOMETER:计步器传感器SENSOR_TYPE_AMBIENT_TEMPERATURE:环境温度传感器SENSOR_TYPE_MAGNETIC_FIELD:磁场传感器普通传感器分类工作原理普通传感器调用相机调用GPS调用运作机制HarmonyOSOpenHarmony传感器包含如下四个模块:SensorAPI、SensorFramework、SensorService、HD_IDL层。SensorAPI:提供传感器的基础API,主要包含查询传感器的列表、订阅/取消传感器的数据、执行控制命令等,简化应用开发。SensorFramework:主要实现传感器的订阅管理,数据通道的创建、销毁、订阅与取消订阅,实现与SensorService的通信。SensorService:主要实现HD_IDL层数据接收、解析、分发,前后台的策略管控,对该设备Sensor的管理;Sensor权限管控等。HD_IDL层:对不同的FIFO、频率进行策略选择;以及对不同设备的适配。核心模块接口说明HarmonyOS传感器提供的功能有:查询传感器的列表、订阅/取消订阅传感器数据、查询传感器的最小采样时间间隔、执行控制命令。以订阅方向类别的传感器数据为例:sensor.subscribeCompass(OBJECT):订阅罗盘数据变化。针对同一个应用,多次点击调用时,会覆盖前面的调用效果,即仅最后一次调用生效。开发步骤权限配置:如果设备上使用了传感器权限列表中的传感器,需要请求相应的权限,开发者才能获取到传感器数据。权限配置开发者需要在config.json里面配置权限:"reqPermissions":[{"name":"ohos.permission.GYROSCOPE","reason":"","usedScene":{"ability":[".MainAbility"],"when":"inuse"}}]普通传感器分类工作原理普通传感器调用相机调用GPS调用使用传感器以使用方向类别的传感器为例,运动类、环境类、健康类等类别的传感器使用方法类似。步骤如下:获取待订阅数据的传感器。创建传感器回调。订阅传感器数据。接收并处理传感器数据。取消订阅传感器数据。方向传感器调用示例1.引入方向类传感器对象importsensorfrom'@system.sensor';2.罗经数据订阅3.罗经数据取消onInit(){sensor.subscribeCompass({success:function(ret){console.log('getdatadirection:'+ret.direction);},fail:function(data,code){console.error('subscribecompassfail,code:'+code+',data:'+data);},});},onDestroy(){sensor.unsubscribeCompass();console.log('canceldatadirectioncollection');}普通传感器分类工作原理普通传感器调用相机调用GPS调用相机调用相机:HarmonyOS相机模块支持相机业务的开发,开发者可以通过已开放的接口实现相机硬件的访问、操作和新功能开发,最常见的操作如:预览、拍照、连拍和录像等。基本概念相机静态能力:用于描述相机的固有能力的一系列参数,比如朝向、支持的分辨率等信息。物理相机:物理相机就是独立的实体摄像头设备。物理相机ID是用于标志每个物理摄像头的唯一字串。逻辑相机:逻辑相机是多个物理相机组合出来的抽象设备,逻辑相机通过同时控制多个物理相机设备来完成相机某些功能,如大光圈、变焦等功能。逻辑摄像机ID是一个唯一的字符串,标识多个物理摄像机的抽象能力。帧捕获:相机启动后对帧的捕获动作统称为帧捕获。主要包含单帧捕获、多帧捕获、循环帧捕获。主要接口一个页面仅支持一个camera组件,提供预览、拍照功能。操作方法<divclass="container"><cameraflash="off"deviceposition="back"@error="cameraError"id="take"></camera><buttononclick="takephotos">拍照</button></div>takephotos(){varparams={};params.quality='high';params.success=null;params.fail=null;plete=null;this.$element('take').takePhoto(params)},camera{width:300px;height:300px;}普通传感器分类工作原理普通传感器调用相机调用GPS调用位置传感器-位置能力移动终端设备已经深入人们日常生活的方方面面,如查看所在城市的天气、新闻轶事、出行打车、旅行导航、运动记录。这些习以为常的活动,都离不开定位用户终端设备的位置。当用户处于这些丰富的使用场景中时,系统的位置能力可以提供实时准确的位置数据。对于开发者,设计基于位置体验的服务,也可以使应用的使用体验更贴近每个用户。当应用在实现基于设备位置的功能时,如:驾车导航,记录运动轨迹等,可以调用该模块的API接口,完成位置信息的获取。基本概念位置能力用于确定用户设备在哪里,系统使用位置坐标标示设备的位置,并用多种定位技术提供服务,如GNSS定位、基站定位、WLAN/蓝牙定位(基站定位、WLAN/蓝牙定位后续统称“网络定位技术”)。通过这些定位技术,无论用户设备在室内或是户外,都可以准确地确定设备位置。坐标:系统以1984年世界大地坐标系统为参考,使用经度、纬度数据描述地球上的一个位置。GNSS定位:基于全球导航卫星系统,包含:GPS、GLONASS、北斗、Galileo等,通过导航卫星,设备芯片提供的定位算法,来确定设备准确位置,定位精度高。基站定位:根据设备当前驻网基站和相邻基站的位置,估算设备当前位置。此定位方式的定位结果精度相对较低,并且需要设备可以访问蜂窝网络。WLAN、蓝牙定位:根据设备可搜索到的周围WLAN、蓝牙设备位置,估算设备当前位置。运作机制位置能力作为系统为应用提供的一种基础服务,需要应用在所使用的业务场景,向系统主动发起请求,并在业务场景结束时,主动结束此请求,在此过程中系统会将实时的定位结果上报给应用。使用设备的位置能力,需要用户进行确认并主动开启位置开关。如果位置开关没有开启,系统不会向任何应用提供位置服务。设备位置信息属于用户敏感数据,所以即使用户已经开启位置开关,应用在获取设备位置前仍需向用户申请位置访问权限。在用户确认允许后,系统才会向应用提供位置服务。获取设备的位置信息开发者可以调用HarmonyOS位置相关接口,获取设备实时位置,或者最近的历史位置。对于位置敏感的应用业务,建议获取设备实时位置信息。如果不需要设备实时位置信息,并且希望尽可能的节省耗电,开发者可以考虑获取最近的历史位置。接口说明支持类型geolocation.getLocation(OBJECT)参数说明开发步骤1.应用在使用系统能力前,需要检查是否已经获取用户授权访问设备位置信息。如未获得授权,可以向用户申请需要的位置权限。系统提供的定位权限有:ohos.permission.LOCATIONohos.permission.LOCATION_IN_BACKGROUND访问设备的位置信息,必须申请ohos.permission.LOCATION权限,并且获得用户授权。如果应用在后台运行时也需要访问设备位置,除需要将应用声明为允许后台运行外,还必须申请ohos.permission.LOCATION_IN_BACKGROUND权限,这样应用在切入后台之后,系统可以继续上报位置信息。开发者可以在应用config.json文件中声明所需要的权限,示例代码如下:config.json{"reqPermissions":[{"name":"ohos.permission.LOCATION","reason":"$string:reason_description","usedScene":{"ability":["com.myapplication.LocationAbility"],"when":"inuse"},{...}]}开发步骤2.为了使用位置传感器,需要引入头文件system.geolocation',获取位置管理对象geolocation'。importgeolocationfrom'@system.geolocation';在页面初始化回调函数或自定义函数中调用该对象的方法getLocation来获取位置信息onInit(){geolocation.getLocation({success:fu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 山地康养社区与运营方案行业跨境出海战略研究报告
- 学区房改造与升级企业制定与实施新质生产力战略研究报告
- 酒吧氛围营造企业制定与实施新质生产力战略研究报告
- 自然采光办公空间企业制定与实施新质生产力战略研究报告
- 康复医疗信息化行业深度调研及发展战略咨询报告
- 新能源工程技术人才培养行业跨境出海战略研究报告
- 高效采矿设备行业跨境出海战略研究报告
- 祛痘修护洁面乳行业跨境出海战略研究报告
- 高效去渍牙粉创新企业制定与实施新质生产力战略研究报告
- 智能手术器械追踪系统企业制定与实施新质生产力战略研究报告
- 2024年天翼云认证运维工程师考试复习题库(含答案)
- 《陆上风电场工程设计概算编制规定及费用标准》(NB-T 31011-2019)
- 行政职能-PPT课件
- 化工设计概论(第二版)完整版课件(全)
- 直播运营实战:淘宝直播运营课件
- 浙江大学实验报告(流体力学)
- 数据采集系统基本组成.ppt
- 建设工程项目施工安全管理流程图
- 意识障碍的判断PPT精选文档
- (完整版)质量目标细化分解方案-桥梁工程
- 海康威视枪机摄像机检测报告
评论
0/150
提交评论