vsping - 国外主机测评,国外VPS,国外服务器,国外云服务器,测评及优惠码vsping - 国外主机测评,国外VPS,国外服务器,国外云服务器,测评及优惠码国外主机测评 - 国外VPS,国外服务器,国外云服务器,测评及优惠码

鸿蒙OS 对象关系映射数据库概述-国外主机测评 - 国外VPS,国外服务器,国外云服务器,测评及优惠码

鸿蒙OS 对象关系映射数据库概述

关系型数据库(Relational Database,RDB)是一种基于关系模型来管理数据的数据库。HarmonyOS 关系型数据库基于 SQLite 组件提供了一套完整的对本地数据库进行管理的机制,对外提供了一系列的增、删、改、查接口,也可以直接运行用户输入的 SQL 语句来满足复杂的场景需要。HarmonyOS 提供的关系型数据库功能更加完善,查询效率更高。 基本概念 关系型数据库 创建在关系模型基础上的数据库,以行和列的形式存储数据。 谓词 数据库中用来代表数据实体的性质、特征或者数据实体之间关系的词项,主要用来定义数据库的操作条件。 结果集 指用户查询之后的结果集合,可以对数据进行访问。结果集提供了灵活的数据访问方式,可以更方便的拿到用户想要的数据。 SQLite数据库 一款轻型的数据库,是遵守 ACID 的关系型数据库管理系统。它是一个开源的项目。 运作机制 HarmonyOS 关系型数据库对外提供通用的操作接口,底层使用 SQLite 作为持久化存储引擎,支持 SQLite 具有的所有数据库特性,包括但不限于事务、索引、视图、触发器、外键、参数化查询和预编译 SQL 语句。 图1 关系型数据库运作机制 默认配置 如果不指定数据库的日志模式,那么系统默认日志方式是 WAL(Write Ahead Log)模式。 如果不指定数据库的落盘模式,那么系统默认落盘方式是 FULL 模式。 HarmonyOS 数据库使用的共享内存默认大小是 2MB。 约束与限制 数据库中连接池的最大数量是 4 个,用以管理用户的读写操作。 为保证数据的准确性,数据库同一时间只能支持一个写操作。

优惠码
鸿蒙OS 开发指导-国外主机测评 - 国外VPS,国外服务器,国外云服务器,测评及优惠码

鸿蒙OS 开发指导

场景介绍 TTS、Wireless、Network、Input、Sound、Display、Date、Call、General 九类定义了表征终端设备状态的相关字段,如屏幕亮度、日期格式、字体显示大小等,应用程序可以根据自身所拥有的权限对其进行增、删、改、查等操作,并进行相应的场景适配。 例如:TIME_FORMAT——表示日期格式,应用程序可进行读写。 图1 数据表更新过程 接口说明 SystemSettings 提供系统设置的相关接口,包括 TTS、Wireless、Network、Input、Sound、Display、Date、Call、General 九类字段的存储和检索接口。应用程序通过 AppSettings 类提供的方法对其自身的能力进行查询。 接口名 描述 canShowOverlays(Context context) 检查指定应用程序是否可以显示在其他应用之上。 checkSetPermission(Context context) 通过应用上下文检查指定的应用是否具有修改系统设置的权限。 接口名 描述 getUri(String name) 为特定的字段构造URI,用于DataAbility的数据监视。 getValue(DataAbilityHelper dataAbilityHelper, String name) 获取指定字段的值。 setValue(DataAbilityHelper dataAbilityHelper, String name, String value) 设置指定字段的值。 字段名 字段描述 DEFAULT_TTS_PITCH 文本转语音引擎的默认音调。 DEFAULT_TTS_RATE 文本转语音引擎的默认语速。 字段名 字段描述 BLUETOOTH_STATUS 蓝牙开启状态。 WIFI_STATUS WLAN是否启用。 WIFI_TO_MOBILE_DATA_AWAKE_TIMEOUT 从WLAN 断开连接后等待建立移动数据连接时保持唤醒锁的最长时间。 字段名 字段描述 DATA_ROAMING_STATUS 数据漫游开启状态。 NETWORK_PREFERENCE_USAGE 设置用户经常使用的网络。 字段名 字段描述 DEFAULT_INPUT_METHOD 设置默认的输入法,并记录此输入法的ID。 ACTIVATED_INPUT_METHODS 已激活的输入法列表。 AUTO_CAPS_TEXT_INPUT 设置文本编辑器是否启用自动大写。 字段名 字段描述 HAPTIC_FEEDBACK_STATUS 设置是否开启触摸反馈。 VIBRATE_WHILE_RINGING 设置来电响铃时是否震动。 DEFAULT_NOTIFICATION_SOUND 系统默认通知铃声的存储区。 字段名 字段描述 FONT_SCALE 设置字体大小因子。 SCREEN_BRIGHTNESS_STATUS 设置屏幕亮度。 AUTO_SCREEN_BRIGHTNESS 设置是否打开屏幕亮度自动调节模式。 SCREEN_OFF_TIMEOUT 设置设备屏幕自动休眠时间。 字段名 字段描述 DATE_FORMAT 设置日期格式。 TIME_FORMAT 设置以12或24小时制显示时间。 AUTO_GAIN_TIME 是否从网络(NITZ)自动获取日期,时间和时区的值。 AUTO_GAIN_TIME_ZONE 是否从网络(NITZ)自动获取时区的值。 字段名 字段描述 SETUP_WIZARD_FINISHED 识别开机向导是否已经运行过。 AIRPLANE_MODE_STATUS 飞行模式是否开启。 DEVICE_NAME 设备名称。 ACCESSIBILITY_STATUS 设置辅助功能是否可用。 字段名 字段描述 RTT_CALLING_STATUS 设置来去电是否启动RTT模式进行应答。 开发步骤 应用程序打开某个 Slice 时,在 OnStart()时,注册相关设置项的回调,并读取一次该设置项的值,进行初始化适配。 场景介绍 TTS、Wireless、Network、Input、Sound、Display、Date、Call、General九类定义了表征终端设备状态的相关字段,如屏幕亮度、日期格式、字体显示大小等,应用程序可以根据自身所拥有的权限对其进行增、删、改、查等操作,并进行相应的场景适配。 例如:TIME_FORMAT——表示日期格式,应用程序可进行读写。 图1 数据表更新过程 点击放大 接口说明 SystemSettings 提供系统设置的相关接口,包括TTS、Wireless、Network、Input、Sound、Display、Date、Call、General 九类字段的存储和检索接口。应用程序通过 AppSettings 类提供的方法对其自身的能力进行查询。 表1 AppSettings的主要接口 接口名 描述 canShowOverlays(Context context)...

优惠码

鸿蒙OS 设置概述

应用程序可以对系统各类设置项进行增、删、改、查等操作。例如,三方应用提前注册飞行模式设置项的回调,当用户通过系统设置修改终端的飞行模式状态时,三方应用会检测到此设置项发生变化并进行适配。如检测到飞行模式开启,将进入离线状态;检测到飞行模式关闭,其将重新获取在线数据。 基本概念 系统设置数据项分为 TTS(Text To Speech)、Wireless、Network、Input、Sound、Display、Date、Call、General 九类,应用程序可以根据自身拥有的权限对其进行操作。

优惠码

鸿蒙OS (逆)地理编码转化

场景介绍 使用坐标描述一个位置,非常准确,但是并不直观,面向用户表达并不友好。 系统向开发者提供了地理编码转化能力(将坐标转化为地理编码信息),以及逆地理编码转化能力(将地理描述转化为具体坐标)。其中地理编码包含多个属性来描述位置,包括国家、行政区划、街道、门牌号、地址描述等等,这样的信息更便于用户理解。 接口说明 进行坐标和地理编码信息的相互转化,所使用的接口说明如下。 接口名 功能描述 GeoConvert() 创建 GeoConvert 实例对象。 getAddressFromLocation(double latitude, double longitude, int maxItems) 根据指定的经纬度坐标获取地理位置信息。 getAddressFromLocationName(String description, int maxItems) 根据地理位置信息获取相匹配的包含坐标数据的地址列表。 getAddressFromLocationName(String description, double minLatitude, double minLongitude, double maxLatitude, double maxLongitude,int maxItems) 根据指定的位置信息和地理区域获取相匹配的包含坐标数据的地址列表。 开发步骤 实例化 GeoConvert 对象,所有与(逆)地理编码转化能力相关的功能 API,都是通过 GeoConvert 提供的。 GeoConvert geoConvert = new GeoConvert(); 获取转化结果。 坐标转化地理位置信息。 geoConvert.getAddressFromLocation(纬度值, 经度值, 1); 参考接口 API 说明,应用可以获得与此坐标匹配的 GeoAddress 列表,应用可以根据实际使用需求,读取相应的参数数据。 位置描述转化坐标。 geoConvert.getAddressFromLocationName("北京大兴国际机场", 1); 参考接口 API 说明,应用可以获得与位置描述相匹配的 GeoAddress 列表,其中包含对应的坐标数据,请参考 API 使用。 如果需要查询的位置描述可能出现多地重名的请求,可以同过设置一个经纬度范围,以便高效获取期望的准确结果。 geoConvert.getAddressFromLocationName("北京大兴国际机场", 纬度下限, 经度下限, 纬度上限, 经度上限, 1);

优惠码

鸿蒙OS 获取设备的位置信息

场景介绍 开发者可以调用 HarmonyOS 位置相关接口,获取设备实时位置,或者最近的历史位置。 对于位置敏感的应用业务,建议获取设备实时位置信息。如果不需要设备实时位置信息,并且希望尽可能的节省耗电,开发者可以考虑获取最近的历史位置。 接口说明 获取设备的位置信息,所使用的接口说明如下。 接口名 功能描述 Locator(Context context) 创建 Locator 实例对象。 RequestParam(int scenario) 根据定位场景类型创建定位请求的 RequestParam 对象。 onLocationReport(Location location) 获取定位结果。 startLocating(RequestParam request, LocatorCallback callback) 向系统发起定位请求。 requestOnce(RequestParam request, LocatorCallback callback) 向系统发起单次定位请求。 stopLocating(LocatorCallback callback) 结束定位。 getCachedLocation() 获取系统缓存的位置信息。 开发步骤 应用在使用系统能力前,需要检查是否已经获取用户授权访问设备位置信息。如未获得授权,可以向用户申请需要的位置权限。 系统提供的定位权限有: ohos.permission.LOCATION ohos.permission.LOCATION_IN_BACKGROUND 访问设备的位置信息,必须申请 ohos.permission.LOCATION 权限,并且获得用户授权。 如果应用在后台运行时也需要访问设备位置,除需要将应用声明为允许后台运行外,还必须申请 ohos.permission.LOCATION_IN_BACKGROUND 权限,这样应用在切入后台之后,系统依然可以继续上报位置信息。 开发者可以在应用 config.json 文件中声明所需要的权限,示例代码如下: { "reqPermissions": [{ "name": "ohos.permission.LOCATION", "reason": "$string:reason_description", "usedScene": { "ability": ["com.myapplication.LocationAbility"], "when": "inuse" }, { ... }] }] } 说明 配置字段详细说明见权限开发指导。在使用系统位置能力时,向用户动态申请位置权限,申请方式请参考动态申请权限开发步骤。 实例化 Locator 对象,所有与基础定位能力相关的功能 API,都是通过 Locator 提供的。 Locator locator = new Locator(context); 其中入参需要提供当前应用程序的 AbilityInfo 信息,便于系统管理应用的定位请求。 实例化 RequestParam 对象,用于告知系统该向应用提供何种类型的位置服务,以及位置结果上报的频率。 方式一: 为了面向开发者提供贴近其使用场景的 API 使用方式,系统定义了几种常见的位置能力使用场景,并针对使用场景做了适当的优化处理,应用可以直接匹配使用,简化开发复杂度。系统当前支持场景如下表所示。 场景名称 常量定义 说明 导航场景 SCENE_NAVIGATION 适用于在户外定位设备实时位置的场景,如车载、步行导航。在此场景下,为保证系统提供位置结果精度最优,主要使用 GNSS 定位技术提供定位服务,结合场景特点,在导航启动之初,用户很可能在室内、车库等遮蔽环境, GNSS 技术很难提供位置服务。为解决此问题,我们会在 GNSS 提供稳定位置结果之前,使用系统网络定位技术,向应用提供位置服务,以在导航初始阶段提升用户体验。此场景默认以最小 1 秒间隔上报定位结果,使用此场景的应用必须申请 ohos.permission.LOCATION 权限,同时获得用户授权。 轨迹跟踪场景 SCENE_TRAJECTORY_TRACKING 适用于记录用户位置轨迹的场景,如运动类应用记录轨迹功能。主要使用 GNSS 定位技术提供定位服务。此场景默认以最小 1 秒间隔上报定位结果,并且应用必须申请 ohos.permission.LOCATION 权限,同时获得用户授权。 出行约车场景 SCENE_CAR_HAILING 适用于用户出行打车时定位当前位置的场景,如网约车类应用。此场景默认以最小 1 秒间隔上报定位结果,并且应用必须申请 ohos.permission.LOCATION 权限,同时获得用户授权。 生活服务场景 SCENE_DAILY_LIFE_SERVICE 生活服务场景,适用于不需要定位用户精确位置的使用场景,如新闻资讯、网购、点餐类应用,做推荐、推送时定位用户大致位置即可。此场景默认以最小 1 秒间隔上报定位结果,并且应用至少申请 ohos.permission.LOCATION 权限,同时获得用户授权。 无功耗场景 SCENE_NO_POWER 无功耗场景,适用于不需要主动启动定位业务。系统在响应其他应用启动定位业务并上报位置结果时,会同时向请求此场景的应用程序上报定位结果,当前的应用程序不产生定位功耗。此场景默认以最小 1 秒间隔上报定位结果,并且应用需要申请 ohos.permission.LOCATION 权限,同时获得用户授权。 以导航场景为例,实例化方式如下: RequestParam requestParam = new RequestParam(RequestParam.SCENE_NAVIGATION); 方式二: 如果定义的现有场景类型不能满足所需的开发场景,系统提供了基本的定位优先级策略类型。 策略类型 常量定义 说明 定位精度优先策略 PRIORITY_ACCURACY 定位精度优先策略主要以 GNSS 定位技术为主,在开阔场景下可以提供纳米级的定位精度,具体性能指标依赖用户设备的定位硬件能力,但在室内等强遮蔽定位场景下,无法提供准确的位置服务。应用必须申请 ohos.permission.LOCATION 权限,同时获得用户授权。 快速定位优先策略 PRIORITY_FAST_FIRST_FIX 快速定位优先策略会同时使用GNSS定位、基站定位和 WLAN、蓝牙定位技术,以便室内和户外场景下,通过此策略都可以获得位置结果,当各种定位技术都有提供位置结果时,系统会选择其中精度较好的结果返回给应用。因为对各种定位技术同时使用,对设备的硬件资源消耗较大,功耗也较大。应用必须申请 ohos.permission.LOCATION 权限,同时获得用户授权。 低功耗定位优先策略 PRIORITY_LOW_POWER 低功耗定位优先策略主要使用基站定位和 WLAN、蓝牙定位技术,也可以同时提供室内和户外场景下的位置服务,因为其依赖周边基站、可见 WLAN、蓝牙设备的分布情况,定位结果的精度波动范围较大,如果对定位结果精度要求不高,或者使用场景多在有基站、可见 WLAN、蓝牙设备高密度分布的情况下,推荐使用,可以有效节省设备功耗。应用至少申请 ohos.permission.LOCATION 权限,同时获得用户授权。 以定位精度优先策略为例,实例化方式如下: RequestParam requestParam...

优惠码

鸿蒙OS 位置概述

移动终端设备已经深入人们日常生活的方方面面,如查看所在城市的天气、新闻轶事、出行打车、旅行导航、运动记录。这些习以为常的活动,都离不开定位用户终端设备的位置。 当用户处于这些丰富的使用场景中时,系统的位置能力可以提供实时准确的位置数据。对于开发者,设计基于位置体验的服务,也可以使应用的使用体验更贴近每个用户。 当应用在实现基于设备位置的功能时,如:驾车导航,记录运动轨迹等,可以调用该模块的 API 接口,完成位置信息的获取。 基本概念 位置能力用于确定用户设备在哪里,系统使用位置坐标标示设备的位置,并用多种定位技术提供服务,如 GNSS 定位、基站定位、WLAN/蓝牙定位(基站定位、WLAN/蓝牙定位后续统称“网络定位技术”)。通过这些定位技术,无论用户设备在室内或是户外,都可以准确地确定设备位置。 坐标 系统以1984年世界大地坐标系统为参考,使用经度、纬度数据描述地球上的一个位置。 GNSS 定位 基于全球导航卫星系统,包含:GPS、GLONASS、北斗、Galileo 等,通过导航卫星,设备芯片提供的定位算法,来确定设备准确位置。定位过程具体使用哪些定位系统,取决于用户设备的硬件能力。 基站定位 根据设备当前驻网基站和相邻基站的位置,估算设备当前位置。此定位方式的定位结果精度相对较低,并且需要设备可以访问蜂窝网络。 WLAN、蓝牙定位 根据设备可搜索到的周围 WLAN、蓝牙设备位置,估算设备当前位置。此定位方式的定位结果精度依赖设备周围可见的固定 WLAN、蓝牙设备的分布,密度较高时,精度也相较与基站定位方式更高,同时也需要设备可以访问网络。 运作机制 位置能力作为系统为应用提供的一种基础服务,需要应用在所使用的业务场景,向系统主动发起请求,并在业务场景结束时,主动结束此请求,在此过程中系统会将实时的定位结果上报给应用。 约束与限制 使用设备的位置能力,需要用户进行确认并主动开启位置开关。如果位置开关没有开启,系统不会向任何应用提供位置服务。 设备位置信息属于用户敏感数据,所以即使用户已经开启位置开关,应用在获取设备位置前仍需向用户申请位置访问权限。在用户确认允许后,系统才会向应用提供位置服务。

优惠码

鸿蒙OS Vibrator开发指导

场景介绍 当设备需要设置不同的振动效果时,可以调用 Vibrator 模块,例如,设备的按键可以设置不同强度和时长的振动,闹钟和来电可以设置不同强度和时长的单次或周期性振动。 接口说明 振动器模块主要提供的功能有:查询设备上振动器的列表,查询某个振动器是否支持某种振动效果,触发和关闭振动器。VibratorAgent 类开放能力如下,具体请查阅 API 参考文档。 接口名 描述 getVibratorIdList() 获取硬件设备上的振动器列表。 isSupport(int) 根据指定的振动器Id查询硬件设备是否存在该振动器。 isEffectSupport(int, String) 查询指定的振动器是否支持指定的震动效果。 startOnce(int, String) 对指定的振动器创建指定效果的一次性振动。 startOnce(String) 对指定的振动器创建指定效果的一次性振动。 startOnce(int, int) 对指定的振动器创建指定振动时长的一次性振动。 startOnce(int) 对指定的振动器创建指定振动时长的一次性振动。 start(int, VibrationPattern) 对指定的振动器创建自定义效果的波形或一次性振动。 start(VibrationPattern) 对指定的振动器创建自定义效果的波形或一次性振动。 stop(int, String) 关闭指定的振动器指定模式的振动。 stop(String) 关闭指定的振动器指定模式的振动。 开发步骤 控制设备上的振动器,需要在“config.json”里面进行配置请求权限。具体如下: "reqPermissions": [ { "name": "ohos.permission.VIBRATE", "reason": "", "usedScene": { "ability": [ ".MainAbility" ], "when": "inuse" } } ] 查询硬件设备上的振动器列表。 查询指定的振动器是否支持指定的震动效果。 创建不同效果的振动。 关闭指定的振动器指定模式的振动。 private VibratorAgent vibratorAgent = new VibratorAgent(); private int[] timing = {1000, 1000, 2000, 5000}; private int[] intensity = {50, 100, 200, 255}; @Override public void onStart(Intent intent) { super.onStart(intent); super.setUIContent(ResourceTable.Layout_vibrator_layout); // ... // 查询硬件设备上的振动器列表 List<Integer> vibratorList = vibratorAgent.getVibratorIdList(); if (vibratorList.isEmpty()) { return; } int vibratorId = vibratorList.get(0); // 查询指定的振动器是否支持指定的振动效果 boolean isSupport = vibratorAgent.isEffectSupport(vibratorId, VibrationPattern.VIBRATOR_TPYE_CAMERA_CLICK); // 创建指定效果的一次性振动 boolean vibrateEffectResult = vibratorAgent.vibrate(vibratorId, VibrationPattern.VIBRATOR_TPYE_CAMERA_CLICK); // 创建指定振动时长的一次性振动...

优惠码

鸿蒙OS Light开发指导

场景介绍 当设备需要设置不同的闪烁效果时,可以调用 Light 模块,例如,LED 灯能够设置灯颜色、灯亮和灯灭时长的闪烁效果。 说明 使用该功能依赖于硬件设备是否具有 LED 灯。 接口说明 灯模块主要提供的功能有:查询设备上灯的列表,查询某个灯设备支持的效果,打开和关闭灯设备。LightAgent 类开放能力如下,具体请查阅 API 参考文档。 接口名 描述 getLightIdList() 获取硬件设备上的灯列表。 isSupport(int) 根据指定灯Id查询硬件设备是否有该灯。 isEffectSupport(int, String) 查询指定的灯是否支持指定的闪烁效果。 turnOn(int, String) 对指定的灯创建指定效果的一次性闪烁。 turnOn(int, LightEffect) 对指定的灯创建自定义效果的一次性闪烁。 turnOn(String) 对指定的灯创建指定效果的一次性闪烁。 turnOn(LightEffect) 对指定的灯创建自定义效果的一次性闪烁。 turnOff(int) 关闭指定的灯。 turnOff() 关闭指定的灯。 开发步骤 查询硬件设备上灯的列表。 查询指定的灯是否支持指定的闪烁效果。 创建不同的闪烁效果。 关闭指定的灯。 private LightAgent lightAgent = new LightAgent(); @Override public void onStart(Intent intent) { super.onStart(intent); super.setUIContent(ResourceTable.Layout_light_layout); // ... // 查询硬件设备上的灯列表 List<Integer> myLightList = lightAgent.getLightIdList(); if (myLightList.isEmpty()) { return; } int lightId = myLightList.get(0); // 查询指定的灯是否支持指定的闪烁效果 boolean isSupport = lightAgent.isEffectSupport(lightId, LightEffect.LIGHT_ID_KEYBOARD); // 创建指定效果的一次性闪烁 boolean turnOnResult = lightAgent.turnOn(lightId, LightEffect.LIGHT_ID_KEYBOARD); // 创建自定义效果的一次性闪烁 LightBrightness lightBrightness = new LightBrightness(255, 255, 255); LightEffect lightEffect = new LightEffect(lightBrightness, 1000, 1000); boolean turnOnEffectResult = lightAgent.turnOn(lightId, lightEffect); // 关闭指定的灯 boolean turnOffResult = lightAgent.turnOff(lightId); }

优惠码
鸿蒙OS 控制类小器件概述-国外主机测评 - 国外VPS,国外服务器,国外云服务器,测评及优惠码

鸿蒙OS 控制类小器件概述

基本概念 控制类小器件指的是设备上的 LED灯和振动器。其中, LED灯主要用作指示(如充电状态)、闪烁功能(如三色灯)等;振动器主要用于闹钟、开关机振动、来电振动等场景。 运作机制 控制类小器件主要包含以下四个模块:控制类小器件 API、控制类小器件 Framework、控制类小器件 Service、HD_IDL 层。 图1 控制类小器件 控制类小器件 API:提供灯和振动器基础的 API,主要包含灯的列表查询、打开灯、关闭灯等接口,振动器的列表查询、振动器的振动器效果查询、触发/关闭振动器等接口。 控制类小器件 Framework:主要实现灯和振动器的框架层管理,实现与控制类小器件 Service 的通信。 控制类小器件 Service:实现灯和振动器的服务管理。 HD_IDL层:对不同设备(车机、智能穿戴、智慧屏等)的适配。 约束与限制 在调用 Light API 时,请先通过 getLightIdList 接口查询设备所支持的灯的 ID 列表,以免调用打开接口异常。 在调用 Vibrator API 时,请先通过 getVibratorIdList 接口查询设备所支持的振动器的ID列表,以免调用振动接口异常。 在使用振动器时,开发者需要配置请求振动器的权限ohos.permission.VIBRATE,才能控制振动器振动。

优惠码

鸿蒙OS 传感器开发指导

场景介绍 通过方向传感器数据,可以感知用户设备当前的朝向,从而达到为用户指明方位的目的。 通过重力和陀螺仪传感器数据,能感知设备倾斜和旋转量,提高用户在游戏场景中的体验。 通过接近光传感器数据,感知距离遮挡物的距离,使设备能够自动亮灭屏,达到防误触目的。 通过气压计传感器数据,可以准确的判断设备当前所处的海拔。 通过环境光传感器数据,设备能够实现背光自动调节。 接口说明 HarmonyOS 传感器提供的功能有:查询传感器的列表、订阅/取消订阅传感器数据、查询传感器的最小采样时间间隔、执行控制命令。 以订阅方向类别的传感器数据为例,本节示例涉及的接口如下: 接口名 描述 getAllSensors() 获取属于方向类别的传感器列表。 getAllSensors(int) 获取属于方向类别中特定类型的传感器列表。 getSingleSensor(int) 查询方向类别中特定类型的默认sensor(如果存在多个则返回第一个)。 setSensorDataCallback(ICategoryOrientationDataCallback, CategoryOrientation, long) 以设定的采样间隔订阅给定传感器的数据。 setSensorDataCallback(ICategoryOrientationDataCallback, CategoryOrientation, long, long) 以设定的采样间隔和时延订阅给定传感器的数据。 releaseSensorDataCallback(ICategoryOrientationDataCallback, CategoryOrientation) 取消订阅指定传感器的数据。 releaseSensorDataCallback(ICategoryOrientationDataCallback) 取消订阅的所有传感器数据。 接口名 描述 getSensorMinSampleInterval(int) 查询给定传感器的最小采样间隔。 runCommand(int, int, int) 针对某个传感器执行命令,刷新传感器的数据。 开发步骤 权限配置 如果设备上使用了[表2]中的传感器,需要请求相应的权限,开发者才能获取到传感器数据。 敏感级别 传感器 HarmonyOS权限名 权限描述 system_grant 加速度传感器、加速度未校准传感器、线性加速度传感器 ohos.permission.ACCELEROMETER 允许订阅Motion组对应的加速度传感器的数据。 user_grant 计步器 ohos.permission.ACTIVITY_MOTION 允许订阅运动状态。 开发者需要在 config.json 里面配置权限: 开发者如果需要获取加速度的数据,需要进行如下权限配置。 "reqPermissions": [ { "name": "ohos.permission.ACCELEROMETER", "reason": "", "usedScene": { "ability": [ ".MainAbility" ], "when": "inuse" } } ] 对于需要用户授权的权限,如计步器传感器,需要进行如下权限配置。 "reqPermissions": [ { "name": "ohos.permission.ACTIVITY_MOTION", "reason": "", "usedScene": { "ability": [ ".MainAbility" ], "when": "inuse" } } ] 由于敏感权限需要用户授权,因此,开发者在应用启动时或者调用订阅数据接口前,需要调用权限检查和请求权限接口。 @Override public void onStart(Intent intent) { super.onStart(intent); if (verifySelfPermission("ohos.permission.ACTIVITY_MOTION") != 0) { if (canRequestPermission("ohos.permission.ACTIVITY_MOTION")) { requestPermissionsFromUser(new String[] {"ohos.permission.ACTIVITY_MOTION"}, 1); } } // ... } @Override public void onRequestPermissionsFromUserResult(int requestCode, String[] permissions,...

优惠码