You need to sign in or sign up before continuing.
提交 8999f3be 编写于 作者: R RayShih

同步RN附件

Signed-off-by: NRayShih <shirui721@huawei.com>
上级 4722fa65
# OpenHarmony 4.0 Beta2
## 版本概述
## 特性说明
### 应用框架
- 更新ArkTS卡片刷新方式,支持通过数据代理的方式刷新内容。
- ArkTS卡片支持静态卡片配置、静态图展示。
### ArkUI
- Xcomponent组件支持Texture模式绘制、popup支持位置自定义、弹框支持通过键盘ESC键逐层退出、ListItem支持长距离左滑删除手势、ArkTS/JS卡片支持渲染完成回调、Image/Text组件支持隐私遮罩、ContextMenu支持分段显示能力。
- 动画效果增强,包括:布局属性、背景图片大小位置属性、显隐属性支持隐式动效,list支持scrollToIndex动效、Tabs模糊动效、popup出现/消失动效,支持自定义动画,满足开发者多种多样动画诉求。
- 开发效率增强:支持命名路由的能力,借助此能力可针对不同页面设置不同的切换动效;轻量级ArkUI框架支持定义全局数据对象,可进行应用内页面间的数据共享。
- 全局API支持Stage模型多实例场景。
### 应用包管理
- 支持对应用分发类型和附件信息的设置和查询。
- 支持通过文件扩展名列出支持打开该文件的应用列表,实现了文件扩展名与应用的匹配关系。
- 支持企业应用的安装管理,对于证书类型为“enterprise”的应用,安装需要申请“ohos.permission.INSTALL_ENTERPRISE_BUNDLE”。
### 分布式数据管理
- UDMF(统一数据管理框架)支持跨设备拖拽场景下对分布式目录的文件临时授权。
- 提供RDBstore NDK接口 :包含增/删/改/查/事务、数据加密、数据分级保护、备份/恢复能力。
- Key-Value和分布式数据对象支持根据数据量自动选择数据同步的通道。系统会根据数据量大小自动选择蓝牙通道或基于WiFi的P2P通道进行数据的同步。
### 分布式软总线
- 支持对基于软总线连接的link信息进行管理。
- 支持会话级的传输能力协商,可通过协商确定设备间传输的能力。
### 分布式硬件
- 分布式场景下的音频录制时延性能得到优化。
- 分布式文件系统支持在以蓝牙引导的P2P连接环境下进行文件互访。
- 支持组网设备名称变化的监听。
### 文件管理
- 支持公共图片文件在设备端和云端进行同步(设备登录的帐号需开通云端服务),支持通过picker选择云端的图片。
- 支持应用定制备份恢复的目录。
- 支持公共图片的分类管理,用户可以在图库中通过相册对用户图片进行组织分类。
- 支持应用监听沙箱内的文件的增改删。
- 支持应用跨设备分享沙箱内的文件。
### 图形显示及窗口
**图形**
- 支持对选定区域取色,可选定区域后获得该区域的主色值、平均色值等参数并按需使用。
- 支持设置旋转中心在Z轴锚点的偏移,允许在旋转过程中修改渲染的锚点。
- 图形处理依赖的渲染库升级至Skia 0310新版本,提升了显示性能。
**窗口**
- 优化了display模块的参数值获取方式,从原先软件方式优化为从硬件直接获取真实值。
- 窗口控件化能力增强:窗口以控件化的方式支持窗口属性、子窗口、模态窗口、窗口效果、窗口装饰、亮灭屏流程、截屏录屏。
### 媒体
**音频**
- 支持音效框架:南向厂商可配置音效策略和加载自定义音效;应用可查询音频输出的音效模式,切换或关闭音效模式。
- 支持系统内录音能力:可根据音频场景属性筛选,录制系统内播放的音频数据。
- 支持获取音频设备显示名:播放对象详细信息内可获取当前播放输出归属的设备名。
**媒体播放**
支持音效参数配置,可以在音频框架支持音效的能力基础上进一步配置音效。
**音视频编解码**
- 支持通过Native API查询系统的音视频编解码能力。
- 支持通过Native API完成音视频封装,即将音频、视频等编码后的媒体数据,按一定的格式存储到文件里。
- 支持通过Native API完成音视频解封装,即从比特流数据中取出音频、视频等媒体帧数据。
### 事件通知
- 支持选定通知并批量删除通知。
- emitter支持取消按条件指定订阅回调能力。
### 基础通信
- WiFi支持后台扫描的能力。
- WiFi支持STA模式下的随机MAC能力。
### 网络与通信
- 支持与服务器端通过TCP Socket进行通信。
- 支持用户将数据传送到远程服务器。
- 支持HTTPS证书的管理适配。
- 支持网卡代理。
### 系统服务管理
- 支持系统服务按需启动,例如外部调用、事件触发,同时支持在设备空闲时自动退出系统服务。
- 系统服务配置格式优化,使用JSON格式替代XML格式。
### 电源
- 新增接口,支持设置系统立即进入睡眠状态。
- 新增休眠源定制能力,支持根据不同的休眠源定制事件及行为。
- 新增唤醒源定制能力,支持根据不同的唤醒源定制唤醒事件。
### 多模输入
- 支持将键盘输入设备的原始事件映射为归一化交互的意图事件,使开发者在开发应用时无需关注输入行为是来自触控还是键盘。
- 支持用户根据个人习惯设置触控板功能的个性化配置:
- 支持两种触发模式映射鼠标左键功能: 按压、轻点。
- 支持两种触发模式映射鼠标右键功能:点按左/右下角、双指点按或轻点。
- 跟踪速度:支持10档速度调节。
- 支持两种交互模式映射鼠标滚轮功能:内容随手指移动方向、内容随手指反向移动。
### 主题框架
- 锁屏管理服务支持锁屏事件回调机制、静态/动态壁纸、查询锁屏时的业务状态。
- 壁纸管理服务支持自定义壁纸、锁屏/解锁操作、重置壁纸。
### 上传下载
支持查询上传和下载的任务、任务状态信息同步和任务记录持久化、任务状态查询和异常的恢复。
### 安全
**加解密算法库框架**
- 提供DSA数字签名算法能力。
- 提供DSA、ECC、RSA密钥解析和密钥参数的获取能力。
- 提供安全随机数生成算法类型的获取能力。
- 提供SM4密钥的随机生成与转换,以及加密解密能力。
- 提供SM3密钥的HMAC和HASH的能力。
- 提供SM2密钥的随机生成与转换、签名及验签、以及加密解密能力。
**密钥管理**
- 支持HUKS密钥加密保护。
- 支持KeyAttestation公钥证书中增加对密钥所属业务身份字段。
- 支持标准HDI南向接口。
**设备互信认证**
支持在以下两种场景的设备间互信认证流程中生成假名,支持识别及和标识设备的假名化名称。
- 对使用同帐号登录的多个设备进行互信认证。
- 对非同帐号的点对点互联的两个设备进行互信认证。
### 程序访问控制
- 优化权限管理的菜单呈现,拆分媒体和文件的权限组,相应权限的授权粒度更加精细化。
- 支持treble架构下对SELinux的兼容能力。
### 帐号
- 支持帐号授权能力扩展和三方应用使用帐号授权能力。
- 支持对域帐号插件的管理,从而支持域帐号管理和认证能力。
### WebView
- W3C能力补充完善:补充Web Camera能力,以及bindContextMenu、Select、date类型input等H5标签能力。
- 支持多渲染进程的进程拆分。
- 支持文字、图片基础拖拽能力。
- 支持WebRTC的视频会议能力(不含摄像头共享)。
- 支持渲染进程独立SELinux标签,增强安全基础能力。
### ArkCompiler
- 方舟运行时支持JSContext功能;支持动态PGO功能,可采集运行期的类型和函数热点信息,并生成AP文件;支持动态import加载NAPI库。
- 方舟编译器type编译模式下前端编译工具链切换到es2abc。
- NAPI buffer、object、arraybuffer、object type接口功能补齐。
- Taskpool支持任务中断和取消,支持定义任务组(TaskGroup),支持对任务的状态和调度信息进行打点,支持超长等待的任务进行识别和恢复。
- 编译构建能力提供OpenHarmony系统user和root不同权限版本的构建,user版本能力同步支持Wukong测试工具和XTS测试能力。
- 编译工具链支持预览器上的调试能力。
### DFX
- 提供统一的采集框架能力,方便开发者对应用的调试调测。
- 提供统一的trace采集能力。
- 提供Native的HiTraceMeter打点接口。
- 性能雷达提供工具类,方便各业务模块(子系统)在业务流程上传递性能埋点记录及结算性能数据。
### 内核
代码执行权限管控能力增强,新增了以下能力:
- 支持安全内存机制。
- 提供满足不同场景的代码执行权限管控策略。
- 提供代码执行权限管控的全生命周期管理能力。
- 支持解析可执行文件获取代码段信息。
- 支持代码页的完整性保护能力。
### 驱动
- 扩展设备驱动框架提供以下能力:
- 扩展设备驱动框架基于“驱动扩展Ability(DriverExtensionAbility)”的能力,构建应用态扩展驱动包的开发、部署、安装、更新、卸载、运行能力,开放全流程生命周期管理能力。
- 支持三方设备厂商开发的非标准协议的可插拔USB设备扩展驱动包,正常安装到OpenHarmony系统。插入USB设备后,能正常识别USB设备并与扩展驱动包匹配。
- 支持三方应用通过扩展外部设备管理框架查询并绑定USB设备扩展驱动包,完成对扩展驱动包定制功能的操作。
- 相机驱动提供以下能力:
- 提供USB相机热插拔识别能力,支持开机启动检查识别和启动后热插拔识别。
- 支持USB相机的预览、拍照、录像能力,提供相机格式、分辨率查询和配置能力。
- 编解码驱动提供JPEG图片硬件解码加速能力,包括获取硬件解码信息,初始化/去初始化,解码,申请/释放buffer,提升用户浏览图片流畅度体验。
- 传感器驱动提供温湿度传感器设备驱动能力,支持小型设备温湿度器件查询,器件使能/去使能,数据查询能力,丰富智能设备传感器能力。
## 配套关系
**表1** 版本软件和工具配套关系
| 软件 | 版本 | 备注 |
| -------- | -------- | -------- |
| OpenHarmony | 4.0 Beta2 | NA |
| Public SDK | Ohos_sdk_public 4.0.9.6 (API Version 10 Beta2) | 面向应用开发者提供,不包含需要使用系统权限的系统接口。通过DevEco Studio默认获取的SDK为Public SDK。 |
| HUAWEI DevEco Studio(可选) | 4.0 Beta2 | OpenHarmony应用开发推荐使用。获取方式:<br />*待发布* |
| HUAWEI DevEco Device Tool(可选) | 4.0 Beta1 | OpenHarmony智能设备集成开发环境推荐使用。获取方式:<br />[点击跳转至下载页面](https://device.harmonyos.com/cn/develop/ide#download) |
## 源码获取
### 前提条件
1. 注册码云gitee帐号。
2. 注册码云SSH公钥,请参考[码云帮助中心](https://gitee.com/help/articles/4191)
3. 安装[git客户端](https://gitee.com/link?target=https%3A%2F%2Fgit-scm.com%2Fbook%2Fzh%2Fv2%2F%25E8%25B5%25B7%25E6%25AD%25A5-%25E5%25AE%2589%25E8%25A3%2585-Git)[git-lfs](https://gitee.com/vcs-all-in-one/git-lfs?_from=gitee_search#downloading)并配置用户信息。
```
git config --global user.name "yourname"
git config --global user.email "your-email-address"
git config --global credential.helper store
```
4. 安装码云repo工具,可以执行如下命令。
```
curl -s https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo #如果没有权限,可下载至其他目录,并将其配置到环境变量中chmod a+x /usr/local/bin/repo
pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests
```
### 通过repo获取
**方式一(推荐)**
通过repo + ssh 下载(需注册公钥,请参考[码云帮助中心](https://gitee.com/help/articles/4191))。
- 从版本分支获取源码。可获取该版本分支的最新源码,包括版本发布后在该分支的合入。
```
repo init -u git@gitee.com:openharmony/manifest.git -b OpenHarmony-4.0-Beta2 --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'
```
- 从版本发布Tag节点获取源码。可获取与版本发布时完全一致的源码。
```
repo init -u git@gitee.com:openharmony/manifest.git -b refs/tags/OpenHarmony-v4.0-Beta2 --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'
```
**方式二**
通过repo + https 下载。
- 从版本分支获取源码。可获取该版本分支的最新源码,包括版本发布后在该分支的合入。
```
repo init -u https://gitee.com/openharmony/manifest -b OpenHarmony-4.0-Beta2 --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'
```
- 从版本发布Tag节点获取源码。可获取与版本发布时完全一致的源码。
```
repo init -u https://gitee.com/openharmony/manifest -b refs/tags/OpenHarmony-v4.0-Beta2 --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'
```
### 从镜像站点获取
**表2** 获取源码路径
| 版本源码 | **版本信息** | **下载站点** | **SHA256校验码** | **软件包容量** |
| --------------------------------------- | ------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | -------- |
| 全量代码(标准、轻量和小型系统) | 4.0 Beta2 | [站点](https://repo.huaweicloud.com/openharmony/os/4.0-Beta2/code-v4.0-Beta2.tar.gz) | [SHA256校验码](https://repo.huaweicloud.com/openharmony/os/4.0-Beta2/code-v4.0-Beta2.tar.gz.sha256) | 26.2 GB |
| Hi3861解决方案(二进制) | 4.0 Beta2 | [站点](https://repo.huaweicloud.com/openharmony/os/4.0-Beta2/hispark_pegasus.tar.gz) | [SHA256校验码](https://repo.huaweicloud.com/openharmony/os/4.0-Beta2/hispark_pegasus.tar.gz.sha256) | 25.1 MB |
| Hi3516解决方案-LiteOS(二进制) | 4.0 Beta2 | [站点](https://repo.huaweicloud.com/openharmony/os/4.0-Beta2/hispark_taurus_LiteOS.tar.gz) | [SHA256校验码](https://repo.huaweicloud.com/openharmony/os/4.0-Beta2/hispark_taurus_LiteOS.tar.gz.sha256) | 287.6 MB |
| Hi3516解决方案-Linux(二进制) | 4.0 Beta2 | [站点](https://repo.huaweicloud.com/openharmony/os/4.0-Beta2/hispark_taurus_Linux.tar.gz) | [SHA256校验码](https://repo.huaweicloud.com/openharmony/os/4.0-Beta2/hispark_taurus_Linux.tar.gz.sha256) | 186.4 MB |
| RK3568标准系统解决方案(二进制) | 4.0 Beta2 | [站点](https://repo.huaweicloud.com/openharmony/os/4.0-Beta2/dayu200_standard_arm32.tar.gz) | [SHA256校验码](https://repo.huaweicloud.com/openharmony/os/4.0-Beta2/dayu200_standard_arm32.tar.gz.sha256) | 4.5 GB |
| 标准系统Public SDK包(Mac) | 4.0.9.6 | [站点](https://repo.huaweicloud.com/openharmony/os/4.0-Beta2/ohos-sdk-mac-public.tar.gz) | [SHA256校验码](https://repo.huaweicloud.com/openharmony/os/4.0-Beta2/ohos-sdk-mac-public.tar.gz.sha256) | 718.2 MB |
| 标准系统Public SDK包(Mac-M1) | 4.0.9.6 | [站点](https://repo.huaweicloud.com/openharmony/os/4.0-Beta2/L2-SDK-MAC-M1-PUBLIC.tar.gz) | [SHA256校验码](https://repo.huaweicloud.com/openharmony/os/4.0-Beta2/L2-SDK-MAC-M1-PUBLIC.tar.gz.sha256) | 673.2 MB |
| 标准系统Public SDK包(Windows/Linux) | 4.0.9.6 | [站点](https://repo.huaweicloud.com/openharmony/os/4.0-Beta2/ohos-sdk-windows_linux-public.tar.gz) | [SHA256校验码](https://repo.huaweicloud.com/openharmony/os/4.0-Beta2/ohos-sdk-windows_linux-public.tar.gz.sha256) | 1.8 GB |
## 更新说明
本版本在OpenHarmony 4.0 Beta1的基础上有如下变更:
### API
OpenHarmony 4.0 Beta2的API范围相比4.0 Beta1,API变更的清单请参见“[API差异报告](https://gitee.com/openharmony/docs/blob/OpenHarmony-4.0-Beta2/zh-cn/release-notes/api-diff/v4.0-beta1/Readme-CN.md)”。极少量接口的变更可能影响到已开发的应用(使用API 9或更早版本API开发的应用),变更影响的说明和接口的适配指导请参见“[changelogs](https://gitee.com/openharmony/docs/blob/OpenHarmony-4.0-Beta1/zh-cn/release-notes/changelogs/v4.0-beta2/Readme-CN.md)”。
### 特性变更
详见[版本概述](#版本概述)
### 芯片及开发板适配
芯片及开发板适配状态请参考[SIG-Devboard](https://gitee.com/openharmony/community/blob/master/sig/sig-devboard/sig_devboard_cn.md)信息。
### Samples
**表3** 新增Samples
| 子系统 | 名称 | 简介 | 开发语言 |
| -------- | -------- | -------- | -------- |
| 网络与连接 | [上传和下载](https://gitee.com/openharmony/applications_app_samples/tree/OpenHarmony-4.0-Beta2/code/BasicFeature/Connectivity/UploadAndDownLoad) | 本示例使用\@ohos.request接口创建上传和下载任务,实现上传、下载功能,hfs作为服务器,实现了文件的上传和下载和任务的查询功能。 | ArkTS |
| 文件管理 | [应用接入数据备份恢复](https://gitee.com/openharmony/applications_app_samples/tree/OpenHarmony-4.0-Beta2/code/BasicFeature/FileManagement/FileBackupExtension)<br/>(Full SDK) | 应用接入数据备份恢复需要通过配置BackupExtensionAbility实现。<br/>BackupExtensionAbility,是Stage模型中扩展组件ExtensionAbility的派生类。开发者可以通过修改配置文件定制备份恢复框架的行为,包括是否允许备份恢复,备份哪些文件等。<br/>本sample主要给备份流程提供应用,用于生成数据和显示数据。 | ArkTS |
| 事件通知 | [自定义通知角标](https://gitee.com/openharmony/applications_app_samples/tree/OpenHarmony-4.0-Beta2/code/BasicFeature/Notification/CustomNotificationBadge) | 本示例主要展示了设定应用的桌面图标角标的功能,使用\@ohos.notificationManager 接口,进行桌面角标的设置,通知的发送,获取等。 | ArkTS |
| 事件通知 | [自定义通知推送](https://gitee.com/openharmony/applications_app_samples/tree/OpenHarmony-4.0-Beta2/code/BasicFeature/Notification/CustomNotificationPush)<br/>(Full SDK) | 本示例主要展示了通知过滤回调管理的功能,使用\@ohos.notificationManager 接口,进行通知监听回调,决定应用通知是否发送。 | ArkTS |
| NDK | [Native Xcomponent](https://gitee.com/openharmony/applications_app_samples/tree/master/code/BasicFeature/Native/NdkXComponent)<br/>(Native SDK) | 本示例中主要介绍开发者如何使用Native XComponent接口来获取NativeWindow实例、获取布局/事件信息、注册事件回调并通过OpenGL/EGL实现在页面上绘制形状。功能主要包括点击按钮绘制一个五角星,并可以通过点击XComponent区域改变五角星的颜色。 | Native C++ |
| 应用模型 | [数据代理卡片-数据库刷新](https://gitee.com/openharmony/applications_app_samples/tree/OpenHarmony-4.0-Beta2/code/SystemFeature/ApplicationModels/PersistentProxyForm)<br/>(Full SDK) | 本示例主要展示了数据代理卡片的功能,使用\@ohos.application.DataShareExtensionAbility、\@ohos.data.dataShare、\@ohos.data.dataSharePredicates等接口,实现了修改卡片订阅信息后,当rdb数据库中的数据发生变化时,卡片中对应信息也发生相应变化的功能。 | ArkTS |
| 应用模型 | [数据代理卡片-仿push应用刷新](https://gitee.com/openharmony/applications_app_samples/tree/OpenHarmony-4.0-Beta2/code/SystemFeature/ApplicationModels/ProcessProxyForm)<br/>(Full SDK) | 本示例主要展示了使用push应用形式的数据代理卡片功能,使用\@ohos.data.dataShare等接口,实现了数据代理卡片的修改订阅条件功能及卡片的发布数据功能。 | ArkTS |
| 应用模型 | [编辑应用](https://gitee.com/openharmony/applications_app_samples/tree/OpenHarmony-4.0-Beta2/code/SystemFeature/ApplicationModels/Receiver) | 本示例主要实现了基于UIExtension实现简单的分享功能。支持取消分享,点击“返回Share”按钮,返回调用方应用;支持完成分享,点击“留在编辑应用”按钮,留在当前接收分享结果应用。 | ArkTS |
| 应用模型 | [发起分享应用](https://gitee.com/openharmony/applications_app_samples/tree/OpenHarmony-4.0-Beta2/code/SystemFeature/ApplicationModels/Share)<br/>(Full SDK) | 本示例主要实现了点击“分享”按钮发起分享,显示出分享文本应用图标和分享编辑应用图标,点击相对应应用图标可以发起分享并跳转到其对应应用显示。 | ArkTS |
| 应用模型 | [文本应用](https://gitee.com/openharmony/applications_app_samples/tree/OpenHarmony-4.0-Beta2/code/SystemFeature/ApplicationModels/Template)<br/>(Full SDK) | 本示例主要实现了基于UIExtension实现简单的分享功能。支持取消分享,点击“返回Share”按钮,返回调用方应用;支持完成分享,点击“留在文本应用”按钮,留在当前文本应用。 | ArkTS |
请访问[Samples](https://gitee.com/openharmony/applications_app_samples)仓了解更多信息。
## 修复缺陷列表
**表4** 修复缺陷ISSUE列表
| ISSUE单 | 问题描述 |
| -------- | -------- |
| I6U4ZT | 拍照后立刻断电源,图库的第一张图片点击打不开。 |
| I79752 | 中概率由进程com.ohos.smartperf下的.ohos.smartperf线程导致libark_jsruntime.so出现cppcrash。 |
| I79P3K | 低概率由进程com.ohos.callui导致jscrash,栈名:onDestroy。 |
| I79TCB | 低概率由进程com.ohos.note下的VizCompositorTh线程导致libweb_engine.soTh出现cppcrash。 |
| I78CBC | 反复进入某相册的图片宫格浏览界面,导致libace.z.so出现内存泄露。 |
| I78C9W | 反复进入大图浏览界面后返回,导致libace.z.so出现内存泄露。 |
## 遗留缺陷列表
**表5** 遗留缺陷列表
| ISSUE | 问题描述 | 影响 | 计划解决日期 |
| -------- | -------- | -------- | -------- |
| I78CH7 | 反复在dock栏添加/移除应用,导致libace.z.so出现内存泄露。 | 非常用场景,应用重启后泄露问题消失,影响可控。 | 2023年8月30日 |
| I7BF3M | 长时间运行测试,launcher进程概率性出现appfreeze,原因是STRINGID:APPLICATION_BLOCK_INPUT卡在libeventhandler.z.so。 | 该问题不会引起系统重启,整体影响可控。 | 2023年8月30日 |
| I7M51R | 低概率出现进程com.ohos.systemui下的线程render_service出现cppcrash。 | 低概率问题,且render_service进程出现cppcrash后,系统会自动重新启动render_service进程,对业务影响可控。 | 2023年8月30日 |
| I7L2CF | SystemUI内存泄漏:反复执行下拉任务栏操作,压力测试执行24小时,泄露60MB。 | 单次执行下拉任务栏操作,泄露量在几KB,影响可控。 | 2023年8月30日 |
\ No newline at end of file
# Readme
- [元能力](js-apidiff-ability.md)
- [帐号](js-apidiff-account.md)
- [AI](js-apidiff-ai.md)
- [应用](js-apidiff-application.md)
- [ArkUI](js-apidiff-arkui.md)
- [电源管理](js-apidiff-battery.md)
- [包管理](js-apidiff-bundle.md)
- [网络与通信](js-apidiff-communication.md)
- [语言编译器运行时](js-apidiff-compiler-and-runtime.md)
- [定制](js-apidiff-customization.md)
- [DFX](js-apidiff-dfx.md)
- [分布式数据管理](js-apidiff-distributed-data.md)
- [分布式硬件](js-apidiff-distributed-hardware.md)
- [上传下载](js-apidiff-download-upload.md)
- [驱动](js-apidiff-driver.md)
- [文件管理](js-apidiff-file-management.md)
- [位置服务](js-apidiff-geolocation.md)
- [全球化](js-apidiff-global.md)
- [Misc软件](js-apidiff-misc.md)
- [MSDP](js-apidiff-msdp.md)
- [多模输入](js-apidiff-multi-modal-input.md)
- [媒体](js-apidiff-multimedia.md)
- [事件通知](js-apidiff-notification.md)
- [资源调度](js-apidiff-resource-scheduler.md)
- [安全](js-apidiff-security.md)
- [泛Sensor](js-apidiff-sensor.md)
- [启动](js-apidiff-start-up.md)
- [电话服务](js-apidiff-telephony.md)
- [测试框架](js-apidiff-unitest.md)
- [USB](js-apidiff-usb.md)
- [Web](js-apidiff-web.md)
- [窗口](js-apidiff-window.md)
因为 它太大了无法显示 source diff 。你可以改为 查看blob
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|新增|NA|类名:AuthorizationExtensionAbility;<br>方法or属性:onStartAuthorization(request: AuthorizationRequest, callback: AuthorizationCallback): void;|@ohos.account.appAccount.AuthorizationExtensionAbility.d.ts|
|新增|NA|类名:AuthorizationRequest;<br>方法or属性:readonly callerUid: number;|@ohos.account.appAccount.AuthorizationExtensionAbility.d.ts|
|新增|NA|类名:AuthorizationRequest;<br>方法or属性:readonly parameters: appAccount.AccountCapabilityRequest;|@ohos.account.appAccount.AuthorizationExtensionAbility.d.ts|
|新增|NA|类名:AuthorizationCallback;<br>方法or属性:onResult: AsyncCallback\<appAccount.AccountCapabilityResponse, { [key: string]: object }>;|@ohos.account.appAccount.AuthorizationExtensionAbility.d.ts|
|新增|NA|类名:AccountCapabilityType;<br>方法or属性:AUTHORIZATION = 1|@ohos.account.appAccount.d.ts|
|新增|NA|类名:AccountCapabilityProvider;<br>方法or属性:readonly capabilityType: AccountCapabilityType;|@ohos.account.appAccount.d.ts|
|新增|NA|类名:AccountCapabilityProvider;<br>方法or属性:constructor(capabilityType: AccountCapabilityType);|@ohos.account.appAccount.d.ts|
|新增|NA|类名:AuthorizationProvider;<br>方法or属性:constructor(info: AuthorizationProviderInfo);|@ohos.account.appAccount.d.ts|
|新增|NA|类名:AuthorizationProviderInfo;<br>方法or属性:readonly bundleName: string;|@ohos.account.appAccount.d.ts|
|新增|NA|类名:AuthorizationProviderInfo;<br>方法or属性:readonly abilityName: string;|@ohos.account.appAccount.d.ts|
|新增|NA|类名:AccountCapabilityRequest;<br>方法or属性:constructor(provider: AccountCapabilityProvider);|@ohos.account.appAccount.d.ts|
|新增|NA|类名:AccountCapabilityResponse;<br>方法or属性:readonly request: AccountCapabilityRequest;|@ohos.account.appAccount.d.ts|
|新增|NA|类名:AccountCapabilityResponse;<br>方法or属性:constructor(request: AccountCapabilityRequest);|@ohos.account.appAccount.d.ts|
|新增|NA|类名:AccountCapabilityScheduler;<br>方法or属性:executeRequest(<br> request: AccountCapabilityRequest,<br> callback: AsyncCallback\<AccountCapabilityResponse, { [key: string]: object }><br> ): void;|@ohos.account.appAccount.d.ts|
|新增|NA|类名:AccountCapabilityScheduler;<br>方法or属性:executeRequest(request: AccountCapabilityRequest): Promise\<AccountCapabilityResponse>;|@ohos.account.appAccount.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|新增|NA|类名:mindSporeLite;<br>方法or属性:function loadModelFromFile(<br> model: string,<br> context?: Context): Promise\<Model>;|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:mindSporeLite;<br>方法or属性:function loadModelFromFile(<br> model: string, callback: Callback\<Model>): void;|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:mindSporeLite;<br>方法or属性:function loadModelFromFile(<br> model: string,<br> context: Context, callback: Callback\<Model>): void;|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:mindSporeLite;<br>方法or属性:function loadModelFromBuffer(<br> model: ArrayBuffer,<br> context?: Context): Promise\<Model>;|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:mindSporeLite;<br>方法or属性:function loadModelFromBuffer(<br> model: ArrayBuffer, callback: Callback\<Model>): void;|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:mindSporeLite;<br>方法or属性:function loadModelFromBuffer(<br> model: ArrayBuffer,<br> context: Context, callback: Callback\<Model>): void;|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:mindSporeLite;<br>方法or属性:function loadModelFromFd(<br> model: number,<br> context?: Context): Promise\<Model>;|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:mindSporeLite;<br>方法or属性:function loadModelFromFd(<br> model: number, callback: Callback\<Model>): void;|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:mindSporeLite;<br>方法or属性:function loadModelFromFd(<br> model: number,<br> context: Context, callback: Callback\<Model>): void;|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:Model;<br>方法or属性:getInputs(): MSTensor[];|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:Model;<br>方法or属性:predict(inputs: MSTensor[], callback: Callback\<MSTensor[]>): void;|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:Model;<br>方法or属性:predict(inputs: MSTensor[]): Promise\<MSTensor[]>;|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:Model;<br>方法or属性:resize(inputs: MSTensor[], dims: Array\<Array\<number>>): boolean;|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:Context;<br>方法or属性:target?: string[];|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:Context;<br>方法or属性:cpu?: CpuDevice;|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:Context;<br>方法or属性:nnrt?: NNRTDevice;|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:CpuDevice;<br>方法or属性:threadNum?: number;|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:CpuDevice;<br>方法or属性:threadAffinityMode?: ThreadAffinityMode;|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:CpuDevice;<br>方法or属性:threadAffinityCoreList?: number[];|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:CpuDevice;<br>方法or属性:precisionMode?: string;|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:ThreadAffinityMode;<br>方法or属性:NO_AFFINITIES = 0|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:ThreadAffinityMode;<br>方法or属性:BIG_CORES_FIRST = 1|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:ThreadAffinityMode;<br>方法or属性:LITTLE_CORES_FIRST = 2|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:MSTensor;<br>方法or属性:name: string;|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:MSTensor;<br>方法or属性:shape: number[];|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:MSTensor;<br>方法or属性:elementNum: number;|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:MSTensor;<br>方法or属性:dataSize: number;|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:MSTensor;<br>方法or属性:dtype: DataType;|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:MSTensor;<br>方法or属性:format: Format;|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:MSTensor;<br>方法or属性:getData(): ArrayBuffer;|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:MSTensor;<br>方法or属性:setData(inputArray: ArrayBuffer): void;|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:DataType;<br>方法or属性:TYPE_UNKNOWN = 0|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:DataType;<br>方法or属性:NUMBER_TYPE_INT8 = 32|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:DataType;<br>方法or属性:NUMBER_TYPE_INT16 = 33|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:DataType;<br>方法or属性:NUMBER_TYPE_INT32 = 34|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:DataType;<br>方法or属性:NUMBER_TYPE_INT64 = 35|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:DataType;<br>方法or属性:NUMBER_TYPE_UINT8 = 37|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:DataType;<br>方法or属性:NUMBER_TYPE_UINT16 = 38|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:DataType;<br>方法or属性:NUMBER_TYPE_UINT32 = 39|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:DataType;<br>方法or属性:NUMBER_TYPE_UINT64 = 40|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:DataType;<br>方法or属性:NUMBER_TYPE_FLOAT16 = 42|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:DataType;<br>方法or属性:NUMBER_TYPE_FLOAT32 = 43|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:DataType;<br>方法or属性:NUMBER_TYPE_FLOAT64 = 44|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:Format;<br>方法or属性:DEFAULT_FORMAT = -1|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:Format;<br>方法or属性:NCHW = 0|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:Format;<br>方法or属性:NHWC = 1|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:Format;<br>方法or属性:NHWC4 = 2|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:Format;<br>方法or属性:HWKC = 3|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:Format;<br>方法or属性:HWCK = 4|@ohos.ai.mindSporeLite.d.ts|
|新增|NA|类名:Format;<br>方法or属性:KCHW = 5|@ohos.ai.mindSporeLite.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|新增|NA|类名:settings;<br>方法or属性:function getValue(context: Context, name: string, callback: AsyncCallback\<string>): void;|@ohos.settings.d.ts|
|新增|NA|类名:settings;<br>方法or属性:function getValue(context: Context, name: string): Promise\<string>;|@ohos.settings.d.ts|
|新增|NA|类名:settings;<br>方法or属性:function setValue(context: Context, name: string, value: string, callback: AsyncCallback\<boolean>): void;|@ohos.settings.d.ts|
|新增|NA|类名:settings;<br>方法or属性:function setValue(context: Context, name: string, value: string): Promise\<boolean>;|@ohos.settings.d.ts|
|新增|NA|类名:settings;<br>方法or属性:function getValueSync(context: Context, name: string, defValue: string): string;|@ohos.settings.d.ts|
|新增|NA|类名:settings;<br>方法or属性:function setValueSync(context: Context, name: string, value: string): boolean;|@ohos.settings.d.ts|
|废弃版本有变化|类名:settings;<br>方法or属性:function getURI(name: string): Promise\<object>;<br>旧版本信息:|类名:settings;<br>方法or属性:function getURI(name: string): Promise\<object>;<br>新版本信息:9<br>代替接口:|@ohos.settings.d.ts|
|废弃版本有变化|类名:settings;<br>方法or属性:function getValue(dataAbilityHelper: DataAbilityHelper, name: string): Promise\<object>;<br>旧版本信息:|类名:settings;<br>方法or属性:function getValue(dataAbilityHelper: DataAbilityHelper, name: string): Promise\<object>;<br>新版本信息:9<br>代替接口: ohos.settings#getValue|@ohos.settings.d.ts|
|废弃版本有变化|类名:settings;<br>方法or属性:function setValue(dataAbilityHelper: DataAbilityHelper, name: string, value: object): Promise\<boolean>;<br>旧版本信息:|类名:settings;<br>方法or属性:function setValue(dataAbilityHelper: DataAbilityHelper, name: string, value: object): Promise\<boolean>;<br>新版本信息:9<br>代替接口: ohos.settings#setValue|@ohos.settings.d.ts|
|新增(错误码)|类名:call;<br>方法or属性:function makeCall(phoneNumber: string): Promise\<void>;<br>旧版本信息:|类名:call;<br>方法or属性:function makeCall(phoneNumber: string): Promise\<void>;<br>新版本信息:401,8300001,8300002,8300003,8300999|@ohos.telephony.call.d.ts|
|访问级别有变化|类名:settings;<br>方法or属性:function setValue(dataAbilityHelper: DataAbilityHelper, name: string, value: object): Promise\<boolean>;<br>旧版本信息:|类名:settings;<br>方法or属性:function setValue(dataAbilityHelper: DataAbilityHelper, name: string, value: object): Promise\<boolean>;<br>新版本信息:systemapi|@ohos.settings.d.ts|
|model有变化|类名:settings;<br>方法or属性:function getValue(dataAbilityHelper: DataAbilityHelper, name: string, callback: AsyncCallback\<object>): void;<br>旧版本信息:FAModelOnly|类名:settings;<br>方法or属性:function getValue(dataAbilityHelper: DataAbilityHelper, name: string, callback: AsyncCallback\<object>): void;<br>新版本信息:famodelonly|@ohos.settings.d.ts|
|model有变化|类名:settings;<br>方法or属性:function getValue(dataAbilityHelper: DataAbilityHelper, name: string): Promise\<object>;<br>旧版本信息:|类名:settings;<br>方法or属性:function getValue(dataAbilityHelper: DataAbilityHelper, name: string): Promise\<object>;<br>新版本信息:famodelonly|@ohos.settings.d.ts|
|model有变化|类名:settings;<br>方法or属性:function setValue(dataAbilityHelper: DataAbilityHelper, name: string, value: object, callback: AsyncCallback\<boolean>): void;<br>旧版本信息:FAModelOnly|类名:settings;<br>方法or属性:function setValue(dataAbilityHelper: DataAbilityHelper, name: string, value: object, callback: AsyncCallback\<boolean>): void;<br>新版本信息:famodelonly|@ohos.settings.d.ts|
|model有变化|类名:settings;<br>方法or属性:function setValue(dataAbilityHelper: DataAbilityHelper, name: string, value: object): Promise\<boolean>;<br>旧版本信息:|类名:settings;<br>方法or属性:function setValue(dataAbilityHelper: DataAbilityHelper, name: string, value: object): Promise\<boolean>;<br>新版本信息:famodelonly|@ohos.settings.d.ts|
|model有变化|类名:settings;<br>方法or属性:function getValueSync(dataAbilityHelper: DataAbilityHelper, name: string, defValue: string): string;<br>旧版本信息:FAModelOnly|类名:settings;<br>方法or属性:function getValueSync(dataAbilityHelper: DataAbilityHelper, name: string, defValue: string): string;<br>新版本信息:famodelonly|@ohos.settings.d.ts|
|model有变化|类名:settings;<br>方法or属性:function setValueSync(dataAbilityHelper: DataAbilityHelper, name: string, value: string): boolean;<br>旧版本信息:FAModelOnly|类名:settings;<br>方法or属性:function setValueSync(dataAbilityHelper: DataAbilityHelper, name: string, value: string): boolean;<br>新版本信息:famodelonly|@ohos.settings.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|新增|NA|类名:NamedRouterOptions;<br>方法or属性:params?: Object;|@ohos.router.d.ts|
|新增|NA|类名:dragController;<br>方法or属性:function executeDrag(custom: CustomBuilder \| DragItemInfo, dragInfo: DragInfo, callback: AsyncCallback\<{<br> event: DragEvent, extraParams: string<br> }>): void;|@ohos.arkui.dragController.d.ts|
|新增|NA|类名:dragController;<br>方法or属性:function executeDrag(custom: CustomBuilder \| DragItemInfo, dragInfo: DragInfo): Promise\<{<br> event: DragEvent, extraParams: string<br> }>;|@ohos.arkui.dragController.d.ts|
|新增|NA|类名:DragInfo;<br>方法or属性:pointerId: number;|@ohos.arkui.dragController.d.ts|
|新增|NA|类名:DragInfo;<br>方法or属性:data?: UDMF.UnifiedData;|@ohos.arkui.dragController.d.ts|
|新增|NA|类名:DragInfo;<br>方法or属性:extraParams?: string;|@ohos.arkui.dragController.d.ts|
|新增|NA|类名:LayeredDrawableDescriptor;<br>方法or属性:static getMaskClipPath(): string;|@ohos.arkui.drawableDescriptor.d.ts|
|新增|NA|类名:inspector;<br>方法or属性:function createComponentObserver(id: string): ComponentObserver;|@ohos.arkui.inspector.d.ts|
|新增|NA|类名:ComponentObserver;<br>方法or属性:on(type: 'layout', callback: () => void): void;|@ohos.arkui.inspector.d.ts|
|新增|NA|类名:ComponentObserver;<br>方法or属性:on(type: 'draw', callback: () => void): void;|@ohos.arkui.inspector.d.ts|
|新增|NA|类名:ComponentObserver;<br>方法or属性:off(type: 'layout', callback?: () => void): void;|@ohos.arkui.inspector.d.ts|
|新增|NA|类名:ComponentObserver;<br>方法or属性:off(type: 'draw', callback?: () => void): void;|@ohos.arkui.inspector.d.ts|
|新增|NA|类名:performanceMonitor;<br>方法or属性:function begin(scene: string, startInputType: ActionType, note?: string): void;|@ohos.arkui.performanceMonitor.d.ts|
|新增|NA|类名:performanceMonitor;<br>方法or属性:function end(scene: string): void;|@ohos.arkui.performanceMonitor.d.ts|
|新增|NA|类名:ActionType;<br>方法or属性:LAST_DOWN = 0|@ohos.arkui.performanceMonitor.d.ts|
|新增|NA|类名:ActionType;<br>方法or属性:LAST_UP = 1|@ohos.arkui.performanceMonitor.d.ts|
|新增|NA|类名:ActionType;<br>方法or属性:FIRST_MOVE = 2|@ohos.arkui.performanceMonitor.d.ts|
|新增|NA|类名:Font;<br>方法or属性:registerFont(options: font.FontOptions): void;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:Font;<br>方法or属性:getSystemFontList(): Array\<string>;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:Font;<br>方法or属性:getFontByName(fontName: string): font.FontInfo;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:MediaQuery;<br>方法or属性:matchMediaSync(condition: string): mediaQuery.MediaQueryListener;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:UIInspector;<br>方法or属性:createComponentObserver(id: string): inspector.ComponentObserver;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:Router;<br>方法or属性:pushUrl(options: router.RouterOptions, callback: AsyncCallback\<void>): void;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:Router;<br>方法or属性:pushUrl(options: router.RouterOptions): Promise\<void>;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:Router;<br>方法or属性:pushUrl(options: router.RouterOptions, mode: router.RouterMode, callback: AsyncCallback\<void>): void;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:Router;<br>方法or属性:pushUrl(options: router.RouterOptions, mode: router.RouterMode): Promise\<void>;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:Router;<br>方法or属性:replaceUrl(options: router.RouterOptions, callback: AsyncCallback\<void>): void;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:Router;<br>方法or属性:replaceUrl(options: router.RouterOptions): Promise\<void>;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:Router;<br>方法or属性:replaceUrl(options: router.RouterOptions, mode: router.RouterMode, callback: AsyncCallback\<void>): void;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:Router;<br>方法or属性:replaceUrl(options: router.RouterOptions, mode: router.RouterMode): Promise\<void>;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:Router;<br>方法or属性:back(options: router.RouterOptions): void;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:Router;<br>方法or属性:clear(): void;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:Router;<br>方法or属性:getLength(): string;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:Router;<br>方法or属性:getState(): router.RouterState;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:Router;<br>方法or属性:showAlertBeforeBackPage(options: router.EnableAlertOptions): void;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:Router;<br>方法or属性:hideAlertBeforeBackPage(): void;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:Router;<br>方法or属性:getParams(): Object;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:Router;<br>方法or属性:pushNamedRoute(options: router.NamedRouterOptions, callback: AsyncCallback\<void>): void;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:Router;<br>方法or属性:pushNamedRoute(options: router.NamedRouterOptions): Promise\<void>;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:Router;<br>方法or属性:pushNamedRoute(options: router.NamedRouterOptions, mode: router.RouterMode, callback: AsyncCallback\<void>): void;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:Router;<br>方法or属性:pushNamedRoute(options: router.NamedRouterOptions, mode: router.RouterMode): Promise\<void>;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:Router;<br>方法or属性:replaceNamedRoute(options: router.NamedRouterOptions, callback: AsyncCallback\<void>): void;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:Router;<br>方法or属性:replaceNamedRoute(options: router.NamedRouterOptions): Promise\<void>;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:Router;<br>方法or属性:replaceNamedRoute(options: router.NamedRouterOptions, mode: router.RouterMode, callback: AsyncCallback\<void>): void;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:Router;<br>方法or属性:replaceNamedRoute(options: router.NamedRouterOptions, mode: router.RouterMode): Promise\<void>;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:PromptAction;<br>方法or属性:showToast(options: promptAction.ShowToastOptions): void;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:PromptAction;<br>方法or属性:showDialog(options: promptAction.ShowDialogOptions, callback: AsyncCallback\<promptAction.ShowDialogSuccessResponse>): void;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:PromptAction;<br>方法or属性:showDialog(options: promptAction.ShowDialogOptions): Promise\<promptAction.ShowDialogSuccessResponse>;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:PromptAction;<br>方法or属性:showActionMenu(options: promptAction.ActionMenuOptions, callback: promptAction.ActionMenuSuccessResponse): void;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:PromptAction;<br>方法or属性:showActionMenu(options: promptAction.ActionMenuOptions): Promise\<promptAction.ActionMenuSuccessResponse>;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:ComponentUtils;<br>方法or属性:getRectangleById(id: string): componentUtils.ComponentInfo;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:UIContext;<br>方法or属性:getFont(): Font;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:UIContext;<br>方法or属性:getMediaQuery(): MediaQuery;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:UIContext;<br>方法or属性:getUIInspector(): UIInspector;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:UIContext;<br>方法or属性:getRouter(): Router;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:UIContext;<br>方法or属性:getPromptAction(): PromptAction;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:UIContext;<br>方法or属性:getComponentUtils(): ComponentUtils;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:UIContext;<br>方法or属性:createAnimator(options: AnimatorOptions): AnimatorResult;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:UIContext;<br>方法or属性:animateTo(value: AnimateParam, event: () => void): void;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:UIContext;<br>方法or属性:showAlertDialog(options: AlertDialogParamWithConfirm \| AlertDialogParamWithButtons): void;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:UIContext;<br>方法or属性:showActionSheet(value: ActionSheetOptions): void;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:UIContext;<br>方法or属性:showDatePickerDialog(options: DatePickerDialogOptions): void;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:UIContext;<br>方法or属性:showTimePickerDialog(options: TimePickerDialogOptions): void;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:UIContext;<br>方法or属性:showTextPickerDialog(options: TextPickerDialogOptions): void;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:UIContext;<br>方法or属性:runScopedTask(callback: () => void): void;|@ohos.arkui.UIContext.d.ts|
|新增|NA|类名:componentUtils;<br>方法or属性:type Matrix4Result = [<br> number,<br> number,<br> number,<br> number,<br> number,<br> number,<br> number,<br> number,<br> number,<br> number,<br> number,<br> number,<br> number,<br> number,<br> number,<br> number,<br> ];|@ohos.componentUtils.d.ts|
|新增|NA|类名:componentUtils;<br>方法or属性:function getRectangleById(id: string): ComponentInfo;|@ohos.componentUtils.d.ts|
|新增|NA|类名:ComponentInfo;<br>方法or属性:size: Size|@ohos.componentUtils.d.ts|
|新增|NA|类名:ComponentInfo;<br>方法or属性:localOffset: Offset|@ohos.componentUtils.d.ts|
|新增|NA|类名:ComponentInfo;<br>方法or属性:windowOffset: Offset|@ohos.componentUtils.d.ts|
|新增|NA|类名:ComponentInfo;<br>方法or属性:screenOffset: Offset|@ohos.componentUtils.d.ts|
|新增|NA|类名:ComponentInfo;<br>方法or属性:translate: TranslateResult|@ohos.componentUtils.d.ts|
|新增|NA|类名:ComponentInfo;<br>方法or属性:scale: ScaleResult|@ohos.componentUtils.d.ts|
|新增|NA|类名:ComponentInfo;<br>方法or属性:rotate: RotateResult|@ohos.componentUtils.d.ts|
|新增|NA|类名:ComponentInfo;<br>方法or属性:transform: Matrix4Result|@ohos.componentUtils.d.ts|
|新增|NA|类名:Size;<br>方法or属性:width: number|@ohos.componentUtils.d.ts|
|新增|NA|类名:Size;<br>方法or属性:height: number|@ohos.componentUtils.d.ts|
|新增|NA|类名:Offset;<br>方法or属性:x: number|@ohos.componentUtils.d.ts|
|新增|NA|类名:TranslateResult;<br>方法or属性:x: number|@ohos.componentUtils.d.ts|
|新增|NA|类名:ScaleResult;<br>方法or属性:x: number|@ohos.componentUtils.d.ts|
|新增|NA|类名:RotateResult;<br>方法or属性:x: number|@ohos.componentUtils.d.ts|
|新增|NA|类名:Offset;<br>方法or属性:y: number|@ohos.componentUtils.d.ts|
|新增|NA|类名:TranslateResult;<br>方法or属性:y: number|@ohos.componentUtils.d.ts|
|新增|NA|类名:ScaleResult;<br>方法or属性:y: number|@ohos.componentUtils.d.ts|
|新增|NA|类名:RotateResult;<br>方法or属性:y: number|@ohos.componentUtils.d.ts|
|新增|NA|类名:TranslateResult;<br>方法or属性:z: number|@ohos.componentUtils.d.ts|
|新增|NA|类名:ScaleResult;<br>方法or属性:z: number|@ohos.componentUtils.d.ts|
|新增|NA|类名:RotateResult;<br>方法or属性:z: number|@ohos.componentUtils.d.ts|
|新增|NA|类名:ScaleResult;<br>方法or属性:centerX: number|@ohos.componentUtils.d.ts|
|新增|NA|类名:RotateResult;<br>方法or属性:centerX: number|@ohos.componentUtils.d.ts|
|新增|NA|类名:ScaleResult;<br>方法or属性:centerY: number|@ohos.componentUtils.d.ts|
|新增|NA|类名:RotateResult;<br>方法or属性:centerY: number|@ohos.componentUtils.d.ts|
|新增|NA|类名:RotateResult;<br>方法or属性:angle: number|@ohos.componentUtils.d.ts|
|新增|NA|类名:curves;<br>方法or属性:function customCurve(interpolate: (fraction: number) => number): ICurve;|@ohos.curves.d.ts|
|新增|NA|类名:font;<br>方法or属性:function getSystemFontList(): Array\<string>;|@ohos.font.d.ts|
|新增|NA|类名:font;<br>方法or属性:function getFontByName(fontName: string): FontInfo;|@ohos.font.d.ts|
|新增|NA|类名:FontInfo;<br>方法or属性:path: string;|@ohos.font.d.ts|
|新增|NA|类名:FontInfo;<br>方法or属性:postScriptName: string;|@ohos.font.d.ts|
|新增|NA|类名:FontInfo;<br>方法or属性:fullName: string;|@ohos.font.d.ts|
|新增|NA|类名:FontInfo;<br>方法or属性:family: string;|@ohos.font.d.ts|
|新增|NA|类名:FontInfo;<br>方法or属性:subfamily: string;|@ohos.font.d.ts|
|新增|NA|类名:FontInfo;<br>方法or属性:weight: number;|@ohos.font.d.ts|
|新增|NA|类名:FontInfo;<br>方法or属性:width: number;|@ohos.font.d.ts|
|新增|NA|类名:FontInfo;<br>方法or属性:italic: boolean;|@ohos.font.d.ts|
|新增|NA|类名:FontInfo;<br>方法or属性:monoSpace: boolean;|@ohos.font.d.ts|
|新增|NA|类名:FontInfo;<br>方法or属性:symbolic: boolean;|@ohos.font.d.ts|
|新增|NA|类名:router;<br>方法or属性:function pushNamedRoute(options: NamedRouterOptions, callback: AsyncCallback\<void>): void;|@ohos.router.d.ts|
|新增|NA|类名:router;<br>方法or属性:function pushNamedRoute(options: NamedRouterOptions): Promise\<void>;|@ohos.router.d.ts|
|新增|NA|类名:router;<br>方法or属性:function pushNamedRoute(options: NamedRouterOptions, mode: RouterMode, callback: AsyncCallback\<void>): void;|@ohos.router.d.ts|
|新增|NA|类名:router;<br>方法or属性:function pushNamedRoute(options: NamedRouterOptions, mode: RouterMode): Promise\<void>;|@ohos.router.d.ts|
|新增|NA|类名:router;<br>方法or属性:function replaceNamedRoute(options: NamedRouterOptions, callback: AsyncCallback\<void>): void;|@ohos.router.d.ts|
|新增|NA|类名:router;<br>方法or属性:function replaceNamedRoute(options: NamedRouterOptions): Promise\<void>;|@ohos.router.d.ts|
|新增|NA|类名:router;<br>方法or属性:function replaceNamedRoute(options: NamedRouterOptions, mode: RouterMode, callback: AsyncCallback\<void>): void;|@ohos.router.d.ts|
|新增|NA|类名:router;<br>方法or属性:function replaceNamedRoute(options: NamedRouterOptions, mode: RouterMode): Promise\<void>;|@ohos.router.d.ts|
|新增|NA|类名:NamedRouterOptions;<br>方法or属性:name: string;|@ohos.router.d.ts|
|废弃版本有变化|类名:matrix4;<br>方法or属性:function copy(): Matrix4Transit;<br>旧版本信息:|类名:matrix4;<br>方法or属性:function copy(): Matrix4Transit;<br>新版本信息:10<br>代替接口:|@ohos.matrix4.d.ts|
|废弃版本有变化|类名:matrix4;<br>方法or属性:function invert(): Matrix4Transit;<br>旧版本信息:|类名:matrix4;<br>方法or属性:function invert(): Matrix4Transit;<br>新版本信息:10<br>代替接口:|@ohos.matrix4.d.ts|
|废弃版本有变化|类名:matrix4;<br>方法or属性:function combine(options: Matrix4Transit): Matrix4Transit;<br>旧版本信息:|类名:matrix4;<br>方法or属性:function combine(options: Matrix4Transit): Matrix4Transit;<br>新版本信息:10<br>代替接口:|@ohos.matrix4.d.ts|
|废弃版本有变化|类名:matrix4;<br>方法or属性:function translate(options: TranslateOption): Matrix4Transit;<br>旧版本信息:|类名:matrix4;<br>方法or属性:function translate(options: TranslateOption): Matrix4Transit;<br>新版本信息:10<br>代替接口:|@ohos.matrix4.d.ts|
|废弃版本有变化|类名:matrix4;<br>方法or属性:function scale(options: ScaleOption): Matrix4Transit;<br>旧版本信息:|类名:matrix4;<br>方法or属性:function scale(options: ScaleOption): Matrix4Transit;<br>新版本信息:10<br>代替接口:|@ohos.matrix4.d.ts|
|废弃版本有变化|类名:matrix4;<br>方法or属性:function rotate(options: RotateOption): Matrix4Transit;<br>旧版本信息:|类名:matrix4;<br>方法or属性:function rotate(options: RotateOption): Matrix4Transit;<br>新版本信息:10<br>代替接口:|@ohos.matrix4.d.ts|
|废弃版本有变化|类名:matrix4;<br>方法or属性:function transformPoint(options: [number, number]): [number, number];<br>旧版本信息:|类名:matrix4;<br>方法or属性:function transformPoint(options: [number, number]): [number, number];<br>新版本信息:10<br>代替接口:|@ohos.matrix4.d.ts|
|废弃版本有变化|类名:ClickEvent;<br>方法or属性:screenX: number;<br>旧版本信息:|类名:ClickEvent;<br>方法or属性:screenX: number;<br>新版本信息:10<br>代替接口: ClickEvent#windowX|common.d.ts|
|废弃版本有变化|类名:MouseEvent;<br>方法or属性:screenX: number;<br>旧版本信息:|类名:MouseEvent;<br>方法or属性:screenX: number;<br>新版本信息:10<br>代替接口: MouseEvent#windowX|common.d.ts|
|废弃版本有变化|类名:TouchObject;<br>方法or属性:screenX: number;<br>旧版本信息:|类名:TouchObject;<br>方法or属性:screenX: number;<br>新版本信息:10<br>代替接口: TouchObject#windowX|common.d.ts|
|废弃版本有变化|类名:ClickEvent;<br>方法or属性:screenY: number;<br>旧版本信息:|类名:ClickEvent;<br>方法or属性:screenY: number;<br>新版本信息:10<br>代替接口: ClickEvent#windowY|common.d.ts|
|废弃版本有变化|类名:MouseEvent;<br>方法or属性:screenY: number;<br>旧版本信息:|类名:MouseEvent;<br>方法or属性:screenY: number;<br>新版本信息:10<br>代替接口: MouseEvent#windowY|common.d.ts|
|废弃版本有变化|类名:TouchObject;<br>方法or属性:screenY: number;<br>旧版本信息:|类名:TouchObject;<br>方法or属性:screenY: number;<br>新版本信息:10<br>代替接口: TouchObject#windowY|common.d.ts|
|废弃版本有变化|类名:DragEvent;<br>方法or属性:getX(): number;<br>旧版本信息:|类名:DragEvent;<br>方法or属性:getX(): number;<br>新版本信息:10<br>代替接口: DragEvent#getWindowX()|common.d.ts|
|废弃版本有变化|类名:DragEvent;<br>方法or属性:getY(): number;<br>旧版本信息:|类名:DragEvent;<br>方法or属性:getY(): number;<br>新版本信息:10<br>代替接口: DragEvent#getWindowY()|common.d.ts|
|废弃版本有变化|类名:AppStorage;<br>方法or属性:static Link(propName: string): any;<br>旧版本信息:|类名:AppStorage;<br>方法or属性:static Link(propName: string): any;<br>新版本信息:10<br>代替接口: AppStorage#link|common_ts_ets_api.d.ts|
|废弃版本有变化|类名:AppStorage;<br>方法or属性:static SetAndLink\<T>(propName: string, defaultValue: T): SubscribedAbstractProperty\<T>;<br>旧版本信息:|类名:AppStorage;<br>方法or属性:static SetAndLink\<T>(propName: string, defaultValue: T): SubscribedAbstractProperty\<T>;<br>新版本信息:10<br>代替接口: AppStorage#setAndLink|common_ts_ets_api.d.ts|
|废弃版本有变化|类名:AppStorage;<br>方法or属性:static Prop(propName: string): any;<br>旧版本信息:|类名:AppStorage;<br>方法or属性:static Prop(propName: string): any;<br>新版本信息:10<br>代替接口: AppStorage#prop|common_ts_ets_api.d.ts|
|废弃版本有变化|类名:AppStorage;<br>方法or属性:static SetAndProp\<S>(propName: string, defaultValue: S): SubscribedAbstractProperty\<S>;<br>旧版本信息:|类名:AppStorage;<br>方法or属性:static SetAndProp\<S>(propName: string, defaultValue: S): SubscribedAbstractProperty\<S>;<br>新版本信息:10<br>代替接口: AppStorage#setAndProp|common_ts_ets_api.d.ts|
|废弃版本有变化|类名:AppStorage;<br>方法or属性:static Has(propName: string): boolean;<br>旧版本信息:|类名:AppStorage;<br>方法or属性:static Has(propName: string): boolean;<br>新版本信息:10<br>代替接口: AppStorage#has|common_ts_ets_api.d.ts|
|废弃版本有变化|类名:AppStorage;<br>方法or属性:static Get\<T>(propName: string): T \| undefined;<br>旧版本信息:|类名:AppStorage;<br>方法or属性:static Get\<T>(propName: string): T \| undefined;<br>新版本信息:10<br>代替接口: AppStorage#get|common_ts_ets_api.d.ts|
|废弃版本有变化|类名:AppStorage;<br>方法or属性:static Set\<T>(propName: string, newValue: T): boolean;<br>旧版本信息:|类名:AppStorage;<br>方法or属性:static Set\<T>(propName: string, newValue: T): boolean;<br>新版本信息:10<br>代替接口: AppStorage#set|common_ts_ets_api.d.ts|
|废弃版本有变化|类名:AppStorage;<br>方法or属性:static SetOrCreate\<T>(propName: string, newValue: T): void;<br>旧版本信息:|类名:AppStorage;<br>方法or属性:static SetOrCreate\<T>(propName: string, newValue: T): void;<br>新版本信息:10<br>代替接口: AppStorage#setOrCreate|common_ts_ets_api.d.ts|
|废弃版本有变化|类名:AppStorage;<br>方法or属性:static Delete(propName: string): boolean;<br>旧版本信息:|类名:AppStorage;<br>方法or属性:static Delete(propName: string): boolean;<br>新版本信息:10<br>代替接口: AppStorage#delete|common_ts_ets_api.d.ts|
|废弃版本有变化|类名:AppStorage;<br>方法or属性:static Keys(): IterableIterator\<string>;<br>旧版本信息:|类名:AppStorage;<br>方法or属性:static Keys(): IterableIterator\<string>;<br>新版本信息:10<br>代替接口: AppStorage#keys|common_ts_ets_api.d.ts|
|废弃版本有变化|类名:AppStorage;<br>方法or属性:static Clear(): boolean;<br>旧版本信息:|类名:AppStorage;<br>方法or属性:static Clear(): boolean;<br>新版本信息:10<br>代替接口: AppStorage#clear|common_ts_ets_api.d.ts|
|废弃版本有变化|类名:AppStorage;<br>方法or属性:static IsMutable(propName: string): boolean;<br>旧版本信息:|类名:AppStorage;<br>方法or属性:static IsMutable(propName: string): boolean;<br>新版本信息:10<br>代替接口:|common_ts_ets_api.d.ts|
|废弃版本有变化|类名:AppStorage;<br>方法or属性:static Size(): number;<br>旧版本信息:|类名:AppStorage;<br>方法or属性:static Size(): number;<br>新版本信息:10<br>代替接口: AppStorage#size|common_ts_ets_api.d.ts|
|废弃版本有变化|类名:Environment;<br>方法or属性:static EnvProp\<S>(key: string, value: S): boolean;<br>旧版本信息:|类名:Environment;<br>方法or属性:static EnvProp\<S>(key: string, value: S): boolean;<br>新版本信息:10<br>代替接口: Environment#envProp|common_ts_ets_api.d.ts|
|废弃版本有变化|类名:Environment;<br>方法or属性:static EnvProps(<br> props: {<br> key: string;<br> defaultValue: any;<br> }[],<br> ): void;<br>旧版本信息:|类名:Environment;<br>方法or属性:static EnvProps(<br> props: {<br> key: string;<br> defaultValue: any;<br> }[],<br> ): void;<br>新版本信息:10<br>代替接口: Environment#envProps|common_ts_ets_api.d.ts|
|废弃版本有变化|类名:Environment;<br>方法or属性:static Keys(): Array\<string>;<br>旧版本信息:|类名:Environment;<br>方法or属性:static Keys(): Array\<string>;<br>新版本信息:10<br>代替接口: Environment#keys|common_ts_ets_api.d.ts|
|废弃版本有变化|类名:PersistentStorage;<br>方法or属性:static Keys(): Array\<string>;<br>旧版本信息:|类名:PersistentStorage;<br>方法or属性:static Keys(): Array\<string>;<br>新版本信息:10<br>代替接口: PersistentStorage#keys|common_ts_ets_api.d.ts|
|废弃版本有变化|类名:PersistentStorage;<br>方法or属性:static PersistProp\<T>(key: string, defaultValue: T): void;<br>旧版本信息:|类名:PersistentStorage;<br>方法or属性:static PersistProp\<T>(key: string, defaultValue: T): void;<br>新版本信息:10<br>代替接口: PersistentStorage#persistProp|common_ts_ets_api.d.ts|
|废弃版本有变化|类名:PersistentStorage;<br>方法or属性:static DeleteProp(key: string): void;<br>旧版本信息:|类名:PersistentStorage;<br>方法or属性:static DeleteProp(key: string): void;<br>新版本信息:10<br>代替接口: PersistentStorage#deleteProp|common_ts_ets_api.d.ts|
|废弃版本有变化|类名:PersistentStorage;<br>方法or属性:static PersistProps(<br> properties: {<br> key: string;<br> defaultValue: any;<br> }[],<br> ): void;<br>旧版本信息:|类名:PersistentStorage;<br>方法or属性:static PersistProps(<br> properties: {<br> key: string;<br> defaultValue: any;<br> }[],<br> ): void;<br>新版本信息:10<br>代替接口: PersistentStorage#PersistProps|common_ts_ets_api.d.ts|
|废弃版本有变化|类名:LocalStorage;<br>方法or属性:static GetShared(): LocalStorage;<br>旧版本信息:|类名:LocalStorage;<br>方法or属性:static GetShared(): LocalStorage;<br>新版本信息:10<br>代替接口: LocalStorage#getShared|common_ts_ets_api.d.ts|
|废弃版本有变化|类名:ListItemInterface;<br>方法or属性:(value?: string): ListItemAttribute;<br>旧版本信息:|类名:ListItemInterface;<br>方法or属性:(value?: string): ListItemAttribute;<br>新版本信息:10<br>代替接口: listItem/ListItemInterface|list_item.d.ts|
|废弃版本有变化|类名:NavigationAttribute;<br>方法or属性:toolBar(value: object \| CustomBuilder): NavigationAttribute;<br>旧版本信息:|类名:NavigationAttribute;<br>方法or属性:toolBar(value: object \| CustomBuilder): NavigationAttribute;<br>新版本信息:10<br>代替接口: navigation/NavigationAttribute#toolbarConfiguration|navigation.d.ts|
|废弃版本有变化|类名:WebAttribute;<br>方法or属性:password(password: boolean): WebAttribute;<br>旧版本信息:|类名:WebAttribute;<br>方法or属性:password(password: boolean): WebAttribute;<br>新版本信息:10<br>代替接口:|web.d.ts|
|废弃版本有变化|类名:WebAttribute;<br>方法or属性:tableData(tableData: boolean): WebAttribute;<br>旧版本信息:|类名:WebAttribute;<br>方法or属性:tableData(tableData: boolean): WebAttribute;<br>新版本信息:10<br>代替接口:|web.d.ts|
|废弃版本有变化|类名:WebAttribute;<br>方法or属性:wideViewModeAccess(wideViewModeAccess: boolean): WebAttribute;<br>旧版本信息:|类名:WebAttribute;<br>方法or属性:wideViewModeAccess(wideViewModeAccess: boolean): WebAttribute;<br>新版本信息:10<br>代替接口:|web.d.ts|
|访问级别有变化|类名:uiAppearance;<br>方法or属性:declare uiAppearance<br>旧版本信息:|类名:uiAppearance;<br>方法or属性:declare uiAppearance<br>新版本信息:systemapi|@ohos.uiAppearance.d.ts|
|访问级别有变化|类名:DarkMode;<br>方法or属性:enum DarkMode<br>旧版本信息:|类名:DarkMode;<br>方法or属性:enum DarkMode<br>新版本信息:systemapi|@ohos.uiAppearance.d.ts|
|访问级别有变化|类名:DarkMode;<br>方法or属性:ALWAYS_DARK = 0<br>旧版本信息:|类名:DarkMode;<br>方法or属性:ALWAYS_DARK = 0<br>新版本信息:systemapi|@ohos.uiAppearance.d.ts|
|访问级别有变化|类名:DarkMode;<br>方法or属性:ALWAYS_LIGHT = 1<br>旧版本信息:|类名:DarkMode;<br>方法or属性:ALWAYS_LIGHT = 1<br>新版本信息:systemapi|@ohos.uiAppearance.d.ts|
|访问级别有变化|类名:CommonMethod;<br>方法or属性:sphericalEffect(value: number): T;<br>旧版本信息:|类名:CommonMethod;<br>方法or属性:sphericalEffect(value: number): T;<br>新版本信息:systemapi|common.d.ts|
|访问级别有变化|类名:CommonMethod;<br>方法or属性:lightUpEffect(value: number): T;<br>旧版本信息:|类名:CommonMethod;<br>方法or属性:lightUpEffect(value: number): T;<br>新版本信息:systemapi|common.d.ts|
|访问级别有变化|类名:CommonMethod;<br>方法or属性:pixelStretchEffect(options: PixelStretchEffectOptions): T;<br>旧版本信息:|类名:CommonMethod;<br>方法or属性:pixelStretchEffect(options: PixelStretchEffectOptions): T;<br>新版本信息:systemapi|common.d.ts|
|访问级别有变化|类名:ChainEdgeEffect;<br>方法or属性:DEFAULT<br>旧版本信息:|类名:ChainEdgeEffect;<br>方法or属性:DEFAULT<br>新版本信息:systemapi|list.d.ts|
|访问级别有变化|类名:ChainEdgeEffect;<br>方法or属性:STRETCH<br>旧版本信息:|类名:ChainEdgeEffect;<br>方法or属性:STRETCH<br>新版本信息:systemapi|list.d.ts|
|访问级别有变化|类名:ChainAnimationOptions;<br>方法or属性:minSpace: Length;<br>旧版本信息:|类名:ChainAnimationOptions;<br>方法or属性:minSpace: Length;<br>新版本信息:systemapi|list.d.ts|
|访问级别有变化|类名:ChainAnimationOptions;<br>方法or属性:maxSpace: Length;<br>旧版本信息:|类名:ChainAnimationOptions;<br>方法or属性:maxSpace: Length;<br>新版本信息:systemapi|list.d.ts|
|访问级别有变化|类名:ChainAnimationOptions;<br>方法or属性:conductivity?: number;<br>旧版本信息:|类名:ChainAnimationOptions;<br>方法or属性:conductivity?: number;<br>新版本信息:systemapi|list.d.ts|
|访问级别有变化|类名:ChainAnimationOptions;<br>方法or属性:intensity?: number;<br>旧版本信息:|类名:ChainAnimationOptions;<br>方法or属性:intensity?: number;<br>新版本信息:systemapi|list.d.ts|
|访问级别有变化|类名:ChainAnimationOptions;<br>方法or属性:edgeEffect?: ChainEdgeEffect;<br>旧版本信息:|类名:ChainAnimationOptions;<br>方法or属性:edgeEffect?: ChainEdgeEffect;<br>新版本信息:systemapi|list.d.ts|
|访问级别有变化|类名:RRect;<br>方法or属性:left: number;<br>旧版本信息:|类名:RRect;<br>方法or属性:left: number;<br>新版本信息:systemapi|remote_window.d.ts|
|访问级别有变化|类名:RRect;<br>方法or属性:top: number;<br>旧版本信息:|类名:RRect;<br>方法or属性:top: number;<br>新版本信息:systemapi|remote_window.d.ts|
|访问级别有变化|类名:RRect;<br>方法or属性:width: number;<br>旧版本信息:|类名:RRect;<br>方法or属性:width: number;<br>新版本信息:systemapi|remote_window.d.ts|
|访问级别有变化|类名:RRect;<br>方法or属性:height: number;<br>旧版本信息:|类名:RRect;<br>方法or属性:height: number;<br>新版本信息:systemapi|remote_window.d.ts|
|访问级别有变化|类名:RRect;<br>方法or属性:radius: number;<br>旧版本信息:|类名:RRect;<br>方法or属性:radius: number;<br>新版本信息:systemapi|remote_window.d.ts|
|访问级别有变化|类名:WindowAnimationTarget;<br>方法or属性:readonly bundleName: string;<br>旧版本信息:|类名:WindowAnimationTarget;<br>方法or属性:readonly bundleName: string;<br>新版本信息:systemapi|remote_window.d.ts|
|访问级别有变化|类名:WindowAnimationTarget;<br>方法or属性:readonly abilityName: string;<br>旧版本信息:|类名:WindowAnimationTarget;<br>方法or属性:readonly abilityName: string;<br>新版本信息:systemapi|remote_window.d.ts|
|访问级别有变化|类名:WindowAnimationTarget;<br>方法or属性:readonly windowBounds: RRect;<br>旧版本信息:|类名:WindowAnimationTarget;<br>方法or属性:readonly windowBounds: RRect;<br>新版本信息:systemapi|remote_window.d.ts|
|访问级别有变化|类名:WindowAnimationTarget;<br>方法or属性:readonly missionId: number;<br>旧版本信息:|类名:WindowAnimationTarget;<br>方法or属性:readonly missionId: number;<br>新版本信息:systemapi|remote_window.d.ts|
|type有变化|类名:Matrix2D;<br>方法or属性:scaleX?: number;<br>旧版本信息:|类名:Matrix2D;<br>方法or属性:scaleX?: number;<br>新版本信息:number|canvaspattern.d.ts|
|type有变化|类名:Matrix2D;<br>方法or属性:rotateY?: number;<br>旧版本信息:|类名:Matrix2D;<br>方法or属性:rotateY?: number;<br>新版本信息:number|canvaspattern.d.ts|
|type有变化|类名:Matrix2D;<br>方法or属性:rotateX?: number;<br>旧版本信息:|类名:Matrix2D;<br>方法or属性:rotateX?: number;<br>新版本信息:number|canvaspattern.d.ts|
|type有变化|类名:Matrix2D;<br>方法or属性:scaleY?: number;<br>旧版本信息:|类名:Matrix2D;<br>方法or属性:scaleY?: number;<br>新版本信息:number|canvaspattern.d.ts|
|type有变化|类名:Matrix2D;<br>方法or属性:translateX?: number;<br>旧版本信息:|类名:Matrix2D;<br>方法or属性:translateX?: number;<br>新版本信息:number|canvaspattern.d.ts|
|type有变化|类名:Matrix2D;<br>方法or属性:translateY?: number;<br>旧版本信息:|类名:Matrix2D;<br>方法or属性:translateY?: number;<br>新版本信息:number|canvaspattern.d.ts|
|type有变化|类名:FontOptions;<br>方法or属性:familyName: string \| Resource;<br>旧版本信息:|类名:FontOptions;<br>方法or属性:familyName: string \| Resource;<br>新版本信息:string \| Resource|@ohos.font.d.ts|
|type有变化|类名:FontOptions;<br>方法or属性:familySrc: string \| Resource;<br>旧版本信息:|类名:FontOptions;<br>方法or属性:familySrc: string \| Resource;<br>新版本信息:string \| Resource|@ohos.font.d.ts|
|type有变化|类名:TranslateOption;<br>方法or属性:x?: number;<br>旧版本信息:|类名:TranslateOption;<br>方法or属性:x?: number;<br>新版本信息:?number|@ohos.matrix4.d.ts|
|type有变化|类名:ScaleOption;<br>方法or属性:x?: number;<br>旧版本信息:|类名:ScaleOption;<br>方法or属性:x?: number;<br>新版本信息:?number|@ohos.matrix4.d.ts|
|type有变化|类名:RotateOption;<br>方法or属性:x?: number;<br>旧版本信息:|类名:RotateOption;<br>方法or属性:x?: number;<br>新版本信息:?number|@ohos.matrix4.d.ts|
|type有变化|类名:TranslateOption;<br>方法or属性:y?: number;<br>旧版本信息:|类名:TranslateOption;<br>方法or属性:y?: number;<br>新版本信息:?number|@ohos.matrix4.d.ts|
|type有变化|类名:ScaleOption;<br>方法or属性:y?: number;<br>旧版本信息:|类名:ScaleOption;<br>方法or属性:y?: number;<br>新版本信息:?number|@ohos.matrix4.d.ts|
|type有变化|类名:RotateOption;<br>方法or属性:y?: number;<br>旧版本信息:|类名:RotateOption;<br>方法or属性:y?: number;<br>新版本信息:?number|@ohos.matrix4.d.ts|
|type有变化|类名:TranslateOption;<br>方法or属性:z?: number;<br>旧版本信息:|类名:TranslateOption;<br>方法or属性:z?: number;<br>新版本信息:?number|@ohos.matrix4.d.ts|
|type有变化|类名:ScaleOption;<br>方法or属性:z?: number;<br>旧版本信息:|类名:ScaleOption;<br>方法or属性:z?: number;<br>新版本信息:?number|@ohos.matrix4.d.ts|
|type有变化|类名:RotateOption;<br>方法or属性:z?: number;<br>旧版本信息:|类名:RotateOption;<br>方法or属性:z?: number;<br>新版本信息:?number|@ohos.matrix4.d.ts|
|type有变化|类名:ScaleOption;<br>方法or属性:centerX?: number;<br>旧版本信息:|类名:ScaleOption;<br>方法or属性:centerX?: number;<br>新版本信息:?number|@ohos.matrix4.d.ts|
|type有变化|类名:RotateOption;<br>方法or属性:centerX?: number;<br>旧版本信息:|类名:RotateOption;<br>方法or属性:centerX?: number;<br>新版本信息:?number|@ohos.matrix4.d.ts|
|type有变化|类名:ScaleOption;<br>方法or属性:centerY?: number;<br>旧版本信息:|类名:ScaleOption;<br>方法or属性:centerY?: number;<br>新版本信息:?number|@ohos.matrix4.d.ts|
|type有变化|类名:RotateOption;<br>方法or属性:centerY?: number;<br>旧版本信息:|类名:RotateOption;<br>方法or属性:centerY?: number;<br>新版本信息:?number|@ohos.matrix4.d.ts|
|type有变化|类名:RotateOption;<br>方法or属性:angle?: number;<br>旧版本信息:|类名:RotateOption;<br>方法or属性:angle?: number;<br>新版本信息:?number|@ohos.matrix4.d.ts|
|type有变化|类名:MeasureOptions;<br>方法or属性:textContent: string \| Resource;<br>旧版本信息:( string \| Resource )|类名:MeasureOptions;<br>方法or属性:textContent: string \| Resource;<br>新版本信息:string \| Resource|@ohos.measure.d.ts|
|type有变化|类名:MeasureOptions;<br>方法or属性:constraintWidth?: number \| string \| Resource;<br>旧版本信息:|类名:MeasureOptions;<br>方法or属性:constraintWidth?: number \| string \| Resource;<br>新版本信息:?(number \| string \| Resource)|@ohos.measure.d.ts|
|type有变化|类名:MeasureOptions;<br>方法or属性:fontSize?: number \| string \| Resource;<br>旧版本信息:|类名:MeasureOptions;<br>方法or属性:fontSize?: number \| string \| Resource;<br>新版本信息:?(number \| string \| Resource)|@ohos.measure.d.ts|
|type有变化|类名:MeasureOptions;<br>方法or属性:fontStyle?: number \| FontStyle;<br>旧版本信息:|类名:MeasureOptions;<br>方法or属性:fontStyle?: number \| FontStyle;<br>新版本信息:?(number \| FontStyle)|@ohos.measure.d.ts|
|type有变化|类名:MeasureOptions;<br>方法or属性:fontWeight?: number \| string \| FontWeight;<br>旧版本信息:|类名:MeasureOptions;<br>方法or属性:fontWeight?: number \| string \| FontWeight;<br>新版本信息:?(number \| string \| FontWeight)|@ohos.measure.d.ts|
|type有变化|类名:MeasureOptions;<br>方法or属性:fontFamily?: string \| Resource;<br>旧版本信息:|类名:MeasureOptions;<br>方法or属性:fontFamily?: string \| Resource;<br>新版本信息:?(number \| Resource)|@ohos.measure.d.ts|
|type有变化|类名:MeasureOptions;<br>方法or属性:letterSpacing?: number \| string;<br>旧版本信息:|类名:MeasureOptions;<br>方法or属性:letterSpacing?: number \| string;<br>新版本信息:?(number \| string)|@ohos.measure.d.ts|
|type有变化|类名:MeasureOptions;<br>方法or属性:textAlign?: number \| TextAlign;<br>旧版本信息:|类名:MeasureOptions;<br>方法or属性:textAlign?: number \| TextAlign;<br>新版本信息:?(number \| TextAlign)|@ohos.measure.d.ts|
|type有变化|类名:MeasureOptions;<br>方法or属性:overflow?: number \| TextOverflow;<br>旧版本信息:|类名:MeasureOptions;<br>方法or属性:overflow?: number \| TextOverflow;<br>新版本信息:?(number \| TextOverflow)|@ohos.measure.d.ts|
|type有变化|类名:MeasureOptions;<br>方法or属性:maxLines?: number;<br>旧版本信息:|类名:MeasureOptions;<br>方法or属性:maxLines?: number;<br>新版本信息:?number|@ohos.measure.d.ts|
|type有变化|类名:MeasureOptions;<br>方法or属性:lineHeight?: number \| string \| Resource;<br>旧版本信息:|类名:MeasureOptions;<br>方法or属性:lineHeight?: number \| string \| Resource;<br>新版本信息:?(number \| string \| Resource)|@ohos.measure.d.ts|
|type有变化|类名:MeasureOptions;<br>方法or属性:baselineOffset?: number \| string;<br>旧版本信息:|类名:MeasureOptions;<br>方法or属性:baselineOffset?: number \| string;<br>新版本信息:?(number \| string)|@ohos.measure.d.ts|
|type有变化|类名:MeasureOptions;<br>方法or属性:textCase?: number \| TextCase;<br>旧版本信息:|类名:MeasureOptions;<br>方法or属性:textCase?: number \| TextCase;<br>新版本信息:?(number \| TextCase)|@ohos.measure.d.ts|
|type有变化|类名:MediaQueryResult;<br>方法or属性:readonly matches: boolean;<br>旧版本信息:|类名:MediaQueryResult;<br>方法or属性:readonly matches: boolean;<br>新版本信息:boolean|@ohos.mediaquery.d.ts|
|type有变化|类名:MediaQueryResult;<br>方法or属性:readonly media: string;<br>旧版本信息:|类名:MediaQueryResult;<br>方法or属性:readonly media: string;<br>新版本信息:string|@ohos.mediaquery.d.ts|
|type有变化|类名:ShowToastOptions;<br>方法or属性:duration?: number;<br>旧版本信息:|类名:ShowToastOptions;<br>方法or属性:duration?: number;<br>新版本信息:?number|@ohos.prompt.d.ts|
|type有变化|类名:ShowToastOptions;<br>方法or属性:bottom?: string \| number;<br>旧版本信息:|类名:ShowToastOptions;<br>方法or属性:bottom?: string \| number;<br>新版本信息:?(string \| number)|@ohos.prompt.d.ts|
|type有变化|类名:ShowDialogOptions;<br>方法or属性:title?: string;<br>旧版本信息:string|类名:ShowDialogOptions;<br>方法or属性:title?: string;<br>新版本信息:?string|@ohos.prompt.d.ts|
|type有变化|类名:ActionMenuOptions;<br>方法or属性:title?: string;<br>旧版本信息:string|类名:ActionMenuOptions;<br>方法or属性:title?: string;<br>新版本信息:?string|@ohos.prompt.d.ts|
|type有变化|类名:ShowDialogOptions;<br>方法or属性:message?: string;<br>旧版本信息:string|类名:ShowDialogOptions;<br>方法or属性:message?: string;<br>新版本信息:?string|@ohos.prompt.d.ts|
|type有变化|类名:ShowDialogOptions;<br>方法or属性:buttons?: [Button, Button?, Button?];<br>旧版本信息:|类名:ShowDialogOptions;<br>方法or属性:buttons?: [Button, Button?, Button?];<br>新版本信息:?([Button, Button?, Button?])|@ohos.prompt.d.ts|
|type有变化|类名:ActionMenuSuccessResponse;<br>方法or属性:index: number;<br>旧版本信息:|类名:ActionMenuSuccessResponse;<br>方法or属性:index: number;<br>新版本信息:number|@ohos.prompt.d.ts|
|type有变化|类名:ActionMenuOptions;<br>方法or属性:buttons: [Button, Button?, Button?, Button?, Button?, Button?];<br>旧版本信息:|类名:ActionMenuOptions;<br>方法or属性:buttons: [Button, Button?, Button?, Button?, Button?, Button?];<br>新版本信息:[Button, Button?, Button?, Button?, Button?, Button?]|@ohos.prompt.d.ts|
|type有变化|类名:ShowToastOptions;<br>方法or属性:duration?: number;<br>旧版本信息:number|类名:ShowToastOptions;<br>方法or属性:duration?: number;<br>新版本信息:?number|@ohos.promptAction.d.ts|
|type有变化|类名:ShowToastOptions;<br>方法or属性:bottom?: string \| number;<br>旧版本信息:string \| number|类名:ShowToastOptions;<br>方法or属性:bottom?: string \| number;<br>新版本信息:?string \| number|@ohos.promptAction.d.ts|
|type有变化|类名:ShowDialogOptions;<br>方法or属性:title?: string \| Resource;<br>旧版本信息:string \| Resource|类名:ShowDialogOptions;<br>方法or属性:title?: string \| Resource;<br>新版本信息:?string \| Resource|@ohos.promptAction.d.ts|
|type有变化|类名:ActionMenuOptions;<br>方法or属性:title?: string \| Resource;<br>旧版本信息:string \| Resource|类名:ActionMenuOptions;<br>方法or属性:title?: string \| Resource;<br>新版本信息:?string \| Resource|@ohos.promptAction.d.ts|
|type有变化|类名:ShowDialogOptions;<br>方法or属性:message?: string \| Resource;<br>旧版本信息:string \| Resource|类名:ShowDialogOptions;<br>方法or属性:message?: string \| Resource;<br>新版本信息:?string \| Resource|@ohos.promptAction.d.ts|
|type有变化|类名:RouterOptions;<br>方法or属性:params?: Object;<br>旧版本信息:Object|类名:RouterOptions;<br>方法or属性:params?: Object;<br>新版本信息:?Object|@ohos.router.d.ts|
|type有变化|类名:AppResponse;<br>方法or属性:appID: string;<br>旧版本信息:|类名:AppResponse;<br>方法or属性:appID: string;<br>新版本信息:string|@system.app.d.ts|
|type有变化|类名:AppResponse;<br>方法or属性:appName: string;<br>旧版本信息:|类名:AppResponse;<br>方法or属性:appName: string;<br>新版本信息:string|@system.app.d.ts|
|type有变化|类名:AppResponse;<br>方法or属性:versionName: string;<br>旧版本信息:|类名:AppResponse;<br>方法or属性:versionName: string;<br>新版本信息:string|@system.app.d.ts|
|type有变化|类名:AppResponse;<br>方法or属性:versionCode: number;<br>旧版本信息:|类名:AppResponse;<br>方法or属性:versionCode: number;<br>新版本信息:string|@system.app.d.ts|
|type有变化|类名:ScreenOnVisibleOptions;<br>方法or属性:visible?: boolean;<br>旧版本信息:|类名:ScreenOnVisibleOptions;<br>方法or属性:visible?: boolean;<br>新版本信息:?string|@system.app.d.ts|
|type有变化|类名:ScreenOnVisibleOptions;<br>方法or属性:success?: () => void;<br>旧版本信息:|类名:ScreenOnVisibleOptions;<br>方法or属性:success?: () => void;<br>新版本信息:?(() => void)|@system.app.d.ts|
|type有变化|类名:ScreenOnVisibleOptions;<br>方法or属性:fail?: (data: string, code: number) => void;<br>旧版本信息:|类名:ScreenOnVisibleOptions;<br>方法or属性:fail?: (data: string, code: number) => void;<br>新版本信息:?((data: string, code: number) => void)|@system.app.d.ts|
|type有变化|类名:ScreenOnVisibleOptions;<br>方法or属性:complete?: () => void;<br>旧版本信息:|类名:ScreenOnVisibleOptions;<br>方法or属性:complete?: () => void;<br>新版本信息:?(() => void)|@system.app.d.ts|
|type有变化|类名:RequestFullWindowOptions;<br>方法or属性:duration: number;<br>旧版本信息:|类名:RequestFullWindowOptions;<br>方法or属性:duration: number;<br>新版本信息:number|@system.app.d.ts|
|type有变化|类名:LocaleResponse;<br>方法or属性:language: string;<br>旧版本信息:|类名:LocaleResponse;<br>方法or属性:language: string;<br>新版本信息:string|@system.configuration.d.ts|
|type有变化|类名:LocaleResponse;<br>方法or属性:countryOrRegion: string;<br>旧版本信息:|类名:LocaleResponse;<br>方法or属性:countryOrRegion: string;<br>新版本信息:string|@system.configuration.d.ts|
|type有变化|类名:LocaleResponse;<br>方法or属性:dir: "ltr" \| "rtl";<br>旧版本信息:|类名:LocaleResponse;<br>方法or属性:dir: "ltr" \| "rtl";<br>新版本信息:'ltr' \| 'rtl'|@system.configuration.d.ts|
|type有变化|类名:MediaQueryEvent;<br>方法or属性:matches: boolean;<br>旧版本信息:|类名:MediaQueryEvent;<br>方法or属性:matches: boolean;<br>新版本信息:boolean|@system.mediaquery.d.ts|
|type有变化|类名:MediaQueryList;<br>方法or属性:media?: string;<br>旧版本信息:|类名:MediaQueryList;<br>方法or属性:media?: string;<br>新版本信息:?string|@system.mediaquery.d.ts|
|type有变化|类名:MediaQueryList;<br>方法or属性:matches?: boolean;<br>旧版本信息:|类名:MediaQueryList;<br>方法or属性:matches?: boolean;<br>新版本信息:?boolean|@system.mediaquery.d.ts|
|type有变化|类名:MediaQueryList;<br>方法or属性:onchange?: (matches: boolean) => void;<br>旧版本信息:|类名:MediaQueryList;<br>方法or属性:onchange?: (matches: boolean) => void;<br>新版本信息:?((matches: boolean) => void)|@system.mediaquery.d.ts|
|type有变化|类名:ShowToastOptions;<br>方法or属性:message: string;<br>旧版本信息:|类名:ShowToastOptions;<br>方法or属性:message: string;<br>新版本信息:string|@system.prompt.d.ts|
|type有变化|类名:ShowToastOptions;<br>方法or属性:duration?: number;<br>旧版本信息:|类名:ShowToastOptions;<br>方法or属性:duration?: number;<br>新版本信息:number|@system.prompt.d.ts|
|type有变化|类名:ShowToastOptions;<br>方法or属性:bottom?: string \| number;<br>旧版本信息:|类名:ShowToastOptions;<br>方法or属性:bottom?: string \| number;<br>新版本信息:string \| number|@system.prompt.d.ts|
|type有变化|类名:Button;<br>方法or属性:text: string;<br>旧版本信息:|类名:Button;<br>方法or属性:text: string;<br>新版本信息:string|@system.prompt.d.ts|
|type有变化|类名:Button;<br>方法or属性:color: string;<br>旧版本信息:|类名:Button;<br>方法or属性:color: string;<br>新版本信息:string|@system.prompt.d.ts|
|type有变化|类名:ShowDialogSuccessResponse;<br>方法or属性:index: number;<br>旧版本信息:|类名:ShowDialogSuccessResponse;<br>方法or属性:index: number;<br>新版本信息:number|@system.prompt.d.ts|
|type有变化|类名:ShowDialogOptions;<br>方法or属性:title?: string;<br>旧版本信息:|类名:ShowDialogOptions;<br>方法or属性:title?: string;<br>新版本信息:?string|@system.prompt.d.ts|
|type有变化|类名:ShowActionMenuOptions;<br>方法or属性:title?: string;<br>旧版本信息:|类名:ShowActionMenuOptions;<br>方法or属性:title?: string;<br>新版本信息:?string|@system.prompt.d.ts|
|type有变化|类名:ShowDialogOptions;<br>方法or属性:message?: string;<br>旧版本信息:|类名:ShowDialogOptions;<br>方法or属性:message?: string;<br>新版本信息:?string|@system.prompt.d.ts|
|type有变化|类名:ShowDialogOptions;<br>方法or属性:buttons?: [Button, Button?, Button?];<br>旧版本信息:|类名:ShowDialogOptions;<br>方法or属性:buttons?: [Button, Button?, Button?];<br>新版本信息:[Button, Button?, Button?]|@system.prompt.d.ts|
|type有变化|类名:ShowActionMenuOptions;<br>方法or属性:buttons: [Button, Button?, Button?, Button?, Button?, Button?];<br>旧版本信息:|类名:ShowActionMenuOptions;<br>方法or属性:buttons: [Button, Button?, Button?, Button?, Button?, Button?];<br>新版本信息:[Button, Button?, Button?, Button?, Button?, Button?]|@system.prompt.d.ts|
|type有变化|类名:ShowActionMenuOptions;<br>方法or属性:success?: (tapIndex: number, errMsg: string) => void;<br>旧版本信息:|类名:ShowActionMenuOptions;<br>方法or属性:success?: (tapIndex: number, errMsg: string) => void;<br>新版本信息:?((tapIndex: number, errMsg: string) => void)|@system.prompt.d.ts|
|type有变化|类名:ShowActionMenuOptions;<br>方法or属性:fail?: (errMsg: string) => void;<br>旧版本信息:|类名:ShowActionMenuOptions;<br>方法or属性:fail?: (errMsg: string) => void;<br>新版本信息:?((errMsg: string) => void)|@system.prompt.d.ts|
|type有变化|类名:ShowActionMenuOptions;<br>方法or属性:complete?: () => void;<br>旧版本信息:|类名:ShowActionMenuOptions;<br>方法or属性:complete?: () => void;<br>新版本信息:?(() => void)|@system.prompt.d.ts|
|type有变化|类名:RouterOptions;<br>方法or属性:uri: string;<br>旧版本信息:|类名:RouterOptions;<br>方法or属性:uri: string;<br>新版本信息:string|@system.router.d.ts|
|type有变化|类名:RouterOptions;<br>方法or属性:params?: Object;<br>旧版本信息:|类名:RouterOptions;<br>方法or属性:params?: Object;<br>新版本信息:?Object|@system.router.d.ts|
|type有变化|类名:BackRouterOptions;<br>方法or属性:params?: Object;<br>旧版本信息:|类名:BackRouterOptions;<br>方法or属性:params?: Object;<br>新版本信息:?Object|@system.router.d.ts|
|type有变化|类名:BackRouterOptions;<br>方法or属性:uri?: string;<br>旧版本信息:|类名:BackRouterOptions;<br>方法or属性:uri?: string;<br>新版本信息:?string|@system.router.d.ts|
|type有变化|类名:RouterState;<br>方法or属性:index: number;<br>旧版本信息:|类名:RouterState;<br>方法or属性:index: number;<br>新版本信息:number|@system.router.d.ts|
|type有变化|类名:RouterState;<br>方法or属性:name: string;<br>旧版本信息:|类名:RouterState;<br>方法or属性:name: string;<br>新版本信息:string|@system.router.d.ts|
|type有变化|类名:RouterState;<br>方法or属性:path: string;<br>旧版本信息:|类名:RouterState;<br>方法or属性:path: string;<br>新版本信息:string|@system.router.d.ts|
|type有变化|类名:EnableAlertBeforeBackPageOptions;<br>方法or属性:message: string;<br>旧版本信息:|类名:EnableAlertBeforeBackPageOptions;<br>方法or属性:message: string;<br>新版本信息:string|@system.router.d.ts|
|type有变化|类名:EnableAlertBeforeBackPageOptions;<br>方法or属性:success?: (errMsg: string) => void;<br>旧版本信息:|类名:EnableAlertBeforeBackPageOptions;<br>方法or属性:success?: (errMsg: string) => void;<br>新版本信息:(errMsg: string) => void|@system.router.d.ts|
|type有变化|类名:DisableAlertBeforeBackPageOptions;<br>方法or属性:success?: (errMsg: string) => void;<br>旧版本信息:|类名:DisableAlertBeforeBackPageOptions;<br>方法or属性:success?: (errMsg: string) => void;<br>新版本信息:(errMsg: string) => void|@system.router.d.ts|
|type有变化|类名:EnableAlertBeforeBackPageOptions;<br>方法or属性:cancel?: (errMsg: string) => void;<br>旧版本信息:|类名:EnableAlertBeforeBackPageOptions;<br>方法or属性:cancel?: (errMsg: string) => void;<br>新版本信息:(errMsg: string) => void|@system.router.d.ts|
|type有变化|类名:DisableAlertBeforeBackPageOptions;<br>方法or属性:cancel?: (errMsg: string) => void;<br>旧版本信息:|类名:DisableAlertBeforeBackPageOptions;<br>方法or属性:cancel?: (errMsg: string) => void;<br>新版本信息:(errMsg: string) => void|@system.router.d.ts|
|type有变化|类名:EnableAlertBeforeBackPageOptions;<br>方法or属性:complete?: () => void;<br>旧版本信息:|类名:EnableAlertBeforeBackPageOptions;<br>方法or属性:complete?: () => void;<br>新版本信息:() => void|@system.router.d.ts|
|type有变化|类名:DisableAlertBeforeBackPageOptions;<br>方法or属性:complete?: () => void;<br>旧版本信息:|类名:DisableAlertBeforeBackPageOptions;<br>方法or属性:complete?: () => void;<br>新版本信息:() => void|@system.router.d.ts|
|type有变化|类名:sourcefile;<br>方法or属性:declare type CustomBuilder = (() => any) \| void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare type CustomBuilder = (() => any) \| void;<br>新版本信息:(() => any) \| void|common.d.ts|
|type有变化|类名:SheetInfo;<br>方法or属性:title: string \| Resource;<br>旧版本信息:|类名:SheetInfo;<br>方法or属性:title: string \| Resource;<br>新版本信息:string \| Resource|action_sheet.d.ts|
|type有变化|类名:SheetInfo;<br>方法or属性:icon?: string \| Resource;<br>旧版本信息:|类名:SheetInfo;<br>方法or属性:icon?: string \| Resource;<br>新版本信息:?(string \| Resource)|action_sheet.d.ts|
|type有变化|类名:SheetInfo;<br>方法or属性:action: () => void;<br>旧版本信息:|类名:SheetInfo;<br>方法or属性:action: () => void;<br>新版本信息:() => void|action_sheet.d.ts|
|type有变化|类名:AlertDialogParam;<br>方法or属性:title?: ResourceStr;<br>旧版本信息:|类名:AlertDialogParam;<br>方法or属性:title?: ResourceStr;<br>新版本信息:?ResourceStr|alert_dialog.d.ts|
|type有变化|类名:AlertDialogParam;<br>方法or属性:message: ResourceStr;<br>旧版本信息:|类名:AlertDialogParam;<br>方法or属性:message: ResourceStr;<br>新版本信息:ResourceStr|alert_dialog.d.ts|
|type有变化|类名:AlertDialogParam;<br>方法or属性:autoCancel?: boolean;<br>旧版本信息:|类名:AlertDialogParam;<br>方法or属性:autoCancel?: boolean;<br>新版本信息:?boolean|alert_dialog.d.ts|
|type有变化|类名:AlertDialogParam;<br>方法or属性:cancel?: () => void;<br>旧版本信息:|类名:AlertDialogParam;<br>方法or属性:cancel?: () => void;<br>新版本信息:?(() => void)|alert_dialog.d.ts|
|type有变化|类名:AlertDialogParam;<br>方法or属性:alignment?: DialogAlignment;<br>旧版本信息:|类名:AlertDialogParam;<br>方法or属性:alignment?: DialogAlignment;<br>新版本信息:?DialogAlignment|alert_dialog.d.ts|
|type有变化|类名:AlertDialogParam;<br>方法or属性:offset?: Offset;<br>旧版本信息:|类名:AlertDialogParam;<br>方法or属性:offset?: Offset;<br>新版本信息:?Offset|alert_dialog.d.ts|
|type有变化|类名:AlertDialogParam;<br>方法or属性:gridCount?: number;<br>旧版本信息:|类名:AlertDialogParam;<br>方法or属性:gridCount?: number;<br>新版本信息:?number|alert_dialog.d.ts|
|type有变化|类名:AlertDialogParamWithConfirm;<br>方法or属性:confirm?: {<br> /**<br> * Text content of the confirmation button.<br> *<br> * @type { ResourceStr }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @since 7<br> */<br> /**<br> * Text content of the confirmation button.<br> *<br> * @type { ResourceStr }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @crossplatform<br> * @since 10<br> */<br> value: ResourceStr;<br><br> /**<br> * Text color of the confirmation button.<br> *<br> * @type { ?ResourceColor }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @since 7<br> */<br> /**<br> * Text color of the confirmation button.<br> *<br> * @type { ?ResourceColor }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @crossplatform<br> * @since 10<br> */<br> fontColor?: ResourceColor;<br><br> /**<br> * Background color of the confirmation button.<br> *<br> * @type { ?ResourceColor }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @since 7<br> */<br> /**<br> * Background color of the confirmation button.<br> *<br> * @type { ?ResourceColor }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @crossplatform<br> * @since 10<br> */<br> backgroundColor?: ResourceColor;<br><br> /**<br> * Method executed by the callback.<br> *<br> * @type { () => void }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @since 7<br> */<br> /**<br> * Method executed by the callback.<br> *<br> * @type { () => void }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @crossplatform<br> * @since 10<br> */<br> action: () => void;<br> };<br>旧版本信息:|类名:AlertDialogParamWithConfirm;<br>方法or属性:confirm?: {<br> /**<br> * Text content of the confirmation button.<br> *<br> * @type { ResourceStr }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @since 7<br> */<br> /**<br> * Text content of the confirmation button.<br> *<br> * @type { ResourceStr }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @crossplatform<br> * @since 10<br> */<br> value: ResourceStr;<br><br> /**<br> * Text color of the confirmation button.<br> *<br> * @type { ?ResourceColor }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @since 7<br> */<br> /**<br> * Text color of the confirmation button.<br> *<br> * @type { ?ResourceColor }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @crossplatform<br> * @since 10<br> */<br> fontColor?: ResourceColor;<br><br> /**<br> * Background color of the confirmation button.<br> *<br> * @type { ?ResourceColor }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @since 7<br> */<br> /**<br> * Background color of the confirmation button.<br> *<br> * @type { ?ResourceColor }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @crossplatform<br> * @since 10<br> */<br> backgroundColor?: ResourceColor;<br><br> /**<br> * Method executed by the callback.<br> *<br> * @type { () => void }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @since 7<br> */<br> /**<br> * Method executed by the callback.<br> *<br> * @type { () => void }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @crossplatform<br> * @since 10<br> */<br> action: () => void;<br> };<br>新版本信息:?{value: ResourceStr; fontColor?: ResourceColor; backgroundColor?: ResourceColor;action: () => void;}|alert_dialog.d.ts|
|type有变化|类名:AlertDialogParamWithButtons;<br>方法or属性:primaryButton: {<br> /**<br> * Text content of the confirmation button.<br> *<br> * @type { ResourceStr }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @since 7<br> */<br> /**<br> * Text content of the confirmation button.<br> *<br> * @type { ResourceStr }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @crossplatform<br> * @since 10<br> */<br> value: ResourceStr;<br><br> /**<br> * Text color of the confirmation button.<br> *<br> * @type { ?ResourceColor }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @since 7<br> */<br> /**<br> * Text color of the confirmation button.<br> *<br> * @type { ?ResourceColor }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @crossplatform<br> * @since 10<br> */<br> fontColor?: ResourceColor;<br><br> /**<br> * Background color of the confirmation button.<br> *<br> * @type { ?ResourceColor }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @since 7<br> */<br> /**<br> * Background color of the confirmation button.<br> *<br> * @type { ?ResourceColor }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @crossplatform<br> * @since 10<br> */<br> backgroundColor?: ResourceColor;<br><br> /**<br> * Method executed by the callback.<br> *<br> * @type { () => void }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @since 7<br> */<br> /**<br> * Method executed by the callback.<br> *<br> * @type { () => void }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @crossplatform<br> * @since 10<br> */<br> action: () => void;<br> };<br>旧版本信息:|类名:AlertDialogParamWithButtons;<br>方法or属性:primaryButton: {<br> /**<br> * Text content of the confirmation button.<br> *<br> * @type { ResourceStr }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @since 7<br> */<br> /**<br> * Text content of the confirmation button.<br> *<br> * @type { ResourceStr }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @crossplatform<br> * @since 10<br> */<br> value: ResourceStr;<br><br> /**<br> * Text color of the confirmation button.<br> *<br> * @type { ?ResourceColor }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @since 7<br> */<br> /**<br> * Text color of the confirmation button.<br> *<br> * @type { ?ResourceColor }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @crossplatform<br> * @since 10<br> */<br> fontColor?: ResourceColor;<br><br> /**<br> * Background color of the confirmation button.<br> *<br> * @type { ?ResourceColor }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @since 7<br> */<br> /**<br> * Background color of the confirmation button.<br> *<br> * @type { ?ResourceColor }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @crossplatform<br> * @since 10<br> */<br> backgroundColor?: ResourceColor;<br><br> /**<br> * Method executed by the callback.<br> *<br> * @type { () => void }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @since 7<br> */<br> /**<br> * Method executed by the callback.<br> *<br> * @type { () => void }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @crossplatform<br> * @since 10<br> */<br> action: () => void;<br> };<br>新版本信息:{value: ResourceStr; fontColor?: ResourceColor; backgroundColor?: ResourceColor;action: () => void;}|alert_dialog.d.ts|
|type有变化|类名:AlertDialogParamWithButtons;<br>方法or属性:secondaryButton: {<br> /**<br> * Text content of the confirmation button.<br> *<br> * @type { ResourceStr }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @since 7<br> */<br> /**<br> * Text content of the confirmation button.<br> *<br> * @type { ResourceStr }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @crossplatform<br> * @since 10<br> */<br> value: ResourceStr;<br><br> /**<br> * Text color of the confirmation button.<br> *<br> * @type { ?ResourceColor }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @since 7<br> */<br> /**<br> * Text color of the confirmation button.<br> *<br> * @type { ?ResourceColor }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @crossplatform<br> * @since 10<br> */<br> fontColor?: ResourceColor;<br><br> /**<br> * Background color of the confirmation button.<br> *<br> * @type { ?ResourceColor }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @since 7<br> */<br> /**<br> * Background color of the confirmation button.<br> *<br> * @type { ?ResourceColor }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @crossplatform<br> * @since 10<br> */<br> backgroundColor?: ResourceColor;<br><br> /**<br> * Method executed by the callback.<br> *<br> * @type { () => void }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @since 7<br> */<br> /**<br> * Method executed by the callback.<br> *<br> * @type { () => void }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @crossplatform<br> * @since 10<br> */<br> action: () => void;<br> };<br>旧版本信息:|类名:AlertDialogParamWithButtons;<br>方法or属性:secondaryButton: {<br> /**<br> * Text content of the confirmation button.<br> *<br> * @type { ResourceStr }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @since 7<br> */<br> /**<br> * Text content of the confirmation button.<br> *<br> * @type { ResourceStr }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @crossplatform<br> * @since 10<br> */<br> value: ResourceStr;<br><br> /**<br> * Text color of the confirmation button.<br> *<br> * @type { ?ResourceColor }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @since 7<br> */<br> /**<br> * Text color of the confirmation button.<br> *<br> * @type { ?ResourceColor }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @crossplatform<br> * @since 10<br> */<br> fontColor?: ResourceColor;<br><br> /**<br> * Background color of the confirmation button.<br> *<br> * @type { ?ResourceColor }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @since 7<br> */<br> /**<br> * Background color of the confirmation button.<br> *<br> * @type { ?ResourceColor }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @crossplatform<br> * @since 10<br> */<br> backgroundColor?: ResourceColor;<br><br> /**<br> * Method executed by the callback.<br> *<br> * @type { () => void }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @since 7<br> */<br> /**<br> * Method executed by the callback.<br> *<br> * @type { () => void }<br> * @syscap SystemCapability.ArkUI.ArkUI.Full<br> * @crossplatform<br> * @since 10<br> */<br> action: () => void;<br> };<br>新版本信息:{value: ResourceStr; fontColor?: ResourceColor; backgroundColor?: ResourceColor;action: () => void;}|alert_dialog.d.ts|
|type有变化|类名:BadgeStyle;<br>方法or属性:color?: ResourceColor;<br>旧版本信息:|类名:BadgeStyle;<br>方法or属性:color?: ResourceColor;<br>新版本信息:?ResourceColor|badge.d.ts|
|type有变化|类名:BadgeStyle;<br>方法or属性:fontSize?: number \| string;<br>旧版本信息:|类名:BadgeStyle;<br>方法or属性:fontSize?: number \| string;<br>新版本信息:?(number \| string)|badge.d.ts|
|type有变化|类名:BadgeStyle;<br>方法or属性:badgeSize?: number \| string;<br>旧版本信息:|类名:BadgeStyle;<br>方法or属性:badgeSize?: number \| string;<br>新版本信息:?(number \| string)|badge.d.ts|
|type有变化|类名:BadgeStyle;<br>方法or属性:badgeColor?: ResourceColor;<br>旧版本信息:|类名:BadgeStyle;<br>方法or属性:badgeColor?: ResourceColor;<br>新版本信息:?ResourceColor|badge.d.ts|
|type有变化|类名:BadgeStyle;<br>方法or属性:borderColor?: ResourceColor;<br>旧版本信息:ResourceColor|类名:BadgeStyle;<br>方法or属性:borderColor?: ResourceColor;<br>新版本信息:?ResourceColor|badge.d.ts|
|type有变化|类名:BadgeStyle;<br>方法or属性:borderWidth?: Length;<br>旧版本信息:Length|类名:BadgeStyle;<br>方法or属性:borderWidth?: Length;<br>新版本信息:?Length|badge.d.ts|
|type有变化|类名:BadgeStyle;<br>方法or属性:fontWeight?: number \| FontWeight \| string;<br>旧版本信息:number \| FontWeight \| string|类名:BadgeStyle;<br>方法or属性:fontWeight?: number \| FontWeight \| string;<br>新版本信息:?(number \| FontWeight \| string)|badge.d.ts|
|type有变化|类名:BadgeParam;<br>方法or属性:position?: BadgePosition \| Position;<br>旧版本信息:|类名:BadgeParam;<br>方法or属性:position?: BadgePosition \| Position;<br>新版本信息:BadgePosition \| Position|badge.d.ts|
|type有变化|类名:BadgeParam;<br>方法or属性:style: BadgeStyle;<br>旧版本信息:|类名:BadgeParam;<br>方法or属性:style: BadgeStyle;<br>新版本信息:BadgeStyle|badge.d.ts|
|type有变化|类名:BadgeParamWithNumber;<br>方法or属性:count: number;<br>旧版本信息:|类名:BadgeParamWithNumber;<br>方法or属性:count: number;<br>新版本信息:number|badge.d.ts|
|type有变化|类名:BadgeParamWithNumber;<br>方法or属性:maxCount?: number;<br>旧版本信息:|类名:BadgeParamWithNumber;<br>方法or属性:maxCount?: number;<br>新版本信息:?number|badge.d.ts|
|type有变化|类名:BadgeParamWithString;<br>方法or属性:value: string;<br>旧版本信息:|类名:BadgeParamWithString;<br>方法or属性:value: string;<br>新版本信息:string|badge.d.ts|
|type有变化|类名:ButtonOptions;<br>方法or属性:type?: ButtonType;<br>旧版本信息:|类名:ButtonOptions;<br>方法or属性:type?: ButtonType;<br>新版本信息:?ButtonType|button.d.ts|
|type有变化|类名:ButtonOptions;<br>方法or属性:stateEffect?: boolean;<br>旧版本信息:|类名:ButtonOptions;<br>方法or属性:stateEffect?: boolean;<br>新版本信息:?boolean|button.d.ts|
|type有变化|类名:LabelStyle;<br>方法or属性:overflow?: TextOverflow;<br>旧版本信息:TextOverflow|类名:LabelStyle;<br>方法or属性:overflow?: TextOverflow;<br>新版本信息:?TextOverflow|button.d.ts|
|type有变化|类名:LabelStyle;<br>方法or属性:maxLines?: number;<br>旧版本信息:number|类名:LabelStyle;<br>方法or属性:maxLines?: number;<br>新版本信息:?number|button.d.ts|
|type有变化|类名:LabelStyle;<br>方法or属性:minFontSize?: number \| ResourceStr;<br>旧版本信息:number \| ResourceStr|类名:LabelStyle;<br>方法or属性:minFontSize?: number \| ResourceStr;<br>新版本信息:?(number \| ResourceStr)|button.d.ts|
|type有变化|类名:LabelStyle;<br>方法or属性:maxFontSize?: number \| ResourceStr;<br>旧版本信息:number \| ResourceStr|类名:LabelStyle;<br>方法or属性:maxFontSize?: number \| ResourceStr;<br>新版本信息:?(number \| ResourceStr)|button.d.ts|
|type有变化|类名:LabelStyle;<br>方法or属性:heightAdaptivePolicy?: TextHeightAdaptivePolicy;<br>旧版本信息:TextHeightAdaptivePolicy|类名:LabelStyle;<br>方法or属性:heightAdaptivePolicy?: TextHeightAdaptivePolicy;<br>新版本信息:?TextHeightAdaptivePolicy|button.d.ts|
|type有变化|类名:LabelStyle;<br>方法or属性:font?: Font;<br>旧版本信息:Font|类名:LabelStyle;<br>方法or属性:font?: Font;<br>新版本信息:?Font|button.d.ts|
|type有变化|类名:CalendarDay;<br>方法or属性:index: number;<br>旧版本信息:|类名:CalendarDay;<br>方法or属性:index: number;<br>新版本信息:number|calendar.d.ts|
|type有变化|类名:CalendarDay;<br>方法or属性:lunarMonth: string;<br>旧版本信息:|类名:CalendarDay;<br>方法or属性:lunarMonth: string;<br>新版本信息:string|calendar.d.ts|
|type有变化|类名:CalendarDay;<br>方法or属性:lunarDay: string;<br>旧版本信息:|类名:CalendarDay;<br>方法or属性:lunarDay: string;<br>新版本信息:string|calendar.d.ts|
|type有变化|类名:CalendarDay;<br>方法or属性:dayMark: string;<br>旧版本信息:|类名:CalendarDay;<br>方法or属性:dayMark: string;<br>新版本信息:string|calendar.d.ts|
|type有变化|类名:CalendarDay;<br>方法or属性:dayMarkValue: string;<br>旧版本信息:|类名:CalendarDay;<br>方法or属性:dayMarkValue: string;<br>新版本信息:string|calendar.d.ts|
|type有变化|类名:CalendarDay;<br>方法or属性:year: number;<br>旧版本信息:|类名:CalendarDay;<br>方法or属性:year: number;<br>新版本信息:number|calendar.d.ts|
|type有变化|类名:MonthData;<br>方法or属性:year: number;<br>旧版本信息:|类名:MonthData;<br>方法or属性:year: number;<br>新版本信息:number|calendar.d.ts|
|type有变化|类名:CalendarDay;<br>方法or属性:month: number;<br>旧版本信息:|类名:CalendarDay;<br>方法or属性:month: number;<br>新版本信息:number|calendar.d.ts|
|type有变化|类名:MonthData;<br>方法or属性:month: number;<br>旧版本信息:|类名:MonthData;<br>方法or属性:month: number;<br>新版本信息:number|calendar.d.ts|
|type有变化|类名:CalendarDay;<br>方法or属性:day: number;<br>旧版本信息:|类名:CalendarDay;<br>方法or属性:day: number;<br>新版本信息:number|calendar.d.ts|
|type有变化|类名:CalendarDay;<br>方法or属性:isFirstOfLunar: boolean;<br>旧版本信息:|类名:CalendarDay;<br>方法or属性:isFirstOfLunar: boolean;<br>新版本信息:boolean|calendar.d.ts|
|type有变化|类名:CalendarDay;<br>方法or属性:hasSchedule: boolean;<br>旧版本信息:|类名:CalendarDay;<br>方法or属性:hasSchedule: boolean;<br>新版本信息:boolean|calendar.d.ts|
|type有变化|类名:CalendarDay;<br>方法or属性:markLunarDay: boolean;<br>旧版本信息:|类名:CalendarDay;<br>方法or属性:markLunarDay: boolean;<br>新版本信息:boolean|calendar.d.ts|
|type有变化|类名:MonthData;<br>方法or属性:data: CalendarDay[];<br>旧版本信息:|类名:MonthData;<br>方法or属性:data: CalendarDay[];<br>新版本信息:CalendarDay[]|calendar.d.ts|
|type有变化|类名:CurrentDayStyle;<br>方法or属性:dayColor?: ResourceColor;<br>旧版本信息:|类名:CurrentDayStyle;<br>方法or属性:dayColor?: ResourceColor;<br>新版本信息:?ResourceColor|calendar.d.ts|
|type有变化|类名:CurrentDayStyle;<br>方法or属性:lunarColor?: ResourceColor;<br>旧版本信息:|类名:CurrentDayStyle;<br>方法or属性:lunarColor?: ResourceColor;<br>新版本信息:?ResourceColor|calendar.d.ts|
|type有变化|类名:CurrentDayStyle;<br>方法or属性:markLunarColor?: ResourceColor;<br>旧版本信息:|类名:CurrentDayStyle;<br>方法or属性:markLunarColor?: ResourceColor;<br>新版本信息:?ResourceColor|calendar.d.ts|
|type有变化|类名:CurrentDayStyle;<br>方法or属性:dayFontSize?: number;<br>旧版本信息:|类名:CurrentDayStyle;<br>方法or属性:dayFontSize?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:CurrentDayStyle;<br>方法or属性:lunarDayFontSize?: number;<br>旧版本信息:|类名:CurrentDayStyle;<br>方法or属性:lunarDayFontSize?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:CurrentDayStyle;<br>方法or属性:dayHeight?: number;<br>旧版本信息:|类名:CurrentDayStyle;<br>方法or属性:dayHeight?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:CurrentDayStyle;<br>方法or属性:dayWidth?: number;<br>旧版本信息:|类名:CurrentDayStyle;<br>方法or属性:dayWidth?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:CurrentDayStyle;<br>方法or属性:gregorianCalendarHeight?: number;<br>旧版本信息:|类名:CurrentDayStyle;<br>方法or属性:gregorianCalendarHeight?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:CurrentDayStyle;<br>方法or属性:dayYAxisOffset?: number;<br>旧版本信息:|类名:CurrentDayStyle;<br>方法or属性:dayYAxisOffset?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:CurrentDayStyle;<br>方法or属性:lunarDayYAxisOffset?: number;<br>旧版本信息:|类名:CurrentDayStyle;<br>方法or属性:lunarDayYAxisOffset?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:CurrentDayStyle;<br>方法or属性:underscoreXAxisOffset?: number;<br>旧版本信息:|类名:CurrentDayStyle;<br>方法or属性:underscoreXAxisOffset?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:CurrentDayStyle;<br>方法or属性:underscoreYAxisOffset?: number;<br>旧版本信息:|类名:CurrentDayStyle;<br>方法or属性:underscoreYAxisOffset?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:CurrentDayStyle;<br>方法or属性:scheduleMarkerXAxisOffset?: number;<br>旧版本信息:|类名:CurrentDayStyle;<br>方法or属性:scheduleMarkerXAxisOffset?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:CurrentDayStyle;<br>方法or属性:scheduleMarkerYAxisOffset?: number;<br>旧版本信息:|类名:CurrentDayStyle;<br>方法or属性:scheduleMarkerYAxisOffset?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:CurrentDayStyle;<br>方法or属性:colSpace?: number;<br>旧版本信息:|类名:CurrentDayStyle;<br>方法or属性:colSpace?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:CurrentDayStyle;<br>方法or属性:dailyFiveRowSpace?: number;<br>旧版本信息:|类名:CurrentDayStyle;<br>方法or属性:dailyFiveRowSpace?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:CurrentDayStyle;<br>方法or属性:dailySixRowSpace?: number;<br>旧版本信息:|类名:CurrentDayStyle;<br>方法or属性:dailySixRowSpace?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:CurrentDayStyle;<br>方法or属性:lunarHeight?: number;<br>旧版本信息:|类名:CurrentDayStyle;<br>方法or属性:lunarHeight?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:CurrentDayStyle;<br>方法or属性:underscoreWidth?: number;<br>旧版本信息:|类名:CurrentDayStyle;<br>方法or属性:underscoreWidth?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:CurrentDayStyle;<br>方法or属性:underscoreLength?: number;<br>旧版本信息:|类名:CurrentDayStyle;<br>方法or属性:underscoreLength?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:CurrentDayStyle;<br>方法or属性:scheduleMarkerRadius?: number;<br>旧版本信息:|类名:CurrentDayStyle;<br>方法or属性:scheduleMarkerRadius?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:CurrentDayStyle;<br>方法or属性:boundaryRowOffset?: number;<br>旧版本信息:|类名:CurrentDayStyle;<br>方法or属性:boundaryRowOffset?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:CurrentDayStyle;<br>方法or属性:boundaryColOffset?: number;<br>旧版本信息:|类名:CurrentDayStyle;<br>方法or属性:boundaryColOffset?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:NonCurrentDayStyle;<br>方法or属性:nonCurrentMonthDayColor?: ResourceColor;<br>旧版本信息:|类名:NonCurrentDayStyle;<br>方法or属性:nonCurrentMonthDayColor?: ResourceColor;<br>新版本信息:?ResourceColor|calendar.d.ts|
|type有变化|类名:NonCurrentDayStyle;<br>方法or属性:nonCurrentMonthLunarColor?: ResourceColor;<br>旧版本信息:|类名:NonCurrentDayStyle;<br>方法or属性:nonCurrentMonthLunarColor?: ResourceColor;<br>新版本信息:?ResourceColor|calendar.d.ts|
|type有变化|类名:NonCurrentDayStyle;<br>方法or属性:nonCurrentMonthWorkDayMarkColor?: ResourceColor;<br>旧版本信息:|类名:NonCurrentDayStyle;<br>方法or属性:nonCurrentMonthWorkDayMarkColor?: ResourceColor;<br>新版本信息:?ResourceColor|calendar.d.ts|
|type有变化|类名:NonCurrentDayStyle;<br>方法or属性:nonCurrentMonthOffDayMarkColor?: ResourceColor;<br>旧版本信息:|类名:NonCurrentDayStyle;<br>方法or属性:nonCurrentMonthOffDayMarkColor?: ResourceColor;<br>新版本信息:?ResourceColor|calendar.d.ts|
|type有变化|类名:TodayStyle;<br>方法or属性:focusedDayColor?: ResourceColor;<br>旧版本信息:|类名:TodayStyle;<br>方法or属性:focusedDayColor?: ResourceColor;<br>新版本信息:?ResourceColor|calendar.d.ts|
|type有变化|类名:TodayStyle;<br>方法or属性:focusedLunarColor?: ResourceColor;<br>旧版本信息:|类名:TodayStyle;<br>方法or属性:focusedLunarColor?: ResourceColor;<br>新版本信息:?ResourceColor|calendar.d.ts|
|type有变化|类名:TodayStyle;<br>方法or属性:focusedAreaBackgroundColor?: ResourceColor;<br>旧版本信息:|类名:TodayStyle;<br>方法or属性:focusedAreaBackgroundColor?: ResourceColor;<br>新版本信息:?ResourceColor|calendar.d.ts|
|type有变化|类名:TodayStyle;<br>方法or属性:focusedAreaRadius?: number;<br>旧版本信息:|类名:TodayStyle;<br>方法or属性:focusedAreaRadius?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:WeekStyle;<br>方法or属性:weekColor?: ResourceColor;<br>旧版本信息:|类名:WeekStyle;<br>方法or属性:weekColor?: ResourceColor;<br>新版本信息:?ResourceColor|calendar.d.ts|
|type有变化|类名:WeekStyle;<br>方法or属性:weekendDayColor?: ResourceColor;<br>旧版本信息:|类名:WeekStyle;<br>方法or属性:weekendDayColor?: ResourceColor;<br>新版本信息:?ResourceColor|calendar.d.ts|
|type有变化|类名:WeekStyle;<br>方法or属性:weekendLunarColor?: ResourceColor;<br>旧版本信息:|类名:WeekStyle;<br>方法or属性:weekendLunarColor?: ResourceColor;<br>新版本信息:?ResourceColor|calendar.d.ts|
|type有变化|类名:WeekStyle;<br>方法or属性:weekFontSize?: number;<br>旧版本信息:|类名:WeekStyle;<br>方法or属性:weekFontSize?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:WeekStyle;<br>方法or属性:weekHeight?: number;<br>旧版本信息:|类名:WeekStyle;<br>方法or属性:weekHeight?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:WeekStyle;<br>方法or属性:weekWidth?: number;<br>旧版本信息:|类名:WeekStyle;<br>方法or属性:weekWidth?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:WeekStyle;<br>方法or属性:weekAndDayRowSpace?: number;<br>旧版本信息:|类名:WeekStyle;<br>方法or属性:weekAndDayRowSpace?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:WorkStateStyle;<br>方法or属性:workDayMarkColor?: ResourceColor;<br>旧版本信息:|类名:WorkStateStyle;<br>方法or属性:workDayMarkColor?: ResourceColor;<br>新版本信息:?ResourceColor|calendar.d.ts|
|type有变化|类名:WorkStateStyle;<br>方法or属性:offDayMarkColor?: ResourceColor;<br>旧版本信息:|类名:WorkStateStyle;<br>方法or属性:offDayMarkColor?: ResourceColor;<br>新版本信息:?ResourceColor|calendar.d.ts|
|type有变化|类名:WorkStateStyle;<br>方法or属性:workDayMarkSize?: number;<br>旧版本信息:|类名:WorkStateStyle;<br>方法or属性:workDayMarkSize?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:WorkStateStyle;<br>方法or属性:offDayMarkSize?: number;<br>旧版本信息:|类名:WorkStateStyle;<br>方法or属性:offDayMarkSize?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:WorkStateStyle;<br>方法or属性:workStateWidth?: number;<br>旧版本信息:|类名:WorkStateStyle;<br>方法or属性:workStateWidth?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:WorkStateStyle;<br>方法or属性:workStateHorizontalMovingDistance?: number;<br>旧版本信息:|类名:WorkStateStyle;<br>方法or属性:workStateHorizontalMovingDistance?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:WorkStateStyle;<br>方法or属性:workStateVerticalMovingDistance?: number;<br>旧版本信息:|类名:WorkStateStyle;<br>方法or属性:workStateVerticalMovingDistance?: number;<br>新版本信息:?number|calendar.d.ts|
|type有变化|类名:TextMetrics;<br>方法or属性:readonly actualBoundingBoxAscent: number;<br>旧版本信息:|类名:TextMetrics;<br>方法or属性:readonly actualBoundingBoxAscent: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:TextMetrics;<br>方法or属性:readonly actualBoundingBoxDescent: number;<br>旧版本信息:|类名:TextMetrics;<br>方法or属性:readonly actualBoundingBoxDescent: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:TextMetrics;<br>方法or属性:readonly actualBoundingBoxLeft: number;<br>旧版本信息:|类名:TextMetrics;<br>方法or属性:readonly actualBoundingBoxLeft: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:TextMetrics;<br>方法or属性:readonly actualBoundingBoxRight: number;<br>旧版本信息:|类名:TextMetrics;<br>方法or属性:readonly actualBoundingBoxRight: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:TextMetrics;<br>方法or属性:readonly alphabeticBaseline: number;<br>旧版本信息:|类名:TextMetrics;<br>方法or属性:readonly alphabeticBaseline: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:TextMetrics;<br>方法or属性:readonly emHeightAscent: number;<br>旧版本信息:|类名:TextMetrics;<br>方法or属性:readonly emHeightAscent: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:TextMetrics;<br>方法or属性:readonly emHeightDescent: number;<br>旧版本信息:|类名:TextMetrics;<br>方法or属性:readonly emHeightDescent: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:TextMetrics;<br>方法or属性:readonly fontBoundingBoxAscent: number;<br>旧版本信息:|类名:TextMetrics;<br>方法or属性:readonly fontBoundingBoxAscent: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:TextMetrics;<br>方法or属性:readonly fontBoundingBoxDescent: number;<br>旧版本信息:|类名:TextMetrics;<br>方法or属性:readonly fontBoundingBoxDescent: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:TextMetrics;<br>方法or属性:readonly hangingBaseline: number;<br>旧版本信息:|类名:TextMetrics;<br>方法or属性:readonly hangingBaseline: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:TextMetrics;<br>方法or属性:readonly ideographicBaseline: number;<br>旧版本信息:|类名:TextMetrics;<br>方法or属性:readonly ideographicBaseline: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:TextMetrics;<br>方法or属性:readonly width: number;<br>旧版本信息:|类名:TextMetrics;<br>方法or属性:readonly width: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:ImageBitmap;<br>方法or属性:readonly width: number;<br>旧版本信息:|类名:ImageBitmap;<br>方法or属性:readonly width: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:ImageData;<br>方法or属性:readonly width: number;<br>旧版本信息:|类名:ImageData;<br>方法or属性:readonly width: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:CanvasRenderingContext2D;<br>方法or属性:readonly width: number;<br>旧版本信息:|类名:CanvasRenderingContext2D;<br>方法or属性:readonly width: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:TextMetrics;<br>方法or属性:readonly height: number;<br>旧版本信息:|类名:TextMetrics;<br>方法or属性:readonly height: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:ImageBitmap;<br>方法or属性:readonly height: number;<br>旧版本信息:|类名:ImageBitmap;<br>方法or属性:readonly height: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:ImageData;<br>方法or属性:readonly height: number;<br>旧版本信息:|类名:ImageData;<br>方法or属性:readonly height: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:CanvasRenderingContext2D;<br>方法or属性:readonly height: number;<br>旧版本信息:|类名:CanvasRenderingContext2D;<br>方法or属性:readonly height: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:ImageData;<br>方法or属性:readonly data: Uint8ClampedArray;<br>旧版本信息:|类名:ImageData;<br>方法or属性:readonly data: Uint8ClampedArray;<br>新版本信息:Uint8ClampedArray|canvas.d.ts|
|type有变化|类名:RenderingContextSettings;<br>方法or属性:antialias?: boolean;<br>旧版本信息:|类名:RenderingContextSettings;<br>方法or属性:antialias?: boolean;<br>新版本信息:?boolean|canvas.d.ts|
|type有变化|类名:CanvasRenderer;<br>方法or属性:globalAlpha: number;<br>旧版本信息:|类名:CanvasRenderer;<br>方法or属性:globalAlpha: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:CanvasRenderer;<br>方法or属性:globalCompositeOperation: string;<br>旧版本信息:|类名:CanvasRenderer;<br>方法or属性:globalCompositeOperation: string;<br>新版本信息:string|canvas.d.ts|
|type有变化|类名:CanvasRenderer;<br>方法or属性:filter: string;<br>旧版本信息:|类名:CanvasRenderer;<br>方法or属性:filter: string;<br>新版本信息:string|canvas.d.ts|
|type有变化|类名:CanvasRenderer;<br>方法or属性:imageSmoothingEnabled: boolean;<br>旧版本信息:|类名:CanvasRenderer;<br>方法or属性:imageSmoothingEnabled: boolean;<br>新版本信息:boolean|canvas.d.ts|
|type有变化|类名:CanvasRenderer;<br>方法or属性:imageSmoothingQuality: ImageSmoothingQuality;<br>旧版本信息:|类名:CanvasRenderer;<br>方法or属性:imageSmoothingQuality: ImageSmoothingQuality;<br>新版本信息:ImageSmoothingQuality|canvas.d.ts|
|type有变化|类名:CanvasRenderer;<br>方法or属性:lineCap: CanvasLineCap;<br>旧版本信息:|类名:CanvasRenderer;<br>方法or属性:lineCap: CanvasLineCap;<br>新版本信息:CanvasLineCap|canvas.d.ts|
|type有变化|类名:CanvasRenderer;<br>方法or属性:lineDashOffset: number;<br>旧版本信息:|类名:CanvasRenderer;<br>方法or属性:lineDashOffset: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:CanvasRenderer;<br>方法or属性:lineJoin: CanvasLineJoin;<br>旧版本信息:|类名:CanvasRenderer;<br>方法or属性:lineJoin: CanvasLineJoin;<br>新版本信息:CanvasLineJoin|canvas.d.ts|
|type有变化|类名:CanvasRenderer;<br>方法or属性:lineWidth: number;<br>旧版本信息:|类名:CanvasRenderer;<br>方法or属性:lineWidth: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:CanvasRenderer;<br>方法or属性:miterLimit: number;<br>旧版本信息:|类名:CanvasRenderer;<br>方法or属性:miterLimit: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:CanvasRenderer;<br>方法or属性:shadowBlur: number;<br>旧版本信息:|类名:CanvasRenderer;<br>方法or属性:shadowBlur: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:CanvasRenderer;<br>方法or属性:shadowColor: string;<br>旧版本信息:|类名:CanvasRenderer;<br>方法or属性:shadowColor: string;<br>新版本信息:string|canvas.d.ts|
|type有变化|类名:CanvasRenderer;<br>方法or属性:shadowOffsetX: number;<br>旧版本信息:|类名:CanvasRenderer;<br>方法or属性:shadowOffsetX: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:CanvasRenderer;<br>方法or属性:shadowOffsetY: number;<br>旧版本信息:|类名:CanvasRenderer;<br>方法or属性:shadowOffsetY: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:CanvasRenderer;<br>方法or属性:font: string;<br>旧版本信息:|类名:CanvasRenderer;<br>方法or属性:font: string;<br>新版本信息:string|canvas.d.ts|
|type有变化|类名:CanvasRenderer;<br>方法or属性:textAlign: CanvasTextAlign;<br>旧版本信息:|类名:CanvasRenderer;<br>方法or属性:textAlign: CanvasTextAlign;<br>新版本信息:CanvasTextAlign|canvas.d.ts|
|type有变化|类名:CanvasRenderer;<br>方法or属性:textBaseline: CanvasTextBaseline;<br>旧版本信息:|类名:CanvasRenderer;<br>方法or属性:textBaseline: CanvasTextBaseline;<br>新版本信息:CanvasTextBaseline|canvas.d.ts|
|type有变化|类名:OffscreenCanvas;<br>方法or属性:height: number;<br>旧版本信息:|类名:OffscreenCanvas;<br>方法or属性:height: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:OffscreenCanvas;<br>方法or属性:width: number;<br>旧版本信息:|类名:OffscreenCanvas;<br>方法or属性:width: number;<br>新版本信息:number|canvas.d.ts|
|type有变化|类名:CheckboxOptions;<br>方法or属性:name?: string;<br>旧版本信息:|类名:CheckboxOptions;<br>方法or属性:name?: string;<br>新版本信息:?string|checkbox.d.ts|
|type有变化|类名:CheckboxOptions;<br>方法or属性:group?: string;<br>旧版本信息:|类名:CheckboxOptions;<br>方法or属性:group?: string;<br>新版本信息:?string|checkbox.d.ts|
|type有变化|类名:CheckboxGroupOptions;<br>方法or属性:group?: string;<br>旧版本信息:|类名:CheckboxGroupOptions;<br>方法or属性:group?: string;<br>新版本信息:?string|checkboxgroup.d.ts|
|type有变化|类名:CheckboxGroupResult;<br>方法or属性:name: Array\<string>;<br>旧版本信息:|类名:CheckboxGroupResult;<br>方法or属性:name: Array\<string>;<br>新版本信息:Array\<string>|checkboxgroup.d.ts|
|type有变化|类名:CheckboxGroupResult;<br>方法or属性:status: SelectStatus;<br>旧版本信息:|类名:CheckboxGroupResult;<br>方法or属性:status: SelectStatus;<br>新版本信息:SelectStatus|checkboxgroup.d.ts|
|type有变化|类名:CircleOptions;<br>方法or属性:width?: string \| number;<br>旧版本信息:|类名:CircleOptions;<br>方法or属性:width?: string \| number;<br>新版本信息:?(string \| number)|circle.d.ts|
|type有变化|类名:CircleOptions;<br>方法or属性:height?: string \| number;<br>旧版本信息:|类名:CircleOptions;<br>方法or属性:height?: string \| number;<br>新版本信息:?(string \| number)|circle.d.ts|
|type有变化|类名:Configuration;<br>方法or属性:readonly colorMode: string;<br>旧版本信息:|类名:Configuration;<br>方法or属性:readonly colorMode: string;<br>新版本信息:string|common.d.ts|
|type有变化|类名:Configuration;<br>方法or属性:readonly fontScale: number;<br>旧版本信息:|类名:Configuration;<br>方法or属性:readonly fontScale: number;<br>新版本信息:number|common.d.ts|
|type有变化|类名:Rectangle;<br>方法or属性:x?: Length;<br>旧版本信息:|类名:Rectangle;<br>方法or属性:x?: Length;<br>新版本信息:?Length|common.d.ts|
|type有变化|类名:Rectangle;<br>方法or属性:y?: Length;<br>旧版本信息:|类名:Rectangle;<br>方法or属性:y?: Length;<br>新版本信息:?Length|common.d.ts|
|type有变化|类名:Rectangle;<br>方法or属性:width?: Length;<br>旧版本信息:|类名:Rectangle;<br>方法or属性:width?: Length;<br>新版本信息:?Length|common.d.ts|
|type有变化|类名:Rectangle;<br>方法or属性:height?: Length;<br>旧版本信息:|类名:Rectangle;<br>方法or属性:height?: Length;<br>新版本信息:?Length|common.d.ts|
|type有变化|类名:AnimateParam;<br>方法or属性:duration?: number;<br>旧版本信息:|类名:AnimateParam;<br>方法or属性:duration?: number;<br>新版本信息:?number|common.d.ts|
|type有变化|类名:sharedTransitionOptions;<br>方法or属性:duration?: number;<br>旧版本信息:|类名:sharedTransitionOptions;<br>方法or属性:duration?: number;<br>新版本信息:?number|common.d.ts|
|type有变化|类名:AnimateParam;<br>方法or属性:tempo?: number;<br>旧版本信息:|类名:AnimateParam;<br>方法or属性:tempo?: number;<br>新版本信息:?number|common.d.ts|
|type有变化|类名:AnimateParam;<br>方法or属性:curve?: Curve \| string \| ICurve;<br>旧版本信息:string \| Curve \| ICurve|类名:AnimateParam;<br>方法or属性:curve?: Curve \| string \| ICurve;<br>新版本信息:?(Curve \| string \| ICurve)|common.d.ts|
|type有变化|类名:sharedTransitionOptions;<br>方法or属性:curve?: Curve \| string \| ICurve;<br>旧版本信息:|类名:sharedTransitionOptions;<br>方法or属性:curve?: Curve \| string \| ICurve;<br>新版本信息:?(Curve \| string \| ICurve)|common.d.ts|
|type有变化|类名:AnimateParam;<br>方法or属性:delay?: number;<br>旧版本信息:|类名:AnimateParam;<br>方法or属性:delay?: number;<br>新版本信息:?number|common.d.ts|
|type有变化|类名:sharedTransitionOptions;<br>方法or属性:delay?: number;<br>旧版本信息:|类名:sharedTransitionOptions;<br>方法or属性:delay?: number;<br>新版本信息:?number|common.d.ts|
|type有变化|类名:AnimateParam;<br>方法or属性:iterations?: number;<br>旧版本信息:|类名:AnimateParam;<br>方法or属性:iterations?: number;<br>新版本信息:?number|common.d.ts|
|type有变化|类名:AnimateParam;<br>方法or属性:playMode?: PlayMode;<br>旧版本信息:|类名:AnimateParam;<br>方法or属性:playMode?: PlayMode;<br>新版本信息:?PlayMode|common.d.ts|
|type有变化|类名:AnimateParam;<br>方法or属性:onFinish?: () => void;<br>旧版本信息:|类名:AnimateParam;<br>方法or属性:onFinish?: () => void;<br>新版本信息:?(() => void)|common.d.ts|
|type有变化|类名:MotionPathOptions;<br>方法or属性:path: string;<br>旧版本信息:|类名:MotionPathOptions;<br>方法or属性:path: string;<br>新版本信息:string|common.d.ts|
|type有变化|类名:MotionPathOptions;<br>方法or属性:from?: number;<br>旧版本信息:|类名:MotionPathOptions;<br>方法or属性:from?: number;<br>新版本信息:?number|common.d.ts|
|type有变化|类名:MotionPathOptions;<br>方法or属性:to?: number;<br>旧版本信息:|类名:MotionPathOptions;<br>方法or属性:to?: number;<br>新版本信息:?number|common.d.ts|
|type有变化|类名:MotionPathOptions;<br>方法or属性:rotatable?: boolean;<br>旧版本信息:|类名:MotionPathOptions;<br>方法or属性:rotatable?: boolean;<br>新版本信息:?boolean|common.d.ts|
|type有变化|类名:sharedTransitionOptions;<br>方法or属性:motionPath?: MotionPathOptions;<br>旧版本信息:|类名:sharedTransitionOptions;<br>方法or属性:motionPath?: MotionPathOptions;<br>新版本信息:?MotionPathOptions|common.d.ts|
|type有变化|类名:sharedTransitionOptions;<br>方法or属性:zIndex?: number;<br>旧版本信息:|类名:sharedTransitionOptions;<br>方法or属性:zIndex?: number;<br>新版本信息:?number|common.d.ts|
|type有变化|类名:sharedTransitionOptions;<br>方法or属性:type?: SharedTransitionEffectType;<br>旧版本信息:|类名:sharedTransitionOptions;<br>方法or属性:type?: SharedTransitionEffectType;<br>新版本信息:?SharedTransitionEffectType|common.d.ts|
|type有变化|类名:TranslateOptions;<br>方法or属性:y?: number \| string;<br>旧版本信息:|类名:TranslateOptions;<br>方法or属性:y?: number \| string;<br>新版本信息:?(number \| string)|common.d.ts|
|type有变化|类名:TranslateOptions;<br>方法or属性:z?: number \| string;<br>旧版本信息:|类名:TranslateOptions;<br>方法or属性:z?: number \| string;<br>新版本信息:?(number \| string)|common.d.ts|
|type有变化|类名:ScaleOptions;<br>方法or属性:x?: number;<br>旧版本信息:|类名:ScaleOptions;<br>方法or属性:x?: number;<br>新版本信息:?number|common.d.ts|
|type有变化|类名:RotateOptions;<br>方法or属性:x?: number;<br>旧版本信息:|类名:RotateOptions;<br>方法or属性:x?: number;<br>新版本信息:?number|common.d.ts|
|type有变化|类名:ScaleOptions;<br>方法or属性:y?: number;<br>旧版本信息:|类名:ScaleOptions;<br>方法or属性:y?: number;<br>新版本信息:?number|common.d.ts|
|type有变化|类名:RotateOptions;<br>方法or属性:y?: number;<br>旧版本信息:|类名:RotateOptions;<br>方法or属性:y?: number;<br>新版本信息:?number|common.d.ts|
|type有变化|类名:ScaleOptions;<br>方法or属性:z?: number;<br>旧版本信息:|类名:ScaleOptions;<br>方法or属性:z?: number;<br>新版本信息:?number|common.d.ts|
|type有变化|类名:RotateOptions;<br>方法or属性:z?: number;<br>旧版本信息:|类名:RotateOptions;<br>方法or属性:z?: number;<br>新版本信息:?number|common.d.ts|
|type有变化|类名:ScaleOptions;<br>方法or属性:centerX?: number \| string;<br>旧版本信息:|类名:ScaleOptions;<br>方法or属性:centerX?: number \| string;<br>新版本信息:?(number \| string)|common.d.ts|
|type有变化|类名:RotateOptions;<br>方法or属性:centerX?: number \| string;<br>旧版本信息:|类名:RotateOptions;<br>方法or属性:centerX?: number \| string;<br>新版本信息:?(number \| string)|common.d.ts|
|type有变化|类名:ScaleOptions;<br>方法or属性:centerY?: number \| string;<br>旧版本信息:|类名:ScaleOptions;<br>方法or属性:centerY?: number \| string;<br>新版本信息:?(number \| string)|common.d.ts|
|type有变化|类名:AlignRuleOption;<br>方法or属性:left?: { anchor: string, align: HorizontalAlign };<br>旧版本信息:|类名:AlignRuleOption;<br>方法or属性:left?: { anchor: string, align: HorizontalAlign };<br>新版本信息:?{ anchor: string, align: HorizontalAlign }|common.d.ts|
|type有变化|类名:AlignRuleOption;<br>方法or属性:right?: { anchor: string, align: HorizontalAlign };<br>旧版本信息:|类名:AlignRuleOption;<br>方法or属性:right?: { anchor: string, align: HorizontalAlign };<br>新版本信息:?{ anchor: string, align: HorizontalAlign }|common.d.ts|
|type有变化|类名:AlignRuleOption;<br>方法or属性:middle?: { anchor: string, align: HorizontalAlign };<br>旧版本信息:|类名:AlignRuleOption;<br>方法or属性:middle?: { anchor: string, align: HorizontalAlign };<br>新版本信息:?{ anchor: string, align: HorizontalAlign }|common.d.ts|
|type有变化|类名:AlignRuleOption;<br>方法or属性:top?: { anchor: string, align: VerticalAlign };<br>旧版本信息:|类名:AlignRuleOption;<br>方法or属性:top?: { anchor: string, align: VerticalAlign };<br>新版本信息:?{ anchor: string, align: VerticalAlign }|common.d.ts|
|type有变化|类名:AlignRuleOption;<br>方法or属性:bottom?: { anchor: string, align: VerticalAlign };<br>旧版本信息:|类名:AlignRuleOption;<br>方法or属性:bottom?: { anchor: string, align: VerticalAlign };<br>新版本信息:?{ anchor: string, align: VerticalAlign }|common.d.ts|
|type有变化|类名:AlignRuleOption;<br>方法or属性:center?: { anchor: string, align: VerticalAlign };<br>旧版本信息:|类名:AlignRuleOption;<br>方法or属性:center?: { anchor: string, align: VerticalAlign };<br>新版本信息:?{ anchor: string, align: VerticalAlign }|common.d.ts|
|type有变化|类名:RotateOptions;<br>方法or属性:angle: number \| string;<br>旧版本信息:|类名:RotateOptions;<br>方法or属性:angle: number \| string;<br>新版本信息:number \| string|common.d.ts|
|type有变化|类名:TransitionOptions;<br>方法or属性:type?: TransitionType;<br>旧版本信息:|类名:TransitionOptions;<br>方法or属性:type?: TransitionType;<br>新版本信息:?TransitionType|common.d.ts|
|type有变化|类名:TransitionOptions;<br>方法or属性:opacity?: number;<br>旧版本信息:|类名:TransitionOptions;<br>方法or属性:opacity?: number;<br>新版本信息:?number|common.d.ts|
|type有变化|类名:TransitionOptions;<br>方法or属性:translate?: TranslateOptions;<br>旧版本信息:|类名:TransitionOptions;<br>方法or属性:translate?: TranslateOptions;<br>新版本信息:?TranslateOptions|common.d.ts|
|type有变化|类名:TransitionOptions;<br>方法or属性:scale?: ScaleOptions;<br>旧版本信息:|类名:TransitionOptions;<br>方法or属性:scale?: ScaleOptions;<br>新版本信息:?ScaleOptions|common.d.ts|
|type有变化|类名:TransitionOptions;<br>方法or属性:rotate?: RotateOptions;<br>旧版本信息:|类名:TransitionOptions;<br>方法or属性:rotate?: RotateOptions;<br>新版本信息:?RotateOptions|common.d.ts|
|type有变化|类名:PreviewParams;<br>方法or属性:title?: string;<br>旧版本信息:|类名:PreviewParams;<br>方法or属性:title?: string;<br>新版本信息:?string|common.d.ts|
|type有变化|类名:PreviewParams;<br>方法or属性:width?: number;<br>旧版本信息:|类名:PreviewParams;<br>方法or属性:width?: number;<br>新版本信息:?number|common.d.ts|
|type有变化|类名:PreviewParams;<br>方法or属性:height?: number;<br>旧版本信息:|类名:PreviewParams;<br>方法or属性:height?: number;<br>新版本信息:?number|common.d.ts|
|type有变化|类名:PreviewParams;<br>方法or属性:locale?: string;<br>旧版本信息:|类名:PreviewParams;<br>方法or属性:locale?: string;<br>新版本信息:?string|common.d.ts|
|type有变化|类名:PreviewParams;<br>方法or属性:colorMode?: string;<br>旧版本信息:|类名:PreviewParams;<br>方法or属性:colorMode?: string;<br>新版本信息:?string|common.d.ts|
|type有变化|类名:PreviewParams;<br>方法or属性:deviceType?: string;<br>旧版本信息:|类名:PreviewParams;<br>方法or属性:deviceType?: string;<br>新版本信息:?string|common.d.ts|
|type有变化|类名:PreviewParams;<br>方法or属性:dpi?: number;<br>旧版本信息:|类名:PreviewParams;<br>方法or属性:dpi?: number;<br>新版本信息:?number|common.d.ts|
|type有变化|类名:PreviewParams;<br>方法or属性:orientation?: string;<br>旧版本信息:|类名:PreviewParams;<br>方法or属性:orientation?: string;<br>新版本信息:?string|common.d.ts|
|type有变化|类名:PreviewParams;<br>方法or属性:roundScreen?: boolean;<br>旧版本信息:|类名:PreviewParams;<br>方法or属性:roundScreen?: boolean;<br>新版本信息:?boolean|common.d.ts|
|type有变化|类名:ItemDragInfo;<br>方法or属性:x: number;<br>旧版本信息:|类名:ItemDragInfo;<br>方法or属性:x: number;<br>新版本信息:number|common.d.ts|
|type有变化|类名:ClickEvent;<br>方法or属性:x: number;<br>旧版本信息:|类名:ClickEvent;<br>方法or属性:x: number;<br>新版本信息:number|common.d.ts|
|type有变化|类名:MouseEvent;<br>方法or属性:x: number;<br>旧版本信息:|类名:MouseEvent;<br>方法or属性:x: number;<br>新版本信息:number|common.d.ts|
|type有变化|类名:TouchObject;<br>方法or属性:x: number;<br>旧版本信息:|类名:TouchObject;<br>方法or属性:x: number;<br>新版本信息:number|common.d.ts|
|type有变化|类名:ItemDragInfo;<br>方法or属性:y: number;<br>旧版本信息:|类名:ItemDragInfo;<br>方法or属性:y: number;<br>新版本信息:number|common.d.ts|
|type有变化|类名:ClickEvent;<br>方法or属性:y: number;<br>旧版本信息:|类名:ClickEvent;<br>方法or属性:y: number;<br>新版本信息:number|common.d.ts|
|type有变化|类名:MouseEvent;<br>方法or属性:y: number;<br>旧版本信息:|类名:MouseEvent;<br>方法or属性:y: number;<br>新版本信息:number|common.d.ts|
|type有变化|类名:TouchObject;<br>方法or属性:y: number;<br>旧版本信息:|类名:TouchObject;<br>方法or属性:y: number;<br>新版本信息:number|common.d.ts|
|type有变化|类名:DragItemInfo;<br>方法or属性:pixelMap?: PixelMap;<br>旧版本信息:|类名:DragItemInfo;<br>方法or属性:pixelMap?: PixelMap;<br>新版本信息:?PixelMap|common.d.ts|
|type有变化|类名:DragItemInfo;<br>方法or属性:builder?: CustomBuilder;<br>旧版本信息:|类名:DragItemInfo;<br>方法or属性:builder?: CustomBuilder;<br>新版本信息:?CustomBuilder|common.d.ts|
|type有变化|类名:DragItemInfo;<br>方法or属性:extraInfo?: string;<br>旧版本信息:|类名:DragItemInfo;<br>方法or属性:extraInfo?: string;<br>新版本信息:?string|common.d.ts|
|type有变化|类名:EventTarget;<br>方法or属性:area: Area;<br>旧版本信息:|类名:EventTarget;<br>方法or属性:area: Area;<br>新版本信息:Area|common.d.ts|
|type有变化|类名:PickerTextStyle;<br>方法or属性:color?: ResourceColor;<br>旧版本信息:ResourceColor|类名:PickerTextStyle;<br>方法or属性:color?: ResourceColor;<br>新版本信息:?ResourceColor|common.d.ts|
|type有变化|类名:PickerTextStyle;<br>方法or属性:font?: Font;<br>旧版本信息:Font|类名:PickerTextStyle;<br>方法or属性:font?: Font;<br>新版本信息:?Font|common.d.ts|
|type有变化|类名:PopupMessageOptions;<br>方法or属性:font?: Font;<br>旧版本信息:Font|类名:PopupMessageOptions;<br>方法or属性:font?: Font;<br>新版本信息:?Font|common.d.ts|
|type有变化|类名:ShadowOptions;<br>方法or属性:radius: number \| Resource;<br>旧版本信息:|类名:ShadowOptions;<br>方法or属性:radius: number \| Resource;<br>新版本信息:number \| Resource|common.d.ts|
|type有变化|类名:ShadowOptions;<br>方法or属性:type?: ShadowType;<br>旧版本信息:ShadowType|类名:ShadowOptions;<br>方法or属性:type?: ShadowType;<br>新版本信息:?ShadowType|common.d.ts|
|type有变化|类名:ShadowOptions;<br>方法or属性:color?: Color \| string \| Resource;<br>旧版本信息:|类名:ShadowOptions;<br>方法or属性:color?: Color \| string \| Resource;<br>新版本信息:?(Color \| string \| Resource)|common.d.ts|
|type有变化|类名:ShadowOptions;<br>方法or属性:offsetX?: number \| Resource;<br>旧版本信息:|类名:ShadowOptions;<br>方法or属性:offsetX?: number \| Resource;<br>新版本信息:?(number \| Resource)|common.d.ts|
|type有变化|类名:ShadowOptions;<br>方法or属性:offsetY?: number \| Resource;<br>旧版本信息:|类名:ShadowOptions;<br>方法or属性:offsetY?: number \| Resource;<br>新版本信息:?(number \| Resource)|common.d.ts|
|type有变化|类名:BaseEvent;<br>方法or属性:target: EventTarget;<br>旧版本信息:|类名:BaseEvent;<br>方法or属性:target: EventTarget;<br>新版本信息:EventTarget|common.d.ts|
|type有变化|类名:BaseEvent;<br>方法or属性:timestamp: number;<br>旧版本信息:|类名:BaseEvent;<br>方法or属性:timestamp: number;<br>新版本信息:number|common.d.ts|
|type有变化|类名:KeyEvent;<br>方法or属性:timestamp: number;<br>旧版本信息:|类名:KeyEvent;<br>方法or属性:timestamp: number;<br>新版本信息:number|common.d.ts|
|type有变化|类名:BaseEvent;<br>方法or属性:source: SourceType;<br>旧版本信息:|类名:BaseEvent;<br>方法or属性:source: SourceType;<br>新版本信息:SourceType|common.d.ts|
|type有变化|类名:BaseEvent;<br>方法or属性:pressure: number;<br>旧版本信息:|类名:BaseEvent;<br>方法or属性:pressure: number;<br>新版本信息:number|common.d.ts|
|type有变化|类名:BaseEvent;<br>方法or属性:tiltX: number;<br>旧版本信息:|类名:BaseEvent;<br>方法or属性:tiltX: number;<br>新版本信息:number|common.d.ts|
|type有变化|类名:BaseEvent;<br>方法or属性:tiltY: number;<br>旧版本信息:|类名:BaseEvent;<br>方法or属性:tiltY: number;<br>新版本信息:number|common.d.ts|
|type有变化|类名:BaseEvent;<br>方法or属性:sourceTool: SourceTool;<br>旧版本信息:|类名:BaseEvent;<br>方法or属性:sourceTool: SourceTool;<br>新版本信息:SourceTool|common.d.ts|
|type有变化|类名:BorderImageOption;<br>方法or属性:slice?: Length \| EdgeWidths,<br>旧版本信息:|类名:BorderImageOption;<br>方法or属性:slice?: Length \| EdgeWidths,<br>新版本信息:?(Length \| EdgeWidths)|common.d.ts|
|type有变化|类名:BorderImageOption;<br>方法or属性:repeat?: RepeatMode,<br>旧版本信息:|类名:BorderImageOption;<br>方法or属性:repeat?: RepeatMode,<br>新版本信息:?RepeatMode|common.d.ts|
|type有变化|类名:BorderImageOption;<br>方法or属性:source?: string \| Resource \| LinearGradient,<br>旧版本信息:|类名:BorderImageOption;<br>方法or属性:source?: string \| Resource \| LinearGradient,<br>新版本信息:?(string \| Resource \| LinearGradient)|common.d.ts|
|type有变化|类名:BorderImageOption;<br>方法or属性:width?: Length \| EdgeWidths,<br>旧版本信息:|类名:BorderImageOption;<br>方法or属性:width?: Length \| EdgeWidths,<br>新版本信息:?(Length \| EdgeWidths)|common.d.ts|
|type有变化|类名:BorderImageOption;<br>方法or属性:outset?: Length \| EdgeWidths,<br>旧版本信息:|类名:BorderImageOption;<br>方法or属性:outset?: Length \| EdgeWidths,<br>新版本信息:?(Length \| EdgeWidths)|common.d.ts|
|type有变化|类名:BorderImageOption;<br>方法or属性:fill?: boolean<br>旧版本信息:|类名:BorderImageOption;<br>方法or属性:fill?: boolean<br>新版本信息:?boolean|common.d.ts|
|type有变化|类名:ClickEvent;<br>方法or属性:screenX: number;<br>旧版本信息:|类名:ClickEvent;<br>方法or属性:screenX: number;<br>新版本信息:number|common.d.ts|
|type有变化|类名:MouseEvent;<br>方法or属性:screenX: number;<br>旧版本信息:|类名:MouseEvent;<br>方法or属性:screenX: number;<br>新版本信息:number|common.d.ts|
|type有变化|类名:TouchObject;<br>方法or属性:screenX: number;<br>旧版本信息:|类名:TouchObject;<br>方法or属性:screenX: number;<br>新版本信息:number|common.d.ts|
|type有变化|类名:ClickEvent;<br>方法or属性:screenY: number;<br>旧版本信息:|类名:ClickEvent;<br>方法or属性:screenY: number;<br>新版本信息:number|common.d.ts|
|type有变化|类名:MouseEvent;<br>方法or属性:screenY: number;<br>旧版本信息:|类名:MouseEvent;<br>方法or属性:screenY: number;<br>新版本信息:number|common.d.ts|
|type有变化|类名:TouchObject;<br>方法or属性:screenY: number;<br>旧版本信息:|类名:TouchObject;<br>方法or属性:screenY: number;<br>新版本信息:number|common.d.ts|
|type有变化|类名:MouseEvent;<br>方法or属性:button: MouseButton;<br>旧版本信息:|类名:MouseEvent;<br>方法or属性:button: MouseButton;<br>新版本信息:MouseButton|common.d.ts|
|type有变化|类名:MouseEvent;<br>方法or属性:action: MouseAction;<br>旧版本信息:|类名:MouseEvent;<br>方法or属性:action: MouseAction;<br>新版本信息:MouseAction|common.d.ts|
|type有变化|类名:MouseEvent;<br>方法or属性:stopPropagation?: () => void;<br>旧版本信息:|类名:MouseEvent;<br>方法or属性:stopPropagation?: () => void;<br>新版本信息:?(() => void)|common.d.ts|
|type有变化|类名:KeyEvent;<br>方法or属性:stopPropagation?: () => void;<br>旧版本信息:|类名:KeyEvent;<br>方法or属性:stopPropagation?: () => void;<br>新版本信息:?(() => void)|common.d.ts|
|type有变化|类名:TouchObject;<br>方法or属性:type: TouchType;<br>旧版本信息:|类名:TouchObject;<br>方法or属性:type: TouchType;<br>新版本信息:TouchType|common.d.ts|
|type有变化|类名:TouchEvent;<br>方法or属性:type: TouchType;<br>旧版本信息:|类名:TouchEvent;<br>方法or属性:type: TouchType;<br>新版本信息:TouchType|common.d.ts|
|type有变化|类名:TouchObject;<br>方法or属性:id: number;<br>旧版本信息:|类名:TouchObject;<br>方法or属性:id: number;<br>新版本信息:number|common.d.ts|
|type有变化|类名:TouchEvent;<br>方法or属性:touches: TouchObject[];<br>旧版本信息:|类名:TouchEvent;<br>方法or属性:touches: TouchObject[];<br>新版本信息:TouchObject[]|common.d.ts|
|type有变化|类名:TouchEvent;<br>方法or属性:changedTouches: TouchObject[];<br>旧版本信息:|类名:TouchEvent;<br>方法or属性:changedTouches: TouchObject[];<br>新版本信息:TouchObject[]|common.d.ts|
|type有变化|类名:DragEvent;<br>方法or属性:getX(): number;<br>旧版本信息:|类名:DragEvent;<br>方法or属性:getX(): number;<br>新版本信息:number|common.d.ts|
|type有变化|类名:DragEvent;<br>方法or属性:getY(): number;<br>旧版本信息:|类名:DragEvent;<br>方法or属性:getY(): number;<br>新版本信息:number|common.d.ts|
|type有变化|类名:KeyEvent;<br>方法or属性:type: KeyType;<br>旧版本信息:|类名:KeyEvent;<br>方法or属性:type: KeyType;<br>新版本信息:KeyType|common.d.ts|
|type有变化|类名:KeyEvent;<br>方法or属性:keyCode: number;<br>旧版本信息:|类名:KeyEvent;<br>方法or属性:keyCode: number;<br>新版本信息:number|common.d.ts|
|type有变化|类名:KeyEvent;<br>方法or属性:keyText: string;<br>旧版本信息:|类名:KeyEvent;<br>方法or属性:keyText: string;<br>新版本信息:string|common.d.ts|
|type有变化|类名:KeyEvent;<br>方法or属性:keySource: KeySource;<br>旧版本信息:|类名:KeyEvent;<br>方法or属性:keySource: KeySource;<br>新版本信息:KeySource|common.d.ts|
|type有变化|类名:KeyEvent;<br>方法or属性:deviceId: number;<br>旧版本信息:|类名:KeyEvent;<br>方法or属性:deviceId: number;<br>新版本信息:number|common.d.ts|
|type有变化|类名:KeyEvent;<br>方法or属性:metaKey: number;<br>旧版本信息:|类名:KeyEvent;<br>方法or属性:metaKey: number;<br>新版本信息:number|common.d.ts|
|type有变化|类名:StateStyles;<br>方法or属性:normal?: any;<br>旧版本信息:|类名:StateStyles;<br>方法or属性:normal?: any;<br>新版本信息:?any|common.d.ts|
|type有变化|类名:StateStyles;<br>方法or属性:pressed?: any;<br>旧版本信息:|类名:StateStyles;<br>方法or属性:pressed?: any;<br>新版本信息:?any|common.d.ts|
|type有变化|类名:StateStyles;<br>方法or属性:disabled?: any;<br>旧版本信息:|类名:StateStyles;<br>方法or属性:disabled?: any;<br>新版本信息:?any|common.d.ts|
|type有变化|类名:StateStyles;<br>方法or属性:focused?: any;<br>旧版本信息:|类名:StateStyles;<br>方法or属性:focused?: any;<br>新版本信息:?any|common.d.ts|
|type有变化|类名:StateStyles;<br>方法or属性:clicked?: any;<br>旧版本信息:|类名:StateStyles;<br>方法or属性:clicked?: any;<br>新版本信息:?any|common.d.ts|
|type有变化|类名:PopupMessageOptions;<br>方法or属性:textColor?: ResourceColor;<br>旧版本信息:ResourceColor|类名:PopupMessageOptions;<br>方法or属性:textColor?: ResourceColor;<br>新版本信息:?ResourceColor|common.d.ts|
|type有变化|类名:PopupOptions;<br>方法or属性:message: string;<br>旧版本信息:|类名:PopupOptions;<br>方法or属性:message: string;<br>新版本信息:string|common.d.ts|
|type有变化|类名:PopupOptions;<br>方法or属性:placementOnTop?: boolean;<br>旧版本信息:|类名:PopupOptions;<br>方法or属性:placementOnTop?: boolean;<br>新版本信息:?boolean|common.d.ts|
|type有变化|类名:PopupOptions;<br>方法or属性:placement?: Placement;<br>旧版本信息:Placement|类名:PopupOptions;<br>方法or属性:placement?: Placement;<br>新版本信息:?Placement|common.d.ts|
|type有变化|类名:CustomPopupOptions;<br>方法or属性:placement?: Placement;<br>旧版本信息:|类名:CustomPopupOptions;<br>方法or属性:placement?: Placement;<br>新版本信息:?Placement|common.d.ts|
|type有变化|类名:PopupOptions;<br>方法or属性:arrowOffset?: Length;<br>旧版本信息:|类名:PopupOptions;<br>方法or属性:arrowOffset?: Length;<br>新版本信息:?Length|common.d.ts|
|type有变化|类名:CustomPopupOptions;<br>方法or属性:arrowOffset?: Length;<br>旧版本信息:|类名:CustomPopupOptions;<br>方法or属性:arrowOffset?: Length;<br>新版本信息:?Length|common.d.ts|
|type有变化|类名:PopupOptions;<br>方法or属性:showInSubWindow?: boolean;<br>旧版本信息:|类名:PopupOptions;<br>方法or属性:showInSubWindow?: boolean;<br>新版本信息:?boolean|common.d.ts|
|type有变化|类名:CustomPopupOptions;<br>方法or属性:showInSubWindow?: boolean;<br>旧版本信息:|类名:CustomPopupOptions;<br>方法or属性:showInSubWindow?: boolean;<br>新版本信息:?boolean|common.d.ts|
|type有变化|类名:PopupOptions;<br>方法or属性:mask?: boolean \| { color: ResourceColor };<br>旧版本信息:|类名:PopupOptions;<br>方法or属性:mask?: boolean \| { color: ResourceColor };<br>新版本信息:?(boolean \| { color: ResourceColor })|common.d.ts|
|type有变化|类名:CustomPopupOptions;<br>方法or属性:mask?: boolean \| { color: ResourceColor };<br>旧版本信息:|类名:CustomPopupOptions;<br>方法or属性:mask?: boolean \| { color: ResourceColor };<br>新版本信息:?(boolean \| { color: ResourceColor })|common.d.ts|
|type有变化|类名:PopupOptions;<br>方法or属性:messageOptions?: PopupMessageOptions<br>旧版本信息:PopupMessageOptions|类名:PopupOptions;<br>方法or属性:messageOptions?: PopupMessageOptions<br>新版本信息:?PopupMessageOptions|common.d.ts|
|type有变化|类名:PopupOptions;<br>方法or属性:targetSpace?: Length<br>旧版本信息:Length|类名:PopupOptions;<br>方法or属性:targetSpace?: Length<br>新版本信息:?Length|common.d.ts|
|type有变化|类名:CustomPopupOptions;<br>方法or属性:targetSpace?: Length<br>旧版本信息:Length|类名:CustomPopupOptions;<br>方法or属性:targetSpace?: Length<br>新版本信息:?Length|common.d.ts|
|type有变化|类名:CustomPopupOptions;<br>方法or属性:builder: CustomBuilder;<br>旧版本信息:|类名:CustomPopupOptions;<br>方法or属性:builder: CustomBuilder;<br>新版本信息:CustomBuilder|common.d.ts|
|type有变化|类名:CustomPopupOptions;<br>方法or属性:maskColor?: Color \| string \| Resource \| number;<br>旧版本信息:|类名:CustomPopupOptions;<br>方法or属性:maskColor?: Color \| string \| Resource \| number;<br>新版本信息:?(Color \| string \| Resource \| number)|common.d.ts|
|type有变化|类名:CustomPopupOptions;<br>方法or属性:popupColor?: Color \| string \| Resource \| number;<br>旧版本信息:|类名:CustomPopupOptions;<br>方法or属性:popupColor?: Color \| string \| Resource \| number;<br>新版本信息:?(Color \| string \| Resource \| number)|common.d.ts|
|type有变化|类名:CustomPopupOptions;<br>方法or属性:enableArrow?: boolean;<br>旧版本信息:|类名:CustomPopupOptions;<br>方法or属性:enableArrow?: boolean;<br>新版本信息:?boolean|common.d.ts|
|type有变化|类名:CustomPopupOptions;<br>方法or属性:autoCancel?: boolean;<br>旧版本信息:|类名:CustomPopupOptions;<br>方法or属性:autoCancel?: boolean;<br>新版本信息:?boolean|common.d.ts|
|type有变化|类名:ContextMenuOptions;<br>方法or属性:onAppear?: () => void;<br>旧版本信息:?() => void|类名:ContextMenuOptions;<br>方法or属性:onAppear?: () => void;<br>新版本信息:?(() => void)|common.d.ts|
|type有变化|类名:ContextMenuOptions;<br>方法or属性:onDisappear?: () => void;<br>旧版本信息:?() => void|类名:ContextMenuOptions;<br>方法or属性:onDisappear?: () => void;<br>新版本信息:?(() => void)|common.d.ts|
|type有变化|类名:PixelStretchEffectOptions;<br>方法or属性:top?: Length;<br>旧版本信息:Length|类名:PixelStretchEffectOptions;<br>方法or属性:top?: Length;<br>新版本信息:?Length|common.d.ts|
|type有变化|类名:PixelStretchEffectOptions;<br>方法or属性:bottom?: Length;<br>旧版本信息:Length|类名:PixelStretchEffectOptions;<br>方法or属性:bottom?: Length;<br>新版本信息:?Length|common.d.ts|
|type有变化|类名:PixelStretchEffectOptions;<br>方法or属性:left?: Length;<br>旧版本信息:Length|类名:PixelStretchEffectOptions;<br>方法or属性:left?: Length;<br>新版本信息:?Length|common.d.ts|
|type有变化|类名:LayoutBorderInfo;<br>方法or属性:borderWidth: EdgeWidths;<br>旧版本信息:|类名:LayoutBorderInfo;<br>方法or属性:borderWidth: EdgeWidths;<br>新版本信息:EdgeWidths|common.d.ts|
|type有变化|类名:LayoutBorderInfo;<br>方法or属性:margin: Margin,<br>旧版本信息:|类名:LayoutBorderInfo;<br>方法or属性:margin: Margin,<br>新版本信息:Margin|common.d.ts|
|type有变化|类名:LayoutBorderInfo;<br>方法or属性:padding: Padding,<br>旧版本信息:|类名:LayoutBorderInfo;<br>方法or属性:padding: Padding,<br>新版本信息:Padding|common.d.ts|
|type有变化|类名:LayoutInfo;<br>方法or属性:position: Position,<br>旧版本信息:|类名:LayoutInfo;<br>方法or属性:position: Position,<br>新版本信息:Position|common.d.ts|
|type有变化|类名:LayoutChild;<br>方法or属性:position: Position,<br>旧版本信息:|类名:LayoutChild;<br>方法or属性:position: Position,<br>新版本信息:Position|common.d.ts|
|type有变化|类名:LayoutInfo;<br>方法or属性:constraint: ConstraintSizeOptions,<br>旧版本信息:|类名:LayoutInfo;<br>方法or属性:constraint: ConstraintSizeOptions,<br>新版本信息:ConstraintSizeOptions|common.d.ts|
|type有变化|类名:LayoutChild;<br>方法or属性:constraint: ConstraintSizeOptions,<br>旧版本信息:|类名:LayoutChild;<br>方法or属性:constraint: ConstraintSizeOptions,<br>新版本信息:ConstraintSizeOptions|common.d.ts|
|type有变化|类名:LayoutChild;<br>方法or属性:name: string,<br>旧版本信息:|类名:LayoutChild;<br>方法or属性:name: string,<br>新版本信息:string|common.d.ts|
|type有变化|类名:LayoutChild;<br>方法or属性:id: string,<br>旧版本信息:|类名:LayoutChild;<br>方法or属性:id: string,<br>新版本信息:string|common.d.ts|
|type有变化|类名:LayoutChild;<br>方法or属性:borderInfo: LayoutBorderInfo,<br>旧版本信息:|类名:LayoutChild;<br>方法or属性:borderInfo: LayoutBorderInfo,<br>新版本信息:LayoutBorderInfo|common.d.ts|
|type有变化|类名:SubscribedAbstractProperty;<br>方法or属性:protected subscribers_: Set\<number>;<br>旧版本信息:|类名:SubscribedAbstractProperty;<br>方法or属性:protected subscribers_: Set\<number>;<br>新版本信息:Set\<number>|common_ts_ets_api.d.ts|
|type有变化|类名:CustomDialogControllerOptions;<br>方法or属性:builder: any;<br>旧版本信息:|类名:CustomDialogControllerOptions;<br>方法or属性:builder: any;<br>新版本信息:any|custom_dialog_controller.d.ts|
|type有变化|类名:CustomDialogControllerOptions;<br>方法or属性:cancel?: () => void;<br>旧版本信息:|类名:CustomDialogControllerOptions;<br>方法or属性:cancel?: () => void;<br>新版本信息:?(() => void)|custom_dialog_controller.d.ts|
|type有变化|类名:CustomDialogControllerOptions;<br>方法or属性:autoCancel?: boolean;<br>旧版本信息:|类名:CustomDialogControllerOptions;<br>方法or属性:autoCancel?: boolean;<br>新版本信息:?boolean|custom_dialog_controller.d.ts|
|type有变化|类名:CustomDialogControllerOptions;<br>方法or属性:alignment?: DialogAlignment;<br>旧版本信息:|类名:CustomDialogControllerOptions;<br>方法or属性:alignment?: DialogAlignment;<br>新版本信息:?DialogAlignment|custom_dialog_controller.d.ts|
|type有变化|类名:CustomDialogControllerOptions;<br>方法or属性:offset?: Offset;<br>旧版本信息:|类名:CustomDialogControllerOptions;<br>方法or属性:offset?: Offset;<br>新版本信息:?Offset|custom_dialog_controller.d.ts|
|type有变化|类名:CustomDialogControllerOptions;<br>方法or属性:customStyle?: boolean;<br>旧版本信息:|类名:CustomDialogControllerOptions;<br>方法or属性:customStyle?: boolean;<br>新版本信息:?boolean|custom_dialog_controller.d.ts|
|type有变化|类名:CustomDialogControllerOptions;<br>方法or属性:gridCount?: number;<br>旧版本信息:|类名:CustomDialogControllerOptions;<br>方法or属性:gridCount?: number;<br>新版本信息:?number|custom_dialog_controller.d.ts|
|type有变化|类名:CustomDialogControllerOptions;<br>方法or属性:maskColor?: ResourceColor;<br>旧版本信息:|类名:CustomDialogControllerOptions;<br>方法or属性:maskColor?: ResourceColor;<br>新版本信息:?ResourceColor|custom_dialog_controller.d.ts|
|type有变化|类名:CustomDialogControllerOptions;<br>方法or属性:openAnimation?: AnimateParam;<br>旧版本信息:|类名:CustomDialogControllerOptions;<br>方法or属性:openAnimation?: AnimateParam;<br>新版本信息:?AnimateParam|custom_dialog_controller.d.ts|
|type有变化|类名:CustomDialogControllerOptions;<br>方法or属性:closeAnimation?: AnimateParam;<br>旧版本信息:|类名:CustomDialogControllerOptions;<br>方法or属性:closeAnimation?: AnimateParam;<br>新版本信息:?AnimateParam|custom_dialog_controller.d.ts|
|type有变化|类名:CustomDialogControllerOptions;<br>方法or属性:showInSubWindow?: boolean;<br>旧版本信息:boolean|类名:CustomDialogControllerOptions;<br>方法or属性:showInSubWindow?: boolean;<br>新版本信息:?boolean|custom_dialog_controller.d.ts|
|type有变化|类名:DataPanelOptions;<br>方法or属性:values: number[];<br>旧版本信息:|类名:DataPanelOptions;<br>方法or属性:values: number[];<br>新版本信息:number[]|data_panel.d.ts|
|type有变化|类名:DataPanelOptions;<br>方法or属性:max?: number;<br>旧版本信息:|类名:DataPanelOptions;<br>方法or属性:max?: number;<br>新版本信息:?number|data_panel.d.ts|
|type有变化|类名:DataPanelOptions;<br>方法or属性:type?: DataPanelType;<br>旧版本信息:|类名:DataPanelOptions;<br>方法or属性:type?: DataPanelType;<br>新版本信息:?DataPanelType|data_panel.d.ts|
|type有变化|类名:DatePickerResult;<br>方法or属性:year?: number;<br>旧版本信息:|类名:DatePickerResult;<br>方法or属性:year?: number;<br>新版本信息:?number|date_picker.d.ts|
|type有变化|类名:DatePickerResult;<br>方法or属性:month?: number;<br>旧版本信息:|类名:DatePickerResult;<br>方法or属性:month?: number;<br>新版本信息:?number|date_picker.d.ts|
|type有变化|类名:DatePickerResult;<br>方法or属性:day?: number;<br>旧版本信息:|类名:DatePickerResult;<br>方法or属性:day?: number;<br>新版本信息:?number|date_picker.d.ts|
|type有变化|类名:DatePickerOptions;<br>方法or属性:start?: Date;<br>旧版本信息:|类名:DatePickerOptions;<br>方法or属性:start?: Date;<br>新版本信息:?Date|date_picker.d.ts|
|type有变化|类名:DatePickerOptions;<br>方法or属性:end?: Date;<br>旧版本信息:|类名:DatePickerOptions;<br>方法or属性:end?: Date;<br>新版本信息:?Date|date_picker.d.ts|
|type有变化|类名:DatePickerOptions;<br>方法or属性:selected?: Date;<br>旧版本信息:|类名:DatePickerOptions;<br>方法or属性:selected?: Date;<br>新版本信息:?Date|date_picker.d.ts|
|type有变化|类名:DatePickerDialogOptions;<br>方法or属性:lunar?: boolean;<br>旧版本信息:|类名:DatePickerDialogOptions;<br>方法or属性:lunar?: boolean;<br>新版本信息:?boolean|date_picker.d.ts|
|type有变化|类名:DatePickerDialogOptions;<br>方法or属性:showTime?: boolean;<br>旧版本信息:boolean|类名:DatePickerDialogOptions;<br>方法or属性:showTime?: boolean;<br>新版本信息:?boolean|date_picker.d.ts|
|type有变化|类名:DatePickerDialogOptions;<br>方法or属性:useMilitaryTime?: boolean;<br>旧版本信息:boolean|类名:DatePickerDialogOptions;<br>方法or属性:useMilitaryTime?: boolean;<br>新版本信息:?boolean|date_picker.d.ts|
|type有变化|类名:DatePickerDialogOptions;<br>方法or属性:disappearTextStyle?: PickerTextStyle;<br>旧版本信息:PickerTextStyle|类名:DatePickerDialogOptions;<br>方法or属性:disappearTextStyle?: PickerTextStyle;<br>新版本信息:?PickerTextStyle|date_picker.d.ts|
|type有变化|类名:DatePickerDialogOptions;<br>方法or属性:textStyle?: PickerTextStyle;<br>旧版本信息:PickerTextStyle|类名:DatePickerDialogOptions;<br>方法or属性:textStyle?: PickerTextStyle;<br>新版本信息:?PickerTextStyle|date_picker.d.ts|
|type有变化|类名:DatePickerDialogOptions;<br>方法or属性:selectedTextStyle?: PickerTextStyle;<br>旧版本信息:PickerTextStyle|类名:DatePickerDialogOptions;<br>方法or属性:selectedTextStyle?: PickerTextStyle;<br>新版本信息:?PickerTextStyle|date_picker.d.ts|
|type有变化|类名:DatePickerDialogOptions;<br>方法or属性:onAccept?: (value: DatePickerResult) => void;<br>旧版本信息:|类名:DatePickerDialogOptions;<br>方法or属性:onAccept?: (value: DatePickerResult) => void;<br>新版本信息:?((value: DatePickerResult) => void)|date_picker.d.ts|
|type有变化|类名:DatePickerDialogOptions;<br>方法or属性:onCancel?: () => void;<br>旧版本信息:|类名:DatePickerDialogOptions;<br>方法or属性:onCancel?: () => void;<br>新版本信息:?(() => void)|date_picker.d.ts|
|type有变化|类名:DatePickerDialogOptions;<br>方法or属性:onChange?: (value: DatePickerResult) => void;<br>旧版本信息:|类名:DatePickerDialogOptions;<br>方法or属性:onChange?: (value: DatePickerResult) => void;<br>新版本信息:?((value: DatePickerResult) => void)|date_picker.d.ts|
|type有变化|类名:FlexOptions;<br>方法or属性:direction?: FlexDirection;<br>旧版本信息:|类名:FlexOptions;<br>方法or属性:direction?: FlexDirection;<br>新版本信息:?FlexDirection|flex.d.ts|
|type有变化|类名:FlexOptions;<br>方法or属性:wrap?: FlexWrap;<br>旧版本信息:|类名:FlexOptions;<br>方法or属性:wrap?: FlexWrap;<br>新版本信息:?FlexWrap|flex.d.ts|
|type有变化|类名:FlexOptions;<br>方法or属性:justifyContent?: FlexAlign;<br>旧版本信息:|类名:FlexOptions;<br>方法or属性:justifyContent?: FlexAlign;<br>新版本信息:?FlexAlign|flex.d.ts|
|type有变化|类名:FlexOptions;<br>方法or属性:alignItems?: ItemAlign;<br>旧版本信息:|类名:FlexOptions;<br>方法or属性:alignItems?: ItemAlign;<br>新版本信息:?ItemAlign|flex.d.ts|
|type有变化|类名:FlexOptions;<br>方法or属性:alignContent?: FlexAlign;<br>旧版本信息:|类名:FlexOptions;<br>方法or属性:alignContent?: FlexAlign;<br>新版本信息:?FlexAlign|flex.d.ts|
|type有变化|类名:FingerInfo;<br>方法or属性:id: number;<br>旧版本信息:|类名:FingerInfo;<br>方法or属性:id: number;<br>新版本信息:number|gesture.d.ts|
|type有变化|类名:FingerInfo;<br>方法or属性:globalX: number;<br>旧版本信息:|类名:FingerInfo;<br>方法or属性:globalX: number;<br>新版本信息:number|gesture.d.ts|
|type有变化|类名:FingerInfo;<br>方法or属性:globalY: number;<br>旧版本信息:|类名:FingerInfo;<br>方法or属性:globalY: number;<br>新版本信息:number|gesture.d.ts|
|type有变化|类名:FingerInfo;<br>方法or属性:localX: number;<br>旧版本信息:|类名:FingerInfo;<br>方法or属性:localX: number;<br>新版本信息:number|gesture.d.ts|
|type有变化|类名:FingerInfo;<br>方法or属性:localY: number;<br>旧版本信息:|类名:FingerInfo;<br>方法or属性:localY: number;<br>新版本信息:number|gesture.d.ts|
|type有变化|类名:GestureEvent;<br>方法or属性:repeat: boolean;<br>旧版本信息:|类名:GestureEvent;<br>方法or属性:repeat: boolean;<br>新版本信息:boolean|gesture.d.ts|
|type有变化|类名:GestureEvent;<br>方法or属性:fingerList: FingerInfo[];<br>旧版本信息:|类名:GestureEvent;<br>方法or属性:fingerList: FingerInfo[];<br>新版本信息:FingerInfo[]|gesture.d.ts|
|type有变化|类名:GestureEvent;<br>方法or属性:offsetX: number;<br>旧版本信息:|类名:GestureEvent;<br>方法or属性:offsetX: number;<br>新版本信息:number|gesture.d.ts|
|type有变化|类名:GestureEvent;<br>方法or属性:offsetY: number;<br>旧版本信息:|类名:GestureEvent;<br>方法or属性:offsetY: number;<br>新版本信息:number|gesture.d.ts|
|type有变化|类名:GestureEvent;<br>方法or属性:angle: number;<br>旧版本信息:|类名:GestureEvent;<br>方法or属性:angle: number;<br>新版本信息:number|gesture.d.ts|
|type有变化|类名:GestureEvent;<br>方法or属性:speed: number;<br>旧版本信息:|类名:GestureEvent;<br>方法or属性:speed: number;<br>新版本信息:number|gesture.d.ts|
|type有变化|类名:GestureEvent;<br>方法or属性:scale: number;<br>旧版本信息:|类名:GestureEvent;<br>方法or属性:scale: number;<br>新版本信息:number|gesture.d.ts|
|type有变化|类名:GestureEvent;<br>方法or属性:pinchCenterX: number;<br>旧版本信息:|类名:GestureEvent;<br>方法or属性:pinchCenterX: number;<br>新版本信息:number|gesture.d.ts|
|type有变化|类名:GestureEvent;<br>方法or属性:pinchCenterY: number;<br>旧版本信息:|类名:GestureEvent;<br>方法or属性:pinchCenterY: number;<br>新版本信息:number|gesture.d.ts|
|type有变化|类名:GridColColumnOption;<br>方法or属性:xs?: number,<br>旧版本信息:|类名:GridColColumnOption;<br>方法or属性:xs?: number,<br>新版本信息:?number|grid_col.d.ts|
|type有变化|类名:GridColColumnOption;<br>方法or属性:sm?: number,<br>旧版本信息:|类名:GridColColumnOption;<br>方法or属性:sm?: number,<br>新版本信息:?number|grid_col.d.ts|
|type有变化|类名:GridColColumnOption;<br>方法or属性:md?: number,<br>旧版本信息:|类名:GridColColumnOption;<br>方法or属性:md?: number,<br>新版本信息:?number|grid_col.d.ts|
|type有变化|类名:GridColColumnOption;<br>方法or属性:lg?: number,<br>旧版本信息:|类名:GridColColumnOption;<br>方法or属性:lg?: number,<br>新版本信息:?number|grid_col.d.ts|
|type有变化|类名:GridColColumnOption;<br>方法or属性:xl?: number,<br>旧版本信息:|类名:GridColColumnOption;<br>方法or属性:xl?: number,<br>新版本信息:?number|grid_col.d.ts|
|type有变化|类名:GridColColumnOption;<br>方法or属性:xxl?: number,<br>旧版本信息:|类名:GridColColumnOption;<br>方法or属性:xxl?: number,<br>新版本信息:?number|grid_col.d.ts|
|type有变化|类名:GridColOptions;<br>方法or属性:span?: number \| GridColColumnOption;<br>旧版本信息:|类名:GridColOptions;<br>方法or属性:span?: number \| GridColColumnOption;<br>新版本信息:?(number \| GridColColumnOption)|grid_col.d.ts|
|type有变化|类名:GridColOptions;<br>方法or属性:offset?: number \| GridColColumnOption;<br>旧版本信息:|类名:GridColOptions;<br>方法or属性:offset?: number \| GridColColumnOption;<br>新版本信息:?(number \| GridColColumnOption)|grid_col.d.ts|
|type有变化|类名:GridColOptions;<br>方法or属性:order?: number \| GridColColumnOption;<br>旧版本信息:|类名:GridColOptions;<br>方法or属性:order?: number \| GridColColumnOption;<br>新版本信息:?(number \| GridColColumnOption)|grid_col.d.ts|
|type有变化|类名:GridContainerOptions;<br>方法or属性:columns?: number \| "auto";<br>旧版本信息:|类名:GridContainerOptions;<br>方法or属性:columns?: number \| "auto";<br>新版本信息:?(number \| "auto")|grid_container.d.ts|
|type有变化|类名:GridContainerOptions;<br>方法or属性:sizeType?: SizeType;<br>旧版本信息:|类名:GridContainerOptions;<br>方法or属性:sizeType?: SizeType;<br>新版本信息:?SizeType|grid_container.d.ts|
|type有变化|类名:GridContainerOptions;<br>方法or属性:gutter?: number \| string;<br>旧版本信息:|类名:GridContainerOptions;<br>方法or属性:gutter?: number \| string;<br>新版本信息:?(number \| string)|grid_container.d.ts|
|type有变化|类名:GridContainerOptions;<br>方法or属性:margin?: number \| string;<br>旧版本信息:|类名:GridContainerOptions;<br>方法or属性:margin?: number \| string;<br>新版本信息:?(number \| string)|grid_container.d.ts|
|type有变化|类名:GridRowSizeOption;<br>方法or属性:xs?: Length,<br>旧版本信息:|类名:GridRowSizeOption;<br>方法or属性:xs?: Length,<br>新版本信息:?Length|grid_row.d.ts|
|type有变化|类名:GridRowSizeOption;<br>方法or属性:sm?: Length,<br>旧版本信息:|类名:GridRowSizeOption;<br>方法or属性:sm?: Length,<br>新版本信息:?Length|grid_row.d.ts|
|type有变化|类名:GridRowSizeOption;<br>方法or属性:md?: Length,<br>旧版本信息:|类名:GridRowSizeOption;<br>方法or属性:md?: Length,<br>新版本信息:?Length|grid_row.d.ts|
|type有变化|类名:GridRowSizeOption;<br>方法or属性:lg?: Length,<br>旧版本信息:|类名:GridRowSizeOption;<br>方法or属性:lg?: Length,<br>新版本信息:?Length|grid_row.d.ts|
|type有变化|类名:GridRowSizeOption;<br>方法or属性:xl?: Length,<br>旧版本信息:|类名:GridRowSizeOption;<br>方法or属性:xl?: Length,<br>新版本信息:?Length|grid_row.d.ts|
|type有变化|类名:GridRowColumnOption;<br>方法or属性:xs?: number,<br>旧版本信息:|类名:GridRowColumnOption;<br>方法or属性:xs?: number,<br>新版本信息:?number|grid_row.d.ts|
|type有变化|类名:GridRowColumnOption;<br>方法or属性:sm?: number,<br>旧版本信息:|类名:GridRowColumnOption;<br>方法or属性:sm?: number,<br>新版本信息:?number|grid_row.d.ts|
|type有变化|类名:GridRowColumnOption;<br>方法or属性:md?: number,<br>旧版本信息:|类名:GridRowColumnOption;<br>方法or属性:md?: number,<br>新版本信息:?number|grid_row.d.ts|
|type有变化|类名:GridRowColumnOption;<br>方法or属性:lg?: number,<br>旧版本信息:|类名:GridRowColumnOption;<br>方法or属性:lg?: number,<br>新版本信息:?number|grid_row.d.ts|
|type有变化|类名:GridRowColumnOption;<br>方法or属性:xl?: number,<br>旧版本信息:|类名:GridRowColumnOption;<br>方法or属性:xl?: number,<br>新版本信息:?number|grid_row.d.ts|
|type有变化|类名:GutterOption;<br>方法or属性:x?: Length \| GridRowSizeOption,<br>旧版本信息:|类名:GutterOption;<br>方法or属性:x?: Length \| GridRowSizeOption,<br>新版本信息:?(Length \| GridRowSizeOption)|grid_row.d.ts|
|type有变化|类名:GutterOption;<br>方法or属性:y?: Length \| GridRowSizeOption<br>旧版本信息:|类名:GutterOption;<br>方法or属性:y?: Length \| GridRowSizeOption<br>新版本信息:?(Length \| GridRowSizeOption)|grid_row.d.ts|
|type有变化|类名:BreakPoints;<br>方法or属性:value?: Array\<string>,<br>旧版本信息:|类名:BreakPoints;<br>方法or属性:value?: Array\<string>,<br>新版本信息:?Array\<string>|grid_row.d.ts|
|type有变化|类名:BreakPoints;<br>方法or属性:reference?: BreakpointsReference,<br>旧版本信息:|类名:BreakPoints;<br>方法or属性:reference?: BreakpointsReference,<br>新版本信息:?BreakpointsReference|grid_row.d.ts|
|type有变化|类名:GridRowOptions;<br>方法or属性:gutter?: Length \| GutterOption;<br>旧版本信息:|类名:GridRowOptions;<br>方法or属性:gutter?: Length \| GutterOption;<br>新版本信息:?(Length \| GutterOption)|grid_row.d.ts|
|type有变化|类名:GridRowOptions;<br>方法or属性:columns?: number \| GridRowColumnOption;<br>旧版本信息:|类名:GridRowOptions;<br>方法or属性:columns?: number \| GridRowColumnOption;<br>新版本信息:?(number \| GridRowColumnOption)|grid_row.d.ts|
|type有变化|类名:GridRowOptions;<br>方法or属性:breakpoints?: BreakPoints;<br>旧版本信息:|类名:GridRowOptions;<br>方法or属性:breakpoints?: BreakPoints;<br>新版本信息:?BreakPoints|grid_row.d.ts|
|type有变化|类名:GridRowOptions;<br>方法or属性:direction?: GridRowDirection;<br>旧版本信息:|类名:GridRowOptions;<br>方法or属性:direction?: GridRowDirection;<br>新版本信息:?GridRowDirection|grid_row.d.ts|
|type有变化|类名:ImageFrameInfo;<br>方法or属性:width?: number \| string;<br>旧版本信息:|类名:ImageFrameInfo;<br>方法or属性:width?: number \| string;<br>新版本信息:?(number \| string)|image_animator.d.ts|
|type有变化|类名:ImageFrameInfo;<br>方法or属性:height?: number \| string;<br>旧版本信息:|类名:ImageFrameInfo;<br>方法or属性:height?: number \| string;<br>新版本信息:?(number \| string)|image_animator.d.ts|
|type有变化|类名:ImageFrameInfo;<br>方法or属性:top?: number \| string;<br>旧版本信息:|类名:ImageFrameInfo;<br>方法or属性:top?: number \| string;<br>新版本信息:?(number \| string)|image_animator.d.ts|
|type有变化|类名:ImageFrameInfo;<br>方法or属性:left?: number \| string;<br>旧版本信息:|类名:ImageFrameInfo;<br>方法or属性:left?: number \| string;<br>新版本信息:?(number \| string)|image_animator.d.ts|
|type有变化|类名:ImageFrameInfo;<br>方法or属性:duration?: number;<br>旧版本信息:|类名:ImageFrameInfo;<br>方法or属性:duration?: number;<br>新版本信息:?number|image_animator.d.ts|
|type有变化|类名:ChainAnimationOptions;<br>方法or属性:conductivity?: number;<br>旧版本信息:number|类名:ChainAnimationOptions;<br>方法or属性:conductivity?: number;<br>新版本信息:?number|list.d.ts|
|type有变化|类名:ChainAnimationOptions;<br>方法or属性:intensity?: number;<br>旧版本信息:number|类名:ChainAnimationOptions;<br>方法or属性:intensity?: number;<br>新版本信息:?number|list.d.ts|
|type有变化|类名:ChainAnimationOptions;<br>方法or属性:edgeEffect?: ChainEdgeEffect;<br>旧版本信息:ChainEdgeEffect|类名:ChainAnimationOptions;<br>方法or属性:edgeEffect?: ChainEdgeEffect;<br>新版本信息:?ChainEdgeEffect|list.d.ts|
|type有变化|类名:SwipeActionOptions;<br>方法or属性:start?: CustomBuilder \| SwipeActionItem;<br>旧版本信息:|类名:SwipeActionOptions;<br>方法or属性:start?: CustomBuilder \| SwipeActionItem;<br>新版本信息:?(CustomBuilder \| SwipeActionItem)|list_item.d.ts|
|type有变化|类名:SwipeActionOptions;<br>方法or属性:end?: CustomBuilder \| SwipeActionItem;<br>旧版本信息:|类名:SwipeActionOptions;<br>方法or属性:end?: CustomBuilder \| SwipeActionItem;<br>新版本信息:?(CustomBuilder \| SwipeActionItem)|list_item.d.ts|
|type有变化|类名:SwipeActionOptions;<br>方法or属性:edgeEffect?: SwipeEdgeEffect;<br>旧版本信息:|类名:SwipeActionOptions;<br>方法or属性:edgeEffect?: SwipeEdgeEffect;<br>新版本信息:?SwipeEdgeEffect|list_item.d.ts|
|type有变化|类名:ListItemGroupOptions;<br>方法or属性:header?: CustomBuilder;<br>旧版本信息:|类名:ListItemGroupOptions;<br>方法or属性:header?: CustomBuilder;<br>新版本信息:?CustomBuilder|list_item_group.d.ts|
|type有变化|类名:ListItemGroupOptions;<br>方法or属性:footer?: CustomBuilder;<br>旧版本信息:|类名:ListItemGroupOptions;<br>方法or属性:footer?: CustomBuilder;<br>新版本信息:?CustomBuilder|list_item_group.d.ts|
|type有变化|类名:ListItemGroupOptions;<br>方法or属性:space?: number \| string;<br>旧版本信息:|类名:ListItemGroupOptions;<br>方法or属性:space?: number \| string;<br>新版本信息:?(number \| string)|list_item_group.d.ts|
|type有变化|类名:Matrix2D;<br>方法or属性:scaleX?: number;<br>旧版本信息:|类名:Matrix2D;<br>方法or属性:scaleX?: number;<br>新版本信息:?number|matrix2d.d.ts|
|type有变化|类名:Matrix2D;<br>方法or属性:rotateY?: number;<br>旧版本信息:|类名:Matrix2D;<br>方法or属性:rotateY?: number;<br>新版本信息:?number|matrix2d.d.ts|
|type有变化|类名:Matrix2D;<br>方法or属性:rotateX?: number;<br>旧版本信息:|类名:Matrix2D;<br>方法or属性:rotateX?: number;<br>新版本信息:?number|matrix2d.d.ts|
|type有变化|类名:Matrix2D;<br>方法or属性:scaleY?: number;<br>旧版本信息:|类名:Matrix2D;<br>方法or属性:scaleY?: number;<br>新版本信息:?number|matrix2d.d.ts|
|type有变化|类名:Matrix2D;<br>方法or属性:translateX?: number;<br>旧版本信息:|类名:Matrix2D;<br>方法or属性:translateX?: number;<br>新版本信息:?number|matrix2d.d.ts|
|type有变化|类名:Matrix2D;<br>方法or属性:translateY?: number;<br>旧版本信息:|类名:Matrix2D;<br>方法or属性:translateY?: number;<br>新版本信息:?number|matrix2d.d.ts|
|type有变化|类名:MenuItemOptions;<br>方法or属性:startIcon?: ResourceStr;<br>旧版本信息:|类名:MenuItemOptions;<br>方法or属性:startIcon?: ResourceStr;<br>新版本信息:?ResourceStr|menu_item.d.ts|
|type有变化|类名:MenuItemOptions;<br>方法or属性:content?: ResourceStr;<br>旧版本信息:|类名:MenuItemOptions;<br>方法or属性:content?: ResourceStr;<br>新版本信息:?ResourceStr|menu_item.d.ts|
|type有变化|类名:MenuItemOptions;<br>方法or属性:endIcon?: ResourceStr;<br>旧版本信息:|类名:MenuItemOptions;<br>方法or属性:endIcon?: ResourceStr;<br>新版本信息:?ResourceStr|menu_item.d.ts|
|type有变化|类名:MenuItemOptions;<br>方法or属性:labelInfo?: ResourceStr;<br>旧版本信息:|类名:MenuItemOptions;<br>方法or属性:labelInfo?: ResourceStr;<br>新版本信息:?ResourceStr|menu_item.d.ts|
|type有变化|类名:MenuItemOptions;<br>方法or属性:builder?: CustomBuilder;<br>旧版本信息:|类名:MenuItemOptions;<br>方法or属性:builder?: CustomBuilder;<br>新版本信息:?CustomBuilder|menu_item.d.ts|
|type有变化|类名:MenuItemGroupOptions;<br>方法or属性:header?: ResourceStr \| CustomBuilder;<br>旧版本信息:|类名:MenuItemGroupOptions;<br>方法or属性:header?: ResourceStr \| CustomBuilder;<br>新版本信息:?(ResourceStr \| CustomBuilder)|menu_item_group.d.ts|
|type有变化|类名:MenuItemGroupOptions;<br>方法or属性:footer?: ResourceStr \| CustomBuilder;<br>旧版本信息:|类名:MenuItemGroupOptions;<br>方法or属性:footer?: ResourceStr \| CustomBuilder;<br>新版本信息:?(ResourceStr \| CustomBuilder)|menu_item_group.d.ts|
|type有变化|类名:NavigationCommonTitle;<br>方法or属性:main: string;<br>旧版本信息:|类名:NavigationCommonTitle;<br>方法or属性:main: string;<br>新版本信息:string|navigation.d.ts|
|type有变化|类名:NavigationCommonTitle;<br>方法or属性:sub: string;<br>旧版本信息:|类名:NavigationCommonTitle;<br>方法or属性:sub: string;<br>新版本信息:string|navigation.d.ts|
|type有变化|类名:NavigationCustomTitle;<br>方法or属性:builder: CustomBuilder;<br>旧版本信息:|类名:NavigationCustomTitle;<br>方法or属性:builder: CustomBuilder;<br>新版本信息:CustomBuilder|navigation.d.ts|
|type有变化|类名:NavigationCustomTitle;<br>方法or属性:height: TitleHeight \| Length;<br>旧版本信息:|类名:NavigationCustomTitle;<br>方法or属性:height: TitleHeight \| Length;<br>新版本信息:TitleHeight \| Length|navigation.d.ts|
|type有变化|类名:NavigationMenuItem;<br>方法or属性:value: string;<br>旧版本信息:|类名:NavigationMenuItem;<br>方法or属性:value: string;<br>新版本信息:string|navigation.d.ts|
|type有变化|类名:NavigationMenuItem;<br>方法or属性:icon?: string;<br>旧版本信息:|类名:NavigationMenuItem;<br>方法or属性:icon?: string;<br>新版本信息:?string|navigation.d.ts|
|type有变化|类名:NavigationMenuItem;<br>方法or属性:action?: () => void;<br>旧版本信息:|类名:NavigationMenuItem;<br>方法or属性:action?: () => void;<br>新版本信息:?(() => void)|navigation.d.ts|
|type有变化|类名:NavPathInfo;<br>方法or属性:param?: unknown;<br>旧版本信息:unknown|类名:NavPathInfo;<br>方法or属性:param?: unknown;<br>新版本信息:?unknown|navigation.d.ts|
|type有变化|类名:NavigationAttribute;<br>方法or属性:title(value: ResourceStr \| CustomBuilder \| NavigationCommonTitle \| NavigationCustomTitle): NavigationAttribute;<br>旧版本信息:(ResourceStr \| CustomBuilder \| NavigationCommonTitle \| NavigationCustomTitle)|类名:NavigationAttribute;<br>方法or属性:title(value: ResourceStr \| CustomBuilder \| NavigationCommonTitle \| NavigationCustomTitle): NavigationAttribute;<br>新版本信息:|navigation.d.ts|
|type有变化|类名:NavDestinationCommonTitle;<br>方法or属性:main: string;<br>旧版本信息:|类名:NavDestinationCommonTitle;<br>方法or属性:main: string;<br>新版本信息:string|nav_destination.d.ts|
|type有变化|类名:NavDestinationCommonTitle;<br>方法or属性:sub: string;<br>旧版本信息:|类名:NavDestinationCommonTitle;<br>方法or属性:sub: string;<br>新版本信息:string|nav_destination.d.ts|
|type有变化|类名:NavDestinationCustomTitle;<br>方法or属性:builder: CustomBuilder;<br>旧版本信息:|类名:NavDestinationCustomTitle;<br>方法or属性:builder: CustomBuilder;<br>新版本信息:CustomBuilder|nav_destination.d.ts|
|type有变化|类名:NavDestinationCustomTitle;<br>方法or属性:height: TitleHeight \| Length;<br>旧版本信息:|类名:NavDestinationCustomTitle;<br>方法or属性:height: TitleHeight \| Length;<br>新版本信息:TitleHeight \| Length|nav_destination.d.ts|
|type有变化|类名:RouteInfo;<br>方法or属性:param?: unknown;<br>旧版本信息:unknown|类名:RouteInfo;<br>方法or属性:param?: unknown;<br>新版本信息:?unknown|nav_router.d.ts|
|type有变化|类名:PluginComponentTemplate;<br>方法or属性:source: string;<br>旧版本信息:|类名:PluginComponentTemplate;<br>方法or属性:source: string;<br>新版本信息:string|plugin_component.d.ts|
|type有变化|类名:PluginComponentTemplate;<br>方法or属性:bundleName: string;<br>旧版本信息:|类名:PluginComponentTemplate;<br>方法or属性:bundleName: string;<br>新版本信息:string|plugin_component.d.ts|
|type有变化|类名:ProgressOptions;<br>方法or属性:value: number;<br>旧版本信息:|类名:ProgressOptions;<br>方法or属性:value: number;<br>新版本信息:number|progress.d.ts|
|type有变化|类名:ProgressOptions;<br>方法or属性:total?: number;<br>旧版本信息:|类名:ProgressOptions;<br>方法or属性:total?: number;<br>新版本信息:?number|progress.d.ts|
|type有变化|类名:ProgressOptions;<br>方法or属性:style?: ProgressStyle<br>旧版本信息:|类名:ProgressOptions;<br>方法or属性:style?: ProgressStyle<br>新版本信息:?ProgressStyle|progress.d.ts|
|type有变化|类名:ProgressOptions;<br>方法or属性:type?: Type<br>旧版本信息:|类名:ProgressOptions;<br>方法or属性:type?: Type<br>新版本信息:?Type|progress.d.ts|
|type有变化|类名:ProgressStyleOptions;<br>方法or属性:strokeWidth?: Length;<br>旧版本信息:|类名:ProgressStyleOptions;<br>方法or属性:strokeWidth?: Length;<br>新版本信息:?Length|progress.d.ts|
|type有变化|类名:ProgressStyleOptions;<br>方法or属性:scaleCount?: number;<br>旧版本信息:|类名:ProgressStyleOptions;<br>方法or属性:scaleCount?: number;<br>新版本信息:?number|progress.d.ts|
|type有变化|类名:ProgressStyleOptions;<br>方法or属性:scaleWidth?: Length;<br>旧版本信息:|类名:ProgressStyleOptions;<br>方法or属性:scaleWidth?: Length;<br>新版本信息:?Length|progress.d.ts|
|type有变化|类名:RadioOptions;<br>方法or属性:group: string;<br>旧版本信息:|类名:RadioOptions;<br>方法or属性:group: string;<br>新版本信息:string|radio.d.ts|
|type有变化|类名:RadioOptions;<br>方法or属性:value: string;<br>旧版本信息:|类名:RadioOptions;<br>方法or属性:value: string;<br>新版本信息:string|radio.d.ts|
|type有变化|类名:RadioStyle;<br>方法or属性:checkedBackgroundColor?: ResourceColor;<br>旧版本信息:ResourceColor|类名:RadioStyle;<br>方法or属性:checkedBackgroundColor?: ResourceColor;<br>新版本信息:?ResourceColor|radio.d.ts|
|type有变化|类名:RadioStyle;<br>方法or属性:uncheckedBorderColor?: ResourceColor;<br>旧版本信息:ResourceColor|类名:RadioStyle;<br>方法or属性:uncheckedBorderColor?: ResourceColor;<br>新版本信息:?ResourceColor|radio.d.ts|
|type有变化|类名:RadioStyle;<br>方法or属性:indicatorColor?: ResourceColor;<br>旧版本信息:ResourceColor|类名:RadioStyle;<br>方法or属性:indicatorColor?: ResourceColor;<br>新版本信息:?ResourceColor|radio.d.ts|
|type有变化|类名:RefreshOptions;<br>方法or属性:offset?: number \| string;<br>旧版本信息:number \| string|类名:RefreshOptions;<br>方法or属性:offset?: number \| string;<br>新版本信息:?(number \| string)|refresh.d.ts|
|type有变化|类名:RefreshOptions;<br>方法or属性:friction?: number \| string;<br>旧版本信息:number \| string|类名:RefreshOptions;<br>方法or属性:friction?: number \| string;<br>新版本信息:?(number \| string)|refresh.d.ts|
|type有变化|类名:RefreshOptions;<br>方法or属性:builder?: CustomBuilder;<br>旧版本信息:CustomBuilder|类名:RefreshOptions;<br>方法or属性:builder?: CustomBuilder;<br>新版本信息:?CustomBuilder|refresh.d.ts|
|type有变化|类名:RRect;<br>方法or属性:left: number;<br>旧版本信息:|类名:RRect;<br>方法or属性:left: number;<br>新版本信息:number|remote_window.d.ts|
|type有变化|类名:RRect;<br>方法or属性:top: number;<br>旧版本信息:|类名:RRect;<br>方法or属性:top: number;<br>新版本信息:number|remote_window.d.ts|
|type有变化|类名:RRect;<br>方法or属性:width: number;<br>旧版本信息:|类名:RRect;<br>方法or属性:width: number;<br>新版本信息:number|remote_window.d.ts|
|type有变化|类名:RRect;<br>方法or属性:height: number;<br>旧版本信息:|类名:RRect;<br>方法or属性:height: number;<br>新版本信息:number|remote_window.d.ts|
|type有变化|类名:RRect;<br>方法or属性:radius: number;<br>旧版本信息:|类名:RRect;<br>方法or属性:radius: number;<br>新版本信息:number|remote_window.d.ts|
|type有变化|类名:WindowAnimationTarget;<br>方法or属性:readonly bundleName: string;<br>旧版本信息:|类名:WindowAnimationTarget;<br>方法or属性:readonly bundleName: string;<br>新版本信息:string|remote_window.d.ts|
|type有变化|类名:WindowAnimationTarget;<br>方法or属性:readonly abilityName: string;<br>旧版本信息:|类名:WindowAnimationTarget;<br>方法or属性:readonly abilityName: string;<br>新版本信息:string|remote_window.d.ts|
|type有变化|类名:WindowAnimationTarget;<br>方法or属性:readonly windowBounds: RRect;<br>旧版本信息:|类名:WindowAnimationTarget;<br>方法or属性:readonly windowBounds: RRect;<br>新版本信息:RRect|remote_window.d.ts|
|type有变化|类名:WindowAnimationTarget;<br>方法or属性:readonly missionId: number;<br>旧版本信息:|类名:WindowAnimationTarget;<br>方法or属性:readonly missionId: number;<br>新版本信息:number|remote_window.d.ts|
|type有变化|类名:ScrollBarOptions;<br>方法or属性:scroller: Scroller;<br>旧版本信息:|类名:ScrollBarOptions;<br>方法or属性:scroller: Scroller;<br>新版本信息:Scroller|scroll_bar.d.ts|
|type有变化|类名:ScrollBarOptions;<br>方法or属性:direction?: ScrollBarDirection;<br>旧版本信息:|类名:ScrollBarOptions;<br>方法or属性:direction?: ScrollBarDirection;<br>新版本信息:?ScrollBarDirection|scroll_bar.d.ts|
|type有变化|类名:ScrollBarOptions;<br>方法or属性:state?: BarState;<br>旧版本信息:|类名:ScrollBarOptions;<br>方法or属性:state?: BarState;<br>新版本信息:?BarState|scroll_bar.d.ts|
|type有变化|类名:IconOptions;<br>方法or属性:size?: Length;<br>旧版本信息:Length|类名:IconOptions;<br>方法or属性:size?: Length;<br>新版本信息:?Length|search.d.ts|
|type有变化|类名:IconOptions;<br>方法or属性:color?: ResourceColor;<br>旧版本信息:ResourceColor|类名:IconOptions;<br>方法or属性:color?: ResourceColor;<br>新版本信息:?ResourceColor|search.d.ts|
|type有变化|类名:CaretStyle;<br>方法or属性:color?: ResourceColor,<br>旧版本信息:ResourceColor|类名:CaretStyle;<br>方法or属性:color?: ResourceColor,<br>新版本信息:?ResourceColor|search.d.ts|
|type有变化|类名:IconOptions;<br>方法or属性:src?: ResourceStr;<br>旧版本信息:ResourceStr|类名:IconOptions;<br>方法or属性:src?: ResourceStr;<br>新版本信息:?ResourceStr|search.d.ts|
|type有变化|类名:CaretStyle;<br>方法or属性:width?: Length,<br>旧版本信息:Length|类名:CaretStyle;<br>方法or属性:width?: Length,<br>新版本信息:?Length|search.d.ts|
|type有变化|类名:SelectOption;<br>方法or属性:value: ResourceStr;<br>旧版本信息:|类名:SelectOption;<br>方法or属性:value: ResourceStr;<br>新版本信息:ResourceStr|select.d.ts|
|type有变化|类名:SelectOption;<br>方法or属性:icon?: ResourceStr;<br>旧版本信息:|类名:SelectOption;<br>方法or属性:icon?: ResourceStr;<br>新版本信息:ResourceStr|select.d.ts|
|type有变化|类名:ButtonStyle;<br>方法or属性:left?: number;<br>旧版本信息:|类名:ButtonStyle;<br>方法or属性:left?: number;<br>新版本信息:?number|sidebar.d.ts|
|type有变化|类名:ButtonStyle;<br>方法or属性:top?: number;<br>旧版本信息:|类名:ButtonStyle;<br>方法or属性:top?: number;<br>新版本信息:?number|sidebar.d.ts|
|type有变化|类名:ButtonStyle;<br>方法or属性:width?: number;<br>旧版本信息:|类名:ButtonStyle;<br>方法or属性:width?: number;<br>新版本信息:?number|sidebar.d.ts|
|type有变化|类名:ButtonStyle;<br>方法or属性:height?: number;<br>旧版本信息:|类名:ButtonStyle;<br>方法or属性:height?: number;<br>新版本信息:?number|sidebar.d.ts|
|type有变化|类名:DividerStyle;<br>方法or属性:color?: ResourceColor;<br>旧版本信息:ResourceColor|类名:DividerStyle;<br>方法or属性:color?: ResourceColor;<br>新版本信息:?ResourceColor|sidebar.d.ts|
|type有变化|类名:DividerStyle;<br>方法or属性:startMargin?: Length;<br>旧版本信息:Length|类名:DividerStyle;<br>方法or属性:startMargin?: Length;<br>新版本信息:?Length|sidebar.d.ts|
|type有变化|类名:DividerStyle;<br>方法or属性:endMargin?: Length;<br>旧版本信息:Length|类名:DividerStyle;<br>方法or属性:endMargin?: Length;<br>新版本信息:?Length|sidebar.d.ts|
|type有变化|类名:SliderOptions;<br>方法or属性:value?: number;<br>旧版本信息:|类名:SliderOptions;<br>方法or属性:value?: number;<br>新版本信息:?number|slider.d.ts|
|type有变化|类名:SliderOptions;<br>方法or属性:min?: number;<br>旧版本信息:|类名:SliderOptions;<br>方法or属性:min?: number;<br>新版本信息:?number|slider.d.ts|
|type有变化|类名:SliderOptions;<br>方法or属性:max?: number;<br>旧版本信息:|类名:SliderOptions;<br>方法or属性:max?: number;<br>新版本信息:?number|slider.d.ts|
|type有变化|类名:SliderOptions;<br>方法or属性:step?: number;<br>旧版本信息:|类名:SliderOptions;<br>方法or属性:step?: number;<br>新版本信息:?number|slider.d.ts|
|type有变化|类名:SliderOptions;<br>方法or属性:style?: SliderStyle;<br>旧版本信息:|类名:SliderOptions;<br>方法or属性:style?: SliderStyle;<br>新版本信息:?SliderStyle|slider.d.ts|
|type有变化|类名:SliderOptions;<br>方法or属性:direction?: Axis;<br>旧版本信息:|类名:SliderOptions;<br>方法or属性:direction?: Axis;<br>新版本信息:?Axis|slider.d.ts|
|type有变化|类名:SliderOptions;<br>方法or属性:reverse?: boolean;<br>旧版本信息:|类名:SliderOptions;<br>方法or属性:reverse?: boolean;<br>新版本信息:?boolean|slider.d.ts|
|type有变化|类名:SliderBlockStyle;<br>方法or属性:image?: ResourceStr;<br>旧版本信息:ResourceStr|类名:SliderBlockStyle;<br>方法or属性:image?: ResourceStr;<br>新版本信息:?ResourceStr|slider.d.ts|
|type有变化|类名:SliderBlockStyle;<br>方法or属性:shape?: CircleAttribute \| EllipseAttribute \| PathAttribute \| RectAttribute;<br>旧版本信息:CircleAttribute \| EllipseAttribute \| PathAttribute \| RectAttribute|类名:SliderBlockStyle;<br>方法or属性:shape?: CircleAttribute \| EllipseAttribute \| PathAttribute \| RectAttribute;<br>新版本信息:?(CircleAttribute \| EllipseAttribute \| PathAttribute \| RectAttribute)|slider.d.ts|
|type有变化|类名:IndicatorStyle;<br>方法or属性:left?: Length;<br>旧版本信息:|类名:IndicatorStyle;<br>方法or属性:left?: Length;<br>新版本信息:?Length|swiper.d.ts|
|type有变化|类名:IndicatorStyle;<br>方法or属性:top?: Length;<br>旧版本信息:|类名:IndicatorStyle;<br>方法or属性:top?: Length;<br>新版本信息:?Length|swiper.d.ts|
|type有变化|类名:IndicatorStyle;<br>方法or属性:right?: Length;<br>旧版本信息:|类名:IndicatorStyle;<br>方法or属性:right?: Length;<br>新版本信息:?Length|swiper.d.ts|
|type有变化|类名:IndicatorStyle;<br>方法or属性:bottom?: Length;<br>旧版本信息:|类名:IndicatorStyle;<br>方法or属性:bottom?: Length;<br>新版本信息:?Length|swiper.d.ts|
|type有变化|类名:IndicatorStyle;<br>方法or属性:size?: Length;<br>旧版本信息:|类名:IndicatorStyle;<br>方法or属性:size?: Length;<br>新版本信息:?Length|swiper.d.ts|
|type有变化|类名:IndicatorStyle;<br>方法or属性:mask?: boolean;<br>旧版本信息:|类名:IndicatorStyle;<br>方法or属性:mask?: boolean;<br>新版本信息:?boolean|swiper.d.ts|
|type有变化|类名:IndicatorStyle;<br>方法or属性:color?: ResourceColor;<br>旧版本信息:|类名:IndicatorStyle;<br>方法or属性:color?: ResourceColor;<br>新版本信息:?ResourceColor|swiper.d.ts|
|type有变化|类名:IndicatorStyle;<br>方法or属性:selectedColor?: ResourceColor;<br>旧版本信息:|类名:IndicatorStyle;<br>方法or属性:selectedColor?: ResourceColor;<br>新版本信息:?ResourceColor|swiper.d.ts|
|type有变化|类名:IndicatorStyle;<br>方法or属性:height?: Length;<br>旧版本信息:Length|类名:IndicatorStyle;<br>方法or属性:height?: Length;<br>新版本信息:?Length|tab_content.d.ts|
|type有变化|类名:IndicatorStyle;<br>方法or属性:width?: Length;<br>旧版本信息:Length|类名:IndicatorStyle;<br>方法or属性:width?: Length;<br>新版本信息:?Length|tab_content.d.ts|
|type有变化|类名:IndicatorStyle;<br>方法or属性:borderRadius?: Length;<br>旧版本信息:Length|类名:IndicatorStyle;<br>方法or属性:borderRadius?: Length;<br>新版本信息:?Length|tab_content.d.ts|
|type有变化|类名:BoardStyle;<br>方法or属性:borderRadius?: Length;<br>旧版本信息:Length|类名:BoardStyle;<br>方法or属性:borderRadius?: Length;<br>新版本信息:?Length|tab_content.d.ts|
|type有变化|类名:IndicatorStyle;<br>方法or属性:marginTop?: Length;<br>旧版本信息:Length|类名:IndicatorStyle;<br>方法or属性:marginTop?: Length;<br>新版本信息:?Length|tab_content.d.ts|
|type有变化|类名:SwiperAttribute;<br>方法or属性:curve(value: Curve \| string \| ICurve): SwiperAttribute;<br>旧版本信息:?(Curve \| string \| ICurve)|类名:SwiperAttribute;<br>方法or属性:curve(value: Curve \| string \| ICurve): SwiperAttribute;<br>新版本信息:|swiper.d.ts|
|type有变化|类名:TextAttribute;<br>方法or属性:draggable(value: boolean): TextAttribute;<br>旧版本信息:|类名:TextAttribute;<br>方法or属性:draggable(value: boolean): TextAttribute;<br>新版本信息:|text.d.ts|
|type有变化|类名:TextAreaOptions;<br>方法or属性:placeholder?: ResourceStr;<br>旧版本信息:|类名:TextAreaOptions;<br>方法or属性:placeholder?: ResourceStr;<br>新版本信息:?ResourceStr|text_area.d.ts|
|type有变化|类名:TextAreaOptions;<br>方法or属性:text?: ResourceStr;<br>旧版本信息:|类名:TextAreaOptions;<br>方法or属性:text?: ResourceStr;<br>新版本信息:?ResourceStr|text_area.d.ts|
|type有变化|类名:TextAreaOptions;<br>方法or属性:controller?: TextAreaController;<br>旧版本信息:|类名:TextAreaOptions;<br>方法or属性:controller?: TextAreaController;<br>新版本信息:?TextAreaController|text_area.d.ts|
|type有变化|类名:TextInputOptions;<br>方法or属性:placeholder?: ResourceStr;<br>旧版本信息:|类名:TextInputOptions;<br>方法or属性:placeholder?: ResourceStr;<br>新版本信息:?ResourceStr|text_input.d.ts|
|type有变化|类名:TextInputOptions;<br>方法or属性:text?: ResourceStr;<br>旧版本信息:|类名:TextInputOptions;<br>方法or属性:text?: ResourceStr;<br>新版本信息:?ResourceStr|text_input.d.ts|
|type有变化|类名:TextInputOptions;<br>方法or属性:controller?: TextInputController;<br>旧版本信息:|类名:TextInputOptions;<br>方法or属性:controller?: TextInputController;<br>新版本信息:?TextInputController|text_input.d.ts|
|type有变化|类名:TextPickerRangeContent;<br>方法or属性:text?: string \| Resource;<br>旧版本信息:string \| Resource|类名:TextPickerRangeContent;<br>方法or属性:text?: string \| Resource;<br>新版本信息:?(string \| Resource)|text_picker.d.ts|
|type有变化|类名:TextPickerOptions;<br>方法or属性:range: string[] \| string[][] \| Resource \| TextPickerRangeContent[] \| TextCascadePickerRangeContent[];<br>旧版本信息:string[] \| Resource \| TextPickerRangeContent[]|类名:TextPickerOptions;<br>方法or属性:range: string[] \| string[][] \| Resource \| TextPickerRangeContent[] \| TextCascadePickerRangeContent[];<br>新版本信息:string[] \| string[][] \| Resource \| TextPickerRangeContent[] \| TextCascadePickerRangeContent[]|text_picker.d.ts|
|type有变化|类名:TextPickerOptions;<br>方法or属性:value?: string \| string[];<br>旧版本信息:string|类名:TextPickerOptions;<br>方法or属性:value?: string \| string[];<br>新版本信息:?(string \| string[])|text_picker.d.ts|
|type有变化|类名:TextPickerOptions;<br>方法or属性:selected?: number \| number[];<br>旧版本信息:|类名:TextPickerOptions;<br>方法or属性:selected?: number \| number[];<br>新版本信息:?(number \| number[])|text_picker.d.ts|
|type有变化|类名:TextPickerResult;<br>方法or属性:value: string \| string[];<br>旧版本信息:string|类名:TextPickerResult;<br>方法or属性:value: string \| string[];<br>新版本信息:string \| string[]|text_picker.d.ts|
|type有变化|类名:TextPickerResult;<br>方法or属性:index: number \| number[];<br>旧版本信息:|类名:TextPickerResult;<br>方法or属性:index: number \| number[];<br>新版本信息:number \| number[]|text_picker.d.ts|
|type有变化|类名:TextPickerDialogOptions;<br>方法or属性:defaultPickerItemHeight?: number \| string;<br>旧版本信息:|类名:TextPickerDialogOptions;<br>方法or属性:defaultPickerItemHeight?: number \| string;<br>新版本信息:number \| string|text_picker.d.ts|
|type有变化|类名:TextPickerDialogOptions;<br>方法or属性:disappearTextStyle?: PickerTextStyle;<br>旧版本信息:PickerTextStyle|类名:TextPickerDialogOptions;<br>方法or属性:disappearTextStyle?: PickerTextStyle;<br>新版本信息:?PickerTextStyle|text_picker.d.ts|
|type有变化|类名:TextPickerDialogOptions;<br>方法or属性:textStyle?: PickerTextStyle;<br>旧版本信息:PickerTextStyle|类名:TextPickerDialogOptions;<br>方法or属性:textStyle?: PickerTextStyle;<br>新版本信息:?PickerTextStyle|text_picker.d.ts|
|type有变化|类名:TextPickerDialogOptions;<br>方法or属性:selectedTextStyle?: PickerTextStyle;<br>旧版本信息:PickerTextStyle|类名:TextPickerDialogOptions;<br>方法or属性:selectedTextStyle?: PickerTextStyle;<br>新版本信息:?PickerTextStyle|text_picker.d.ts|
|type有变化|类名:TextPickerDialogOptions;<br>方法or属性:onAccept?: (value: TextPickerResult) => void;<br>旧版本信息:|类名:TextPickerDialogOptions;<br>方法or属性:onAccept?: (value: TextPickerResult) => void;<br>新版本信息:?((value: TextPickerResult) => void)|text_picker.d.ts|
|type有变化|类名:TextPickerDialogOptions;<br>方法or属性:onCancel?: () => void;<br>旧版本信息:|类名:TextPickerDialogOptions;<br>方法or属性:onCancel?: () => void;<br>新版本信息:?(() => void)|text_picker.d.ts|
|type有变化|类名:TextPickerDialogOptions;<br>方法or属性:onChange?: (value: TextPickerResult) => void;<br>旧版本信息:|类名:TextPickerDialogOptions;<br>方法or属性:onChange?: (value: TextPickerResult) => void;<br>新版本信息:?((value: TextPickerResult) => void)|text_picker.d.ts|
|type有变化|类名:TextTimerOptions;<br>方法or属性:isCountDown?: boolean;<br>旧版本信息:|类名:TextTimerOptions;<br>方法or属性:isCountDown?: boolean;<br>新版本信息:?boolean|text_timer.d.ts|
|type有变化|类名:TextTimerOptions;<br>方法or属性:count?: number;<br>旧版本信息:|类名:TextTimerOptions;<br>方法or属性:count?: number;<br>新版本信息:?number|text_timer.d.ts|
|type有变化|类名:TextTimerOptions;<br>方法or属性:controller?: TextTimerController;<br>旧版本信息:|类名:TextTimerOptions;<br>方法or属性:controller?: TextTimerController;<br>新版本信息:?TextTimerController|text_timer.d.ts|
|type有变化|类名:TimePickerResult;<br>方法or属性:hour?: number;<br>旧版本信息:|类名:TimePickerResult;<br>方法or属性:hour?: number;<br>新版本信息:?number|time_picker.d.ts|
|type有变化|类名:TimePickerResult;<br>方法or属性:minute?: number;<br>旧版本信息:|类名:TimePickerResult;<br>方法or属性:minute?: number;<br>新版本信息:?number|time_picker.d.ts|
|type有变化|类名:TimePickerOptions;<br>方法or属性:selected?: Date;<br>旧版本信息:|类名:TimePickerOptions;<br>方法or属性:selected?: Date;<br>新版本信息:?Date|time_picker.d.ts|
|type有变化|类名:TimePickerDialogOptions;<br>方法or属性:useMilitaryTime?: boolean;<br>旧版本信息:|类名:TimePickerDialogOptions;<br>方法or属性:useMilitaryTime?: boolean;<br>新版本信息:?boolean|time_picker.d.ts|
|type有变化|类名:TimePickerDialogOptions;<br>方法or属性:disappearTextStyle?: PickerTextStyle;<br>旧版本信息:PickerTextStyle|类名:TimePickerDialogOptions;<br>方法or属性:disappearTextStyle?: PickerTextStyle;<br>新版本信息:?PickerTextStyle|time_picker.d.ts|
|type有变化|类名:TimePickerDialogOptions;<br>方法or属性:textStyle?: PickerTextStyle;<br>旧版本信息:PickerTextStyle|类名:TimePickerDialogOptions;<br>方法or属性:textStyle?: PickerTextStyle;<br>新版本信息:?PickerTextStyle|time_picker.d.ts|
|type有变化|类名:TimePickerDialogOptions;<br>方法or属性:selectedTextStyle?: PickerTextStyle;<br>旧版本信息:PickerTextStyle|类名:TimePickerDialogOptions;<br>方法or属性:selectedTextStyle?: PickerTextStyle;<br>新版本信息:?PickerTextStyle|time_picker.d.ts|
|type有变化|类名:TimePickerDialogOptions;<br>方法or属性:onAccept?: (value: TimePickerResult) => void;<br>旧版本信息:|类名:TimePickerDialogOptions;<br>方法or属性:onAccept?: (value: TimePickerResult) => void;<br>新版本信息:?((value: TimePickerResult) => void)|time_picker.d.ts|
|type有变化|类名:TimePickerDialogOptions;<br>方法or属性:onCancel?: () => void;<br>旧版本信息:|类名:TimePickerDialogOptions;<br>方法or属性:onCancel?: () => void;<br>新版本信息:?(() => void)|time_picker.d.ts|
|type有变化|类名:TimePickerDialogOptions;<br>方法or属性:onChange?: (value: TimePickerResult) => void;<br>旧版本信息:|类名:TimePickerDialogOptions;<br>方法or属性:onChange?: (value: TimePickerResult) => void;<br>新版本信息:?((value: TimePickerResult) => void)|time_picker.d.ts|
|type有变化|类名:Resource;<br>方法or属性:readonly id: number;<br>旧版本信息:|类名:Resource;<br>方法or属性:readonly id: number;<br>新版本信息:number|units.d.ts|
|type有变化|类名:Resource;<br>方法or属性:readonly type: number;<br>旧版本信息:|类名:Resource;<br>方法or属性:readonly type: number;<br>新版本信息:number|units.d.ts|
|type有变化|类名:Resource;<br>方法or属性:readonly params?: any[];<br>旧版本信息:|类名:Resource;<br>方法or属性:readonly params?: any[];<br>新版本信息:?any[]|units.d.ts|
|type有变化|类名:Resource;<br>方法or属性:readonly bundleName: string;<br>旧版本信息:|类名:Resource;<br>方法or属性:readonly bundleName: string;<br>新版本信息:string|units.d.ts|
|type有变化|类名:Resource;<br>方法or属性:readonly moduleName: string;<br>旧版本信息:|类名:Resource;<br>方法or属性:readonly moduleName: string;<br>新版本信息:string|units.d.ts|
|type有变化|类名:Font;<br>方法or属性:size?: Length;<br>旧版本信息:|类名:Font;<br>方法or属性:size?: Length;<br>新版本信息:?Length|units.d.ts|
|type有变化|类名:MarkStyle;<br>方法or属性:size?: Length;<br>旧版本信息:Length|类名:MarkStyle;<br>方法or属性:size?: Length;<br>新版本信息:?Length|units.d.ts|
|type有变化|类名:Font;<br>方法or属性:weight?: FontWeight \| number \| string;<br>旧版本信息:|类名:Font;<br>方法or属性:weight?: FontWeight \| number \| string;<br>新版本信息:?(FontWeight \| number \| string)|units.d.ts|
|type有变化|类名:Font;<br>方法or属性:family?: string \| Resource;<br>旧版本信息:|类名:Font;<br>方法or属性:family?: string \| Resource;<br>新版本信息:?(string \| Resource)|units.d.ts|
|type有变化|类名:Font;<br>方法or属性:style?: FontStyle;<br>旧版本信息:|类名:Font;<br>方法or属性:style?: FontStyle;<br>新版本信息:?FontStyle|units.d.ts|
|type有变化|类名:Area;<br>方法or属性:width: Length;<br>旧版本信息:|类名:Area;<br>方法or属性:width: Length;<br>新版本信息:Length|units.d.ts|
|type有变化|类名:Area;<br>方法or属性:height: Length;<br>旧版本信息:|类名:Area;<br>方法or属性:height: Length;<br>新版本信息:Length|units.d.ts|
|type有变化|类名:Area;<br>方法or属性:position: Position;<br>旧版本信息:|类名:Area;<br>方法or属性:position: Position;<br>新版本信息:Position|units.d.ts|
|type有变化|类名:Area;<br>方法or属性:globalPosition: Position;<br>旧版本信息:|类名:Area;<br>方法or属性:globalPosition: Position;<br>新版本信息:Position|units.d.ts|
|type有变化|类名:Position;<br>方法or属性:x?: Length;<br>旧版本信息:|类名:Position;<br>方法or属性:x?: Length;<br>新版本信息:?Length|units.d.ts|
|type有变化|类名:Position;<br>方法or属性:y?: Length;<br>旧版本信息:|类名:Position;<br>方法or属性:y?: Length;<br>新版本信息:?Length|units.d.ts|
|type有变化|类名:ConstraintSizeOptions;<br>方法or属性:minWidth?: Length;<br>旧版本信息:|类名:ConstraintSizeOptions;<br>方法or属性:minWidth?: Length;<br>新版本信息:?Length|units.d.ts|
|type有变化|类名:ConstraintSizeOptions;<br>方法or属性:maxWidth?: Length;<br>旧版本信息:|类名:ConstraintSizeOptions;<br>方法or属性:maxWidth?: Length;<br>新版本信息:?Length|units.d.ts|
|type有变化|类名:ConstraintSizeOptions;<br>方法or属性:minHeight?: Length;<br>旧版本信息:|类名:ConstraintSizeOptions;<br>方法or属性:minHeight?: Length;<br>新版本信息:?Length|units.d.ts|
|type有变化|类名:ConstraintSizeOptions;<br>方法or属性:maxHeight?: Length;<br>旧版本信息:|类名:ConstraintSizeOptions;<br>方法or属性:maxHeight?: Length;<br>新版本信息:?Length|units.d.ts|
|type有变化|类名:SizeOptions;<br>方法or属性:width?: Length;<br>旧版本信息:|类名:SizeOptions;<br>方法or属性:width?: Length;<br>新版本信息:?Length|units.d.ts|
|type有变化|类名:SizeOptions;<br>方法or属性:height?: Length;<br>旧版本信息:|类名:SizeOptions;<br>方法or属性:height?: Length;<br>新版本信息:?Length|units.d.ts|
|type有变化|类名:BorderOptions;<br>方法or属性:width?: EdgeWidths \| Length;<br>旧版本信息:EdgeWidths \| Length|类名:BorderOptions;<br>方法or属性:width?: EdgeWidths \| Length;<br>新版本信息:?(EdgeWidths \| Length)|units.d.ts|
|type有变化|类名:BorderOptions;<br>方法or属性:color?: EdgeColors \| ResourceColor;<br>旧版本信息:EdgeColors \| ResourceColor|类名:BorderOptions;<br>方法or属性:color?: EdgeColors \| ResourceColor;<br>新版本信息:?(EdgeColors \| ResourceColor)|units.d.ts|
|type有变化|类名:BorderOptions;<br>方法or属性:radius?: BorderRadiuses \| Length;<br>旧版本信息:BorderRadiuses \| Length|类名:BorderOptions;<br>方法or属性:radius?: BorderRadiuses \| Length;<br>新版本信息:?(BorderRadiuses \| Length)|units.d.ts|
|type有变化|类名:BorderOptions;<br>方法or属性:style?: EdgeStyles \| BorderStyle;<br>旧版本信息:EdgeStyles \| BorderStyle|类名:BorderOptions;<br>方法or属性:style?: EdgeStyles \| BorderStyle;<br>新版本信息:?(EdgeStyles \| BorderStyle)|units.d.ts|
|type有变化|类名:MarkStyle;<br>方法or属性:strokeColor?: ResourceColor;<br>旧版本信息:ResourceColor|类名:MarkStyle;<br>方法or属性:strokeColor?: ResourceColor;<br>新版本信息:?ResourceColor|units.d.ts|
|type有变化|类名:MarkStyle;<br>方法or属性:strokeWidth?: Length;<br>旧版本信息:Length|类名:MarkStyle;<br>方法or属性:strokeWidth?: Length;<br>新版本信息:?Length|units.d.ts|
|type有变化|类名:VideoOptions;<br>方法or属性:src?: string \| Resource;<br>旧版本信息:|类名:VideoOptions;<br>方法or属性:src?: string \| Resource;<br>新版本信息:?(string \| Resource)|video.d.ts|
|type有变化|类名:VideoOptions;<br>方法or属性:currentProgressRate?: number \| string \| PlaybackSpeed;<br>旧版本信息:|类名:VideoOptions;<br>方法or属性:currentProgressRate?: number \| string \| PlaybackSpeed;<br>新版本信息:?(number \| string \| PlaybackSpeed)|video.d.ts|
|type有变化|类名:VideoOptions;<br>方法or属性:previewUri?: string \| PixelMap \| Resource;<br>旧版本信息:|类名:VideoOptions;<br>方法or属性:previewUri?: string \| PixelMap \| Resource;<br>新版本信息:?(string \| PixelMap \| Resource)|video.d.ts|
|type有变化|类名:VideoOptions;<br>方法or属性:controller?: VideoController;<br>旧版本信息:|类名:VideoOptions;<br>方法or属性:controller?: VideoController;<br>新版本信息:?VideoController|video.d.ts|
|type有变化|类名:WaterFlowOptions;<br>方法or属性:footer?: CustomBuilder;<br>旧版本信息:|类名:WaterFlowOptions;<br>方法or属性:footer?: CustomBuilder;<br>新版本信息:?CustomBuilder|water_flow.d.ts|
|type有变化|类名:WaterFlowOptions;<br>方法or属性:scroller?: Scroller;<br>旧版本信息:|类名:WaterFlowOptions;<br>方法or属性:scroller?: Scroller;<br>新版本信息:?Scroller|water_flow.d.ts|
|type有变化|类名:WebMediaOptions;<br>方法or属性:resumeInterval?: number;<br>旧版本信息:|类名:WebMediaOptions;<br>方法or属性:resumeInterval?: number;<br>新版本信息:?number|web.d.ts|
|type有变化|类名:WebMediaOptions;<br>方法or属性:audioExclusive?: boolean;<br>旧版本信息:|类名:WebMediaOptions;<br>方法or属性:audioExclusive?: boolean;<br>新版本信息:?boolean|web.d.ts|
|type有变化|类名:Header;<br>方法or属性:headerKey: string;<br>旧版本信息:|类名:Header;<br>方法or属性:headerKey: string;<br>新版本信息:string|web.d.ts|
|type有变化|类名:Header;<br>方法or属性:headerValue: string;<br>旧版本信息:|类名:Header;<br>方法or属性:headerValue: string;<br>新版本信息:string|web.d.ts|
|type有变化|类名:WebOptions;<br>方法or属性:src: string \| Resource;<br>旧版本信息:|类名:WebOptions;<br>方法or属性:src: string \| Resource;<br>新版本信息:string \| Resource|web.d.ts|
|type有变化|类名:WebOptions;<br>方法or属性:controller: WebController \| WebviewController;<br>旧版本信息:(WebController \| WebviewController)|类名:WebOptions;<br>方法or属性:controller: WebController \| WebviewController;<br>新版本信息:WebController \| WebviewController|web.d.ts|
|type有变化|类名:WebAttribute;<br>方法or属性:javaScriptProxy(javaScriptProxy: { object: object, name: string, methodList: Array\<string>,<br> controller: WebController \| WebviewController }): WebAttribute;<br>旧版本信息:controller : WebController \| WebviewController|类名:WebAttribute;<br>方法or属性:javaScriptProxy(javaScriptProxy: { object: object, name: string, methodList: Array\<string>,<br> controller: WebController \| WebviewController }): WebAttribute;<br>新版本信息:|web.d.ts|
|函数有变化|类名:FontOptions;<br>方法or属性:familyName: string;|类名:FontOptions;<br>方法or属性:familyName: string \| Resource;|@ohos.font.d.ts|
|函数有变化|类名:FontOptions;<br>方法or属性:familySrc: string;|类名:FontOptions;<br>方法or属性:familySrc: string \| Resource;|@ohos.font.d.ts|
|卡片应用支持性有变化|类名:ClickEvent;<br>方法or属性:screenX: number;<br>旧版本信息:form|类名:ClickEvent;<br>方法or属性:screenX: number;<br>新版本信息:|common.d.ts|
|卡片应用支持性有变化|类名:ClickEvent;<br>方法or属性:screenY: number;<br>旧版本信息:form|类名:ClickEvent;<br>方法or属性:screenY: number;<br>新版本信息:|common.d.ts|
|卡片应用支持性有变化|类名:TextAttribute;<br>方法or属性:textShadow(value: ShadowOptions): TextAttribute;<br>旧版本信息:|类名:TextAttribute;<br>方法or属性:textShadow(value: ShadowOptions): TextAttribute;<br>新版本信息:form|text.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|新增|NA|类名:power;<br>方法or属性:function isStandby(): boolean;|@ohos.power.d.ts|
|访问级别有变化|类名:ConsumptionType;<br>方法or属性:CONSUMPTION_TYPE_INVALID = -17<br>旧版本信息:|类名:ConsumptionType;<br>方法or属性:CONSUMPTION_TYPE_INVALID = -17<br>新版本信息:systemapi|@ohos.batteryStatistics.d.ts|
|访问级别有变化|类名:ConsumptionType;<br>方法or属性:CONSUMPTION_TYPE_APP<br>旧版本信息:|类名:ConsumptionType;<br>方法or属性:CONSUMPTION_TYPE_APP<br>新版本信息:systemapi|@ohos.batteryStatistics.d.ts|
|访问级别有变化|类名:ConsumptionType;<br>方法or属性:CONSUMPTION_TYPE_BLUETOOTH<br>旧版本信息:|类名:ConsumptionType;<br>方法or属性:CONSUMPTION_TYPE_BLUETOOTH<br>新版本信息:systemapi|@ohos.batteryStatistics.d.ts|
|访问级别有变化|类名:ConsumptionType;<br>方法or属性:CONSUMPTION_TYPE_IDLE<br>旧版本信息:|类名:ConsumptionType;<br>方法or属性:CONSUMPTION_TYPE_IDLE<br>新版本信息:systemapi|@ohos.batteryStatistics.d.ts|
|访问级别有变化|类名:ConsumptionType;<br>方法or属性:CONSUMPTION_TYPE_PHONE<br>旧版本信息:|类名:ConsumptionType;<br>方法or属性:CONSUMPTION_TYPE_PHONE<br>新版本信息:systemapi|@ohos.batteryStatistics.d.ts|
|访问级别有变化|类名:ConsumptionType;<br>方法or属性:CONSUMPTION_TYPE_RADIO<br>旧版本信息:|类名:ConsumptionType;<br>方法or属性:CONSUMPTION_TYPE_RADIO<br>新版本信息:systemapi|@ohos.batteryStatistics.d.ts|
|访问级别有变化|类名:ConsumptionType;<br>方法or属性:CONSUMPTION_TYPE_SCREEN<br>旧版本信息:|类名:ConsumptionType;<br>方法or属性:CONSUMPTION_TYPE_SCREEN<br>新版本信息:systemapi|@ohos.batteryStatistics.d.ts|
|访问级别有变化|类名:ConsumptionType;<br>方法or属性:CONSUMPTION_TYPE_USER<br>旧版本信息:|类名:ConsumptionType;<br>方法or属性:CONSUMPTION_TYPE_USER<br>新版本信息:systemapi|@ohos.batteryStatistics.d.ts|
|访问级别有变化|类名:ConsumptionType;<br>方法or属性:CONSUMPTION_TYPE_WIFI<br>旧版本信息:|类名:ConsumptionType;<br>方法or属性:CONSUMPTION_TYPE_WIFI<br>新版本信息:systemapi|@ohos.batteryStatistics.d.ts|
|访问级别有变化|类名:BatteryStatsInfo;<br>方法or属性:uid: number;<br>旧版本信息:|类名:BatteryStatsInfo;<br>方法or属性:uid: number;<br>新版本信息:systemapi|@ohos.batteryStatistics.d.ts|
|访问级别有变化|类名:BatteryStatsInfo;<br>方法or属性:type: ConsumptionType;<br>旧版本信息:|类名:BatteryStatsInfo;<br>方法or属性:type: ConsumptionType;<br>新版本信息:systemapi|@ohos.batteryStatistics.d.ts|
|访问级别有变化|类名:BatteryStatsInfo;<br>方法or属性:power: number;<br>旧版本信息:|类名:BatteryStatsInfo;<br>方法or属性:power: number;<br>新版本信息:systemapi|@ohos.batteryStatistics.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|删除|类名:BusinessAbilityInfo;<br>方法or属性:readonly bundleName: string;|NA|BusinessAbilityInfo.d.ts|
|删除|类名:BusinessAbilityInfo;<br>方法or属性:readonly moduleName: string;|NA|BusinessAbilityInfo.d.ts|
|删除|类名:BusinessAbilityInfo;<br>方法or属性:readonly name: string;|NA|BusinessAbilityInfo.d.ts|
|删除|类名:BusinessAbilityInfo;<br>方法or属性:readonly labelId: number;|NA|BusinessAbilityInfo.d.ts|
|删除|类名:BusinessAbilityInfo;<br>方法or属性:readonly descriptionId: number;|NA|BusinessAbilityInfo.d.ts|
|删除|类名:BusinessAbilityInfo;<br>方法or属性:readonly iconId: number;|NA|BusinessAbilityInfo.d.ts|
|删除|类名:BusinessAbilityInfo;<br>方法or属性:readonly businessType: businessAbilityRouter.BusinessType;|NA|BusinessAbilityInfo.d.ts|
|删除|类名:BusinessAbilityInfo;<br>方法or属性:readonly applicationInfo: ApplicationInfo;|NA|BusinessAbilityInfo.d.ts|
|新增|NA|类名:bundleManager;<br>方法or属性:function getBundleInfoForSelfSync(bundleFlags: number): BundleInfo;|@ohos.bundle.bundleManager.d.ts|
|新增|NA|类名:bundleManager;<br>方法or属性:function getSpecifiedDistributionType(bundleName: string): string;|@ohos.bundle.bundleManager.d.ts|
|新增|NA|类名:bundleManager;<br>方法or属性:function getAdditionalInfo(bundleName: string): string;|@ohos.bundle.bundleManager.d.ts|
|新增|NA|类名:ExtensionAbilityType;<br>方法or属性:PUSH = 17|@ohos.bundle.bundleManager.d.ts|
|新增|NA|类名:ExtensionAbilityType;<br>方法or属性:APP_ACCOUNT_AUTHORIZATION = 19|@ohos.bundle.bundleManager.d.ts|
|新增|NA|类名:VerifyCodeParam;<br>方法or属性:moduleName: string;|@ohos.bundle.installer.d.ts|
|新增|NA|类名:VerifyCodeParam;<br>方法or属性:signatureFilePath: string;|@ohos.bundle.installer.d.ts|
|新增|NA|类名:InstallParam;<br>方法or属性:specifiedDistributionType?: string;|@ohos.bundle.installer.d.ts|
|新增|NA|类名:InstallParam;<br>方法or属性:additionalInfo?: string;|@ohos.bundle.installer.d.ts|
|新增|NA|类名:InstallParam;<br>方法or属性:verifyCodeParams?: Array\<VerifyCodeParam>;|@ohos.bundle.installer.d.ts|
|新增|NA|类名:ReqPermissionDetail;<br>方法or属性:moduleName: string;|BundleInfo.d.ts|
|错误码有变化|类名:BundleInstaller;<br>方法or属性:install(hapFilePaths: Array\<string>, installParam: InstallParam, callback: AsyncCallback\<void>): void;<br>旧版本信息:201,202,401,17700004,17700010,17700011,17700012,17700015,17700016,17700017,17700018,17700031,17700036,17700039,17700041,17700042,17700043,17700044,17700047|类名:BundleInstaller;<br>方法or属性:install(hapFilePaths: Array\<string>, installParam: InstallParam, callback: AsyncCallback\<void>): void;<br>新版本信息:201,202,401,17700004,17700010,17700011,17700012,17700015,17700016,17700017,17700018,17700031,17700036,17700039,17700041,17700042,17700043,17700044,17700047,17700048|@ohos.bundle.installer.d.ts|
|错误码有变化|类名:BundleInstaller;<br>方法or属性:install(hapFilePaths: Array\<string>, callback: AsyncCallback\<void>): void;<br>旧版本信息:201,202,401,17700010,17700011,17700012,17700015,17700016,17700017,17700018,17700031,17700036,17700039,17700041,17700042,17700043,17700044,17700047|类名:BundleInstaller;<br>方法or属性:install(hapFilePaths: Array\<string>, callback: AsyncCallback\<void>): void;<br>新版本信息:201,202,401,17700010,17700011,17700012,17700015,17700016,17700017,17700018,17700031,17700036,17700039,17700041,17700042,17700043,17700044,17700047,17700048|@ohos.bundle.installer.d.ts|
|错误码有变化|类名:BundleInstaller;<br>方法or属性:install(hapFilePaths: Array\<string>, installParam?: InstallParam): Promise\<void>;<br>旧版本信息:201,202,401,17700004,17700010,17700011,17700012,17700015,17700016,17700017,17700018,17700031,17700036,17700039,17700041,17700042,17700043,17700044,17700047|类名:BundleInstaller;<br>方法or属性:install(hapFilePaths: Array\<string>, installParam?: InstallParam): Promise\<void>;<br>新版本信息:201,202,401,17700004,17700010,17700011,17700012,17700015,17700016,17700017,17700018,17700031,17700036,17700039,17700041,17700042,17700043,17700044,17700047,17700048|@ohos.bundle.installer.d.ts|
|错误码有变化|类名:zlib;<br>方法or属性:function decompressFile(inFile: string, outFile: string, options: Options, callback: AsyncCallback\<void>): void;<br>旧版本信息:401,900001,900002|类名:zlib;<br>方法or属性:function decompressFile(inFile: string, outFile: string, options: Options, callback: AsyncCallback\<void>): void;<br>新版本信息:401,900001,900002,900003|@ohos.zlib.d.ts|
|错误码有变化|类名:zlib;<br>方法or属性:function decompressFile(inFile: string, outFile: string, options: Options): Promise\<void>;<br>旧版本信息:401,900001,900002|类名:zlib;<br>方法or属性:function decompressFile(inFile: string, outFile: string, options: Options): Promise\<void>;<br>新版本信息:401,900001,900002,900003|@ohos.zlib.d.ts|
|权限有变化|类名:bundleManager;<br>方法or属性:function getAllBundleInfo(bundleFlags: number, callback: AsyncCallback\<Array\<BundleInfo>>): void;<br>旧版本信息:ohos.permission.GET_BUNDLE_INFO_PRIVILEGED|类名:bundleManager;<br>方法or属性:function getAllBundleInfo(bundleFlags: number, callback: AsyncCallback\<Array\<BundleInfo>>): void;<br>新版本信息:ohos.permission.GET_INSTALLED_BUNDLE_LIST|@ohos.bundle.bundleManager.d.ts|
|权限有变化|类名:bundleManager;<br>方法or属性:function getAllBundleInfo(bundleFlags: number, userId: number, callback: AsyncCallback\<Array\<BundleInfo>>): void;<br>旧版本信息:ohos.permission.GET_BUNDLE_INFO_PRIVILEGED|类名:bundleManager;<br>方法or属性:function getAllBundleInfo(bundleFlags: number, userId: number, callback: AsyncCallback\<Array\<BundleInfo>>): void;<br>新版本信息:ohos.permission.GET_INSTALLED_BUNDLE_LIST|@ohos.bundle.bundleManager.d.ts|
|权限有变化|类名:bundleManager;<br>方法or属性:function getAllBundleInfo(bundleFlags: number, userId?: number): Promise\<Array\<BundleInfo>>;<br>旧版本信息:ohos.permission.GET_BUNDLE_INFO_PRIVILEGED|类名:bundleManager;<br>方法or属性:function getAllBundleInfo(bundleFlags: number, userId?: number): Promise\<Array\<BundleInfo>>;<br>新版本信息:ohos.permission.GET_INSTALLED_BUNDLE_LIST|@ohos.bundle.bundleManager.d.ts|
|权限有变化|类名:bundleManager;<br>方法or属性:function getAllApplicationInfo(appFlags: number, callback: AsyncCallback\<Array\<ApplicationInfo>>): void;<br>旧版本信息:ohos.permission.GET_BUNDLE_INFO_PRIVILEGED|类名:bundleManager;<br>方法or属性:function getAllApplicationInfo(appFlags: number, callback: AsyncCallback\<Array\<ApplicationInfo>>): void;<br>新版本信息:ohos.permission.GET_INSTALLED_BUNDLE_LIST|@ohos.bundle.bundleManager.d.ts|
|权限有变化|类名:bundleManager;<br>方法or属性:function getAllApplicationInfo(appFlags: number,<br><br> userId: number, callback: AsyncCallback\<Array\<ApplicationInfo>>): void;<br>旧版本信息:ohos.permission.GET_BUNDLE_INFO_PRIVILEGED|类名:bundleManager;<br>方法or属性:function getAllApplicationInfo(appFlags: number,<br><br> userId: number, callback: AsyncCallback\<Array\<ApplicationInfo>>): void;<br>新版本信息:ohos.permission.GET_INSTALLED_BUNDLE_LIST|@ohos.bundle.bundleManager.d.ts|
|权限有变化|类名:bundleManager;<br>方法or属性:function getAllApplicationInfo(appFlags: number, userId?: number): Promise\<Array\<ApplicationInfo>>;<br>旧版本信息:ohos.permission.GET_BUNDLE_INFO_PRIVILEGED|类名:bundleManager;<br>方法or属性:function getAllApplicationInfo(appFlags: number, userId?: number): Promise\<Array\<ApplicationInfo>>;<br>新版本信息:ohos.permission.GET_INSTALLED_BUNDLE_LIST|@ohos.bundle.bundleManager.d.ts|
|权限有变化|类名:BundleInstaller;<br>方法or属性:install(hapFilePaths: Array\<string>, installParam: InstallParam, callback: AsyncCallback\<void>): void;<br>旧版本信息:ohos.permission.INSTALL_BUNDLE|类名:BundleInstaller;<br>方法or属性:install(hapFilePaths: Array\<string>, installParam: InstallParam, callback: AsyncCallback\<void>): void;<br>新版本信息:ohos.permission.INSTALL_BUNDLE,ohos.permission.INSTALL_ENTERPRISE_BUNDLE|@ohos.bundle.installer.d.ts|
|权限有变化|类名:BundleInstaller;<br>方法or属性:install(hapFilePaths: Array\<string>, callback: AsyncCallback\<void>): void;<br>旧版本信息:ohos.permission.INSTALL_BUNDLE|类名:BundleInstaller;<br>方法or属性:install(hapFilePaths: Array\<string>, callback: AsyncCallback\<void>): void;<br>新版本信息:ohos.permission.INSTALL_BUNDLE,ohos.permission.INSTALL_ENTERPRISE_BUNDLE|@ohos.bundle.installer.d.ts|
|权限有变化|类名:BundleInstaller;<br>方法or属性:install(hapFilePaths: Array\<string>, installParam?: InstallParam): Promise\<void>;<br>旧版本信息:ohos.permission.INSTALL_BUNDLE|类名:BundleInstaller;<br>方法or属性:install(hapFilePaths: Array\<string>, installParam?: InstallParam): Promise\<void>;<br>新版本信息:ohos.permission.INSTALL_BUNDLE,ohos.permission.INSTALL_ENTERPRISE_BUNDLE|@ohos.bundle.installer.d.ts|
|model有变化|类名:AbilityType;<br>方法or属性:PAGE = 1<br>旧版本信息:|类名:AbilityType;<br>方法or属性:PAGE = 1<br>新版本信息:FAModelOnly|@ohos.bundle.bundleManager.d.ts|
|model有变化|类名:AbilityType;<br>方法or属性:SERVICE = 2<br>旧版本信息:|类名:AbilityType;<br>方法or属性:SERVICE = 2<br>新版本信息:FAModelOnly|@ohos.bundle.bundleManager.d.ts|
|model有变化|类名:AbilityType;<br>方法or属性:DATA = 3<br>旧版本信息:|类名:AbilityType;<br>方法or属性:DATA = 3<br>新版本信息:FAModelOnly|@ohos.bundle.bundleManager.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|删除|类名:wifiManager;<br>方法or属性:function getScanInfoList(): Array\<WifiScanInfo>;|NA|@ohos.wifiManager.d.ts|
|删除|类名:wifiManager;<br>方法or属性:function updateDeviceConfig(config: WifiDeviceConfig): number;|NA|@ohos.wifiManager.d.ts|
|删除|类名:wifiManager;<br>方法or属性:function disableDeviceConfig(networkId: number): void;|NA|@ohos.wifiManager.d.ts|
|删除|类名:wifiManager;<br>方法or属性:function removeAllDeviceConfigs(): void;|NA|@ohos.wifiManager.d.ts|
|删除|类名:wifiManager;<br>方法or属性:function removeDeviceConfig(networkId: number): void;|NA|@ohos.wifiManager.d.ts|
|删除|类名:wifiManager;<br>方法or属性:function getHotspotStations(): Array\<StationInfo>;|NA|@ohos.wifiManager.d.ts|
|删除|类名:wifiManager;<br>方法or属性:function createP2pGroup(config: WifiP2PConfig): void;|NA|@ohos.wifiManager.d.ts|
|删除|类名:wifiManager;<br>方法or属性:function removeP2pGroup(): void;|NA|@ohos.wifiManager.d.ts|
|删除|类名:wifiManager;<br>方法or属性:function startDiscoverP2pDevices(): void;|NA|@ohos.wifiManager.d.ts|
|删除|类名:wifiManager;<br>方法or属性:function stopDiscoverP2pDevices(): void;|NA|@ohos.wifiManager.d.ts|
|删除|类名:wifiManager;<br>方法or属性:function deletePersistentP2pGroup(netId: number): void;|NA|@ohos.wifiManager.d.ts|
|删除|类名:wifiManager;<br>方法or属性:function setP2pDeviceName(devName: string): void;|NA|@ohos.wifiManager.d.ts|
|新增|NA|类名:TCPSocketConnection;<br>方法or属性:close(): Promise\<void>;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketConnection;<br>方法or属性:close(): Promise\<void>;|@ohos.net.socket.d.ts|
|新增|NA|类名:TCPSocketServer;<br>方法or属性:getState(): Promise\<SocketStateBase>;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketServer;<br>方法or属性:getState(): Promise\<SocketStateBase>;|@ohos.net.socket.d.ts|
|新增|NA|类名:TCPSocketConnection;<br>方法or属性:send(options: TCPSendOptions): Promise\<void>;|@ohos.net.socket.d.ts|
|新增|NA|类名:TCPSocketConnection;<br>方法or属性:getRemoteAddress(): Promise\<NetAddress>;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketConnection;<br>方法or属性:getRemoteAddress(): Promise\<NetAddress>;|@ohos.net.socket.d.ts|
|新增|NA|类名:TCPSocketServer;<br>方法or属性:setExtraOptions(options: TCPExtraOptions): Promise\<void>;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketServer;<br>方法or属性:setExtraOptions(options: TCPExtraOptions): Promise\<void>;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketServer;<br>方法or属性:getCertificate(): Promise\<X509CertRawData>;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketConnection;<br>方法or属性:getRemoteCertificate(): Promise\<X509CertRawData>;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketServer;<br>方法or属性:getProtocol(): Promise\<string>;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketConnection;<br>方法or属性:getCipherSuite(): Promise\<Array\<string>>;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketConnection;<br>方法or属性:getSignatureAlgorithms(): Promise\<Array\<string>>;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketConnection;<br>方法or属性:send(data: string): Promise\<void>;|@ohos.net.socket.d.ts|
|新增|NA|类名:bluetoothManager;<br>方法or属性:function pairCredibleDevice(deviceId: string, transport: BluetoothTransport, callback: AsyncCallback\<void>): void;|@ohos.bluetoothManager.d.ts|
|新增|NA|类名:bluetoothManager;<br>方法or属性:function pairCredibleDevice(deviceId: string, transport: BluetoothTransport): Promise\<void>;|@ohos.bluetoothManager.d.ts|
|新增|NA|类名:bluetoothManager;<br>方法or属性:function getRemoteProfileUuids(device: string, callback: AsyncCallback\<Array\<ProfileUuids>>): void;|@ohos.bluetoothManager.d.ts|
|新增|NA|类名:bluetoothManager;<br>方法or属性:function getRemoteProfileUuids(device: string): Promise\<Array\<ProfileUuids>>;|@ohos.bluetoothManager.d.ts|
|新增|NA|类名:bluetoothManager;<br>方法or属性:function getLocalProfileUuids(callback: AsyncCallback\<Array\<ProfileUuids>>): void;|@ohos.bluetoothManager.d.ts|
|新增|NA|类名:bluetoothManager;<br>方法or属性:function getLocalProfileUuids(): Promise\<Array\<ProfileUuids>>;|@ohos.bluetoothManager.d.ts|
|新增|NA|类名:BaseProfile;<br>方法or属性:setConnectionStrategy(device: string, strategy: ConnectionStrategy, callback: AsyncCallback\<void>): void;|@ohos.bluetoothManager.d.ts|
|新增|NA|类名:BaseProfile;<br>方法or属性:setConnectionStrategy(device: string, strategy: ConnectionStrategy): Promise\<void>;|@ohos.bluetoothManager.d.ts|
|新增|NA|类名:BaseProfile;<br>方法or属性:getConnectionStrategy(device: string, callback: AsyncCallback\<ConnectionStrategy>): void;|@ohos.bluetoothManager.d.ts|
|新增|NA|类名:BaseProfile;<br>方法or属性:getConnectionStrategy(device: string): Promise\<ConnectionStrategy>;|@ohos.bluetoothManager.d.ts|
|新增|NA|类名:AdvertiseData;<br>方法or属性:includeDeviceName?: boolean;|@ohos.bluetoothManager.d.ts|
|新增|NA|类名:BluetoothTransport;<br>方法or属性:TRANSPORT_BR_EDR = 0|@ohos.bluetoothManager.d.ts|
|新增|NA|类名:BluetoothTransport;<br>方法or属性:TRANSPORT_LE = 1|@ohos.bluetoothManager.d.ts|
|新增|NA|类名:ConnectionStrategy;<br>方法or属性:CONNECT_STRATEGY_UNSUPPORTED = 0|@ohos.bluetoothManager.d.ts|
|新增|NA|类名:ConnectionStrategy;<br>方法or属性:CONNECT_STRATEGY_ALLOWED = 1|@ohos.bluetoothManager.d.ts|
|新增|NA|类名:ConnectionStrategy;<br>方法or属性:CONNECT_STRATEGY_FORBIDDEN = 2|@ohos.bluetoothManager.d.ts|
|新增|NA|类名:ProfileUuids;<br>方法or属性:PROFILE_UUID_HFP_AG = '0000111F-0000-1000-8000-00805F9B34FB'|@ohos.bluetoothManager.d.ts|
|新增|NA|类名:ProfileUuids;<br>方法or属性:PROFILE_UUID_HFP_HF = '0000111E-0000-1000-8000-00805F9B34FB'|@ohos.bluetoothManager.d.ts|
|新增|NA|类名:ProfileUuids;<br>方法or属性:PROFILE_UUID_HSP_AG = '00001112-0000-1000-8000-00805F9B34FB'|@ohos.bluetoothManager.d.ts|
|新增|NA|类名:ProfileUuids;<br>方法or属性:PROFILE_UUID_HSP_HS = '00001108-0000-1000-8000-00805F9B34FB'|@ohos.bluetoothManager.d.ts|
|新增|NA|类名:ProfileUuids;<br>方法or属性:PROFILE_UUID_A2DP_SRC = '0000110A-0000-1000-8000-00805F9B34FB'|@ohos.bluetoothManager.d.ts|
|新增|NA|类名:ProfileUuids;<br>方法or属性:PROFILE_UUID_A2DP_SINK = '0000110B-0000-1000-8000-00805F9B34FB'|@ohos.bluetoothManager.d.ts|
|新增|NA|类名:ProfileUuids;<br>方法or属性:PROFILE_UUID_AVRCP_CT = '0000110E-0000-1000-8000-00805F9B34FB'|@ohos.bluetoothManager.d.ts|
|新增|NA|类名:ProfileUuids;<br>方法or属性:PROFILE_UUID_AVRCP_TG = '0000110C-0000-1000-8000-00805F9B34FB'|@ohos.bluetoothManager.d.ts|
|新增|NA|类名:ProfileUuids;<br>方法or属性:PROFILE_UUID_HID = '00001124-0000-1000-8000-00805F9B34FB'|@ohos.bluetoothManager.d.ts|
|新增|NA|类名:ProfileUuids;<br>方法or属性:PROFILE_UUID_HOGP = '00001812-0000-1000-8000-00805F9B34FB'|@ohos.bluetoothManager.d.ts|
|新增|NA|类名:connection;<br>方法or属性:function getDefaultHttpProxy(callback: AsyncCallback\<HttpProxy>): void;|@ohos.net.connection.d.ts|
|新增|NA|类名:connection;<br>方法or属性:function getDefaultHttpProxy(): Promise\<HttpProxy>;|@ohos.net.connection.d.ts|
|新增|NA|类名:ethernet;<br>方法or属性:type HttpProxy = connection.HttpProxy;|@ohos.net.ethernet.d.ts|
|新增|NA|类名:InterfaceConfiguration;<br>方法or属性:httpProxy?: HttpProxy;|@ohos.net.ethernet.d.ts|
|新增|NA|类名:DiscoveryService;<br>方法or属性:off(type: 'discoveryStart', callback?: Callback\<{ serviceInfo: LocalServiceInfo, errorCode?: MdnsError }>): void;|@ohos.net.mdns.d.ts|
|新增|NA|类名:DiscoveryService;<br>方法or属性:off(type: 'discoveryStop', callback?: Callback\<{ serviceInfo: LocalServiceInfo, errorCode?: MdnsError }>): void;|@ohos.net.mdns.d.ts|
|新增|NA|类名:DiscoveryService;<br>方法or属性:off(type: 'serviceFound', callback?: Callback\<LocalServiceInfo>): void;|@ohos.net.mdns.d.ts|
|新增|NA|类名:DiscoveryService;<br>方法or属性:off(type: 'serviceLost', callback?: Callback\<LocalServiceInfo>): void;|@ohos.net.mdns.d.ts|
|新增|NA|类名:policy;<br>方法or属性:type NetBearType = connection.NetBearType;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function setBackgroundAllowed(isAllowed: boolean, callback: AsyncCallback\<void>): void;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function setBackgroundAllowed(isAllowed: boolean): Promise\<void>;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function isBackgroundAllowed(callback: AsyncCallback\<boolean>): void;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function isBackgroundAllowed(): Promise\<boolean>;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function getBackgroundPolicyByUid(uid: number, callback: AsyncCallback\<NetBackgroundPolicy>): void;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function getBackgroundPolicyByUid(uid: number): Promise\<NetBackgroundPolicy>;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function setPolicyByUid(uid: number, policy: NetUidPolicy, callback: AsyncCallback\<void>): void;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function setPolicyByUid(uid: number, policy: NetUidPolicy): Promise\<void>;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function getPolicyByUid(uid: number, callback: AsyncCallback\<NetUidPolicy>): void;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function getPolicyByUid(uid: number): Promise\<NetUidPolicy>;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function getUidsByPolicy(policy: NetUidPolicy, callback: AsyncCallback\<Array\<number>>): void;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function getUidsByPolicy(policy: NetUidPolicy): Promise\<Array\<number>>;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function isUidNetAllowed(uid: number, isMetered: boolean, callback: AsyncCallback\<boolean>): void;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function isUidNetAllowed(uid: number, isMetered: boolean): Promise\<boolean>;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function isUidNetAllowed(uid: number, iface: string, callback: AsyncCallback\<boolean>): void;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function isUidNetAllowed(uid: number, iface: string): Promise\<boolean>;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function setNetQuotaPolicies(quotaPolicies: Array\<NetQuotaPolicy>, callback: AsyncCallback\<void>): void;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function setNetQuotaPolicies(quotaPolicies: Array\<NetQuotaPolicy>): Promise\<void>;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function getNetQuotaPolicies(callback: AsyncCallback\<Array\<NetQuotaPolicy>>): void;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function getNetQuotaPolicies(): Promise\<Array\<NetQuotaPolicy>>;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function updateRemindPolicy(netType: NetBearType, simId: string, remindType: RemindType, callback: AsyncCallback\<void>): void;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function updateRemindPolicy(netType: NetBearType, simId: string, remindType: RemindType): Promise\<void>;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function setDeviceIdleTrustlist(uids: Array\<number>, isAllowed: boolean, callback: AsyncCallback\<void>): void;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function setDeviceIdleTrustlist(uids: Array\<number>, isAllowed: boolean): Promise\<void>;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function getDeviceIdleTrustlist(callback: AsyncCallback\<Array\<number>>): void;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function getDeviceIdleTrustlist(): Promise\<Array\<number>>;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function setPowerSaveTrustlist(uids: Array\<number>, isAllowed: boolean, callback: AsyncCallback\<void>): void;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function setPowerSaveTrustlist(uids: Array\<number>, isAllowed: boolean): Promise\<void>;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function getPowerSaveTrustlist(callback: AsyncCallback\<Array\<number>>): void;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function getPowerSaveTrustlist(): Promise\<Array\<number>>;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function resetPolicies(simId: string, callback: AsyncCallback\<void>): void;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function resetPolicies(simId: string): Promise\<void>;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function on(type: 'netUidPolicyChange', callback: Callback\<{ uid: number, policy: NetUidPolicy }>): void;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function on(type: 'netUidRuleChange', callback: Callback\<{ uid: number, rule: NetUidRule }>): void;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function on(type: 'netMeteredIfacesChange', callback: Callback\<Array\<string>>): void;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function on(type: 'netQuotaPolicyChange', callback: Callback\<Array\<NetQuotaPolicy>>): void;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function on(type: 'netBackgroundPolicyChange', callback: Callback\<boolean>): void;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function off(type: 'netUidPolicyChange', callback?: Callback\<{ uid: number, policy: NetUidPolicy }>): void;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function off(type: 'netUidRuleChange', callback?: Callback\<{ uid: number, rule: NetUidRule }>): void;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function off(type: 'netMeteredIfacesChange', callback?: Callback\<Array\<string>>): void;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function off(type: 'netQuotaPolicyChange', callback?: Callback\<Array\<NetQuotaPolicy>>): void;|@ohos.net.policy.d.ts|
|新增|NA|类名:policy;<br>方法or属性:function off(type: 'netBackgroundPolicyChange', callback?: Callback\<boolean>): void;|@ohos.net.policy.d.ts|
|新增|NA|类名:NetBackgroundPolicy;<br>方法or属性:NET_BACKGROUND_POLICY_NONE = 0|@ohos.net.policy.d.ts|
|新增|NA|类名:NetBackgroundPolicy;<br>方法or属性:NET_BACKGROUND_POLICY_ENABLE = 1|@ohos.net.policy.d.ts|
|新增|NA|类名:NetBackgroundPolicy;<br>方法or属性:NET_BACKGROUND_POLICY_DISABLE = 2|@ohos.net.policy.d.ts|
|新增|NA|类名:NetBackgroundPolicy;<br>方法or属性:NET_BACKGROUND_POLICY_TRUSTLIST = 3|@ohos.net.policy.d.ts|
|新增|NA|类名:NetQuotaPolicy;<br>方法or属性:networkMatchRule: NetworkMatchRule;|@ohos.net.policy.d.ts|
|新增|NA|类名:NetQuotaPolicy;<br>方法or属性:quotaPolicy: QuotaPolicy;|@ohos.net.policy.d.ts|
|新增|NA|类名:QuotaPolicy;<br>方法or属性:periodDuration: string;|@ohos.net.policy.d.ts|
|新增|NA|类名:QuotaPolicy;<br>方法or属性:warningBytes: number;|@ohos.net.policy.d.ts|
|新增|NA|类名:QuotaPolicy;<br>方法or属性:limitBytes: number;|@ohos.net.policy.d.ts|
|新增|NA|类名:QuotaPolicy;<br>方法or属性:metered: boolean;|@ohos.net.policy.d.ts|
|新增|NA|类名:QuotaPolicy;<br>方法or属性:limitAction: LimitAction;|@ohos.net.policy.d.ts|
|新增|NA|类名:QuotaPolicy;<br>方法or属性:lastWarningRemind?: number;|@ohos.net.policy.d.ts|
|新增|NA|类名:QuotaPolicy;<br>方法or属性:lastLimitRemind?: number;|@ohos.net.policy.d.ts|
|新增|NA|类名:NetworkMatchRule;<br>方法or属性:netType: NetBearType;|@ohos.net.policy.d.ts|
|新增|NA|类名:NetworkMatchRule;<br>方法or属性:identity: string;|@ohos.net.policy.d.ts|
|新增|NA|类名:NetworkMatchRule;<br>方法or属性:simId: string;|@ohos.net.policy.d.ts|
|新增|NA|类名:LimitAction;<br>方法or属性:LIMIT_ACTION_NONE = -1|@ohos.net.policy.d.ts|
|新增|NA|类名:LimitAction;<br>方法or属性:LIMIT_ACTION_ACCESS_DISABLED = 0|@ohos.net.policy.d.ts|
|新增|NA|类名:LimitAction;<br>方法or属性:LIMIT_ACTION_ALERT_ONLY = 1|@ohos.net.policy.d.ts|
|新增|NA|类名:NetUidRule;<br>方法or属性:NET_RULE_NONE = 0|@ohos.net.policy.d.ts|
|新增|NA|类名:NetUidRule;<br>方法or属性:NET_RULE_ALLOW_METERED_FOREGROUND = 1 \<\< 0|@ohos.net.policy.d.ts|
|新增|NA|类名:NetUidRule;<br>方法or属性:NET_RULE_ALLOW_METERED = 1 \<\< 1|@ohos.net.policy.d.ts|
|新增|NA|类名:NetUidRule;<br>方法or属性:NET_RULE_REJECT_METERED = 1 \<\< 2|@ohos.net.policy.d.ts|
|新增|NA|类名:NetUidRule;<br>方法or属性:NET_RULE_ALLOW_ALL = 1 \<\< 5|@ohos.net.policy.d.ts|
|新增|NA|类名:NetUidRule;<br>方法or属性:NET_RULE_REJECT_ALL = 1 \<\< 6|@ohos.net.policy.d.ts|
|新增|NA|类名:RemindType;<br>方法or属性:REMIND_TYPE_WARNING = 1|@ohos.net.policy.d.ts|
|新增|NA|类名:RemindType;<br>方法or属性:REMIND_TYPE_LIMIT = 2|@ohos.net.policy.d.ts|
|新增|NA|类名:NetUidPolicy;<br>方法or属性:NET_POLICY_NONE = 0|@ohos.net.policy.d.ts|
|新增|NA|类名:NetUidPolicy;<br>方法or属性:NET_POLICY_ALLOW_METERED_BACKGROUND = 1 \<\< 0|@ohos.net.policy.d.ts|
|新增|NA|类名:NetUidPolicy;<br>方法or属性:NET_POLICY_REJECT_METERED_BACKGROUND = 1 \<\< 1|@ohos.net.policy.d.ts|
|新增|NA|类名:socket;<br>方法or属性:function constructTCPSocketServerInstance(): TCPSocketServer;|@ohos.net.socket.d.ts|
|新增|NA|类名:socket;<br>方法or属性:function constructTLSSocketServerInstance(): TLSSocketServer;|@ohos.net.socket.d.ts|
|新增|NA|类名:TCPSocket;<br>方法or属性:getSocketFd(callback: AsyncCallback\<number>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TCPSocket;<br>方法or属性:getSocketFd(): Promise\<number>;|@ohos.net.socket.d.ts|
|新增|NA|类名:TCPSocketConnection;<br>方法or属性:clientId: number;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketConnection;<br>方法or属性:clientId: number;|@ohos.net.socket.d.ts|
|新增|NA|类名:TCPSocketConnection;<br>方法or属性:send(options: TCPSendOptions, callback: AsyncCallback\<void>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TCPSocketConnection;<br>方法or属性:close(callback: AsyncCallback\<void>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketConnection;<br>方法or属性:close(callback: AsyncCallback\<void>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TCPSocketConnection;<br>方法or属性:getRemoteAddress(callback: AsyncCallback\<NetAddress>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketConnection;<br>方法or属性:getRemoteAddress(callback: AsyncCallback\<NetAddress>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TCPSocketConnection;<br>方法or属性:on(type: 'message', callback: Callback\<{ message: ArrayBuffer, remoteInfo: SocketRemoteInfo }>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketConnection;<br>方法or属性:on(type: 'message', callback: Callback\<{ message: ArrayBuffer, remoteInfo: SocketRemoteInfo }>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TCPSocketConnection;<br>方法or属性:on(type: 'close', callback: Callback\<void>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketConnection;<br>方法or属性:on(type: 'close', callback: Callback\<void>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TCPSocketConnection;<br>方法or属性:on(type: 'error', callback: ErrorCallback): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TCPSocketServer;<br>方法or属性:on(type: 'error', callback: ErrorCallback): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketConnection;<br>方法or属性:on(type: 'error', callback: ErrorCallback): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketServer;<br>方法or属性:on(type: 'error', callback: ErrorCallback): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TCPSocketConnection;<br>方法or属性:off(type: 'message', callback?: Callback\<{ message: ArrayBuffer, remoteInfo: SocketRemoteInfo }>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketConnection;<br>方法or属性:off(type: 'message', callback?: Callback\<{ message: ArrayBuffer, remoteInfo: SocketRemoteInfo }>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TCPSocketConnection;<br>方法or属性:off(type: 'close', callback?: Callback\<void>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketConnection;<br>方法or属性:off(type: 'close', callback?: Callback\<void>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TCPSocketConnection;<br>方法or属性:off(type: 'error', callback?: ErrorCallback): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TCPSocketServer;<br>方法or属性:off(type: 'error', callback?: ErrorCallback): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketConnection;<br>方法or属性:off(type: 'error', callback?: ErrorCallback): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketServer;<br>方法or属性:off(type: 'error', callback?: ErrorCallback): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TCPSocketServer;<br>方法or属性:listen(address: NetAddress, callback: AsyncCallback\<void>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TCPSocketServer;<br>方法or属性:listen(address: NetAddress): Promise\<void>;|@ohos.net.socket.d.ts|
|新增|NA|类名:TCPSocketServer;<br>方法or属性:getState(callback: AsyncCallback\<SocketStateBase>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketServer;<br>方法or属性:getState(callback: AsyncCallback\<SocketStateBase>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TCPSocketServer;<br>方法or属性:setExtraOptions(options: TCPExtraOptions, callback: AsyncCallback\<void>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketServer;<br>方法or属性:setExtraOptions(options: TCPExtraOptions, callback: AsyncCallback\<void>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TCPSocketServer;<br>方法or属性:on(type: 'connect', callback: Callback\<TCPSocketConnection>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TCPSocketServer;<br>方法or属性:off(type: 'connect', callback?: Callback\<TCPSocketConnection>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketConnection;<br>方法or属性:send(data: string, callback: AsyncCallback\<void>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketConnection;<br>方法or属性:getRemoteCertificate(callback: AsyncCallback\<X509CertRawData>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketConnection;<br>方法or属性:getCipherSuite(callback: AsyncCallback\<Array\<string>>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketConnection;<br>方法or属性:getSignatureAlgorithms(callback: AsyncCallback\<Array\<string>>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketServer;<br>方法or属性:listen(options: TLSConnectOptions, callback: AsyncCallback\<void>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketServer;<br>方法or属性:listen(options: TLSConnectOptions): Promise\<void>;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketServer;<br>方法or属性:getCertificate(callback: AsyncCallback\<X509CertRawData>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketServer;<br>方法or属性:getProtocol(callback: AsyncCallback\<string>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketServer;<br>方法or属性:on(type: 'connect', callback: Callback\<TLSSocketConnection>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:TLSSocketServer;<br>方法or属性:off(type: 'connect', callback?: Callback\<TLSSocketConnection>): void;|@ohos.net.socket.d.ts|
|新增|NA|类名:statistics;<br>方法or属性:function getIfaceRxBytes(nic: string, callback: AsyncCallback\<number>): void;|@ohos.net.statistics.d.ts|
|新增|NA|类名:statistics;<br>方法or属性:function getIfaceRxBytes(nic: string): Promise\<number>;|@ohos.net.statistics.d.ts|
|新增|NA|类名:statistics;<br>方法or属性:function getIfaceTxBytes(nic: string, callback: AsyncCallback\<number>): void;|@ohos.net.statistics.d.ts|
|新增|NA|类名:statistics;<br>方法or属性:function getIfaceTxBytes(nic: string): Promise\<number>;|@ohos.net.statistics.d.ts|
|新增|NA|类名:statistics;<br>方法or属性:function getCellularRxBytes(callback: AsyncCallback\<number>): void;|@ohos.net.statistics.d.ts|
|新增|NA|类名:statistics;<br>方法or属性:function getCellularRxBytes(): Promise\<number>;|@ohos.net.statistics.d.ts|
|新增|NA|类名:statistics;<br>方法or属性:function getCellularTxBytes(callback: AsyncCallback\<number>): void;|@ohos.net.statistics.d.ts|
|新增|NA|类名:statistics;<br>方法or属性:function getCellularTxBytes(): Promise\<number>;|@ohos.net.statistics.d.ts|
|新增|NA|类名:statistics;<br>方法or属性:function getAllRxBytes(callback: AsyncCallback\<number>): void;|@ohos.net.statistics.d.ts|
|新增|NA|类名:statistics;<br>方法or属性:function getAllRxBytes(): Promise\<number>;|@ohos.net.statistics.d.ts|
|新增|NA|类名:statistics;<br>方法or属性:function getAllTxBytes(callback: AsyncCallback\<number>): void;|@ohos.net.statistics.d.ts|
|新增|NA|类名:statistics;<br>方法or属性:function getAllTxBytes(): Promise\<number>;|@ohos.net.statistics.d.ts|
|新增|NA|类名:statistics;<br>方法or属性:function getUidRxBytes(uid: number, callback: AsyncCallback\<number>): void;|@ohos.net.statistics.d.ts|
|新增|NA|类名:statistics;<br>方法or属性:function getUidRxBytes(uid: number): Promise\<number>;|@ohos.net.statistics.d.ts|
|新增|NA|类名:statistics;<br>方法or属性:function getUidTxBytes(uid: number, callback: AsyncCallback\<number>): void;|@ohos.net.statistics.d.ts|
|新增|NA|类名:statistics;<br>方法or属性:function getUidTxBytes(uid: number): Promise\<number>;|@ohos.net.statistics.d.ts|
|新增|NA|类名:statistics;<br>方法or属性:function on(type: 'netStatsChange', callback: Callback\<{ iface: string, uid?: number }>): void;|@ohos.net.statistics.d.ts|
|新增|NA|类名:statistics;<br>方法or属性:function off(type: 'netStatsChange', callback?: Callback\<{ iface: string, uid?: number }>): void;|@ohos.net.statistics.d.ts|
|新增|NA|类名:statistics;<br>方法or属性:function getTrafficStatsByIface(ifaceInfo: IfaceInfo, callback: AsyncCallback\<NetStatsInfo>): void;|@ohos.net.statistics.d.ts|
|新增|NA|类名:statistics;<br>方法or属性:function getTrafficStatsByIface(ifaceInfo: IfaceInfo): Promise\<NetStatsInfo>;|@ohos.net.statistics.d.ts|
|新增|NA|类名:statistics;<br>方法or属性:function getTrafficStatsByUid(uidInfo: UidInfo, callback: AsyncCallback\<NetStatsInfo>): void;|@ohos.net.statistics.d.ts|
|新增|NA|类名:statistics;<br>方法or属性:function getTrafficStatsByUid(uidInfo: UidInfo): Promise\<NetStatsInfo>;|@ohos.net.statistics.d.ts|
|新增|NA|类名:IfaceInfo;<br>方法or属性:iface: string;|@ohos.net.statistics.d.ts|
|新增|NA|类名:IfaceInfo;<br>方法or属性:startTime: number;|@ohos.net.statistics.d.ts|
|新增|NA|类名:IfaceInfo;<br>方法or属性:endTime: number;|@ohos.net.statistics.d.ts|
|新增|NA|类名:UidInfo;<br>方法or属性:ifaceInfo: IfaceInfo;|@ohos.net.statistics.d.ts|
|新增|NA|类名:UidInfo;<br>方法or属性:uid: number;|@ohos.net.statistics.d.ts|
|新增|NA|类名:NetStatsInfo;<br>方法or属性:rxBytes: number;|@ohos.net.statistics.d.ts|
|新增|NA|类名:NetStatsInfo;<br>方法or属性:txBytes: number;|@ohos.net.statistics.d.ts|
|新增|NA|类名:NetStatsInfo;<br>方法or属性:rxPackets: number;|@ohos.net.statistics.d.ts|
|新增|NA|类名:NetStatsInfo;<br>方法or属性:txPackets: number;|@ohos.net.statistics.d.ts|
|新增|NA|类名:vpn;<br>方法or属性:export type LinkAddress = connection.LinkAddress;|@ohos.net.vpn.d.ts|
|新增|NA|类名:vpn;<br>方法or属性:export type RouteInfo = connection.RouteInfo;|@ohos.net.vpn.d.ts|
|新增|NA|类名:vpn;<br>方法or属性:function createVpnConnection(context: AbilityContext): VpnConnection;|@ohos.net.vpn.d.ts|
|新增|NA|类名:VpnConnection;<br>方法or属性:setUp(config: VpnConfig, callback: AsyncCallback\<number>): void;|@ohos.net.vpn.d.ts|
|新增|NA|类名:VpnConnection;<br>方法or属性:setUp(config: VpnConfig): Promise\<number>;|@ohos.net.vpn.d.ts|
|新增|NA|类名:VpnConnection;<br>方法or属性:protect(socketFd: number, callback: AsyncCallback\<void>): void;|@ohos.net.vpn.d.ts|
|新增|NA|类名:VpnConnection;<br>方法or属性:protect(socketFd: number): Promise\<void>;|@ohos.net.vpn.d.ts|
|新增|NA|类名:VpnConnection;<br>方法or属性:destroy(callback: AsyncCallback\<void>): void;|@ohos.net.vpn.d.ts|
|新增|NA|类名:VpnConnection;<br>方法or属性:destroy(): Promise\<void>;|@ohos.net.vpn.d.ts|
|新增|NA|类名:VpnConfig;<br>方法or属性:addresses: Array\<LinkAddress>;|@ohos.net.vpn.d.ts|
|新增|NA|类名:VpnConfig;<br>方法or属性:routes?: Array\<RouteInfo>;|@ohos.net.vpn.d.ts|
|新增|NA|类名:VpnConfig;<br>方法or属性:dnsAddresses?: Array\<string>;|@ohos.net.vpn.d.ts|
|新增|NA|类名:VpnConfig;<br>方法or属性:searchDomains?: Array\<string>;|@ohos.net.vpn.d.ts|
|新增|NA|类名:VpnConfig;<br>方法or属性:mtu?: number;|@ohos.net.vpn.d.ts|
|新增|NA|类名:VpnConfig;<br>方法or属性:isIPv4Accepted?: boolean;|@ohos.net.vpn.d.ts|
|新增|NA|类名:VpnConfig;<br>方法or属性:isIPv6Accepted?: boolean;|@ohos.net.vpn.d.ts|
|新增|NA|类名:VpnConfig;<br>方法or属性:isLegacy?: boolean;|@ohos.net.vpn.d.ts|
|新增|NA|类名:VpnConfig;<br>方法or属性:isBlocking?: boolean;|@ohos.net.vpn.d.ts|
|新增|NA|类名:VpnConfig;<br>方法or属性:trustedApplications?: Array\<string>;|@ohos.net.vpn.d.ts|
|新增|NA|类名:VpnConfig;<br>方法or属性:blockedApplications?: Array\<string>;|@ohos.net.vpn.d.ts|
|新增|NA|类名:wifiManager;<br>方法or属性:function getScanResults(): Promise\<Array\<WifiScanInfo>>;|@ohos.wifiManager.d.ts|
|新增|NA|类名:wifiManager;<br>方法or属性:function getScanResults(callback: AsyncCallback\<Array\<WifiScanInfo>>): void;|@ohos.wifiManager.d.ts|
|新增|NA|类名:wifiManager;<br>方法or属性:function getScanResultsSync(): Array\<WifiScanInfo>;|@ohos.wifiManager.d.ts|
|新增|NA|类名:wifiManager;<br>方法or属性:function setScanAlwaysAllowed(isScanAlwaysAllowed: boolean): void;|@ohos.wifiManager.d.ts|
|新增|NA|类名:wifiManager;<br>方法or属性:function getScanAlwaysAllowed(): boolean;|@ohos.wifiManager.d.ts|
|新增|NA|类名:wifiManager;<br>方法or属性:function updateNetwork(config: WifiDeviceConfig): number;|@ohos.wifiManager.d.ts|
|新增|NA|类名:wifiManager;<br>方法or属性:function disableNetwork(netId: number): void;|@ohos.wifiManager.d.ts|
|新增|NA|类名:wifiManager;<br>方法or属性:function removeAllNetwork(): void;|@ohos.wifiManager.d.ts|
|新增|NA|类名:wifiManager;<br>方法or属性:function removeDevice(id: number): void;|@ohos.wifiManager.d.ts|
|新增|NA|类名:wifiManager;<br>方法or属性:function getDisconnectedReason(): DisconnectedReason;|@ohos.wifiManager.d.ts|
|新增|NA|类名:wifiManager;<br>方法or属性:function getStations(): Array\<StationInfo>;|@ohos.wifiManager.d.ts|
|新增|NA|类名:wifiManager;<br>方法or属性:function createGroup(config: WifiP2PConfig): void;|@ohos.wifiManager.d.ts|
|新增|NA|类名:wifiManager;<br>方法or属性:function removeGroup(): void;|@ohos.wifiManager.d.ts|
|新增|NA|类名:wifiManager;<br>方法or属性:function startDiscoverDevices(): void;|@ohos.wifiManager.d.ts|
|新增|NA|类名:wifiManager;<br>方法or属性:function stopDiscoverDevices(): void;|@ohos.wifiManager.d.ts|
|新增|NA|类名:wifiManager;<br>方法or属性:function deletePersistentGroup(netId: number): void;|@ohos.wifiManager.d.ts|
|新增|NA|类名:wifiManager;<br>方法or属性:function setDeviceName(devName: string): void;|@ohos.wifiManager.d.ts|
|新增|NA|类名:DisconnectedReason;<br>方法or属性:DISC_REASON_DEFAULT = 0|@ohos.wifiManager.d.ts|
|新增|NA|类名:DisconnectedReason;<br>方法or属性:DISC_REASON_WRONG_PWD = 1|@ohos.wifiManager.d.ts|
|新增|NA|类名:DisconnectedReason;<br>方法or属性:DISC_REASON_CONNECTION_FULL = 2|@ohos.wifiManager.d.ts|
|新增|NA|类名:ProxyMethod;<br>方法or属性:METHOD_NONE = 0|@ohos.wifiManager.d.ts|
|新增|NA|类名:ProxyMethod;<br>方法or属性:METHOD_AUTO = 1|@ohos.wifiManager.d.ts|
|新增|NA|类名:ProxyMethod;<br>方法or属性:METHOD_MANUAL = 2|@ohos.wifiManager.d.ts|
|新增|NA|类名:WifiProxyConfig;<br>方法or属性:proxyMethod?: ProxyMethod;|@ohos.wifiManager.d.ts|
|新增|NA|类名:WifiProxyConfig;<br>方法or属性:pacWebAddress?: string;|@ohos.wifiManager.d.ts|
|新增|NA|类名:WifiProxyConfig;<br>方法or属性:serverHostName?: string;|@ohos.wifiManager.d.ts|
|新增|NA|类名:WifiProxyConfig;<br>方法or属性:serverPort?: number;|@ohos.wifiManager.d.ts|
|新增|NA|类名:WifiProxyConfig;<br>方法or属性:exclusionObjects?: string;|@ohos.wifiManager.d.ts|
|新增|NA|类名:WifiDeviceConfig;<br>方法or属性:proxyConfig?: WifiProxyConfig;|@ohos.wifiManager.d.ts|
|新增|NA|类名:HotspotConfig;<br>方法or属性:ipAddress?: string;|@ohos.wifiManager.d.ts|
|新增(错误码)|类名:GattClientDevice;<br>方法or属性:getDeviceName(): Promise\<string>;<br>旧版本信息:|类名:GattClientDevice;<br>方法or属性:getDeviceName(): Promise\<string>;<br>新版本信息:201,401,801,2900001,2900099|@ohos.bluetoothManager.d.ts|
|新增(错误码)|类名:GattClientDevice;<br>方法or属性:getServices(): Promise\<Array\<GattService>>;<br>旧版本信息:|类名:GattClientDevice;<br>方法or属性:getServices(): Promise\<Array\<GattService>>;<br>新版本信息:201,401,801,2900001,2900099|@ohos.bluetoothManager.d.ts|
|新增(错误码)|类名:GattClientDevice;<br>方法or属性:readCharacteristicValue(characteristic: BLECharacteristic): Promise\<BLECharacteristic>;<br>旧版本信息:|类名:GattClientDevice;<br>方法or属性:readCharacteristicValue(characteristic: BLECharacteristic): Promise\<BLECharacteristic>;<br>新版本信息:201,401,801,2900001,2901000,2900099|@ohos.bluetoothManager.d.ts|
|新增(错误码)|类名:GattClientDevice;<br>方法or属性:readDescriptorValue(descriptor: BLEDescriptor): Promise\<BLEDescriptor>;<br>旧版本信息:|类名:GattClientDevice;<br>方法or属性:readDescriptorValue(descriptor: BLEDescriptor): Promise\<BLEDescriptor>;<br>新版本信息:201,401,801,2900001,2901000,2900099|@ohos.bluetoothManager.d.ts|
|新增(错误码)|类名:GattClientDevice;<br>方法or属性:getRssiValue(): Promise\<number>;<br>旧版本信息:|类名:GattClientDevice;<br>方法or属性:getRssiValue(): Promise\<number>;<br>新版本信息:201,401,801,2900099|@ohos.bluetoothManager.d.ts|
|新增(错误码)|类名:connection;<br>方法or属性:function getDefaultNet(): Promise\<NetHandle>;<br>旧版本信息:|类名:connection;<br>方法or属性:function getDefaultNet(): Promise\<NetHandle>;<br>新版本信息:201,401,2100002,2100003|@ohos.net.connection.d.ts|
|新增(错误码)|类名:connection;<br>方法or属性:function getAllNets(): Promise\<Array\<NetHandle>>;<br>旧版本信息:|类名:connection;<br>方法or属性:function getAllNets(): Promise\<Array\<NetHandle>>;<br>新版本信息:201,401,2100002,2100003|@ohos.net.connection.d.ts|
|新增(错误码)|类名:connection;<br>方法or属性:function getConnectionProperties(netHandle: NetHandle): Promise\<ConnectionProperties>;<br>旧版本信息:|类名:connection;<br>方法or属性:function getConnectionProperties(netHandle: NetHandle): Promise\<ConnectionProperties>;<br>新版本信息:201,401,2100001,2100002,2100003|@ohos.net.connection.d.ts|
|新增(错误码)|类名:connection;<br>方法or属性:function getNetCapabilities(netHandle: NetHandle): Promise\<NetCapabilities>;<br>旧版本信息:|类名:connection;<br>方法or属性:function getNetCapabilities(netHandle: NetHandle): Promise\<NetCapabilities>;<br>新版本信息:201,401,2100001,2100002,2100003|@ohos.net.connection.d.ts|
|新增(错误码)|类名:connection;<br>方法or属性:function isDefaultNetMetered(): Promise\<boolean>;<br>旧版本信息:|类名:connection;<br>方法or属性:function isDefaultNetMetered(): Promise\<boolean>;<br>新版本信息:201,401,2100002,2100003|@ohos.net.connection.d.ts|
|新增(错误码)|类名:connection;<br>方法or属性:function hasDefaultNet(): Promise\<boolean>;<br>旧版本信息:|类名:connection;<br>方法or属性:function hasDefaultNet(): Promise\<boolean>;<br>新版本信息:201,401,2100002,2100003|@ohos.net.connection.d.ts|
|新增(错误码)|类名:connection;<br>方法or属性:function enableAirplaneMode(): Promise\<void>;<br>旧版本信息:|类名:connection;<br>方法or属性:function enableAirplaneMode(): Promise\<void>;<br>新版本信息:201,202,401,2100002,2100003|@ohos.net.connection.d.ts|
|新增(错误码)|类名:connection;<br>方法or属性:function disableAirplaneMode(): Promise\<void>;<br>旧版本信息:|类名:connection;<br>方法or属性:function disableAirplaneMode(): Promise\<void>;<br>新版本信息:201,202,401,2100002,2100003|@ohos.net.connection.d.ts|
|新增(错误码)|类名:connection;<br>方法or属性:function reportNetConnected(netHandle: NetHandle): Promise\<void>;<br>旧版本信息:|类名:connection;<br>方法or属性:function reportNetConnected(netHandle: NetHandle): Promise\<void>;<br>新版本信息:201,401,2100001,2100002,2100003|@ohos.net.connection.d.ts|
|新增(错误码)|类名:connection;<br>方法or属性:function reportNetDisconnected(netHandle: NetHandle): Promise\<void>;<br>旧版本信息:|类名:connection;<br>方法or属性:function reportNetDisconnected(netHandle: NetHandle): Promise\<void>;<br>新版本信息:201,401,2100001,2100002,2100003|@ohos.net.connection.d.ts|
|新增(错误码)|类名:connection;<br>方法or属性:function getAddressesByName(host: string): Promise\<Array\<NetAddress>>;<br>旧版本信息:|类名:connection;<br>方法or属性:function getAddressesByName(host: string): Promise\<Array\<NetAddress>>;<br>新版本信息:201,401,2100001,2100002,2100003|@ohos.net.connection.d.ts|
|新增(错误码)|类名:NetHandle;<br>方法or属性:bindSocket(socketParam: TCPSocket \| UDPSocket): Promise\<void>;<br>旧版本信息:|类名:NetHandle;<br>方法or属性:bindSocket(socketParam: TCPSocket \| UDPSocket): Promise\<void>;<br>新版本信息:401,2100001,2100002,2100003|@ohos.net.connection.d.ts|
|新增(错误码)|类名:NetHandle;<br>方法or属性:getAddressesByName(host: string): Promise\<Array\<NetAddress>>;<br>旧版本信息:|类名:NetHandle;<br>方法or属性:getAddressesByName(host: string): Promise\<Array\<NetAddress>>;<br>新版本信息:201,401,2100001,2100002,2100003|@ohos.net.connection.d.ts|
|新增(错误码)|类名:NetHandle;<br>方法or属性:getAddressByName(host: string): Promise\<NetAddress>;<br>旧版本信息:|类名:NetHandle;<br>方法or属性:getAddressByName(host: string): Promise\<NetAddress>;<br>新版本信息:201,401,2100001,2100002,2100003|@ohos.net.connection.d.ts|
|新增(错误码)|类名:ethernet;<br>方法or属性:function getIfaceConfig(iface: string): Promise\<InterfaceConfiguration>;<br>旧版本信息:|类名:ethernet;<br>方法or属性:function getIfaceConfig(iface: string): Promise\<InterfaceConfiguration>;<br>新版本信息:201,202,401,2200001,2200002,2200003,2201005|@ohos.net.ethernet.d.ts|
|新增(错误码)|类名:ethernet;<br>方法or属性:function setIfaceConfig(iface: string, ic: InterfaceConfiguration): Promise\<void>;<br>旧版本信息:|类名:ethernet;<br>方法or属性:function setIfaceConfig(iface: string, ic: InterfaceConfiguration): Promise\<void>;<br>新版本信息:201,202,401,2200001,2200002,2200003,2201004,2201005,2201006,2201007|@ohos.net.ethernet.d.ts|
|新增(错误码)|类名:ethernet;<br>方法or属性:function isIfaceActive(iface: string): Promise\<number>;<br>旧版本信息:|类名:ethernet;<br>方法or属性:function isIfaceActive(iface: string): Promise\<number>;<br>新版本信息:201,202,401,2200001,2200002,2200003,2201005|@ohos.net.ethernet.d.ts|
|新增(错误码)|类名:ethernet;<br>方法or属性:function getAllActiveIfaces(): Promise\<Array\<string>>;<br>旧版本信息:|类名:ethernet;<br>方法or属性:function getAllActiveIfaces(): Promise\<Array\<string>>;<br>新版本信息:201,202,2200002,2200003|@ohos.net.ethernet.d.ts|
|新增(错误码)|类名:HttpRequest;<br>方法or属性:request(url: string, options: HttpRequestOptions, callback: AsyncCallback\<HttpResponse>): void;<br>旧版本信息:|类名:HttpRequest;<br>方法or属性:request(url: string, options: HttpRequestOptions, callback: AsyncCallback\<HttpResponse>): void;<br>新版本信息:401,201,2300001,2300003,2300005,2300006,2300007,2300008,2300009,2300016,2300018,2300023,2300025,2300026,2300027,2300028,2300047,2300052,2300055,2300056,2300058,2300059,2300060,2300061,2300063,2300070,2300073,2300077,2300078,2300094,2300999|@ohos.net.http.d.ts|
|新增(错误码)|类名:HttpRequest;<br>方法or属性:request(url: string, options?: HttpRequestOptions): Promise\<HttpResponse>;<br>旧版本信息:|类名:HttpRequest;<br>方法or属性:request(url: string, options?: HttpRequestOptions): Promise\<HttpResponse>;<br>新版本信息:401,201,2300001,2300003,2300005,2300006,2300007,2300008,2300009,2300016,2300018,2300023,2300025,2300026,2300027,2300028,2300047,2300052,2300055,2300056,2300058,2300059,2300060,2300061,2300063,2300070,2300073,2300077,2300078,2300094,2300999|@ohos.net.http.d.ts|
|新增(错误码)|类名:sharing;<br>方法or属性:function isSharingSupported(): Promise\<boolean>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function isSharingSupported(): Promise\<boolean>;<br>新版本信息:201,202,2200002,2200003,2202011|@ohos.net.sharing.d.ts|
|新增(错误码)|类名:sharing;<br>方法or属性:function isSharing(): Promise\<boolean>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function isSharing(): Promise\<boolean>;<br>新版本信息:201,202,2200002,2200003,2202011|@ohos.net.sharing.d.ts|
|新增(错误码)|类名:sharing;<br>方法or属性:function startSharing(type: SharingIfaceType): Promise\<void>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function startSharing(type: SharingIfaceType): Promise\<void>;<br>新版本信息:201,202,401,2200001,2200002,2200003,2202004,2202005,2202006,2202009,2202011|@ohos.net.sharing.d.ts|
|新增(错误码)|类名:sharing;<br>方法or属性:function stopSharing(type: SharingIfaceType): Promise\<void>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function stopSharing(type: SharingIfaceType): Promise\<void>;<br>新版本信息:201,202,401,2200001,2200002,2200003,2202004,2202005,2202006,2202011|@ohos.net.sharing.d.ts|
|新增(错误码)|类名:sharing;<br>方法or属性:function getStatsRxBytes(): Promise\<number>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function getStatsRxBytes(): Promise\<number>;<br>新版本信息:201,202,401,2200002,2200003|@ohos.net.sharing.d.ts|
|新增(错误码)|类名:sharing;<br>方法or属性:function getStatsTxBytes(): Promise\<number>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function getStatsTxBytes(): Promise\<number>;<br>新版本信息:201,202,401,2200002,2200003|@ohos.net.sharing.d.ts|
|新增(错误码)|类名:sharing;<br>方法or属性:function getStatsTotalBytes(): Promise\<number>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function getStatsTotalBytes(): Promise\<number>;<br>新版本信息:201,202,401,2200002,2200003|@ohos.net.sharing.d.ts|
|新增(错误码)|类名:sharing;<br>方法or属性:function getSharingIfaces(state: SharingIfaceState): Promise\<Array\<string>>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function getSharingIfaces(state: SharingIfaceState): Promise\<Array\<string>>;<br>新版本信息:201,202,401,2200001,2200002,2200003|@ohos.net.sharing.d.ts|
|新增(错误码)|类名:sharing;<br>方法or属性:function getSharingState(type: SharingIfaceType): Promise\<SharingIfaceState>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function getSharingState(type: SharingIfaceType): Promise\<SharingIfaceState>;<br>新版本信息:201,202,401,2200001,2200002,2200003|@ohos.net.sharing.d.ts|
|新增(错误码)|类名:sharing;<br>方法or属性:function getSharableRegexes(type: SharingIfaceType): Promise\<Array\<string>>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function getSharableRegexes(type: SharingIfaceType): Promise\<Array\<string>>;<br>新版本信息:201,202,401,2200001,2200002,2200003|@ohos.net.sharing.d.ts|
|新增(错误码)|类名:UDPSocket;<br>方法or属性:bind(address: NetAddress): Promise\<void>;<br>旧版本信息:|类名:UDPSocket;<br>方法or属性:bind(address: NetAddress): Promise\<void>;<br>新版本信息:401,201|@ohos.net.socket.d.ts|
|新增(错误码)|类名:TCPSocket;<br>方法or属性:bind(address: NetAddress): Promise\<void>;<br>旧版本信息:|类名:TCPSocket;<br>方法or属性:bind(address: NetAddress): Promise\<void>;<br>新版本信息:401,201|@ohos.net.socket.d.ts|
|新增(错误码)|类名:TLSSocket;<br>方法or属性:bind(address: NetAddress): Promise\<void>;<br>旧版本信息:|类名:TLSSocket;<br>方法or属性:bind(address: NetAddress): Promise\<void>;<br>新版本信息:401,201,2303198,2300002|@ohos.net.socket.d.ts|
|新增(错误码)|类名:UDPSocket;<br>方法or属性:send(options: UDPSendOptions): Promise\<void>;<br>旧版本信息:|类名:UDPSocket;<br>方法or属性:send(options: UDPSendOptions): Promise\<void>;<br>新版本信息:401,201|@ohos.net.socket.d.ts|
|新增(错误码)|类名:UDPSocket;<br>方法or属性:close(): Promise\<void>;<br>旧版本信息:|类名:UDPSocket;<br>方法or属性:close(): Promise\<void>;<br>新版本信息:201|@ohos.net.socket.d.ts|
|新增(错误码)|类名:TCPSocket;<br>方法or属性:close(): Promise\<void>;<br>旧版本信息:|类名:TCPSocket;<br>方法or属性:close(): Promise\<void>;<br>新版本信息:201|@ohos.net.socket.d.ts|
|新增(错误码)|类名:TLSSocket;<br>方法or属性:close(): Promise\<void>;<br>旧版本信息:|类名:TLSSocket;<br>方法or属性:close(): Promise\<void>;<br>新版本信息:401,2303501,2303505,2303506,2300002|@ohos.net.socket.d.ts|
|新增(错误码)|类名:UDPSocket;<br>方法or属性:getState(): Promise\<SocketStateBase>;<br>旧版本信息:|类名:UDPSocket;<br>方法or属性:getState(): Promise\<SocketStateBase>;<br>新版本信息:201|@ohos.net.socket.d.ts|
|新增(错误码)|类名:TCPSocket;<br>方法or属性:getState(): Promise\<SocketStateBase>;<br>旧版本信息:|类名:TCPSocket;<br>方法or属性:getState(): Promise\<SocketStateBase>;<br>新版本信息:201|@ohos.net.socket.d.ts|
|新增(错误码)|类名:TLSSocket;<br>方法or属性:getState(): Promise\<SocketStateBase>;<br>旧版本信息:|类名:TLSSocket;<br>方法or属性:getState(): Promise\<SocketStateBase>;<br>新版本信息:2303188,2300002|@ohos.net.socket.d.ts|
|新增(错误码)|类名:UDPSocket;<br>方法or属性:setExtraOptions(options: UDPExtraOptions): Promise\<void>;<br>旧版本信息:|类名:UDPSocket;<br>方法or属性:setExtraOptions(options: UDPExtraOptions): Promise\<void>;<br>新版本信息:401,201|@ohos.net.socket.d.ts|
|新增(错误码)|类名:TCPSocket;<br>方法or属性:connect(options: TCPConnectOptions): Promise\<void>;<br>旧版本信息:|类名:TCPSocket;<br>方法or属性:connect(options: TCPConnectOptions): Promise\<void>;<br>新版本信息:401,201|@ohos.net.socket.d.ts|
|新增(错误码)|类名:TCPSocket;<br>方法or属性:send(options: TCPSendOptions): Promise\<void>;<br>旧版本信息:|类名:TCPSocket;<br>方法or属性:send(options: TCPSendOptions): Promise\<void>;<br>新版本信息:401,201|@ohos.net.socket.d.ts|
|新增(错误码)|类名:TCPSocket;<br>方法or属性:getRemoteAddress(): Promise\<NetAddress>;<br>旧版本信息:|类名:TCPSocket;<br>方法or属性:getRemoteAddress(): Promise\<NetAddress>;<br>新版本信息:201|@ohos.net.socket.d.ts|
|新增(错误码)|类名:TLSSocket;<br>方法or属性:getRemoteAddress(): Promise\<NetAddress>;<br>旧版本信息:|类名:TLSSocket;<br>方法or属性:getRemoteAddress(): Promise\<NetAddress>;<br>新版本信息:2303188,2300002|@ohos.net.socket.d.ts|
|新增(错误码)|类名:TCPSocket;<br>方法or属性:setExtraOptions(options: TCPExtraOptions): Promise\<void>;<br>旧版本信息:|类名:TCPSocket;<br>方法or属性:setExtraOptions(options: TCPExtraOptions): Promise\<void>;<br>新版本信息:401,201|@ohos.net.socket.d.ts|
|新增(错误码)|类名:TLSSocket;<br>方法or属性:setExtraOptions(options: TCPExtraOptions): Promise\<void>;<br>旧版本信息:|类名:TLSSocket;<br>方法or属性:setExtraOptions(options: TCPExtraOptions): Promise\<void>;<br>新版本信息:401,2303188,2300002|@ohos.net.socket.d.ts|
|新增(错误码)|类名:TLSSocket;<br>方法or属性:getCertificate(): Promise\<X509CertRawData>;<br>旧版本信息:|类名:TLSSocket;<br>方法or属性:getCertificate(): Promise\<X509CertRawData>;<br>新版本信息:2303501,2303504,2300002|@ohos.net.socket.d.ts|
|新增(错误码)|类名:TLSSocket;<br>方法or属性:getRemoteCertificate(): Promise\<X509CertRawData>;<br>旧版本信息:|类名:TLSSocket;<br>方法or属性:getRemoteCertificate(): Promise\<X509CertRawData>;<br>新版本信息:2303501,2300002|@ohos.net.socket.d.ts|
|新增(错误码)|类名:TLSSocket;<br>方法or属性:getProtocol(): Promise\<string>;<br>旧版本信息:|类名:TLSSocket;<br>方法or属性:getProtocol(): Promise\<string>;<br>新版本信息:2303501,2303505,2300002|@ohos.net.socket.d.ts|
|新增(错误码)|类名:TLSSocket;<br>方法or属性:getCipherSuite(): Promise\<Array\<string>>;<br>旧版本信息:|类名:TLSSocket;<br>方法or属性:getCipherSuite(): Promise\<Array\<string>>;<br>新版本信息:2303501,2303502,2303505,2300002|@ohos.net.socket.d.ts|
|新增(错误码)|类名:TLSSocket;<br>方法or属性:getSignatureAlgorithms(): Promise\<Array\<string>>;<br>旧版本信息:|类名:TLSSocket;<br>方法or属性:getSignatureAlgorithms(): Promise\<Array\<string>>;<br>新版本信息:2303501,2300002|@ohos.net.socket.d.ts|
|新增(错误码)|类名:TLSSocket;<br>方法or属性:connect(options: TLSConnectOptions): Promise\<void>;<br>旧版本信息:|类名:TLSSocket;<br>方法or属性:connect(options: TLSConnectOptions): Promise\<void>;<br>新版本信息:401,2303104,2303109,2303111,2303188,2303191,2303198,2303199,2303210,2303501,2303502,2303503,2303505,2303506,2300002|@ohos.net.socket.d.ts|
|新增(错误码)|类名:TLSSocket;<br>方法or属性:send(data: string): Promise\<void>;<br>旧版本信息:|类名:TLSSocket;<br>方法or属性:send(data: string): Promise\<void>;<br>新版本信息:401,2303501,2303503,2303505,2303506,2300002|@ohos.net.socket.d.ts|
|新增(错误码)|类名:WebSocket;<br>方法or属性:connect(url: string, options: WebSocketRequestOptions, callback: AsyncCallback\<boolean>): void;<br>旧版本信息:|类名:WebSocket;<br>方法or属性:connect(url: string, options: WebSocketRequestOptions, callback: AsyncCallback\<boolean>): void;<br>新版本信息:401,201|@ohos.net.webSocket.d.ts|
|新增(错误码)|类名:WebSocket;<br>方法or属性:connect(url: string, options?: WebSocketRequestOptions): Promise\<boolean>;<br>旧版本信息:|类名:WebSocket;<br>方法or属性:connect(url: string, options?: WebSocketRequestOptions): Promise\<boolean>;<br>新版本信息:401,201|@ohos.net.webSocket.d.ts|
|新增(错误码)|类名:WebSocket;<br>方法or属性:send(data: string \| ArrayBuffer): Promise\<boolean>;<br>旧版本信息:|类名:WebSocket;<br>方法or属性:send(data: string \| ArrayBuffer): Promise\<boolean>;<br>新版本信息:401,201|@ohos.net.webSocket.d.ts|
|新增(错误码)|类名:WebSocket;<br>方法or属性:close(options: WebSocketCloseOptions, callback: AsyncCallback\<boolean>): void;<br>旧版本信息:|类名:WebSocket;<br>方法or属性:close(options: WebSocketCloseOptions, callback: AsyncCallback\<boolean>): void;<br>新版本信息:401,201|@ohos.net.webSocket.d.ts|
|新增(错误码)|类名:WebSocket;<br>方法or属性:close(options?: WebSocketCloseOptions): Promise\<boolean>;<br>旧版本信息:|类名:WebSocket;<br>方法or属性:close(options?: WebSocketCloseOptions): Promise\<boolean>;<br>新版本信息:401,201|@ohos.net.webSocket.d.ts|
|新增(错误码)|类名:wifiManager;<br>方法or属性:function addDeviceConfig(config: WifiDeviceConfig, callback: AsyncCallback\<number>): void;<br>旧版本信息:|类名:wifiManager;<br>方法or属性:function addDeviceConfig(config: WifiDeviceConfig, callback: AsyncCallback\<number>): void;<br>新版本信息:201,202,401,801,2501000|@ohos.wifiManager.d.ts|
|新增(错误码)|类名:wifiManager;<br>方法or属性:function addCandidateConfig(config: WifiDeviceConfig, callback: AsyncCallback\<number>): void;<br>旧版本信息:|类名:wifiManager;<br>方法or属性:function addCandidateConfig(config: WifiDeviceConfig, callback: AsyncCallback\<number>): void;<br>新版本信息:201,401,801,2501000|@ohos.wifiManager.d.ts|
|新增(错误码)|类名:wifiManager;<br>方法or属性:function removeCandidateConfig(networkId: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:wifiManager;<br>方法or属性:function removeCandidateConfig(networkId: number, callback: AsyncCallback\<void>): void;<br>新版本信息:201,401,801,2501000|@ohos.wifiManager.d.ts|
|新增(错误码)|类名:wifiManager;<br>方法or属性:function getLinkedInfo(callback: AsyncCallback\<WifiLinkedInfo>): void;<br>旧版本信息:|类名:wifiManager;<br>方法or属性:function getLinkedInfo(callback: AsyncCallback\<WifiLinkedInfo>): void;<br>新版本信息:201,202,801,2501000,2501001|@ohos.wifiManager.d.ts|
|新增(错误码)|类名:wifiManager;<br>方法or属性:function getP2pLinkedInfo(callback: AsyncCallback\<WifiP2pLinkedInfo>): void;<br>旧版本信息:|类名:wifiManager;<br>方法or属性:function getP2pLinkedInfo(callback: AsyncCallback\<WifiP2pLinkedInfo>): void;<br>新版本信息:201,801,2801000|@ohos.wifiManager.d.ts|
|新增(错误码)|类名:wifiManager;<br>方法or属性:function getCurrentP2pGroup(callback: AsyncCallback\<WifiP2pGroupInfo>): void;<br>旧版本信息:|类名:wifiManager;<br>方法or属性:function getCurrentP2pGroup(callback: AsyncCallback\<WifiP2pGroupInfo>): void;<br>新版本信息:201,801,2801000|@ohos.wifiManager.d.ts|
|新增(错误码)|类名:wifiManager;<br>方法or属性:function getP2pPeerDevices(callback: AsyncCallback\<WifiP2pDevice[]>): void;<br>旧版本信息:|类名:wifiManager;<br>方法or属性:function getP2pPeerDevices(callback: AsyncCallback\<WifiP2pDevice[]>): void;<br>新版本信息:201,801,2801000|@ohos.wifiManager.d.ts|
|新增(错误码)|类名:wifiManager;<br>方法or属性:function getP2pLocalDevice(callback: AsyncCallback\<WifiP2pDevice>): void;<br>旧版本信息:|类名:wifiManager;<br>方法or属性:function getP2pLocalDevice(callback: AsyncCallback\<WifiP2pDevice>): void;<br>新版本信息:201,801,2801000|@ohos.wifiManager.d.ts|
|新增(错误码)|类名:wifiManager;<br>方法or属性:function getP2pGroups(callback: AsyncCallback\<Array\<WifiP2pGroupInfo>>): void;<br>旧版本信息:|类名:wifiManager;<br>方法or属性:function getP2pGroups(callback: AsyncCallback\<Array\<WifiP2pGroupInfo>>): void;<br>新版本信息:201,202,801,2801000|@ohos.wifiManager.d.ts|
|错误码有变化|类名:connection;<br>方法or属性:function getDefaultNet(callback: AsyncCallback\<NetHandle>): void;<br>旧版本信息:201,2100002,2100003|类名:connection;<br>方法or属性:function getDefaultNet(callback: AsyncCallback\<NetHandle>): void;<br>新版本信息:201,401,2100002,2100003|@ohos.net.connection.d.ts|
|错误码有变化|类名:connection;<br>方法or属性:function getDefaultNetSync(): NetHandle;<br>旧版本信息:201,2100002,2100003|类名:connection;<br>方法or属性:function getDefaultNetSync(): NetHandle;<br>新版本信息:201,401,2100002,2100003|@ohos.net.connection.d.ts|
|错误码有变化|类名:connection;<br>方法or属性:function getAllNets(callback: AsyncCallback\<Array\<NetHandle>>): void;<br>旧版本信息:201,2100002,2100003|类名:connection;<br>方法or属性:function getAllNets(callback: AsyncCallback\<Array\<NetHandle>>): void;<br>新版本信息:201,401,2100002,2100003|@ohos.net.connection.d.ts|
|错误码有变化|类名:connection;<br>方法or属性:function isDefaultNetMetered(callback: AsyncCallback\<boolean>): void;<br>旧版本信息:201,2100002,2100003|类名:connection;<br>方法or属性:function isDefaultNetMetered(callback: AsyncCallback\<boolean>): void;<br>新版本信息:201,401,2100002,2100003|@ohos.net.connection.d.ts|
|错误码有变化|类名:connection;<br>方法or属性:function hasDefaultNet(callback: AsyncCallback\<boolean>): void;<br>旧版本信息:201,2100002,2100003|类名:connection;<br>方法or属性:function hasDefaultNet(callback: AsyncCallback\<boolean>): void;<br>新版本信息:201,401,2100002,2100003|@ohos.net.connection.d.ts|
|错误码有变化|类名:connection;<br>方法or属性:function enableAirplaneMode(callback: AsyncCallback\<void>): void;<br>旧版本信息:201,2100002,2100003|类名:connection;<br>方法or属性:function enableAirplaneMode(callback: AsyncCallback\<void>): void;<br>新版本信息:201,202,401,2100002,2100003|@ohos.net.connection.d.ts|
|错误码有变化|类名:connection;<br>方法or属性:function disableAirplaneMode(callback: AsyncCallback\<void>): void;<br>旧版本信息:201,2100002,2100003|类名:connection;<br>方法or属性:function disableAirplaneMode(callback: AsyncCallback\<void>): void;<br>新版本信息:201,202,401,2100002,2100003|@ohos.net.connection.d.ts|
|错误码有变化|类名:connection;<br>方法or属性:function getAppNet(callback: AsyncCallback\<NetHandle>): void;<br>旧版本信息:2100002,2100003|类名:connection;<br>方法or属性:function getAppNet(callback: AsyncCallback\<NetHandle>): void;<br>新版本信息:401,2100002,2100003|@ohos.net.connection.d.ts|
|错误码有变化|类名:connection;<br>方法or属性:function getAppNet(): Promise\<NetHandle>;<br>旧版本信息:2100002,2100003|类名:connection;<br>方法or属性:function getAppNet(): Promise\<NetHandle>;<br>新版本信息:401,2100002,2100003|@ohos.net.connection.d.ts|
|错误码有变化|类名:connection;<br>方法or属性:function getGlobalHttpProxy(callback: AsyncCallback\<HttpProxy>): void;<br>旧版本信息:2100002,2100003|类名:connection;<br>方法or属性:function getGlobalHttpProxy(callback: AsyncCallback\<HttpProxy>): void;<br>新版本信息:401,202,2100002,2100003|@ohos.net.connection.d.ts|
|错误码有变化|类名:connection;<br>方法or属性:function getGlobalHttpProxy(): Promise\<HttpProxy>;<br>旧版本信息:2100002,2100003|类名:connection;<br>方法or属性:function getGlobalHttpProxy(): Promise\<HttpProxy>;<br>新版本信息:401,202,2100002,2100003|@ohos.net.connection.d.ts|
|错误码有变化|类名:connection;<br>方法or属性:function setGlobalHttpProxy(httpProxy: HttpProxy, callback: AsyncCallback\<void>): void;<br>旧版本信息:201,401,2100001,2100002,2100003|类名:connection;<br>方法or属性:function setGlobalHttpProxy(httpProxy: HttpProxy, callback: AsyncCallback\<void>): void;<br>新版本信息:201,401,202,2100001,2100002,2100003|@ohos.net.connection.d.ts|
|错误码有变化|类名:connection;<br>方法or属性:function setGlobalHttpProxy(httpProxy: HttpProxy): Promise\<void>;<br>旧版本信息:201,401,2100001,2100002,2100003|类名:connection;<br>方法or属性:function setGlobalHttpProxy(httpProxy: HttpProxy): Promise\<void>;<br>新版本信息:201,401,202,2100001,2100002,2100003|@ohos.net.connection.d.ts|
|错误码有变化|类名:NetConnection;<br>方法or属性:register(callback: AsyncCallback\<void>): void;<br>旧版本信息:201,2100002,2100003,2101008,2101022|类名:NetConnection;<br>方法or属性:register(callback: AsyncCallback\<void>): void;<br>新版本信息:201,401,2100002,2100003,2101008,2101022|@ohos.net.connection.d.ts|
|错误码有变化|类名:NetConnection;<br>方法or属性:unregister(callback: AsyncCallback\<void>): void;<br>旧版本信息:2100002,2100003,2101007|类名:NetConnection;<br>方法or属性:unregister(callback: AsyncCallback\<void>): void;<br>新版本信息:201,401,2100002,2100003,2101007|@ohos.net.connection.d.ts|
|错误码有变化|类名:ethernet;<br>方法or属性:function getIfaceConfig(iface: string, callback: AsyncCallback\<InterfaceConfiguration>): void;<br>旧版本信息:201,401,2200001,2200002,2200003,2201005|类名:ethernet;<br>方法or属性:function getIfaceConfig(iface: string, callback: AsyncCallback\<InterfaceConfiguration>): void;<br>新版本信息:201,202,401,2200001,2200002,2200003,2201005|@ohos.net.ethernet.d.ts|
|错误码有变化|类名:ethernet;<br>方法or属性:function setIfaceConfig(iface: string, ic: InterfaceConfiguration, callback: AsyncCallback\<void>): void;<br>旧版本信息:201,401,2200001,2200002,2200003,2201004,2201005,2201006,2201007|类名:ethernet;<br>方法or属性:function setIfaceConfig(iface: string, ic: InterfaceConfiguration, callback: AsyncCallback\<void>): void;<br>新版本信息:201,202,401,2200001,2200002,2200003,2201004,2201005,2201006,2201007|@ohos.net.ethernet.d.ts|
|错误码有变化|类名:ethernet;<br>方法or属性:function isIfaceActive(iface: string, callback: AsyncCallback\<number>): void;<br>旧版本信息:201,401,2200001,2200002,2200003,2201005|类名:ethernet;<br>方法or属性:function isIfaceActive(iface: string, callback: AsyncCallback\<number>): void;<br>新版本信息:201,202,401,2200001,2200002,2200003,2201005|@ohos.net.ethernet.d.ts|
|错误码有变化|类名:ethernet;<br>方法or属性:function getAllActiveIfaces(callback: AsyncCallback\<Array\<string>>): void;<br>旧版本信息:201,2200002,2200003|类名:ethernet;<br>方法or属性:function getAllActiveIfaces(callback: AsyncCallback\<Array\<string>>): void;<br>新版本信息:201,202,2200002,2200003|@ohos.net.ethernet.d.ts|
|错误码有变化|类名:sharing;<br>方法or属性:function isSharingSupported(callback: AsyncCallback\<boolean>): void;<br>旧版本信息:201,2200002,2200003,2202011|类名:sharing;<br>方法or属性:function isSharingSupported(callback: AsyncCallback\<boolean>): void;<br>新版本信息:201,202,2200002,2200003,2202011|@ohos.net.sharing.d.ts|
|错误码有变化|类名:sharing;<br>方法or属性:function isSharing(callback: AsyncCallback\<boolean>): void;<br>旧版本信息:201,2200002,2200003,2202011|类名:sharing;<br>方法or属性:function isSharing(callback: AsyncCallback\<boolean>): void;<br>新版本信息:201,202,2200002,2200003,2202011|@ohos.net.sharing.d.ts|
|错误码有变化|类名:sharing;<br>方法or属性:function startSharing(type: SharingIfaceType, callback: AsyncCallback\<void>): void;<br>旧版本信息:201,401,2200001,2200002,2200003,2202004,2202005,2202006,2202009,2202011|类名:sharing;<br>方法or属性:function startSharing(type: SharingIfaceType, callback: AsyncCallback\<void>): void;<br>新版本信息:201,202,401,2200001,2200002,2200003,2202004,2202005,2202006,2202009,2202011|@ohos.net.sharing.d.ts|
|错误码有变化|类名:sharing;<br>方法or属性:function stopSharing(type: SharingIfaceType, callback: AsyncCallback\<void>): void;<br>旧版本信息:201,401,2200001,2200002,2200003,2202004,2202005,2202006,2202011|类名:sharing;<br>方法or属性:function stopSharing(type: SharingIfaceType, callback: AsyncCallback\<void>): void;<br>新版本信息:201,202,401,2200001,2200002,2200003,2202004,2202005,2202006,2202011|@ohos.net.sharing.d.ts|
|错误码有变化|类名:sharing;<br>方法or属性:function getStatsRxBytes(callback: AsyncCallback\<number>): void;<br>旧版本信息:201,2200002,2200003|类名:sharing;<br>方法or属性:function getStatsRxBytes(callback: AsyncCallback\<number>): void;<br>新版本信息:201,202,401,2200002,2200003|@ohos.net.sharing.d.ts|
|错误码有变化|类名:sharing;<br>方法or属性:function getStatsTxBytes(callback: AsyncCallback\<number>): void;<br>旧版本信息:201,2200002,2200003|类名:sharing;<br>方法or属性:function getStatsTxBytes(callback: AsyncCallback\<number>): void;<br>新版本信息:201,202,401,2200002,2200003|@ohos.net.sharing.d.ts|
|错误码有变化|类名:sharing;<br>方法or属性:function getStatsTotalBytes(callback: AsyncCallback\<number>): void;<br>旧版本信息:201,2200002,2200003|类名:sharing;<br>方法or属性:function getStatsTotalBytes(callback: AsyncCallback\<number>): void;<br>新版本信息:201,202,401,2200002,2200003|@ohos.net.sharing.d.ts|
|错误码有变化|类名:sharing;<br>方法or属性:function getSharingIfaces(state: SharingIfaceState, callback: AsyncCallback\<Array\<string>>): void;<br>旧版本信息:201,401,2200001,2200002,2200003|类名:sharing;<br>方法or属性:function getSharingIfaces(state: SharingIfaceState, callback: AsyncCallback\<Array\<string>>): void;<br>新版本信息:201,202,401,2200001,2200002,2200003|@ohos.net.sharing.d.ts|
|错误码有变化|类名:sharing;<br>方法or属性:function getSharingState(type: SharingIfaceType, callback: AsyncCallback\<SharingIfaceState>): void;<br>旧版本信息:201,401,2200001,2200002,2200003|类名:sharing;<br>方法or属性:function getSharingState(type: SharingIfaceType, callback: AsyncCallback\<SharingIfaceState>): void;<br>新版本信息:201,202,401,2200001,2200002,2200003|@ohos.net.sharing.d.ts|
|错误码有变化|类名:sharing;<br>方法or属性:function getSharableRegexes(type: SharingIfaceType, callback: AsyncCallback\<Array\<string>>): void;<br>旧版本信息:201,401,2200001,2200002,2200003|类名:sharing;<br>方法or属性:function getSharableRegexes(type: SharingIfaceType, callback: AsyncCallback\<Array\<string>>): void;<br>新版本信息:201,202,401,2200001,2200002,2200003|@ohos.net.sharing.d.ts|
|错误码有变化|类名:sharing;<br>方法or属性:function on(type: 'sharingStateChange', callback: Callback\<boolean>): void;<br>旧版本信息:201,401|类名:sharing;<br>方法or属性:function on(type: 'sharingStateChange', callback: Callback\<boolean>): void;<br>新版本信息:201,202,401|@ohos.net.sharing.d.ts|
|错误码有变化|类名:sharing;<br>方法or属性:function on(type: 'interfaceSharingStateChange', callback: Callback\<{ type: SharingIfaceType, iface: string, state: SharingIfaceState }>): void;<br>旧版本信息:201,401|类名:sharing;<br>方法or属性:function on(type: 'interfaceSharingStateChange', callback: Callback\<{ type: SharingIfaceType, iface: string, state: SharingIfaceState }>): void;<br>新版本信息:201,202,401|@ohos.net.sharing.d.ts|
|错误码有变化|类名:sharing;<br>方法or属性:function on(type: 'sharingUpstreamChange', callback: Callback\<NetHandle>): void;<br>旧版本信息:201,401|类名:sharing;<br>方法or属性:function on(type: 'sharingUpstreamChange', callback: Callback\<NetHandle>): void;<br>新版本信息:201,202,401|@ohos.net.sharing.d.ts|
|错误码有变化|类名:sharing;<br>方法or属性:function off(type: 'sharingStateChange', callback?: Callback\<boolean>): void;<br>旧版本信息:201,401|类名:sharing;<br>方法or属性:function off(type: 'sharingStateChange', callback?: Callback\<boolean>): void;<br>新版本信息:201,202,401|@ohos.net.sharing.d.ts|
|错误码有变化|类名:sharing;<br>方法or属性:function off(type: 'interfaceSharingStateChange', callback?: Callback\<{ type: SharingIfaceType, iface: string, state: SharingIfaceState }>): void;<br>旧版本信息:201,401|类名:sharing;<br>方法or属性:function off(type: 'interfaceSharingStateChange', callback?: Callback\<{ type: SharingIfaceType, iface: string, state: SharingIfaceState }>): void;<br>新版本信息:201,202,401|@ohos.net.sharing.d.ts|
|错误码有变化|类名:sharing;<br>方法or属性:function off(type: 'sharingUpstreamChange', callback?: Callback\<NetHandle>): void;<br>旧版本信息:201,401|类名:sharing;<br>方法or属性:function off(type: 'sharingUpstreamChange', callback?: Callback\<NetHandle>): void;<br>新版本信息:201,202,401|@ohos.net.sharing.d.ts|
|访问级别有变化|类名:connection;<br>方法or属性:function enableAirplaneMode(): Promise\<void>;<br>旧版本信息:|类名:connection;<br>方法or属性:function enableAirplaneMode(): Promise\<void>;<br>新版本信息:systemapi|@ohos.net.connection.d.ts|
|访问级别有变化|类名:connection;<br>方法or属性:function disableAirplaneMode(): Promise\<void>;<br>旧版本信息:|类名:connection;<br>方法or属性:function disableAirplaneMode(): Promise\<void>;<br>新版本信息:systemapi|@ohos.net.connection.d.ts|
|访问级别有变化|类名:ethernet;<br>方法or属性:function getIfaceConfig(iface: string): Promise\<InterfaceConfiguration>;<br>旧版本信息:|类名:ethernet;<br>方法or属性:function getIfaceConfig(iface: string): Promise\<InterfaceConfiguration>;<br>新版本信息:systemapi|@ohos.net.ethernet.d.ts|
|访问级别有变化|类名:ethernet;<br>方法or属性:function setIfaceConfig(iface: string, ic: InterfaceConfiguration): Promise\<void>;<br>旧版本信息:|类名:ethernet;<br>方法or属性:function setIfaceConfig(iface: string, ic: InterfaceConfiguration): Promise\<void>;<br>新版本信息:systemapi|@ohos.net.ethernet.d.ts|
|访问级别有变化|类名:ethernet;<br>方法or属性:function isIfaceActive(iface: string): Promise\<number>;<br>旧版本信息:|类名:ethernet;<br>方法or属性:function isIfaceActive(iface: string): Promise\<number>;<br>新版本信息:systemapi|@ohos.net.ethernet.d.ts|
|访问级别有变化|类名:ethernet;<br>方法or属性:function getAllActiveIfaces(): Promise\<Array\<string>>;<br>旧版本信息:|类名:ethernet;<br>方法or属性:function getAllActiveIfaces(): Promise\<Array\<string>>;<br>新版本信息:systemapi|@ohos.net.ethernet.d.ts|
|访问级别有变化|类名:InterfaceConfiguration;<br>方法or属性:mode: IPSetMode;<br>旧版本信息:|类名:InterfaceConfiguration;<br>方法or属性:mode: IPSetMode;<br>新版本信息:systemapi|@ohos.net.ethernet.d.ts|
|访问级别有变化|类名:InterfaceConfiguration;<br>方法or属性:ipAddr: string;<br>旧版本信息:|类名:InterfaceConfiguration;<br>方法or属性:ipAddr: string;<br>新版本信息:systemapi|@ohos.net.ethernet.d.ts|
|访问级别有变化|类名:InterfaceConfiguration;<br>方法or属性:route: string;<br>旧版本信息:|类名:InterfaceConfiguration;<br>方法or属性:route: string;<br>新版本信息:systemapi|@ohos.net.ethernet.d.ts|
|访问级别有变化|类名:InterfaceConfiguration;<br>方法or属性:gateway: string;<br>旧版本信息:|类名:InterfaceConfiguration;<br>方法or属性:gateway: string;<br>新版本信息:systemapi|@ohos.net.ethernet.d.ts|
|访问级别有变化|类名:InterfaceConfiguration;<br>方法or属性:netMask: string;<br>旧版本信息:|类名:InterfaceConfiguration;<br>方法or属性:netMask: string;<br>新版本信息:systemapi|@ohos.net.ethernet.d.ts|
|访问级别有变化|类名:InterfaceConfiguration;<br>方法or属性:dnsServers: string;<br>旧版本信息:|类名:InterfaceConfiguration;<br>方法or属性:dnsServers: string;<br>新版本信息:systemapi|@ohos.net.ethernet.d.ts|
|访问级别有变化|类名:IPSetMode;<br>方法or属性:STATIC = 0<br>旧版本信息:|类名:IPSetMode;<br>方法or属性:STATIC = 0<br>新版本信息:systemapi|@ohos.net.ethernet.d.ts|
|访问级别有变化|类名:IPSetMode;<br>方法or属性:DHCP = 1<br>旧版本信息:|类名:IPSetMode;<br>方法or属性:DHCP = 1<br>新版本信息:systemapi|@ohos.net.ethernet.d.ts|
|访问级别有变化|类名:sharing;<br>方法or属性:function isSharingSupported(): Promise\<boolean>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function isSharingSupported(): Promise\<boolean>;<br>新版本信息:systemapi|@ohos.net.sharing.d.ts|
|访问级别有变化|类名:sharing;<br>方法or属性:function isSharing(): Promise\<boolean>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function isSharing(): Promise\<boolean>;<br>新版本信息:systemapi|@ohos.net.sharing.d.ts|
|访问级别有变化|类名:sharing;<br>方法or属性:function startSharing(type: SharingIfaceType): Promise\<void>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function startSharing(type: SharingIfaceType): Promise\<void>;<br>新版本信息:systemapi|@ohos.net.sharing.d.ts|
|访问级别有变化|类名:sharing;<br>方法or属性:function stopSharing(type: SharingIfaceType): Promise\<void>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function stopSharing(type: SharingIfaceType): Promise\<void>;<br>新版本信息:systemapi|@ohos.net.sharing.d.ts|
|访问级别有变化|类名:sharing;<br>方法or属性:function getStatsRxBytes(): Promise\<number>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function getStatsRxBytes(): Promise\<number>;<br>新版本信息:systemapi|@ohos.net.sharing.d.ts|
|访问级别有变化|类名:sharing;<br>方法or属性:function getStatsTxBytes(): Promise\<number>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function getStatsTxBytes(): Promise\<number>;<br>新版本信息:systemapi|@ohos.net.sharing.d.ts|
|访问级别有变化|类名:sharing;<br>方法or属性:function getStatsTotalBytes(): Promise\<number>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function getStatsTotalBytes(): Promise\<number>;<br>新版本信息:systemapi|@ohos.net.sharing.d.ts|
|访问级别有变化|类名:sharing;<br>方法or属性:function getSharingIfaces(state: SharingIfaceState): Promise\<Array\<string>>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function getSharingIfaces(state: SharingIfaceState): Promise\<Array\<string>>;<br>新版本信息:systemapi|@ohos.net.sharing.d.ts|
|访问级别有变化|类名:sharing;<br>方法or属性:function getSharingState(type: SharingIfaceType): Promise\<SharingIfaceState>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function getSharingState(type: SharingIfaceType): Promise\<SharingIfaceState>;<br>新版本信息:systemapi|@ohos.net.sharing.d.ts|
|访问级别有变化|类名:sharing;<br>方法or属性:function getSharableRegexes(type: SharingIfaceType): Promise\<Array\<string>>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function getSharableRegexes(type: SharingIfaceType): Promise\<Array\<string>>;<br>新版本信息:systemapi|@ohos.net.sharing.d.ts|
|访问级别有变化|类名:SharingIfaceState;<br>方法or属性:SHARING_NIC_SERVING = 1<br>旧版本信息:|类名:SharingIfaceState;<br>方法or属性:SHARING_NIC_SERVING = 1<br>新版本信息:systemapi|@ohos.net.sharing.d.ts|
|访问级别有变化|类名:SharingIfaceState;<br>方法or属性:SHARING_NIC_CAN_SERVER = 2<br>旧版本信息:|类名:SharingIfaceState;<br>方法or属性:SHARING_NIC_CAN_SERVER = 2<br>新版本信息:systemapi|@ohos.net.sharing.d.ts|
|访问级别有变化|类名:SharingIfaceState;<br>方法or属性:SHARING_NIC_ERROR = 3<br>旧版本信息:|类名:SharingIfaceState;<br>方法or属性:SHARING_NIC_ERROR = 3<br>新版本信息:systemapi|@ohos.net.sharing.d.ts|
|访问级别有变化|类名:SharingIfaceType;<br>方法or属性:SHARING_WIFI = 0<br>旧版本信息:|类名:SharingIfaceType;<br>方法or属性:SHARING_WIFI = 0<br>新版本信息:systemapi|@ohos.net.sharing.d.ts|
|访问级别有变化|类名:SharingIfaceType;<br>方法or属性:SHARING_USB = 1<br>旧版本信息:|类名:SharingIfaceType;<br>方法or属性:SHARING_USB = 1<br>新版本信息:systemapi|@ohos.net.sharing.d.ts|
|访问级别有变化|类名:SharingIfaceType;<br>方法or属性:SHARING_BLUETOOTH = 2<br>旧版本信息:|类名:SharingIfaceType;<br>方法or属性:SHARING_BLUETOOTH = 2<br>新版本信息:systemapi|@ohos.net.sharing.d.ts|
|访问级别有变化|类名:wifiManager;<br>方法or属性:function addDeviceConfig(config: WifiDeviceConfig, callback: AsyncCallback\<number>): void;<br>旧版本信息:|类名:wifiManager;<br>方法or属性:function addDeviceConfig(config: WifiDeviceConfig, callback: AsyncCallback\<number>): void;<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:wifiManager;<br>方法or属性:function getP2pGroups(callback: AsyncCallback\<Array\<WifiP2pGroupInfo>>): void;<br>旧版本信息:|类名:wifiManager;<br>方法or属性:function getP2pGroups(callback: AsyncCallback\<Array\<WifiP2pGroupInfo>>): void;<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:EapMethod;<br>方法or属性:enum EapMethod<br>旧版本信息:systemapi|类名:EapMethod;<br>方法or属性:enum EapMethod<br>新版本信息:|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:Phase2Method;<br>方法or属性:enum Phase2Method<br>旧版本信息:systemapi|类名:Phase2Method;<br>方法or属性:enum Phase2Method<br>新版本信息:|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:WifiEapConfig;<br>方法or属性:interface WifiEapConfig<br>旧版本信息:systemapi|类名:WifiEapConfig;<br>方法or属性:interface WifiEapConfig<br>新版本信息:|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:WifiDeviceConfig;<br>方法or属性:creatorUid?: number;<br>旧版本信息:|类名:WifiDeviceConfig;<br>方法or属性:creatorUid?: number;<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:WifiDeviceConfig;<br>方法or属性:disableReason?: number;<br>旧版本信息:|类名:WifiDeviceConfig;<br>方法or属性:disableReason?: number;<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:WifiDeviceConfig;<br>方法or属性:netId?: number;<br>旧版本信息:|类名:WifiDeviceConfig;<br>方法or属性:netId?: number;<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:WifiDeviceConfig;<br>方法or属性:randomMacType?: number;<br>旧版本信息:|类名:WifiDeviceConfig;<br>方法or属性:randomMacType?: number;<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:WifiDeviceConfig;<br>方法or属性:randomMacAddr?: string;<br>旧版本信息:|类名:WifiDeviceConfig;<br>方法or属性:randomMacAddr?: string;<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:WifiDeviceConfig;<br>方法or属性:ipType?: IpType;<br>旧版本信息:|类名:WifiDeviceConfig;<br>方法or属性:ipType?: IpType;<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:WifiDeviceConfig;<br>方法or属性:staticIp?: IpConfig;<br>旧版本信息:|类名:WifiDeviceConfig;<br>方法or属性:staticIp?: IpConfig;<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:WifiDeviceConfig;<br>方法or属性:eapConfig?: WifiEapConfig;<br>旧版本信息:systemapi|类名:WifiDeviceConfig;<br>方法or属性:eapConfig?: WifiEapConfig;<br>新版本信息:|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:IpConfig;<br>方法or属性:ipAddress: number;<br>旧版本信息:|类名:IpConfig;<br>方法or属性:ipAddress: number;<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:IpConfig;<br>方法or属性:gateway: number;<br>旧版本信息:|类名:IpConfig;<br>方法or属性:gateway: number;<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:IpConfig;<br>方法or属性:prefixLength: number;<br>旧版本信息:|类名:IpConfig;<br>方法or属性:prefixLength: number;<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:IpConfig;<br>方法or属性:dnsServers: number[];<br>旧版本信息:|类名:IpConfig;<br>方法or属性:dnsServers: number[];<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:IpConfig;<br>方法or属性:domains: Array\<string>;<br>旧版本信息:|类名:IpConfig;<br>方法or属性:domains: Array\<string>;<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:WifiLinkedInfo;<br>方法or属性:networkId: number;<br>旧版本信息:|类名:WifiLinkedInfo;<br>方法or属性:networkId: number;<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:WifiLinkedInfo;<br>方法or属性:chload: number;<br>旧版本信息:|类名:WifiLinkedInfo;<br>方法or属性:chload: number;<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:WifiLinkedInfo;<br>方法or属性:snr: number;<br>旧版本信息:|类名:WifiLinkedInfo;<br>方法or属性:snr: number;<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:WifiLinkedInfo;<br>方法or属性:suppState: SuppState;<br>旧版本信息:|类名:WifiLinkedInfo;<br>方法or属性:suppState: SuppState;<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:HotspotConfig;<br>方法or属性:ssid: string;<br>旧版本信息:|类名:HotspotConfig;<br>方法or属性:ssid: string;<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:HotspotConfig;<br>方法or属性:securityType: WifiSecurityType;<br>旧版本信息:|类名:HotspotConfig;<br>方法or属性:securityType: WifiSecurityType;<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:HotspotConfig;<br>方法or属性:band: number;<br>旧版本信息:|类名:HotspotConfig;<br>方法or属性:band: number;<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:HotspotConfig;<br>方法or属性:channel?: number;<br>旧版本信息:|类名:HotspotConfig;<br>方法or属性:channel?: number;<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:HotspotConfig;<br>方法or属性:preSharedKey: string;<br>旧版本信息:|类名:HotspotConfig;<br>方法or属性:preSharedKey: string;<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:HotspotConfig;<br>方法or属性:maxConn: number;<br>旧版本信息:|类名:HotspotConfig;<br>方法or属性:maxConn: number;<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:StationInfo;<br>方法or属性:name: string;<br>旧版本信息:|类名:StationInfo;<br>方法or属性:name: string;<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:StationInfo;<br>方法or属性:macAddress: string;<br>旧版本信息:|类名:StationInfo;<br>方法or属性:macAddress: string;<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:StationInfo;<br>方法or属性:ipAddress: string;<br>旧版本信息:|类名:StationInfo;<br>方法or属性:ipAddress: string;<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:IpType;<br>方法or属性:STATIC<br>旧版本信息:|类名:IpType;<br>方法or属性:STATIC<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:IpType;<br>方法or属性:DHCP<br>旧版本信息:|类名:IpType;<br>方法or属性:DHCP<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:IpType;<br>方法or属性:UNKNOWN<br>旧版本信息:|类名:IpType;<br>方法or属性:UNKNOWN<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:SuppState;<br>方法or属性:DISCONNECTED<br>旧版本信息:|类名:SuppState;<br>方法or属性:DISCONNECTED<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:SuppState;<br>方法or属性:INTERFACE_DISABLED<br>旧版本信息:|类名:SuppState;<br>方法or属性:INTERFACE_DISABLED<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:SuppState;<br>方法or属性:INACTIVE<br>旧版本信息:|类名:SuppState;<br>方法or属性:INACTIVE<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:SuppState;<br>方法or属性:SCANNING<br>旧版本信息:|类名:SuppState;<br>方法or属性:SCANNING<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:SuppState;<br>方法or属性:AUTHENTICATING<br>旧版本信息:|类名:SuppState;<br>方法or属性:AUTHENTICATING<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:SuppState;<br>方法or属性:ASSOCIATING<br>旧版本信息:|类名:SuppState;<br>方法or属性:ASSOCIATING<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:SuppState;<br>方法or属性:ASSOCIATED<br>旧版本信息:|类名:SuppState;<br>方法or属性:ASSOCIATED<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:SuppState;<br>方法or属性:FOUR_WAY_HANDSHAKE<br>旧版本信息:|类名:SuppState;<br>方法or属性:FOUR_WAY_HANDSHAKE<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:SuppState;<br>方法or属性:GROUP_HANDSHAKE<br>旧版本信息:|类名:SuppState;<br>方法or属性:GROUP_HANDSHAKE<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:SuppState;<br>方法or属性:COMPLETED<br>旧版本信息:|类名:SuppState;<br>方法or属性:COMPLETED<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:SuppState;<br>方法or属性:UNINITIALIZED<br>旧版本信息:|类名:SuppState;<br>方法or属性:UNINITIALIZED<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|访问级别有变化|类名:SuppState;<br>方法or属性:INVALID<br>旧版本信息:|类名:SuppState;<br>方法or属性:INVALID<br>新版本信息:systemapi|@ohos.wifiManager.d.ts|
|权限有变化|类名:GattClientDevice;<br>方法or属性:getDeviceName(): Promise\<string>;<br>旧版本信息:|类名:GattClientDevice;<br>方法or属性:getDeviceName(): Promise\<string>;<br>新版本信息:ohos.permission.USE_BLUETOOTH|@ohos.bluetoothManager.d.ts|
|权限有变化|类名:GattClientDevice;<br>方法or属性:getServices(): Promise\<Array\<GattService>>;<br>旧版本信息:|类名:GattClientDevice;<br>方法or属性:getServices(): Promise\<Array\<GattService>>;<br>新版本信息:ohos.permission.USE_BLUETOOTH|@ohos.bluetoothManager.d.ts|
|权限有变化|类名:GattClientDevice;<br>方法or属性:readCharacteristicValue(characteristic: BLECharacteristic): Promise\<BLECharacteristic>;<br>旧版本信息:|类名:GattClientDevice;<br>方法or属性:readCharacteristicValue(characteristic: BLECharacteristic): Promise\<BLECharacteristic>;<br>新版本信息:ohos.permission.USE_BLUETOOTH|@ohos.bluetoothManager.d.ts|
|权限有变化|类名:GattClientDevice;<br>方法or属性:readDescriptorValue(descriptor: BLEDescriptor): Promise\<BLEDescriptor>;<br>旧版本信息:|类名:GattClientDevice;<br>方法or属性:readDescriptorValue(descriptor: BLEDescriptor): Promise\<BLEDescriptor>;<br>新版本信息:ohos.permission.USE_BLUETOOTH|@ohos.bluetoothManager.d.ts|
|权限有变化|类名:GattClientDevice;<br>方法or属性:getRssiValue(): Promise\<number>;<br>旧版本信息:|类名:GattClientDevice;<br>方法or属性:getRssiValue(): Promise\<number>;<br>新版本信息:ohos.permission.USE_BLUETOOTH|@ohos.bluetoothManager.d.ts|
|权限有变化|类名:connection;<br>方法or属性:function getDefaultNet(): Promise\<NetHandle>;<br>旧版本信息:|类名:connection;<br>方法or属性:function getDefaultNet(): Promise\<NetHandle>;<br>新版本信息:ohos.permission.GET_NETWORK_INFO|@ohos.net.connection.d.ts|
|权限有变化|类名:connection;<br>方法or属性:function getAllNets(): Promise\<Array\<NetHandle>>;<br>旧版本信息:|类名:connection;<br>方法or属性:function getAllNets(): Promise\<Array\<NetHandle>>;<br>新版本信息:ohos.permission.GET_NETWORK_INFO|@ohos.net.connection.d.ts|
|权限有变化|类名:connection;<br>方法or属性:function getConnectionProperties(netHandle: NetHandle): Promise\<ConnectionProperties>;<br>旧版本信息:|类名:connection;<br>方法or属性:function getConnectionProperties(netHandle: NetHandle): Promise\<ConnectionProperties>;<br>新版本信息:ohos.permission.GET_NETWORK_INFO|@ohos.net.connection.d.ts|
|权限有变化|类名:connection;<br>方法or属性:function getNetCapabilities(netHandle: NetHandle): Promise\<NetCapabilities>;<br>旧版本信息:|类名:connection;<br>方法or属性:function getNetCapabilities(netHandle: NetHandle): Promise\<NetCapabilities>;<br>新版本信息:ohos.permission.GET_NETWORK_INFO|@ohos.net.connection.d.ts|
|权限有变化|类名:connection;<br>方法or属性:function isDefaultNetMetered(): Promise\<boolean>;<br>旧版本信息:|类名:connection;<br>方法or属性:function isDefaultNetMetered(): Promise\<boolean>;<br>新版本信息:ohos.permission.GET_NETWORK_INFO|@ohos.net.connection.d.ts|
|权限有变化|类名:connection;<br>方法or属性:function hasDefaultNet(): Promise\<boolean>;<br>旧版本信息:|类名:connection;<br>方法or属性:function hasDefaultNet(): Promise\<boolean>;<br>新版本信息:ohos.permission.GET_NETWORK_INFO|@ohos.net.connection.d.ts|
|权限有变化|类名:connection;<br>方法or属性:function enableAirplaneMode(): Promise\<void>;<br>旧版本信息:|类名:connection;<br>方法or属性:function enableAirplaneMode(): Promise\<void>;<br>新版本信息:ohos.permission.CONNECTIVITY_INTERNAL|@ohos.net.connection.d.ts|
|权限有变化|类名:connection;<br>方法or属性:function disableAirplaneMode(): Promise\<void>;<br>旧版本信息:|类名:connection;<br>方法or属性:function disableAirplaneMode(): Promise\<void>;<br>新版本信息:ohos.permission.CONNECTIVITY_INTERNAL|@ohos.net.connection.d.ts|
|权限有变化|类名:connection;<br>方法or属性:function reportNetConnected(netHandle: NetHandle): Promise\<void>;<br>旧版本信息:|类名:connection;<br>方法or属性:function reportNetConnected(netHandle: NetHandle): Promise\<void>;<br>新版本信息:ohos.permission.GET_NETWORK_INFO,ohos.permission.INTERNET|@ohos.net.connection.d.ts|
|权限有变化|类名:connection;<br>方法or属性:function reportNetDisconnected(netHandle: NetHandle): Promise\<void>;<br>旧版本信息:|类名:connection;<br>方法or属性:function reportNetDisconnected(netHandle: NetHandle): Promise\<void>;<br>新版本信息:ohos.permission.GET_NETWORK_INFO,ohos.permission.INTERNET|@ohos.net.connection.d.ts|
|权限有变化|类名:connection;<br>方法or属性:function getAddressesByName(host: string): Promise\<Array\<NetAddress>>;<br>旧版本信息:|类名:connection;<br>方法or属性:function getAddressesByName(host: string): Promise\<Array\<NetAddress>>;<br>新版本信息:ohos.permission.INTERNET|@ohos.net.connection.d.ts|
|权限有变化|类名:NetHandle;<br>方法or属性:getAddressesByName(host: string): Promise\<Array\<NetAddress>>;<br>旧版本信息:|类名:NetHandle;<br>方法or属性:getAddressesByName(host: string): Promise\<Array\<NetAddress>>;<br>新版本信息:ohos.permission.INTERNET|@ohos.net.connection.d.ts|
|权限有变化|类名:NetHandle;<br>方法or属性:getAddressByName(host: string): Promise\<NetAddress>;<br>旧版本信息:|类名:NetHandle;<br>方法or属性:getAddressByName(host: string): Promise\<NetAddress>;<br>新版本信息:ohos.permission.INTERNET|@ohos.net.connection.d.ts|
|权限有变化|类名:ethernet;<br>方法or属性:function getIfaceConfig(iface: string): Promise\<InterfaceConfiguration>;<br>旧版本信息:|类名:ethernet;<br>方法or属性:function getIfaceConfig(iface: string): Promise\<InterfaceConfiguration>;<br>新版本信息:ohos.permission.GET_NETWORK_INFO|@ohos.net.ethernet.d.ts|
|权限有变化|类名:ethernet;<br>方法or属性:function setIfaceConfig(iface: string, ic: InterfaceConfiguration): Promise\<void>;<br>旧版本信息:|类名:ethernet;<br>方法or属性:function setIfaceConfig(iface: string, ic: InterfaceConfiguration): Promise\<void>;<br>新版本信息:ohos.permission.CONNECTIVITY_INTERNAL|@ohos.net.ethernet.d.ts|
|权限有变化|类名:ethernet;<br>方法or属性:function isIfaceActive(iface: string): Promise\<number>;<br>旧版本信息:|类名:ethernet;<br>方法or属性:function isIfaceActive(iface: string): Promise\<number>;<br>新版本信息:ohos.permission.GET_NETWORK_INFO|@ohos.net.ethernet.d.ts|
|权限有变化|类名:ethernet;<br>方法or属性:function getAllActiveIfaces(): Promise\<Array\<string>>;<br>旧版本信息:|类名:ethernet;<br>方法or属性:function getAllActiveIfaces(): Promise\<Array\<string>>;<br>新版本信息:ohos.permission.GET_NETWORK_INFO|@ohos.net.ethernet.d.ts|
|权限有变化|类名:HttpRequest;<br>方法or属性:request(url: string, options: HttpRequestOptions, callback: AsyncCallback\<HttpResponse>): void;<br>旧版本信息:|类名:HttpRequest;<br>方法or属性:request(url: string, options: HttpRequestOptions, callback: AsyncCallback\<HttpResponse>): void;<br>新版本信息:ohos.permission.INTERNET|@ohos.net.http.d.ts|
|权限有变化|类名:HttpRequest;<br>方法or属性:request(url: string, options?: HttpRequestOptions): Promise\<HttpResponse>;<br>旧版本信息:|类名:HttpRequest;<br>方法or属性:request(url: string, options?: HttpRequestOptions): Promise\<HttpResponse>;<br>新版本信息:ohos.permission.INTERNET|@ohos.net.http.d.ts|
|权限有变化|类名:sharing;<br>方法or属性:function isSharingSupported(): Promise\<boolean>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function isSharingSupported(): Promise\<boolean>;<br>新版本信息:ohos.permission.CONNECTIVITY_INTERNAL|@ohos.net.sharing.d.ts|
|权限有变化|类名:sharing;<br>方法or属性:function isSharing(): Promise\<boolean>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function isSharing(): Promise\<boolean>;<br>新版本信息:ohos.permission.CONNECTIVITY_INTERNAL|@ohos.net.sharing.d.ts|
|权限有变化|类名:sharing;<br>方法or属性:function startSharing(type: SharingIfaceType): Promise\<void>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function startSharing(type: SharingIfaceType): Promise\<void>;<br>新版本信息:ohos.permission.CONNECTIVITY_INTERNAL|@ohos.net.sharing.d.ts|
|权限有变化|类名:sharing;<br>方法or属性:function stopSharing(type: SharingIfaceType): Promise\<void>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function stopSharing(type: SharingIfaceType): Promise\<void>;<br>新版本信息:ohos.permission.CONNECTIVITY_INTERNAL|@ohos.net.sharing.d.ts|
|权限有变化|类名:sharing;<br>方法or属性:function getStatsRxBytes(): Promise\<number>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function getStatsRxBytes(): Promise\<number>;<br>新版本信息:ohos.permission.CONNECTIVITY_INTERNAL|@ohos.net.sharing.d.ts|
|权限有变化|类名:sharing;<br>方法or属性:function getStatsTxBytes(): Promise\<number>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function getStatsTxBytes(): Promise\<number>;<br>新版本信息:ohos.permission.CONNECTIVITY_INTERNAL|@ohos.net.sharing.d.ts|
|权限有变化|类名:sharing;<br>方法or属性:function getStatsTotalBytes(): Promise\<number>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function getStatsTotalBytes(): Promise\<number>;<br>新版本信息:ohos.permission.CONNECTIVITY_INTERNAL|@ohos.net.sharing.d.ts|
|权限有变化|类名:sharing;<br>方法or属性:function getSharingIfaces(state: SharingIfaceState): Promise\<Array\<string>>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function getSharingIfaces(state: SharingIfaceState): Promise\<Array\<string>>;<br>新版本信息:ohos.permission.CONNECTIVITY_INTERNAL|@ohos.net.sharing.d.ts|
|权限有变化|类名:sharing;<br>方法or属性:function getSharingState(type: SharingIfaceType): Promise\<SharingIfaceState>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function getSharingState(type: SharingIfaceType): Promise\<SharingIfaceState>;<br>新版本信息:ohos.permission.CONNECTIVITY_INTERNAL|@ohos.net.sharing.d.ts|
|权限有变化|类名:sharing;<br>方法or属性:function getSharableRegexes(type: SharingIfaceType): Promise\<Array\<string>>;<br>旧版本信息:|类名:sharing;<br>方法or属性:function getSharableRegexes(type: SharingIfaceType): Promise\<Array\<string>>;<br>新版本信息:ohos.permission.CONNECTIVITY_INTERNAL|@ohos.net.sharing.d.ts|
|权限有变化|类名:UDPSocket;<br>方法or属性:bind(address: NetAddress): Promise\<void>;<br>旧版本信息:|类名:UDPSocket;<br>方法or属性:bind(address: NetAddress): Promise\<void>;<br>新版本信息:ohos.permission.INTERNET|@ohos.net.socket.d.ts|
|权限有变化|类名:TCPSocket;<br>方法or属性:bind(address: NetAddress): Promise\<void>;<br>旧版本信息:|类名:TCPSocket;<br>方法or属性:bind(address: NetAddress): Promise\<void>;<br>新版本信息:ohos.permission.INTERNET|@ohos.net.socket.d.ts|
|权限有变化|类名:TLSSocket;<br>方法or属性:bind(address: NetAddress): Promise\<void>;<br>旧版本信息:|类名:TLSSocket;<br>方法or属性:bind(address: NetAddress): Promise\<void>;<br>新版本信息:ohos.permission.INTERNET|@ohos.net.socket.d.ts|
|权限有变化|类名:UDPSocket;<br>方法or属性:send(options: UDPSendOptions): Promise\<void>;<br>旧版本信息:|类名:UDPSocket;<br>方法or属性:send(options: UDPSendOptions): Promise\<void>;<br>新版本信息:ohos.permission.INTERNET|@ohos.net.socket.d.ts|
|权限有变化|类名:UDPSocket;<br>方法or属性:close(): Promise\<void>;<br>旧版本信息:|类名:UDPSocket;<br>方法or属性:close(): Promise\<void>;<br>新版本信息:ohos.permission.INTERNET|@ohos.net.socket.d.ts|
|权限有变化|类名:TCPSocket;<br>方法or属性:close(): Promise\<void>;<br>旧版本信息:|类名:TCPSocket;<br>方法or属性:close(): Promise\<void>;<br>新版本信息:ohos.permission.INTERNET|@ohos.net.socket.d.ts|
|权限有变化|类名:UDPSocket;<br>方法or属性:getState(): Promise\<SocketStateBase>;<br>旧版本信息:|类名:UDPSocket;<br>方法or属性:getState(): Promise\<SocketStateBase>;<br>新版本信息:ohos.permission.INTERNET|@ohos.net.socket.d.ts|
|权限有变化|类名:TCPSocket;<br>方法or属性:getState(): Promise\<SocketStateBase>;<br>旧版本信息:|类名:TCPSocket;<br>方法or属性:getState(): Promise\<SocketStateBase>;<br>新版本信息:ohos.permission.INTERNET|@ohos.net.socket.d.ts|
|权限有变化|类名:UDPSocket;<br>方法or属性:setExtraOptions(options: UDPExtraOptions): Promise\<void>;<br>旧版本信息:|类名:UDPSocket;<br>方法or属性:setExtraOptions(options: UDPExtraOptions): Promise\<void>;<br>新版本信息:ohos.permission.INTERNET|@ohos.net.socket.d.ts|
|权限有变化|类名:TCPSocket;<br>方法or属性:connect(options: TCPConnectOptions): Promise\<void>;<br>旧版本信息:|类名:TCPSocket;<br>方法or属性:connect(options: TCPConnectOptions): Promise\<void>;<br>新版本信息:ohos.permission.INTERNET|@ohos.net.socket.d.ts|
|权限有变化|类名:TCPSocket;<br>方法or属性:send(options: TCPSendOptions): Promise\<void>;<br>旧版本信息:|类名:TCPSocket;<br>方法or属性:send(options: TCPSendOptions): Promise\<void>;<br>新版本信息:ohos.permission.INTERNET|@ohos.net.socket.d.ts|
|权限有变化|类名:TCPSocket;<br>方法or属性:getRemoteAddress(): Promise\<NetAddress>;<br>旧版本信息:|类名:TCPSocket;<br>方法or属性:getRemoteAddress(): Promise\<NetAddress>;<br>新版本信息:ohos.permission.INTERNET|@ohos.net.socket.d.ts|
|权限有变化|类名:TCPSocket;<br>方法or属性:setExtraOptions(options: TCPExtraOptions): Promise\<void>;<br>旧版本信息:|类名:TCPSocket;<br>方法or属性:setExtraOptions(options: TCPExtraOptions): Promise\<void>;<br>新版本信息:ohos.permission.INTERNET|@ohos.net.socket.d.ts|
|权限有变化|类名:WebSocket;<br>方法or属性:connect(url: string, options: WebSocketRequestOptions, callback: AsyncCallback\<boolean>): void;<br>旧版本信息:|类名:WebSocket;<br>方法or属性:connect(url: string, options: WebSocketRequestOptions, callback: AsyncCallback\<boolean>): void;<br>新版本信息:ohos.permission.INTERNET|@ohos.net.webSocket.d.ts|
|权限有变化|类名:WebSocket;<br>方法or属性:connect(url: string, options?: WebSocketRequestOptions): Promise\<boolean>;<br>旧版本信息:|类名:WebSocket;<br>方法or属性:connect(url: string, options?: WebSocketRequestOptions): Promise\<boolean>;<br>新版本信息:ohos.permission.INTERNET|@ohos.net.webSocket.d.ts|
|权限有变化|类名:WebSocket;<br>方法or属性:send(data: string \| ArrayBuffer): Promise\<boolean>;<br>旧版本信息:|类名:WebSocket;<br>方法or属性:send(data: string \| ArrayBuffer): Promise\<boolean>;<br>新版本信息:ohos.permission.INTERNET|@ohos.net.webSocket.d.ts|
|权限有变化|类名:WebSocket;<br>方法or属性:close(options: WebSocketCloseOptions, callback: AsyncCallback\<boolean>): void;<br>旧版本信息:|类名:WebSocket;<br>方法or属性:close(options: WebSocketCloseOptions, callback: AsyncCallback\<boolean>): void;<br>新版本信息:ohos.permission.INTERNET|@ohos.net.webSocket.d.ts|
|权限有变化|类名:WebSocket;<br>方法or属性:close(options?: WebSocketCloseOptions): Promise\<boolean>;<br>旧版本信息:|类名:WebSocket;<br>方法or属性:close(options?: WebSocketCloseOptions): Promise\<boolean>;<br>新版本信息:ohos.permission.INTERNET|@ohos.net.webSocket.d.ts|
|权限有变化|类名:wifiManager;<br>方法or属性:function addDeviceConfig(config: WifiDeviceConfig, callback: AsyncCallback\<number>): void;<br>旧版本信息:|类名:wifiManager;<br>方法or属性:function addDeviceConfig(config: WifiDeviceConfig, callback: AsyncCallback\<number>): void;<br>新版本信息:ohos.permission.SET_WIFI_INFO,ohos.permission.SET_WIFI_CONFIG|@ohos.wifiManager.d.ts|
|权限有变化|类名:wifiManager;<br>方法or属性:function addCandidateConfig(config: WifiDeviceConfig, callback: AsyncCallback\<number>): void;<br>旧版本信息:|类名:wifiManager;<br>方法or属性:function addCandidateConfig(config: WifiDeviceConfig, callback: AsyncCallback\<number>): void;<br>新版本信息:ohos.permission.SET_WIFI_INFO|@ohos.wifiManager.d.ts|
|权限有变化|类名:wifiManager;<br>方法or属性:function removeCandidateConfig(networkId: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:wifiManager;<br>方法or属性:function removeCandidateConfig(networkId: number, callback: AsyncCallback\<void>): void;<br>新版本信息:ohos.permission.SET_WIFI_INFO|@ohos.wifiManager.d.ts|
|权限有变化|类名:wifiManager;<br>方法or属性:function getLinkedInfo(callback: AsyncCallback\<WifiLinkedInfo>): void;<br>旧版本信息:|类名:wifiManager;<br>方法or属性:function getLinkedInfo(callback: AsyncCallback\<WifiLinkedInfo>): void;<br>新版本信息:ohos.permission.GET_WIFI_INFO|@ohos.wifiManager.d.ts|
|权限有变化|类名:wifiManager;<br>方法or属性:function getP2pLinkedInfo(callback: AsyncCallback\<WifiP2pLinkedInfo>): void;<br>旧版本信息:|类名:wifiManager;<br>方法or属性:function getP2pLinkedInfo(callback: AsyncCallback\<WifiP2pLinkedInfo>): void;<br>新版本信息:ohos.permission.GET_WIFI_INFO|@ohos.wifiManager.d.ts|
|权限有变化|类名:wifiManager;<br>方法or属性:function getCurrentP2pGroup(callback: AsyncCallback\<WifiP2pGroupInfo>): void;<br>旧版本信息:|类名:wifiManager;<br>方法or属性:function getCurrentP2pGroup(callback: AsyncCallback\<WifiP2pGroupInfo>): void;<br>新版本信息:ohos.permission.GET_WIFI_INFO,ohos.permission.LOCATION,ohos.permission.APPROXIMATELY_LOCATION|@ohos.wifiManager.d.ts|
|权限有变化|类名:wifiManager;<br>方法or属性:function getP2pPeerDevices(callback: AsyncCallback\<WifiP2pDevice[]>): void;<br>旧版本信息:|类名:wifiManager;<br>方法or属性:function getP2pPeerDevices(callback: AsyncCallback\<WifiP2pDevice[]>): void;<br>新版本信息:ohos.permission.GET_WIFI_INFO,ohos.permission.LOCATION,ohos.permission.APPROXIMATELY_LOCATION|@ohos.wifiManager.d.ts|
|权限有变化|类名:wifiManager;<br>方法or属性:function getP2pLocalDevice(callback: AsyncCallback\<WifiP2pDevice>): void;<br>旧版本信息:|类名:wifiManager;<br>方法or属性:function getP2pLocalDevice(callback: AsyncCallback\<WifiP2pDevice>): void;<br>新版本信息:ohos.permission.GET_WIFI_INFO,ohos.permission.GET_WIFI_CONFIG|@ohos.wifiManager.d.ts|
|权限有变化|类名:wifiManager;<br>方法or属性:function getP2pGroups(callback: AsyncCallback\<Array\<WifiP2pGroupInfo>>): void;<br>旧版本信息:|类名:wifiManager;<br>方法or属性:function getP2pGroups(callback: AsyncCallback\<Array\<WifiP2pGroupInfo>>): void;<br>新版本信息:ohos.permission.GET_WIFI_INFO,ohos.permission.LOCATION,ohos.permission.APPROXIMATELY_LOCATION|@ohos.wifiManager.d.ts|
|type有变化|类名:NetSpecifier;<br>方法or属性:netCapabilities: NetCapabilities;<br>旧版本信息:|类名:NetSpecifier;<br>方法or属性:netCapabilities: NetCapabilities;<br>新版本信息:NetCapabilities|@ohos.net.connection.d.ts|
|type有变化|类名:NetSpecifier;<br>方法or属性:bearerPrivateIdentifier?: string;<br>旧版本信息:|类名:NetSpecifier;<br>方法or属性:bearerPrivateIdentifier?: string;<br>新版本信息:?string|@ohos.net.connection.d.ts|
|type有变化|类名:NetHandle;<br>方法or属性:netId: number;<br>旧版本信息:|类名:NetHandle;<br>方法or属性:netId: number;<br>新版本信息:number|@ohos.net.connection.d.ts|
|type有变化|类名:NetCapabilities;<br>方法or属性:linkUpBandwidthKbps?: number;<br>旧版本信息:|类名:NetCapabilities;<br>方法or属性:linkUpBandwidthKbps?: number;<br>新版本信息:?number|@ohos.net.connection.d.ts|
|type有变化|类名:NetCapabilities;<br>方法or属性:linkDownBandwidthKbps?: number;<br>旧版本信息:|类名:NetCapabilities;<br>方法or属性:linkDownBandwidthKbps?: number;<br>新版本信息:?number|@ohos.net.connection.d.ts|
|type有变化|类名:NetCapabilities;<br>方法or属性:networkCap?: Array\<NetCap>;<br>旧版本信息:|类名:NetCapabilities;<br>方法or属性:networkCap?: Array\<NetCap>;<br>新版本信息:?Array\<NetCap>|@ohos.net.connection.d.ts|
|type有变化|类名:NetCapabilities;<br>方法or属性:bearerTypes: Array\<NetBearType>;<br>旧版本信息:|类名:NetCapabilities;<br>方法or属性:bearerTypes: Array\<NetBearType>;<br>新版本信息:Array\<NetBearType>|@ohos.net.connection.d.ts|
|type有变化|类名:ConnectionProperties;<br>方法or属性:interfaceName: string;<br>旧版本信息:|类名:ConnectionProperties;<br>方法or属性:interfaceName: string;<br>新版本信息:string|@ohos.net.connection.d.ts|
|type有变化|类名:ConnectionProperties;<br>方法or属性:domains: string;<br>旧版本信息:|类名:ConnectionProperties;<br>方法or属性:domains: string;<br>新版本信息:string|@ohos.net.connection.d.ts|
|type有变化|类名:ConnectionProperties;<br>方法or属性:linkAddresses: Array\<LinkAddress>;<br>旧版本信息:|类名:ConnectionProperties;<br>方法or属性:linkAddresses: Array\<LinkAddress>;<br>新版本信息:Array\<LinkAddress>|@ohos.net.connection.d.ts|
|type有变化|类名:ConnectionProperties;<br>方法or属性:dnses: Array\<NetAddress>;<br>旧版本信息:|类名:ConnectionProperties;<br>方法or属性:dnses: Array\<NetAddress>;<br>新版本信息:Array\<NetAddress>|@ohos.net.connection.d.ts|
|type有变化|类名:ConnectionProperties;<br>方法or属性:routes: Array\<RouteInfo>;<br>旧版本信息:|类名:ConnectionProperties;<br>方法or属性:routes: Array\<RouteInfo>;<br>新版本信息:Array\<RouteInfo>|@ohos.net.connection.d.ts|
|type有变化|类名:ConnectionProperties;<br>方法or属性:mtu: number;<br>旧版本信息:|类名:ConnectionProperties;<br>方法or属性:mtu: number;<br>新版本信息:number|@ohos.net.connection.d.ts|
|type有变化|类名:RouteInfo;<br>方法or属性:interface: string;<br>旧版本信息:|类名:RouteInfo;<br>方法or属性:interface: string;<br>新版本信息:string|@ohos.net.connection.d.ts|
|type有变化|类名:RouteInfo;<br>方法or属性:destination: LinkAddress;<br>旧版本信息:|类名:RouteInfo;<br>方法or属性:destination: LinkAddress;<br>新版本信息:LinkAddress|@ohos.net.connection.d.ts|
|type有变化|类名:RouteInfo;<br>方法or属性:gateway: NetAddress;<br>旧版本信息:|类名:RouteInfo;<br>方法or属性:gateway: NetAddress;<br>新版本信息:NetAddress|@ohos.net.connection.d.ts|
|type有变化|类名:RouteInfo;<br>方法or属性:hasGateway: boolean;<br>旧版本信息:|类名:RouteInfo;<br>方法or属性:hasGateway: boolean;<br>新版本信息:boolean|@ohos.net.connection.d.ts|
|type有变化|类名:RouteInfo;<br>方法or属性:isDefaultRoute: boolean;<br>旧版本信息:|类名:RouteInfo;<br>方法or属性:isDefaultRoute: boolean;<br>新版本信息:boolean|@ohos.net.connection.d.ts|
|type有变化|类名:LinkAddress;<br>方法or属性:address: NetAddress;<br>旧版本信息:|类名:LinkAddress;<br>方法or属性:address: NetAddress;<br>新版本信息:NetAddress|@ohos.net.connection.d.ts|
|type有变化|类名:LinkAddress;<br>方法or属性:prefixLength: number;<br>旧版本信息:|类名:LinkAddress;<br>方法or属性:prefixLength: number;<br>新版本信息:number|@ohos.net.connection.d.ts|
|type有变化|类名:NetAddress;<br>方法or属性:address: string;<br>旧版本信息:|类名:NetAddress;<br>方法or属性:address: string;<br>新版本信息:string|@ohos.net.connection.d.ts|
|type有变化|类名:NetAddress;<br>方法or属性:family?: number;<br>旧版本信息:|类名:NetAddress;<br>方法or属性:family?: number;<br>新版本信息:?number|@ohos.net.connection.d.ts|
|type有变化|类名:NetAddress;<br>方法or属性:port?: number;<br>旧版本信息:|类名:NetAddress;<br>方法or属性:port?: number;<br>新版本信息:?number|@ohos.net.connection.d.ts|
|type有变化|类名:HttpProxy;<br>方法or属性:host: string;<br>旧版本信息:|类名:HttpProxy;<br>方法or属性:host: string;<br>新版本信息:string|@ohos.net.connection.d.ts|
|type有变化|类名:HttpProxy;<br>方法or属性:port: number;<br>旧版本信息:|类名:HttpProxy;<br>方法or属性:port: number;<br>新版本信息:number|@ohos.net.connection.d.ts|
|type有变化|类名:HttpProxy;<br>方法or属性:exclusionList: Array\<string>;<br>旧版本信息:|类名:HttpProxy;<br>方法or属性:exclusionList: Array\<string>;<br>新版本信息:Array\<string>|@ohos.net.connection.d.ts|
|type有变化|类名:InterfaceConfiguration;<br>方法or属性:mode: IPSetMode;<br>旧版本信息:|类名:InterfaceConfiguration;<br>方法or属性:mode: IPSetMode;<br>新版本信息:IPSetMode|@ohos.net.ethernet.d.ts|
|type有变化|类名:InterfaceConfiguration;<br>方法or属性:ipAddr: string;<br>旧版本信息:|类名:InterfaceConfiguration;<br>方法or属性:ipAddr: string;<br>新版本信息:string|@ohos.net.ethernet.d.ts|
|type有变化|类名:InterfaceConfiguration;<br>方法or属性:route: string;<br>旧版本信息:|类名:InterfaceConfiguration;<br>方法or属性:route: string;<br>新版本信息:string|@ohos.net.ethernet.d.ts|
|type有变化|类名:InterfaceConfiguration;<br>方法or属性:gateway: string;<br>旧版本信息:|类名:InterfaceConfiguration;<br>方法or属性:gateway: string;<br>新版本信息:string|@ohos.net.ethernet.d.ts|
|type有变化|类名:InterfaceConfiguration;<br>方法or属性:netMask: string;<br>旧版本信息:|类名:InterfaceConfiguration;<br>方法or属性:netMask: string;<br>新版本信息:string|@ohos.net.ethernet.d.ts|
|type有变化|类名:InterfaceConfiguration;<br>方法or属性:dnsServers: string;<br>旧版本信息:|类名:InterfaceConfiguration;<br>方法or属性:dnsServers: string;<br>新版本信息:string|@ohos.net.ethernet.d.ts|
|type有变化|类名:HttpRequestOptions;<br>方法or属性:method?: RequestMethod;<br>旧版本信息:|类名:HttpRequestOptions;<br>方法or属性:method?: RequestMethod;<br>新版本信息:?RequestMethod|@ohos.net.http.d.ts|
|type有变化|类名:HttpRequestOptions;<br>方法or属性:extraData?: string \| Object \| ArrayBuffer;<br>旧版本信息:|类名:HttpRequestOptions;<br>方法or属性:extraData?: string \| Object \| ArrayBuffer;<br>新版本信息:?string \| Object \| ArrayBuffer|@ohos.net.http.d.ts|
|type有变化|类名:HttpRequestOptions;<br>方法or属性:expectDataType?: HttpDataType;<br>旧版本信息:|类名:HttpRequestOptions;<br>方法or属性:expectDataType?: HttpDataType;<br>新版本信息:?HttpDataType|@ohos.net.http.d.ts|
|type有变化|类名:HttpRequestOptions;<br>方法or属性:usingCache?: boolean;<br>旧版本信息:|类名:HttpRequestOptions;<br>方法or属性:usingCache?: boolean;<br>新版本信息:?boolean|@ohos.net.http.d.ts|
|type有变化|类名:HttpRequestOptions;<br>方法or属性:priority?: number;<br>旧版本信息:|类名:HttpRequestOptions;<br>方法or属性:priority?: number;<br>新版本信息:?number|@ohos.net.http.d.ts|
|type有变化|类名:HttpRequestOptions;<br>方法or属性:header?: Object;<br>旧版本信息:|类名:HttpRequestOptions;<br>方法or属性:header?: Object;<br>新版本信息:?Object|@ohos.net.http.d.ts|
|type有变化|类名:HttpRequestOptions;<br>方法or属性:readTimeout?: number;<br>旧版本信息:|类名:HttpRequestOptions;<br>方法or属性:readTimeout?: number;<br>新版本信息:?number|@ohos.net.http.d.ts|
|type有变化|类名:HttpRequestOptions;<br>方法or属性:connectTimeout?: number;<br>旧版本信息:|类名:HttpRequestOptions;<br>方法or属性:connectTimeout?: number;<br>新版本信息:?number|@ohos.net.http.d.ts|
|type有变化|类名:HttpRequestOptions;<br>方法or属性:usingProtocol?: HttpProtocol;<br>旧版本信息:|类名:HttpRequestOptions;<br>方法or属性:usingProtocol?: HttpProtocol;<br>新版本信息:?HttpProtocol|@ohos.net.http.d.ts|
|type有变化|类名:HttpRequestOptions;<br>方法or属性:usingProxy?: boolean \| HttpProxy;<br>旧版本信息:|类名:HttpRequestOptions;<br>方法or属性:usingProxy?: boolean \| HttpProxy;<br>新版本信息:?boolean \| HttpProxy|@ohos.net.http.d.ts|
|type有变化|类名:HttpRequestOptions;<br>方法or属性:caPath?: string;<br>旧版本信息:|类名:HttpRequestOptions;<br>方法or属性:caPath?: string;<br>新版本信息:?string|@ohos.net.http.d.ts|
|type有变化|类名:HttpResponse;<br>方法or属性:result: string \| Object \| ArrayBuffer;<br>旧版本信息:|类名:HttpResponse;<br>方法or属性:result: string \| Object \| ArrayBuffer;<br>新版本信息:string \| Object \| ArrayBuffer|@ohos.net.http.d.ts|
|type有变化|类名:HttpResponse;<br>方法or属性:resultType: HttpDataType;<br>旧版本信息:|类名:HttpResponse;<br>方法or属性:resultType: HttpDataType;<br>新版本信息:HttpDataType|@ohos.net.http.d.ts|
|type有变化|类名:HttpResponse;<br>方法or属性:responseCode: ResponseCode \| number;<br>旧版本信息:|类名:HttpResponse;<br>方法or属性:responseCode: ResponseCode \| number;<br>新版本信息:ResponseCode \| number|@ohos.net.http.d.ts|
|type有变化|类名:HttpResponse;<br>方法or属性:header: Object;<br>旧版本信息:|类名:HttpResponse;<br>方法or属性:header: Object;<br>新版本信息:Object|@ohos.net.http.d.ts|
|type有变化|类名:HttpResponse;<br>方法or属性:cookies: string;<br>旧版本信息:|类名:HttpResponse;<br>方法or属性:cookies: string;<br>新版本信息:string|@ohos.net.http.d.ts|
|type有变化|类名:LocalServiceInfo;<br>方法or属性:serviceType: string;<br>旧版本信息:|类名:LocalServiceInfo;<br>方法or属性:serviceType: string;<br>新版本信息:string|@ohos.net.mdns.d.ts|
|type有变化|类名:LocalServiceInfo;<br>方法or属性:serviceName: string;<br>旧版本信息:|类名:LocalServiceInfo;<br>方法or属性:serviceName: string;<br>新版本信息:string|@ohos.net.mdns.d.ts|
|type有变化|类名:LocalServiceInfo;<br>方法or属性:port?: number;<br>旧版本信息:|类名:LocalServiceInfo;<br>方法or属性:port?: number;<br>新版本信息:?number|@ohos.net.mdns.d.ts|
|type有变化|类名:LocalServiceInfo;<br>方法or属性:host?: NetAddress;<br>旧版本信息:|类名:LocalServiceInfo;<br>方法or属性:host?: NetAddress;<br>新版本信息:?NetAddress|@ohos.net.mdns.d.ts|
|type有变化|类名:LocalServiceInfo;<br>方法or属性:serviceAttribute?: Array\<ServiceAttribute>;<br>旧版本信息:|类名:LocalServiceInfo;<br>方法or属性:serviceAttribute?: Array\<ServiceAttribute>;<br>新版本信息:?Array\<ServiceAttribute>|@ohos.net.mdns.d.ts|
|type有变化|类名:ServiceAttribute;<br>方法or属性:key: string;<br>旧版本信息:|类名:ServiceAttribute;<br>方法or属性:key: string;<br>新版本信息:string|@ohos.net.mdns.d.ts|
|type有变化|类名:ServiceAttribute;<br>方法or属性:value: Array\<number>;<br>旧版本信息:|类名:ServiceAttribute;<br>方法or属性:value: Array\<number>;<br>新版本信息:Array\<number>|@ohos.net.mdns.d.ts|
|type有变化|类名:UDPSendOptions;<br>方法or属性:data: string \| ArrayBuffer;<br>旧版本信息:|类名:UDPSendOptions;<br>方法or属性:data: string \| ArrayBuffer;<br>新版本信息:string \| ArrayBuffer|@ohos.net.socket.d.ts|
|type有变化|类名:TCPSendOptions;<br>方法or属性:data: string \| ArrayBuffer;<br>旧版本信息:|类名:TCPSendOptions;<br>方法or属性:data: string \| ArrayBuffer;<br>新版本信息:string \| ArrayBuffer|@ohos.net.socket.d.ts|
|type有变化|类名:UDPSendOptions;<br>方法or属性:address: NetAddress;<br>旧版本信息:|类名:UDPSendOptions;<br>方法or属性:address: NetAddress;<br>新版本信息:NetAddress|@ohos.net.socket.d.ts|
|type有变化|类名:TCPConnectOptions;<br>方法or属性:address: NetAddress;<br>旧版本信息:|类名:TCPConnectOptions;<br>方法or属性:address: NetAddress;<br>新版本信息:NetAddress|@ohos.net.socket.d.ts|
|type有变化|类名:TLSConnectOptions;<br>方法or属性:address: NetAddress;<br>旧版本信息:|类名:TLSConnectOptions;<br>方法or属性:address: NetAddress;<br>新版本信息:NetAddress|@ohos.net.socket.d.ts|
|type有变化|类名:ExtraOptionsBase;<br>方法or属性:receiveBufferSize?: number;<br>旧版本信息:|类名:ExtraOptionsBase;<br>方法or属性:receiveBufferSize?: number;<br>新版本信息:?number|@ohos.net.socket.d.ts|
|type有变化|类名:ExtraOptionsBase;<br>方法or属性:sendBufferSize?: number;<br>旧版本信息:|类名:ExtraOptionsBase;<br>方法or属性:sendBufferSize?: number;<br>新版本信息:?number|@ohos.net.socket.d.ts|
|type有变化|类名:ExtraOptionsBase;<br>方法or属性:reuseAddress?: boolean;<br>旧版本信息:|类名:ExtraOptionsBase;<br>方法or属性:reuseAddress?: boolean;<br>新版本信息:?boolean|@ohos.net.socket.d.ts|
|type有变化|类名:ExtraOptionsBase;<br>方法or属性:socketTimeout?: number;<br>旧版本信息:|类名:ExtraOptionsBase;<br>方法or属性:socketTimeout?: number;<br>新版本信息:?number|@ohos.net.socket.d.ts|
|type有变化|类名:UDPExtraOptions;<br>方法or属性:broadcast?: boolean;<br>旧版本信息:|类名:UDPExtraOptions;<br>方法or属性:broadcast?: boolean;<br>新版本信息:?boolean|@ohos.net.socket.d.ts|
|type有变化|类名:SocketStateBase;<br>方法or属性:isBound: boolean;<br>旧版本信息:|类名:SocketStateBase;<br>方法or属性:isBound: boolean;<br>新版本信息:boolean|@ohos.net.socket.d.ts|
|type有变化|类名:SocketStateBase;<br>方法or属性:isClose: boolean;<br>旧版本信息:|类名:SocketStateBase;<br>方法or属性:isClose: boolean;<br>新版本信息:boolean|@ohos.net.socket.d.ts|
|type有变化|类名:SocketStateBase;<br>方法or属性:isConnected: boolean;<br>旧版本信息:|类名:SocketStateBase;<br>方法or属性:isConnected: boolean;<br>新版本信息:boolean|@ohos.net.socket.d.ts|
|type有变化|类名:SocketRemoteInfo;<br>方法or属性:address: string;<br>旧版本信息:|类名:SocketRemoteInfo;<br>方法or属性:address: string;<br>新版本信息:string|@ohos.net.socket.d.ts|
|type有变化|类名:SocketRemoteInfo;<br>方法or属性:family: 'IPv4' \| 'IPv6';<br>旧版本信息:|类名:SocketRemoteInfo;<br>方法or属性:family: 'IPv4' \| 'IPv6';<br>新版本信息:'IPv4' \| 'IPv6'|@ohos.net.socket.d.ts|
|type有变化|类名:SocketRemoteInfo;<br>方法or属性:port: number;<br>旧版本信息:|类名:SocketRemoteInfo;<br>方法or属性:port: number;<br>新版本信息:number|@ohos.net.socket.d.ts|
|type有变化|类名:SocketRemoteInfo;<br>方法or属性:size: number;<br>旧版本信息:|类名:SocketRemoteInfo;<br>方法or属性:size: number;<br>新版本信息:number|@ohos.net.socket.d.ts|
|type有变化|类名:TCPConnectOptions;<br>方法or属性:timeout?: number;<br>旧版本信息:|类名:TCPConnectOptions;<br>方法or属性:timeout?: number;<br>新版本信息:?number|@ohos.net.socket.d.ts|
|type有变化|类名:TCPSendOptions;<br>方法or属性:encoding?: string;<br>旧版本信息:|类名:TCPSendOptions;<br>方法or属性:encoding?: string;<br>新版本信息:?string|@ohos.net.socket.d.ts|
|type有变化|类名:TCPExtraOptions;<br>方法or属性:keepAlive?: boolean;<br>旧版本信息:|类名:TCPExtraOptions;<br>方法or属性:keepAlive?: boolean;<br>新版本信息:?boolean|@ohos.net.socket.d.ts|
|type有变化|类名:TCPExtraOptions;<br>方法or属性:OOBInline?: boolean;<br>旧版本信息:|类名:TCPExtraOptions;<br>方法or属性:OOBInline?: boolean;<br>新版本信息:?boolean|@ohos.net.socket.d.ts|
|type有变化|类名:TCPExtraOptions;<br>方法or属性:TCPNoDelay?: boolean;<br>旧版本信息:|类名:TCPExtraOptions;<br>方法or属性:TCPNoDelay?: boolean;<br>新版本信息:?boolean|@ohos.net.socket.d.ts|
|type有变化|类名:TCPExtraOptions;<br>方法or属性:socketLinger?: { on: boolean, linger: number };<br>旧版本信息:|类名:TCPExtraOptions;<br>方法or属性:socketLinger?: { on: boolean, linger: number };<br>新版本信息:?object|@ohos.net.socket.d.ts|
|type有变化|类名:TLSSecureOptions;<br>方法or属性:ca: string \| Array\<string>;<br>旧版本信息:|类名:TLSSecureOptions;<br>方法or属性:ca: string \| Array\<string>;<br>新版本信息:string \| Array\<string>|@ohos.net.socket.d.ts|
|type有变化|类名:TLSSecureOptions;<br>方法or属性:cert?: string;<br>旧版本信息:|类名:TLSSecureOptions;<br>方法or属性:cert?: string;<br>新版本信息:?string|@ohos.net.socket.d.ts|
|type有变化|类名:TLSSecureOptions;<br>方法or属性:key?: string;<br>旧版本信息:|类名:TLSSecureOptions;<br>方法or属性:key?: string;<br>新版本信息:?string|@ohos.net.socket.d.ts|
|type有变化|类名:TLSSecureOptions;<br>方法or属性:password?: string;<br>旧版本信息:|类名:TLSSecureOptions;<br>方法or属性:password?: string;<br>新版本信息:?string|@ohos.net.socket.d.ts|
|type有变化|类名:TLSSecureOptions;<br>方法or属性:protocols?: Protocol \| Array\<Protocol>;<br>旧版本信息:|类名:TLSSecureOptions;<br>方法or属性:protocols?: Protocol \| Array\<Protocol>;<br>新版本信息:?Protocol \| Array\<Protocol>|@ohos.net.socket.d.ts|
|type有变化|类名:TLSSecureOptions;<br>方法or属性:useRemoteCipherPrefer?: boolean;<br>旧版本信息:|类名:TLSSecureOptions;<br>方法or属性:useRemoteCipherPrefer?: boolean;<br>新版本信息:?boolean|@ohos.net.socket.d.ts|
|type有变化|类名:TLSSecureOptions;<br>方法or属性:signatureAlgorithms?: string;<br>旧版本信息:|类名:TLSSecureOptions;<br>方法or属性:signatureAlgorithms?: string;<br>新版本信息:?string|@ohos.net.socket.d.ts|
|type有变化|类名:TLSSecureOptions;<br>方法or属性:cipherSuite?: string;<br>旧版本信息:|类名:TLSSecureOptions;<br>方法or属性:cipherSuite?: string;<br>新版本信息:?string|@ohos.net.socket.d.ts|
|type有变化|类名:TLSConnectOptions;<br>方法or属性:secureOptions: TLSSecureOptions;<br>旧版本信息:|类名:TLSConnectOptions;<br>方法or属性:secureOptions: TLSSecureOptions;<br>新版本信息:TLSSecureOptions|@ohos.net.socket.d.ts|
|type有变化|类名:TLSConnectOptions;<br>方法or属性:ALPNProtocols?: Array\<string>;<br>旧版本信息:|类名:TLSConnectOptions;<br>方法or属性:ALPNProtocols?: Array\<string>;<br>新版本信息:?Array\<string>|@ohos.net.socket.d.ts|
|type有变化|类名:WebSocketRequestOptions;<br>方法or属性:header?: Object;<br>旧版本信息:|类名:WebSocketRequestOptions;<br>方法or属性:header?: Object;<br>新版本信息:?Object|@ohos.net.webSocket.d.ts|
|type有变化|类名:WebSocketCloseOptions;<br>方法or属性:code?: number;<br>旧版本信息:|类名:WebSocketCloseOptions;<br>方法or属性:code?: number;<br>新版本信息:?number|@ohos.net.webSocket.d.ts|
|type有变化|类名:WebSocketCloseOptions;<br>方法or属性:reason?: string;<br>旧版本信息:|类名:WebSocketCloseOptions;<br>方法or属性:reason?: string;<br>新版本信息:?string|@ohos.net.webSocket.d.ts|
|type有变化|类名:WifiEapConfig;<br>方法or属性:caCertAliases: string;<br>旧版本信息:|类名:WifiEapConfig;<br>方法or属性:caCertAliases: string;<br>新版本信息:string|@ohos.wifiManager.d.ts|
|type有变化|类名:WifiEapConfig;<br>方法or属性:clientCertAliases: string;<br>旧版本信息:|类名:WifiEapConfig;<br>方法or属性:clientCertAliases: string;<br>新版本信息:string|@ohos.wifiManager.d.ts|
|type有变化|类名:WifiEapConfig;<br>方法or属性:eapSubId: number;<br>旧版本信息:|类名:WifiEapConfig;<br>方法or属性:eapSubId: number;<br>新版本信息:number|@ohos.wifiManager.d.ts|
|type有变化|类名:WifiDeviceConfig;<br>方法or属性:eapConfig?: WifiEapConfig;<br>旧版本信息:|类名:WifiDeviceConfig;<br>方法or属性:eapConfig?: WifiEapConfig;<br>新版本信息:?WifiEapConfig|@ohos.wifiManager.d.ts|
|type有变化|类名:NetworkResponse;<br>方法or属性:type: string;<br>旧版本信息:|类名:NetworkResponse;<br>方法or属性:type: string;<br>新版本信息:string|@system.network.d.ts|
|type有变化|类名:NetworkResponse;<br>方法or属性:metered: boolean;<br>旧版本信息:|类名:NetworkResponse;<br>方法or属性:metered: boolean;<br>新版本信息:boolean|@system.network.d.ts|
|函数有变化|类名:HotspotConfig;<br>方法or属性:channel: number;|类名:HotspotConfig;<br>方法or属性:channel?: number;|@ohos.wifiManager.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|新增|NA|类名:ConditionType;<br>方法or属性:timeout?: number;|@ohos.process.d.ts|
|新增|NA|类名:ConditionType;<br>方法or属性:killSignal?: number \| string;|@ohos.process.d.ts|
|新增|NA|类名:ConditionType;<br>方法or属性:maxBuffer?: number;|@ohos.process.d.ts|
|新增|NA|类名:taskpool;<br>方法or属性:function execute(group: TaskGroup, priority?: Priority): Promise\<unknown[]>;|@ohos.taskpool.d.ts|
|新增|NA|类名:taskpool;<br>方法or属性:function cancel(group: TaskGroup): void;|@ohos.taskpool.d.ts|
|新增|NA|类名:taskpool;<br>方法or属性:function getTaskPoolInfo(): TaskPoolInfo;|@ohos.taskpool.d.ts|
|新增|NA|类名:Task;<br>方法or属性:static isCanceled(): boolean;|@ohos.taskpool.d.ts|
|新增|NA|类名:Task;<br>方法or属性:setTransferList(transfer?: ArrayBuffer[]): void;|@ohos.taskpool.d.ts|
|新增|NA|类名:TaskGroup;<br>方法or属性:constructor();|@ohos.taskpool.d.ts|
|新增|NA|类名:TaskGroup;<br>方法or属性:addTask(func: Function, ...args: unknown[]): void;|@ohos.taskpool.d.ts|
|新增|NA|类名:TaskGroup;<br>方法or属性:addTask(task: Task): void;|@ohos.taskpool.d.ts|
|新增|NA|类名:State;<br>方法or属性:WAITING = 1|@ohos.taskpool.d.ts|
|新增|NA|类名:State;<br>方法or属性:RUNNING = 2|@ohos.taskpool.d.ts|
|新增|NA|类名:State;<br>方法or属性:CANCELED = 3|@ohos.taskpool.d.ts|
|新增|NA|类名:TaskInfo;<br>方法or属性:taskId: number;|@ohos.taskpool.d.ts|
|新增|NA|类名:TaskInfo;<br>方法or属性:state: State;|@ohos.taskpool.d.ts|
|新增|NA|类名:TaskInfo;<br>方法or属性:duration?: number;|@ohos.taskpool.d.ts|
|新增|NA|类名:ThreadInfo;<br>方法or属性:tid: number;|@ohos.taskpool.d.ts|
|新增|NA|类名:ThreadInfo;<br>方法or属性:taskIds?: number[];|@ohos.taskpool.d.ts|
|新增|NA|类名:ThreadInfo;<br>方法or属性:priority?: Priority;|@ohos.taskpool.d.ts|
|新增|NA|类名:TaskPoolInfo;<br>方法or属性:threadInfos: ThreadInfo[];|@ohos.taskpool.d.ts|
|新增|NA|类名:TaskPoolInfo;<br>方法or属性:taskInfos: TaskInfo[];|@ohos.taskpool.d.ts|
|新增|NA|类名:Type;<br>方法or属性:BASIC|@ohos.util.d.ts|
|新增|NA|类名:Type;<br>方法or属性:MIME|@ohos.util.d.ts|
|新增(错误码)|类名:WorkerEventListener;<br>方法or属性:(event: Event): void \| Promise\<void>;<br>旧版本信息:|类名:WorkerEventListener;<br>方法or属性:(event: Event): void \| Promise\<void>;<br>新版本信息:401,10200004,10200005|@ohos.worker.d.ts|
|新增(错误码)|类名:ThreadWorkerGlobalScope;<br>方法or属性:onmessage?: (this: ThreadWorkerGlobalScope, ev: MessageEvents) => void;<br>旧版本信息:|类名:ThreadWorkerGlobalScope;<br>方法or属性:onmessage?: (this: ThreadWorkerGlobalScope, ev: MessageEvents) => void;<br>新版本信息:401,10200004,10200005|@ohos.worker.d.ts|
|新增(错误码)|类名:ThreadWorkerGlobalScope;<br>方法or属性:onmessageerror?: (this: ThreadWorkerGlobalScope, ev: MessageEvents) => void;<br>旧版本信息:|类名:ThreadWorkerGlobalScope;<br>方法or属性:onmessageerror?: (this: ThreadWorkerGlobalScope, ev: MessageEvents) => void;<br>新版本信息:401,10200004,10200005|@ohos.worker.d.ts|
|新增(错误码)|类名:ThreadWorker;<br>方法or属性:onexit?: (code: number) => void;<br>旧版本信息:|类名:ThreadWorker;<br>方法or属性:onexit?: (code: number) => void;<br>新版本信息:401,10200004,10200005|@ohos.worker.d.ts|
|新增(错误码)|类名:ThreadWorker;<br>方法or属性:onerror?: (err: ErrorEvent) => void;<br>旧版本信息:|类名:ThreadWorker;<br>方法or属性:onerror?: (err: ErrorEvent) => void;<br>新版本信息:401,10200004,10200005|@ohos.worker.d.ts|
|新增(错误码)|类名:ThreadWorker;<br>方法or属性:onmessage?: (event: MessageEvents) => void;<br>旧版本信息:|类名:ThreadWorker;<br>方法or属性:onmessage?: (event: MessageEvents) => void;<br>新版本信息:401,10200004,10200005|@ohos.worker.d.ts|
|新增(错误码)|类名:ThreadWorker;<br>方法or属性:onmessageerror?: (event: MessageEvents) => void;<br>旧版本信息:|类名:ThreadWorker;<br>方法or属性:onmessageerror?: (event: MessageEvents) => void;<br>新版本信息:401,10200004,10200005|@ohos.worker.d.ts|
|错误码有变化|类名:taskpool;<br>方法or属性:function cancel(task: Task): void;<br>旧版本信息:401,10200015,10200016|类名:taskpool;<br>方法or属性:function cancel(task: Task): void;<br>新版本信息:401,10200015|@ohos.taskpool.d.ts|
|错误码有变化|类名:Vector;<br>方法or属性:insert(element: T, index: number): void;<br>旧版本信息:If|类名:Vector;<br>方法or属性:insert(element: T, index: number): void;<br>新版本信息:|@ohos.util.Vector.d.ts|
|错误码有变化|类名:Vector;<br>方法or属性:removeByRange(fromIndex: number, toIndex: number): void;<br>旧版本信息:If|类名:Vector;<br>方法or属性:removeByRange(fromIndex: number, toIndex: number): void;<br>新版本信息:|@ohos.util.Vector.d.ts|
|错误码有变化|类名:Vector;<br>方法or属性:subVector(fromIndex: number, toIndex: number): Vector\<T>;<br>旧版本信息:If|类名:Vector;<br>方法or属性:subVector(fromIndex: number, toIndex: number): Vector\<T>;<br>新版本信息:|@ohos.util.Vector.d.ts|
|错误码有变化|类名:WorkerEventTarget;<br>方法or属性:addEventListener(type: string, listener: WorkerEventListener): void;<br>旧版本信息:401,10200004|类名:WorkerEventTarget;<br>方法or属性:addEventListener(type: string, listener: WorkerEventListener): void;<br>新版本信息:401,10200004,10200005|@ohos.worker.d.ts|
|错误码有变化|类名:ThreadWorker;<br>方法or属性:addEventListener(type: string, listener: WorkerEventListener): void;<br>旧版本信息:401,10200004|类名:ThreadWorker;<br>方法or属性:addEventListener(type: string, listener: WorkerEventListener): void;<br>新版本信息:401,10200004,10200005|@ohos.worker.d.ts|
|错误码有变化|类名:ThreadWorker;<br>方法or属性:on(type: string, listener: WorkerEventListener): void;<br>旧版本信息:401,10200004|类名:ThreadWorker;<br>方法or属性:on(type: string, listener: WorkerEventListener): void;<br>新版本信息:401,10200004,10200005|@ohos.worker.d.ts|
|错误码有变化|类名:ThreadWorker;<br>方法or属性:once(type: string, listener: WorkerEventListener): void;<br>旧版本信息:401,10200004|类名:ThreadWorker;<br>方法or属性:once(type: string, listener: WorkerEventListener): void;<br>新版本信息:401,10200004,10200005|@ohos.worker.d.ts|
|错误码有变化|类名:ThreadWorker;<br>方法or属性:off(type: string, listener?: WorkerEventListener): void;<br>旧版本信息:401,10200004|类名:ThreadWorker;<br>方法or属性:off(type: string, listener?: WorkerEventListener): void;<br>新版本信息:401,10200004,10200005|@ohos.worker.d.ts|
|type有变化|类名:Task;<br>方法or属性:arguments?: unknown[];<br>旧版本信息:|类名:Task;<br>方法or属性:arguments?: unknown[];<br>新版本信息:?unknown[]|@ohos.taskpool.d.ts|
|函数有变化|类名:process;<br>方法or属性:function runCmd(command: string,<br><br> options?: { timeout?: number, killSignal?: number \| string, maxBuffer?: number }): ChildProcess;|类名:process;<br>方法or属性:function runCmd(<br><br> command: string,<br><br> options?: ConditionType<br><br> ): ChildProcess;|@ohos.process.d.ts|
|函数有变化|类名:Priority;<br>方法or属性:HIGH|类名:Priority;<br>方法or属性:HIGH = 0|@ohos.taskpool.d.ts|
|函数有变化|类名:Priority;<br>方法or属性:MEDIUM|类名:Priority;<br>方法or属性:MEDIUM = 1|@ohos.taskpool.d.ts|
|函数有变化|类名:Priority;<br>方法or属性:LOW|类名:Priority;<br>方法or属性:LOW = 2|@ohos.taskpool.d.ts|
|函数有变化|类名:Base64Helper;<br>方法or属性:encodeToStringSync(src: Uint8Array): string;|类名:Base64Helper;<br>方法or属性:encodeToStringSync(src: Uint8Array, options?: Type): string;|@ohos.util.d.ts|
|函数有变化|类名:Base64Helper;<br>方法or属性:decodeSync(src: Uint8Array \| string): Uint8Array;|类名:Base64Helper;<br>方法or属性:decodeSync(src: Uint8Array \| string, options?: Type): Uint8Array;|@ohos.util.d.ts|
|函数有变化|类名:Base64Helper;<br>方法or属性:encodeToString(src: Uint8Array): Promise\<string>;|类名:Base64Helper;<br>方法or属性:encodeToString(src: Uint8Array, options?: Type): Promise\<string>;|@ohos.util.d.ts|
|函数有变化|类名:Base64Helper;<br>方法or属性:decode(src: Uint8Array \| string): Promise\<Uint8Array>;|类名:Base64Helper;<br>方法or属性:decode(src: Uint8Array \| string, options?: Type): Promise\<Uint8Array>;|@ohos.util.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|新增|NA|类名:browser;<br>方法or属性:function setPolicies(admin: Want, appId: string, policies: string, callback: AsyncCallback\<void>): void;|@ohos.enterprise.browser.d.ts|
|新增|NA|类名:browser;<br>方法or属性:function setPolicies(admin: Want, appId: string, policies: string): Promise\<void>;|@ohos.enterprise.browser.d.ts|
|新增|NA|类名:browser;<br>方法or属性:function getPolicies(admin: Want, appId: string, callback: AsyncCallback\<string>): void;|@ohos.enterprise.browser.d.ts|
|新增|NA|类名:browser;<br>方法or属性:function getPolicies(admin: Want, appId: string): Promise\<string>;|@ohos.enterprise.browser.d.ts|
|新增|NA|类名:bundleManager;<br>方法or属性:function addDisallowedUninstallBundles(admin: Want, appIds: Array\<string>, callback: AsyncCallback\<void>): void;|@ohos.enterprise.bundleManager.d.ts|
|新增|NA|类名:bundleManager;<br>方法or属性:function addDisallowedUninstallBundles(admin: Want, appIds: Array\<string>, userId: number, callback: AsyncCallback\<void>): void;|@ohos.enterprise.bundleManager.d.ts|
|新增|NA|类名:bundleManager;<br>方法or属性:function addDisallowedUninstallBundles(admin: Want, appIds: Array\<string>, userId?: number): Promise\<void>;|@ohos.enterprise.bundleManager.d.ts|
|新增|NA|类名:bundleManager;<br>方法or属性:function removeDisallowedUninstallBundles(admin: Want, appIds: Array\<string>, callback: AsyncCallback\<void>): void;|@ohos.enterprise.bundleManager.d.ts|
|新增|NA|类名:bundleManager;<br>方法or属性:function removeDisallowedUninstallBundles(admin: Want, appIds: Array\<string>, userId: number, callback: AsyncCallback\<void>): void;|@ohos.enterprise.bundleManager.d.ts|
|新增|NA|类名:bundleManager;<br>方法or属性:function removeDisallowedUninstallBundles(admin: Want, appIds: Array\<string>, userId?: number): Promise\<void>;|@ohos.enterprise.bundleManager.d.ts|
|新增|NA|类名:bundleManager;<br>方法or属性:function getDisallowedUninstallBundles(admin: Want, callback: AsyncCallback\<Array\<string>>): void;|@ohos.enterprise.bundleManager.d.ts|
|新增|NA|类名:bundleManager;<br>方法or属性:function getDisallowedUninstallBundles(admin: Want, userId: number, callback: AsyncCallback\<Array\<string>>): void;|@ohos.enterprise.bundleManager.d.ts|
|新增|NA|类名:bundleManager;<br>方法or属性:function getDisallowedUninstallBundles(admin: Want, userId?: number): Promise\<Array\<string>>;|@ohos.enterprise.bundleManager.d.ts|
|新增|NA|类名:bundleManager;<br>方法or属性:function uninstall(admin: Want, bundleName: string, callback: AsyncCallback\<void>): void;|@ohos.enterprise.bundleManager.d.ts|
|新增|NA|类名:bundleManager;<br>方法or属性:function uninstall(admin: Want, bundleName: string, userId: number, callback: AsyncCallback\<void>): void;|@ohos.enterprise.bundleManager.d.ts|
|新增|NA|类名:bundleManager;<br>方法or属性:function uninstall(admin: Want, bundleName: string, isKeepData: boolean, callback: AsyncCallback\<void>): void;|@ohos.enterprise.bundleManager.d.ts|
|新增|NA|类名:bundleManager;<br>方法or属性:function uninstall(admin: Want, bundleName: string, userId: number, isKeepData: boolean, callback: AsyncCallback\<void>): void;|@ohos.enterprise.bundleManager.d.ts|
|新增|NA|类名:bundleManager;<br>方法or属性:function uninstall(admin: Want, bundleName: string, userId?: number, isKeepData?: boolean): Promise\<void>;|@ohos.enterprise.bundleManager.d.ts|
|新增|NA|类名:deviceSettings;<br>方法or属性:function getScreenOffTime(admin: Want, callback: AsyncCallback\<number>): void;|@ohos.enterprise.deviceSettings.d.ts|
|新增|NA|类名:deviceSettings;<br>方法or属性:function getScreenOffTime(admin: Want): Promise\<number>;|@ohos.enterprise.deviceSettings.d.ts|
|新增|NA|类名:networkManager;<br>方法or属性:function addIptablesFilterRule(admin: Want, filterRule: AddFilterRule, callback: AsyncCallback\<void>): void;|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:networkManager;<br>方法or属性:function addIptablesFilterRule(admin: Want, filterRule: AddFilterRule): Promise\<void>;|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:networkManager;<br>方法or属性:function removeIptablesFilterRule(admin: Want, filterRule: RemoveFilterRule, callback: AsyncCallback\<void>): void;|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:networkManager;<br>方法or属性:function removeIptablesFilterRule(admin: Want, filterRule: RemoveFilterRule): Promise\<void>;|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:networkManager;<br>方法or属性:function listIptablesFilterRules(admin: Want, callback: AsyncCallback\<string>): void;|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:networkManager;<br>方法or属性:function listIptablesFilterRules(admin: Want): Promise\<string>;|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:AddMethod;<br>方法or属性:APPEND = 0|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:AddMethod;<br>方法or属性:INSERT = 1|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:Direction;<br>方法or属性:INPUT = 0|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:Direction;<br>方法or属性:OUTPUT = 1|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:Action;<br>方法or属性:ALLOW = 0|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:Action;<br>方法or属性:DENY = 1|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:Protocol;<br>方法or属性:ALL = 0|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:Protocol;<br>方法or属性:TCP = 1|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:Protocol;<br>方法or属性:UDP = 2|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:Protocol;<br>方法or属性:ICMP = 3|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:AddFilterRule;<br>方法or属性:ruleNo?: number;|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:AddFilterRule;<br>方法or属性:srcAddr?: string;|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:RemoveFilterRule;<br>方法or属性:srcAddr?: string;|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:AddFilterRule;<br>方法or属性:destAddr?: string;|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:RemoveFilterRule;<br>方法or属性:destAddr?: string;|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:AddFilterRule;<br>方法or属性:srcPort?: string;|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:RemoveFilterRule;<br>方法or属性:srcPort?: string;|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:AddFilterRule;<br>方法or属性:destPort?: string;|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:RemoveFilterRule;<br>方法or属性:destPort?: string;|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:AddFilterRule;<br>方法or属性:uid?: string;|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:RemoveFilterRule;<br>方法or属性:uid?: string;|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:AddFilterRule;<br>方法or属性:method: AddMethod;|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:AddFilterRule;<br>方法or属性:direction: Direction;|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:RemoveFilterRule;<br>方法or属性:direction: Direction;|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:AddFilterRule;<br>方法or属性:action: Action;|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:AddFilterRule;<br>方法or属性:protocol?: Protocol;|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:RemoveFilterRule;<br>方法or属性:protocol?: Protocol;|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:RemoveFilterRule;<br>方法or属性:action?: Action;|@ohos.enterprise.networkManager.d.ts|
|新增|NA|类名:restrictions;<br>方法or属性:function setPrinterDisabled(admin: Want, disabled: boolean, callback: AsyncCallback\<void>): void;|@ohos.enterprise.restrictions.d.ts|
|新增|NA|类名:restrictions;<br>方法or属性:function setPrinterDisabled(admin: Want, disabled: boolean): Promise\<void>;|@ohos.enterprise.restrictions.d.ts|
|新增|NA|类名:restrictions;<br>方法or属性:function isPrinterDisabled(admin: Want, callback: AsyncCallback\<boolean>): void;|@ohos.enterprise.restrictions.d.ts|
|新增|NA|类名:restrictions;<br>方法or属性:function isPrinterDisabled(admin: Want): Promise\<boolean>;|@ohos.enterprise.restrictions.d.ts|
|新增|NA|类名:restrictions;<br>方法or属性:function setHdcDisabled(admin: Want, disabled: boolean, callback: AsyncCallback\<void>): void;|@ohos.enterprise.restrictions.d.ts|
|新增|NA|类名:restrictions;<br>方法or属性:function setHdcDisabled(admin: Want, disabled: boolean): Promise\<void>;|@ohos.enterprise.restrictions.d.ts|
|新增|NA|类名:restrictions;<br>方法or属性:function isHdcDisabled(admin: Want, callback: AsyncCallback\<boolean>): void;|@ohos.enterprise.restrictions.d.ts|
|新增|NA|类名:restrictions;<br>方法or属性:function isHdcDisabled(admin: Want): Promise\<boolean>;|@ohos.enterprise.restrictions.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|新增|NA|类名:hiSysEvent;<br>方法or属性:function exportSysEvents(queryArg: QueryArg, rules: QueryRule[]): number;|@ohos.hiSysEvent.d.ts|
|新增|NA|类名:hiSysEvent;<br>方法or属性:function subscribe(rules: QueryRule[]): number;|@ohos.hiSysEvent.d.ts|
|新增|NA|类名:hiSysEvent;<br>方法or属性:function unsubscribe(): void;|@ohos.hiSysEvent.d.ts|
|新增|NA|类名:QueryArg;<br>方法or属性:fromSeq?: number;|@ohos.hiSysEvent.d.ts|
|新增|NA|类名:QueryArg;<br>方法or属性:toSeq?: number;|@ohos.hiSysEvent.d.ts|
|新增|NA|类名:QueryRule;<br>方法or属性:condition?: string;|@ohos.hiSysEvent.d.ts|
|新增|NA|类名:logLibrary;<br>方法or属性:function list(logType: string): LogEntry[];|@ohos.logLibrary.d.ts|
|新增|NA|类名:logLibrary;<br>方法or属性:function copy(logType: string, logName: string, dest: string): Promise\<void>;|@ohos.logLibrary.d.ts|
|新增|NA|类名:logLibrary;<br>方法or属性:function copy(logType: string, logName: string, dest: string, callback: AsyncCallback\<void>): void;|@ohos.logLibrary.d.ts|
|新增|NA|类名:logLibrary;<br>方法or属性:function move(logType: string, logName: string, dest: string): Promise\<void>;|@ohos.logLibrary.d.ts|
|新增|NA|类名:logLibrary;<br>方法or属性:function move(logType: string, logName: string, dest: string, callback: AsyncCallback\<void>): void;|@ohos.logLibrary.d.ts|
|新增|NA|类名:logLibrary;<br>方法or属性:function remove(logType: string, logName: string): void;|@ohos.logLibrary.d.ts|
|新增|NA|类名:LogEntry;<br>方法or属性:name: string;|@ohos.logLibrary.d.ts|
|新增|NA|类名:LogEntry;<br>方法or属性:mtime: number;|@ohos.logLibrary.d.ts|
|新增|NA|类名:LogEntry;<br>方法or属性:size: number;|@ohos.logLibrary.d.ts|
|新增(错误码)|类名:hiSysEvent;<br>方法or属性:function write(info: SysEventInfo, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:hiSysEvent;<br>方法or属性:function write(info: SysEventInfo, callback: AsyncCallback\<void>): void;<br>新版本信息:401,11200001,11200002,11200003,11200004,11200051,11200052,11200053,11200054|@ohos.hiSysEvent.d.ts|
|新增(错误码)|类名:hiAppEvent;<br>方法or属性:function write(info: AppEventInfo, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:hiAppEvent;<br>方法or属性:function write(info: AppEventInfo, callback: AsyncCallback\<void>): void;<br>新版本信息:401,11100001,11101001,11101002,11101003,11101004,11101005,11101006|@ohos.hiviewdfx.hiAppEvent.d.ts|
|错误码有变化|类名:hiSysEvent;<br>方法or属性:function addWatcher(watcher: Watcher): void;<br>旧版本信息:201,401,11200101,11200102|类名:hiSysEvent;<br>方法or属性:function addWatcher(watcher: Watcher): void;<br>新版本信息:201,202,401,11200101,11200102|@ohos.hiSysEvent.d.ts|
|错误码有变化|类名:hiSysEvent;<br>方法or属性:function removeWatcher(watcher: Watcher): void;<br>旧版本信息:201,401,11200201|类名:hiSysEvent;<br>方法or属性:function removeWatcher(watcher: Watcher): void;<br>新版本信息:201,202,401,11200201|@ohos.hiSysEvent.d.ts|
|错误码有变化|类名:hiSysEvent;<br>方法or属性:function query(queryArg: QueryArg, rules: QueryRule[], querier: Querier): void;<br>旧版本信息:201,401,11200301,11200302,11200303,11200304|类名:hiSysEvent;<br>方法or属性:function query(queryArg: QueryArg, rules: QueryRule[], querier: Querier): void;<br>新版本信息:201,202,401,11200301,11200302,11200303,11200304|@ohos.hiSysEvent.d.ts|
|访问级别有变化|类名:hiSysEvent;<br>方法or属性:function write(info: SysEventInfo, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:hiSysEvent;<br>方法or属性:function write(info: SysEventInfo, callback: AsyncCallback\<void>): void;<br>新版本信息:systemapi|@ohos.hiSysEvent.d.ts|
|访问级别有变化|类名:SysEventInfo;<br>方法or属性:domain: string;<br>旧版本信息:|类名:SysEventInfo;<br>方法or属性:domain: string;<br>新版本信息:systemapi|@ohos.hiSysEvent.d.ts|
|访问级别有变化|类名:WatchRule;<br>方法or属性:domain: string;<br>旧版本信息:|类名:WatchRule;<br>方法or属性:domain: string;<br>新版本信息:systemapi|@ohos.hiSysEvent.d.ts|
|访问级别有变化|类名:QueryRule;<br>方法or属性:domain: string;<br>旧版本信息:|类名:QueryRule;<br>方法or属性:domain: string;<br>新版本信息:systemapi|@ohos.hiSysEvent.d.ts|
|访问级别有变化|类名:SysEventInfo;<br>方法or属性:name: string;<br>旧版本信息:|类名:SysEventInfo;<br>方法or属性:name: string;<br>新版本信息:systemapi|@ohos.hiSysEvent.d.ts|
|访问级别有变化|类名:WatchRule;<br>方法or属性:name: string;<br>旧版本信息:|类名:WatchRule;<br>方法or属性:name: string;<br>新版本信息:systemapi|@ohos.hiSysEvent.d.ts|
|访问级别有变化|类名:SysEventInfo;<br>方法or属性:eventType: EventType;<br>旧版本信息:|类名:SysEventInfo;<br>方法or属性:eventType: EventType;<br>新版本信息:systemapi|@ohos.hiSysEvent.d.ts|
|访问级别有变化|类名:SysEventInfo;<br>方法or属性:params: object;<br>旧版本信息:|类名:SysEventInfo;<br>方法or属性:params: object;<br>新版本信息:systemapi|@ohos.hiSysEvent.d.ts|
|访问级别有变化|类名:WatchRule;<br>方法or属性:tag: string;<br>旧版本信息:|类名:WatchRule;<br>方法or属性:tag: string;<br>新版本信息:systemapi|@ohos.hiSysEvent.d.ts|
|访问级别有变化|类名:WatchRule;<br>方法or属性:ruleType: RuleType;<br>旧版本信息:|类名:WatchRule;<br>方法or属性:ruleType: RuleType;<br>新版本信息:systemapi|@ohos.hiSysEvent.d.ts|
|访问级别有变化|类名:Watcher;<br>方法or属性:rules: WatchRule[];<br>旧版本信息:|类名:Watcher;<br>方法or属性:rules: WatchRule[];<br>新版本信息:systemapi|@ohos.hiSysEvent.d.ts|
|访问级别有变化|类名:QueryArg;<br>方法or属性:beginTime: number;<br>旧版本信息:|类名:QueryArg;<br>方法or属性:beginTime: number;<br>新版本信息:systemapi|@ohos.hiSysEvent.d.ts|
|访问级别有变化|类名:QueryArg;<br>方法or属性:endTime: number;<br>旧版本信息:|类名:QueryArg;<br>方法or属性:endTime: number;<br>新版本信息:systemapi|@ohos.hiSysEvent.d.ts|
|访问级别有变化|类名:QueryArg;<br>方法or属性:maxEvents: number;<br>旧版本信息:|类名:QueryArg;<br>方法or属性:maxEvents: number;<br>新版本信息:systemapi|@ohos.hiSysEvent.d.ts|
|访问级别有变化|类名:QueryRule;<br>方法or属性:names: string[];<br>旧版本信息:|类名:QueryRule;<br>方法or属性:names: string[];<br>新版本信息:systemapi|@ohos.hiSysEvent.d.ts|
|type有变化|类名:SysEventInfo;<br>方法or属性:domain: string;<br>旧版本信息:|类名:SysEventInfo;<br>方法or属性:domain: string;<br>新版本信息:string|@ohos.hiSysEvent.d.ts|
|type有变化|类名:WatchRule;<br>方法or属性:domain: string;<br>旧版本信息:|类名:WatchRule;<br>方法or属性:domain: string;<br>新版本信息:string|@ohos.hiSysEvent.d.ts|
|type有变化|类名:QueryRule;<br>方法or属性:domain: string;<br>旧版本信息:|类名:QueryRule;<br>方法or属性:domain: string;<br>新版本信息:string|@ohos.hiSysEvent.d.ts|
|type有变化|类名:SysEventInfo;<br>方法or属性:name: string;<br>旧版本信息:|类名:SysEventInfo;<br>方法or属性:name: string;<br>新版本信息:string|@ohos.hiSysEvent.d.ts|
|type有变化|类名:WatchRule;<br>方法or属性:name: string;<br>旧版本信息:|类名:WatchRule;<br>方法or属性:name: string;<br>新版本信息:string|@ohos.hiSysEvent.d.ts|
|type有变化|类名:SysEventInfo;<br>方法or属性:eventType: EventType;<br>旧版本信息:|类名:SysEventInfo;<br>方法or属性:eventType: EventType;<br>新版本信息:EventType|@ohos.hiSysEvent.d.ts|
|type有变化|类名:SysEventInfo;<br>方法or属性:params: object;<br>旧版本信息:|类名:SysEventInfo;<br>方法or属性:params: object;<br>新版本信息:object|@ohos.hiSysEvent.d.ts|
|type有变化|类名:WatchRule;<br>方法or属性:tag: string;<br>旧版本信息:|类名:WatchRule;<br>方法or属性:tag: string;<br>新版本信息:string|@ohos.hiSysEvent.d.ts|
|type有变化|类名:WatchRule;<br>方法or属性:ruleType: RuleType;<br>旧版本信息:|类名:WatchRule;<br>方法or属性:ruleType: RuleType;<br>新版本信息:RuleType|@ohos.hiSysEvent.d.ts|
|type有变化|类名:QueryArg;<br>方法or属性:beginTime: number;<br>旧版本信息:|类名:QueryArg;<br>方法or属性:beginTime: number;<br>新版本信息:number|@ohos.hiSysEvent.d.ts|
|type有变化|类名:QueryArg;<br>方法or属性:endTime: number;<br>旧版本信息:|类名:QueryArg;<br>方法or属性:endTime: number;<br>新版本信息:number|@ohos.hiSysEvent.d.ts|
|type有变化|类名:QueryArg;<br>方法or属性:maxEvents: number;<br>旧版本信息:|类名:QueryArg;<br>方法or属性:maxEvents: number;<br>新版本信息:number|@ohos.hiSysEvent.d.ts|
|type有变化|类名:QueryRule;<br>方法or属性:names: string[];<br>旧版本信息:|类名:QueryRule;<br>方法or属性:names: string[];<br>新版本信息:string[]|@ohos.hiSysEvent.d.ts|
|type有变化|类名:HiTraceId;<br>方法or属性:chainId: bigint;<br>旧版本信息:|类名:HiTraceId;<br>方法or属性:chainId: bigint;<br>新版本信息:bigint|@ohos.hiTraceChain.d.ts|
|type有变化|类名:HiTraceId;<br>方法or属性:spanId?: number;<br>旧版本信息:|类名:HiTraceId;<br>方法or属性:spanId?: number;<br>新版本信息:?number|@ohos.hiTraceChain.d.ts|
|type有变化|类名:HiTraceId;<br>方法or属性:parentSpanId?: number;<br>旧版本信息:|类名:HiTraceId;<br>方法or属性:parentSpanId?: number;<br>新版本信息:?number|@ohos.hiTraceChain.d.ts|
|type有变化|类名:HiTraceId;<br>方法or属性:flags?: number;<br>旧版本信息:|类名:HiTraceId;<br>方法or属性:flags?: number;<br>新版本信息:?number|@ohos.hiTraceChain.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|删除|类名:Action;<br>方法or属性:CLEAR_CLOUD_INFO|NA|@ohos.data.cloudData.d.ts|
|删除|类名:Action;<br>方法or属性:CLEAR_CLOUD_DATA_AND_INFO|NA|@ohos.data.cloudData.d.ts|
|新增|NA|类名:ClearAction;<br>方法or属性:CLEAR_CLOUD_INFO|@ohos.data.cloudData.d.ts|
|新增|NA|类名:ClearAction;<br>方法or属性:CLEAR_CLOUD_DATA_AND_INFO|@ohos.data.cloudData.d.ts|
|新增|NA|类名:Config;<br>方法or属性:static clear(<br> accountId: string,<br> appActions: { [bundleName: string]: ClearAction },<br> callback: AsyncCallback\<void><br> ): void;|@ohos.data.cloudData.d.ts|
|新增|NA|类名:Config;<br>方法or属性:static clear(accountId: string, appActions: { [bundleName: string]: ClearAction }): Promise\<void>;|@ohos.data.cloudData.d.ts|
|新增|NA|类名:preferences;<br>方法or属性:function getPreferences(context: Context, options: Options, callback: AsyncCallback\<Preferences>): void;|@ohos.data.preferences.d.ts|
|新增|NA|类名:preferences;<br>方法or属性:function getPreferences(context: Context, options: Options): Promise\<Preferences>;|@ohos.data.preferences.d.ts|
|新增|NA|类名:preferences;<br>方法or属性:function deletePreferences(context: Context, options: Options, callback: AsyncCallback\<void>): void;|@ohos.data.preferences.d.ts|
|新增|NA|类名:preferences;<br>方法or属性:function deletePreferences(context: Context, options: Options): Promise\<void>;|@ohos.data.preferences.d.ts|
|新增|NA|类名:preferences;<br>方法or属性:function removePreferencesFromCache(context: Context, options: Options, callback: AsyncCallback\<void>): void;|@ohos.data.preferences.d.ts|
|新增|NA|类名:preferences;<br>方法or属性:function removePreferencesFromCache(context: Context, options: Options): Promise\<void>;|@ohos.data.preferences.d.ts|
|新增|NA|类名:preferences;<br>方法or属性:function removePreferencesFromCacheSync(context: Context, name: string): void;|@ohos.data.preferences.d.ts|
|新增|NA|类名:Options;<br>方法or属性:name: string;|@ohos.data.preferences.d.ts|
|新增|NA|类名:Options;<br>方法or属性:dataGroupId?: string;|@ohos.data.preferences.d.ts|
|新增|NA|类名:Preferences;<br>方法or属性:getSync(key: string, defValue: ValueType): ValueType;|@ohos.data.preferences.d.ts|
|新增|NA|类名:Preferences;<br>方法or属性:getAllSync(): Object;|@ohos.data.preferences.d.ts|
|新增|NA|类名:Preferences;<br>方法or属性:hasSync(key: string): boolean;|@ohos.data.preferences.d.ts|
|新增|NA|类名:Preferences;<br>方法or属性:putSync(key: string, value: ValueType): void;|@ohos.data.preferences.d.ts|
|新增|NA|类名:Preferences;<br>方法or属性:deleteSync(key: string): void;|@ohos.data.preferences.d.ts|
|新增|NA|类名:Preferences;<br>方法or属性:clearSync(): void;|@ohos.data.preferences.d.ts|
|新增|NA|类名:Preferences;<br>方法or属性:on(type: 'multiProcessChange', callback: Callback\<{ key: string }>): void;|@ohos.data.preferences.d.ts|
|新增|NA|类名:Preferences;<br>方法or属性:off(type: 'multiProcessChange', callback?: Callback\<{ key: string }>): void;|@ohos.data.preferences.d.ts|
|新增|NA|类名:relationalStore;<br>方法or属性:type Assets = Asset[];|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:relationalStore;<br>方法or属性:type PRIKeyType = number \| string;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:relationalStore;<br>方法or属性:type UTCTime = Date;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:relationalStore;<br>方法or属性:type ModifyTime = Map\<PRIKeyType, UTCTime>;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:relationalStore;<br>方法or属性:function deleteRdbStore(context: Context, config: StoreConfig, callback: AsyncCallback\<void>): void;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:relationalStore;<br>方法or属性:function deleteRdbStore(context: Context, config: StoreConfig): Promise\<void>;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:AssetStatus;<br>方法or属性:ASSET_NORMAL|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:AssetStatus;<br>方法or属性:ASSET_INSERT|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:AssetStatus;<br>方法or属性:ASSET_UPDATE|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:AssetStatus;<br>方法or属性:ASSET_DELETE|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:AssetStatus;<br>方法or属性:ASSET_ABNORMAL|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:AssetStatus;<br>方法or属性:ASSET_DOWNLOADING|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:Asset;<br>方法or属性:name: string;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:Asset;<br>方法or属性:uri: string;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:Asset;<br>方法or属性:path: string;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:Asset;<br>方法or属性:createTime: string;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:Asset;<br>方法or属性:modifyTime: string;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:Asset;<br>方法or属性:size: string;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:Asset;<br>方法or属性:status?: AssetStatus;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:StoreConfig;<br>方法or属性:dataGroupId?: string;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:Progress;<br>方法or属性:SYNC_BEGIN|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:Progress;<br>方法or属性:SYNC_IN_PROGRESS|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:Progress;<br>方法or属性:SYNC_FINISH|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:Statistic;<br>方法or属性:total: number;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:Statistic;<br>方法or属性:successful: number;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:Statistic;<br>方法or属性:failed: number;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:Statistic;<br>方法or属性:remained: number;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:TableDetails;<br>方法or属性:upload: Statistic;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:TableDetails;<br>方法or属性:download: Statistic;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:ProgressCode;<br>方法or属性:SUCCESS|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:ProgressCode;<br>方法or属性:UNKNOWN_ERROR|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:ProgressCode;<br>方法or属性:NETWORK_ERROR|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:ProgressCode;<br>方法or属性:CLOUD_DISABLED|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:ProgressCode;<br>方法or属性:LOCKED_BY_OTHERS|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:ProgressCode;<br>方法or属性:RECORD_LIMIT_EXCEEDED|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:ProgressCode;<br>方法or属性:NO_SPACE_FOR_ASSET|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:ProgressDetails;<br>方法or属性:schedule: Progress;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:ProgressDetails;<br>方法or属性:code: ProgressCode;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:ProgressDetails;<br>方法or属性:details: {<br> [table: string]: TableDetails;<br> };|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:SyncMode;<br>方法or属性:SYNC_MODE_TIME_FIRST|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:SyncMode;<br>方法or属性:SYNC_MODE_NATIVE_FIRST|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:SyncMode;<br>方法or属性:SYNC_MODE_CLOUD_FIRST|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:SubscribeType;<br>方法or属性:SUBSCRIBE_TYPE_CLOUD_DETAILS|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:ChangeType;<br>方法or属性:DATA_CHANGE|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:ChangeType;<br>方法or属性:ASSET_CHANGE|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:ChangeInfo;<br>方法or属性:table: string;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:ChangeInfo;<br>方法or属性:type: ChangeType;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:ChangeInfo;<br>方法or属性:inserted: Array\<string> \| Array\<number>;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:ChangeInfo;<br>方法or属性:updated: Array\<string> \| Array\<number>;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:ChangeInfo;<br>方法or属性:deleted: Array\<string> \| Array\<number>;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:DistributedType;<br>方法or属性:DISTRIBUTED_DEVICE|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:DistributedType;<br>方法or属性:DISTRIBUTED_CLOUD|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:DistributedConfig;<br>方法or属性:autoSync: boolean;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:ResultSet;<br>方法or属性:getAsset(columnIndex: number): Asset;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:ResultSet;<br>方法or属性:getAssets(columnIndex: number): Assets;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:RdbStore;<br>方法or属性:getModifyTime(table: string, columnName: string, primaryKeys: PRIKeyType[]): Promise\<ModifyTime>;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:RdbStore;<br>方法or属性:getModifyTime(<br> table: string,<br> columnName: string,<br> primaryKeys: PRIKeyType[],<br> callback: AsyncCallback\<ModifyTime><br> ): void;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:RdbStore;<br>方法or属性:setDistributedTables(tables: Array\<string>, type: DistributedType, callback: AsyncCallback\<void>): void;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:RdbStore;<br>方法or属性:setDistributedTables(<br> tables: Array\<string>,<br> type: DistributedType,<br> config: DistributedConfig,<br> callback: AsyncCallback\<void><br> ): void;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:RdbStore;<br>方法or属性:setDistributedTables(tables: Array\<string>, type?: DistributedType, config?: DistributedConfig): Promise\<void>;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:RdbStore;<br>方法or属性:cloudSync(mode: SyncMode, progress: Callback\<ProgressDetails>, callback: AsyncCallback\<void>): void;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:RdbStore;<br>方法or属性:cloudSync(mode: SyncMode, progress: Callback\<ProgressDetails>): Promise\<void>;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:RdbStore;<br>方法or属性:cloudSync(<br> mode: SyncMode,<br> tables: string[],<br> progress: Callback\<ProgressDetails>,<br> callback: AsyncCallback\<void><br> ): void;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:RdbStore;<br>方法or属性:cloudSync(mode: SyncMode, tables: string[], progress: Callback\<ProgressDetails>): Promise\<void>;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:RdbStore;<br>方法or属性:on(event: 'dataChange', type: SubscribeType, observer: Callback\<Array\<string>> \| Callback\<Array\<ChangeInfo>>): void;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:RdbStore;<br>方法or属性:on(event: string, interProcess: boolean, observer: Callback\<void>): void;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:RdbStore;<br>方法or属性:off(<br> event: 'dataChange',<br> type: SubscribeType,<br> observer?: Callback\<Array\<string>> \| Callback\<Array\<ChangeInfo>><br> ): void;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:RdbStore;<br>方法or属性:off(event: string, interProcess: boolean, observer?: Callback\<void>): void;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:RdbStore;<br>方法or属性:emit(event: string): void;|@ohos.data.relationalStore.d.ts|
|新增|NA|类名:UDMF;<br>方法or属性:type Options = {<br> /**<br> * indicates the target Intention<br> *<br> * @syscap SystemCapability.DistributedDataManager.UDMF.Core<br> * @since 10<br> */<br> intention?: Intention;<br><br> /**<br> * indicates the unique identifier of target UnifiedData<br> *<br> * @syscap SystemCapability.DistributedDataManager.UDMF.Core<br> * @since 10<br> */<br> key?: string;<br> };|@ohos.data.UDMF.d.ts|
|新增|NA|类名:UDMF;<br>方法or属性:function insertData(options: Options, data: UnifiedData, callback: AsyncCallback\<string>): void;|@ohos.data.UDMF.d.ts|
|新增|NA|类名:UDMF;<br>方法or属性:function insertData(options: Options, data: UnifiedData): Promise\<string>;|@ohos.data.UDMF.d.ts|
|新增|NA|类名:UDMF;<br>方法or属性:function updateData(options: Options, data: UnifiedData, callback: AsyncCallback\<void>): void;|@ohos.data.UDMF.d.ts|
|新增|NA|类名:UDMF;<br>方法or属性:function updateData(options: Options, data: UnifiedData): Promise\<void>;|@ohos.data.UDMF.d.ts|
|新增|NA|类名:UDMF;<br>方法or属性:function queryData(options: Options, callback: AsyncCallback\<Array\<UnifiedData>>): void;|@ohos.data.UDMF.d.ts|
|新增|NA|类名:UDMF;<br>方法or属性:function queryData(options: Options): Promise\<Array\<UnifiedData>>;|@ohos.data.UDMF.d.ts|
|新增|NA|类名:UDMF;<br>方法or属性:function deleteData(options: Options, callback: AsyncCallback\<Array\<UnifiedData>>): void;|@ohos.data.UDMF.d.ts|
|新增|NA|类名:UDMF;<br>方法or属性:function deleteData(options: Options): Promise\<Array\<UnifiedData>>;|@ohos.data.UDMF.d.ts|
|新增|NA|类名:UnifiedDataType;<br>方法or属性:AUDIO = 'File.Media.Audio'|@ohos.data.UDMF.d.ts|
|新增|NA|类名:Audio;<br>方法or属性:audioUri: string;|@ohos.data.UDMF.d.ts|
|新增|NA|类名:Intention;<br>方法or属性:DATA_HUB = 'DataHub'|@ohos.data.UDMF.d.ts|
|错误码有变化|类名:DataAbilityPredicates;<br>方法or属性:limitAs(value: number): DataAbilityPredicates;<br>旧版本信息:IllegalPredicateException|类名:DataAbilityPredicates;<br>方法or属性:limitAs(value: number): DataAbilityPredicates;<br>新版本信息:|@ohos.data.dataAbility.d.ts|
|错误码有变化|类名:relationalStore;<br>方法or属性:function getRdbStore(context: Context, config: StoreConfig, callback: AsyncCallback\<RdbStore>): void;<br>旧版本信息:401,14800000,14800010,14800011|类名:relationalStore;<br>方法or属性:function getRdbStore(context: Context, config: StoreConfig, callback: AsyncCallback\<RdbStore>): void;<br>新版本信息:401,14800000,14800010,14800011,14801001,14801002|@ohos.data.relationalStore.d.ts|
|错误码有变化|类名:relationalStore;<br>方法or属性:function getRdbStore(context: Context, config: StoreConfig): Promise\<RdbStore>;<br>旧版本信息:401,14800000,14800010,14800011|类名:relationalStore;<br>方法or属性:function getRdbStore(context: Context, config: StoreConfig): Promise\<RdbStore>;<br>新版本信息:401,14800000,14800010,14800011,14801001,14801002|@ohos.data.relationalStore.d.ts|
|访问级别有变化|类名:dataSharePredicates;<br>方法or属性:declare dataSharePredicates<br>旧版本信息:systemapi|类名:dataSharePredicates;<br>方法or属性:declare dataSharePredicates<br>新版本信息:|@ohos.data.dataSharePredicates.d.ts|
|访问级别有变化|类名:DataSharePredicates;<br>方法or属性:class DataSharePredicates<br>旧版本信息:systemapi|类名:DataSharePredicates;<br>方法or属性:class DataSharePredicates<br>新版本信息:|@ohos.data.dataSharePredicates.d.ts|
|访问级别有变化|类名:DataSharePredicates;<br>方法or属性:equalTo(field: string, value: ValueType): DataSharePredicates;<br>旧版本信息:systemapi|类名:DataSharePredicates;<br>方法or属性:equalTo(field: string, value: ValueType): DataSharePredicates;<br>新版本信息:|@ohos.data.dataSharePredicates.d.ts|
|访问级别有变化|类名:DataSharePredicates;<br>方法or属性:and(): DataSharePredicates;<br>旧版本信息:systemapi|类名:DataSharePredicates;<br>方法or属性:and(): DataSharePredicates;<br>新版本信息:|@ohos.data.dataSharePredicates.d.ts|
|访问级别有变化|类名:DataSharePredicates;<br>方法or属性:orderByAsc(field: string): DataSharePredicates;<br>旧版本信息:systemapi|类名:DataSharePredicates;<br>方法or属性:orderByAsc(field: string): DataSharePredicates;<br>新版本信息:|@ohos.data.dataSharePredicates.d.ts|
|访问级别有变化|类名:DataSharePredicates;<br>方法or属性:orderByDesc(field: string): DataSharePredicates;<br>旧版本信息:systemapi|类名:DataSharePredicates;<br>方法or属性:orderByDesc(field: string): DataSharePredicates;<br>新版本信息:|@ohos.data.dataSharePredicates.d.ts|
|访问级别有变化|类名:DataSharePredicates;<br>方法or属性:limit(total: number, offset: number): DataSharePredicates;<br>旧版本信息:systemapi|类名:DataSharePredicates;<br>方法or属性:limit(total: number, offset: number): DataSharePredicates;<br>新版本信息:|@ohos.data.dataSharePredicates.d.ts|
|访问级别有变化|类名:DataSharePredicates;<br>方法or属性:in(field: string, value: Array\<ValueType>): DataSharePredicates;<br>旧版本信息:systemapi|类名:DataSharePredicates;<br>方法or属性:in(field: string, value: Array\<ValueType>): DataSharePredicates;<br>新版本信息:|@ohos.data.dataSharePredicates.d.ts|
|访问级别有变化|类名:sourcefile;<br>方法or属性:export type ValueType = number \| string \| boolean;<br>旧版本信息:systemapi|类名:sourcefile;<br>方法or属性:export type ValueType = number \| string \| boolean;<br>新版本信息:|@ohos.data.ValuesBucket.d.ts|
|访问级别有变化|类名:sourcefile;<br>方法or属性:export type ValuesBucket = {<br><br> [key: string]: ValueType \| Uint8Array \| null;<br><br>};<br>旧版本信息:systemapi|类名:sourcefile;<br>方法or属性:export type ValuesBucket = {<br><br> [key: string]: ValueType \| Uint8Array \| null;<br><br>};<br>新版本信息:|@ohos.data.ValuesBucket.d.ts|
|type有变化|类名:DataShareExtensionAbility;<br>方法or属性:context: ExtensionContext;<br>旧版本信息:|类名:DataShareExtensionAbility;<br>方法or属性:context: ExtensionContext;<br>新版本信息:ExtensionContext|@ohos.application.DataShareExtensionAbility.d.ts|
|函数有变化|类名:DataShareExtensionAbility;<br>方法or属性:context?: ExtensionContext;|类名:DataShareExtensionAbility;<br>方法or属性:context: ExtensionContext;|@ohos.application.DataShareExtensionAbility.d.ts|
|函数有变化|类名:PublishedItem;<br>方法or属性:data: string \| Ashmem;|类名:PublishedItem;<br>方法or属性:data: string \| ArrayBuffer;|@ohos.data.dataShare.d.ts|
|函数有变化|类名:relationalStore;<br>方法or属性:type ValueType = null \| number \| string \| boolean \| Uint8Array;|类名:relationalStore;<br>方法or属性:type ValueType = null \| number \| string \| boolean \| Uint8Array \| Asset \| Assets;|@ohos.data.relationalStore.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|新增|NA|类名:distributedDeviceManager;<br>方法or属性:function createDeviceManager(bundleName: string): DeviceManager;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:distributedDeviceManager;<br>方法or属性:function releaseDeviceManager(deviceManager: DeviceManager): void;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceBasicInfo;<br>方法or属性:deviceId: string;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceBasicInfo;<br>方法or属性:deviceName: string;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceBasicInfo;<br>方法or属性:deviceType: number;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceBasicInfo;<br>方法or属性:networkId?: string;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceStateChange;<br>方法or属性:UNKNOWN = 0|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceStateChange;<br>方法or属性:AVAILABLE = 1|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceStateChange;<br>方法or属性:UNAVAILABLE = 2|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:getAvailableDeviceListSync(): Array\<DeviceBasicInfo>;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:getAvailableDeviceList(callback: AsyncCallback\<Array\<DeviceBasicInfo>>): void;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:getAvailableDeviceList(): Promise\<Array\<DeviceBasicInfo>>;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:getLocalDeviceNetworkId(): string;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:getLocalDeviceName(): string;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:getLocalDeviceType(): number;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:getLocalDeviceId(): string;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:getDeviceName(networkId: string): string;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:getDeviceType(networkId: string): number;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:startDiscovering(discoverParam: { [key: string]: Object }, filterOptions?: { [key: string]: Object }): void;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:stopDiscovering(): void;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:bindTarget(deviceId: string, bindParam: { [key: string]: Object }, callback: AsyncCallback\<{deviceId: string}>): void;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:unbindTarget(deviceId: string): void;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:replyUiAction(action: number, actionResult: string): void;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:on(type: 'deviceStateChange', callback: Callback\<{ action: DeviceStateChange, device: DeviceBasicInfo }>): void;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:on(type: 'discoverSuccess', callback: Callback\<{ device: DeviceBasicInfo }>): void;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:on(type: 'deviceNameChange', callback: Callback\<{ deviceName: string }>): void;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:on(type: 'discoverFailure', callback: Callback\<{ reason: number }>): void;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:on(type: 'serviceDie', callback?: Callback\<{}>): void;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:on(type: 'replyResult', callback: Callback\<{ param: string }>): void;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:off(type: 'deviceStateChange', callback?: Callback\<{ action: DeviceStateChange, device: DeviceBasicInfo }>): void;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:off(type: 'discoverSuccess', callback?: Callback\<{ device: DeviceBasicInfo }>): void;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:off(type: 'deviceNameChange', callback?: Callback\<{ deviceName: string }>): void;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:off(type: 'discoverFailure', callback?: Callback\<{ reason: number }>): void;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:off(type: 'serviceDie', callback?: Callback\<{}>): void;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:off(type: 'replyResult', callback?: Callback\<{ param: string }>): void;|@ohos.distributedDeviceManager.d.ts|
|新增|NA|类名:DeviceManager;<br>方法or属性:getTrustedDeviceListSync(isRefresh: boolean): Array\<DeviceInfo>;|@ohos.distributedHardware.deviceManager.d.ts|
|新增(错误码)|类名:DeviceManager;<br>方法or属性:getTrustedDeviceList(): Promise\<Array\<DeviceInfo>>;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:getTrustedDeviceList(): Promise\<Array\<DeviceInfo>>;<br>新版本信息:202|@ohos.distributedHardware.deviceManager.d.ts|
|新增(错误码)|类名:DeviceManager;<br>方法or属性:getLocalDeviceInfo(): Promise\<DeviceInfo>;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:getLocalDeviceInfo(): Promise\<DeviceInfo>;<br>新版本信息:202|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:deviceManager;<br>方法or属性:function createDeviceManager(bundleName: string, callback: AsyncCallback\<DeviceManager>): void;<br>旧版本信息:401|类名:deviceManager;<br>方法or属性:function createDeviceManager(bundleName: string, callback: AsyncCallback\<DeviceManager>): void;<br>新版本信息:401,202|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:release(): void;<br>旧版本信息:11600101|类名:DeviceManager;<br>方法or属性:release(): void;<br>新版本信息:202,201,11600101|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:getTrustedDeviceListSync(): Array\<DeviceInfo>;<br>旧版本信息:11600101|类名:DeviceManager;<br>方法or属性:getTrustedDeviceListSync(): Array\<DeviceInfo>;<br>新版本信息:202,201,11600101|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:getTrustedDeviceList(callback: AsyncCallback\<Array\<DeviceInfo>>): void;<br>旧版本信息:401|类名:DeviceManager;<br>方法or属性:getTrustedDeviceList(callback: AsyncCallback\<Array\<DeviceInfo>>): void;<br>新版本信息:202,401|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:getLocalDeviceInfoSync(): DeviceInfo;<br>旧版本信息:11600101|类名:DeviceManager;<br>方法or属性:getLocalDeviceInfoSync(): DeviceInfo;<br>新版本信息:202,201,11600101|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:getLocalDeviceInfo(callback: AsyncCallback\<DeviceInfo>): void;<br>旧版本信息:401|类名:DeviceManager;<br>方法or属性:getLocalDeviceInfo(callback: AsyncCallback\<DeviceInfo>): void;<br>新版本信息:401,202|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:getDeviceInfo(networkId: string, callback: AsyncCallback\<DeviceInfo>): void;<br>旧版本信息:401|类名:DeviceManager;<br>方法or属性:getDeviceInfo(networkId: string, callback: AsyncCallback\<DeviceInfo>): void;<br>新版本信息:401,202|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:getDeviceInfo(networkId: string): Promise\<DeviceInfo>;<br>旧版本信息:401|类名:DeviceManager;<br>方法or属性:getDeviceInfo(networkId: string): Promise\<DeviceInfo>;<br>新版本信息:401,202|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:startDeviceDiscovery(subscribeInfo: SubscribeInfo): void;<br>旧版本信息:401,201,11600104,11600101|类名:DeviceManager;<br>方法or属性:startDeviceDiscovery(subscribeInfo: SubscribeInfo): void;<br>新版本信息:401,202,201,11600104,11600101|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:startDeviceDiscovery(subscribeInfo: SubscribeInfo, filterOptions?: string): void;<br>旧版本信息:401,201,11600104,11600101|类名:DeviceManager;<br>方法or属性:startDeviceDiscovery(subscribeInfo: SubscribeInfo, filterOptions?: string): void;<br>新版本信息:401,202,201,11600104,11600101|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:stopDeviceDiscovery(subscribeId: number): void;<br>旧版本信息:401,201,11600101|类名:DeviceManager;<br>方法or属性:stopDeviceDiscovery(subscribeId: number): void;<br>新版本信息:401,202,201,11600101|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:publishDeviceDiscovery(publishInfo: PublishInfo): void;<br>旧版本信息:401,201,11600105,11600101|类名:DeviceManager;<br>方法or属性:publishDeviceDiscovery(publishInfo: PublishInfo): void;<br>新版本信息:401,202,201,11600105,11600101|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:unPublishDeviceDiscovery(publishId: number): void;<br>旧版本信息:401,201,11600101|类名:DeviceManager;<br>方法or属性:unPublishDeviceDiscovery(publishId: number): void;<br>新版本信息:401,202,201,11600101|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:authenticateDevice(<br> deviceInfo: DeviceInfo,<br> authParam: AuthParam,<br> callback: AsyncCallback\<{ deviceId: string, pinToken?: number }><br> ): void;<br>旧版本信息:401|类名:DeviceManager;<br>方法or属性:authenticateDevice(<br> deviceInfo: DeviceInfo,<br> authParam: AuthParam,<br> callback: AsyncCallback\<{ deviceId: string, pinToken?: number }><br> ): void;<br>新版本信息:401,202|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:unAuthenticateDevice(deviceInfo: DeviceInfo): void;<br>旧版本信息:401,201,11600101|类名:DeviceManager;<br>方法or属性:unAuthenticateDevice(deviceInfo: DeviceInfo): void;<br>新版本信息:401,202,201,11600101|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:verifyAuthInfo(authInfo: AuthInfo, callback: AsyncCallback\<{ deviceId: string, level: number }>): void;<br>旧版本信息:401|类名:DeviceManager;<br>方法or属性:verifyAuthInfo(authInfo: AuthInfo, callback: AsyncCallback\<{ deviceId: string, level: number }>): void;<br>新版本信息:401,202|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:setUserOperation(operateAction: number, params: string): void;<br>旧版本信息:401|类名:DeviceManager;<br>方法or属性:setUserOperation(operateAction: number, params: string): void;<br>新版本信息:401,202,201|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:requestCredentialRegisterInfo(requestInfo: string, callback: AsyncCallback\<{ registerInfo: string }>): void;<br>旧版本信息:401|类名:DeviceManager;<br>方法or属性:requestCredentialRegisterInfo(requestInfo: string, callback: AsyncCallback\<{ registerInfo: string }>): void;<br>新版本信息:401,202|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:importCredential(credentialInfo: string, callback: AsyncCallback\<{ resultInfo: string }>): void;<br>旧版本信息:401|类名:DeviceManager;<br>方法or属性:importCredential(credentialInfo: string, callback: AsyncCallback\<{ resultInfo: string }>): void;<br>新版本信息:401,202|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:deleteCredential(queryInfo: string, callback: AsyncCallback\<{ resultInfo: string }>): void;<br>旧版本信息:401|类名:DeviceManager;<br>方法or属性:deleteCredential(queryInfo: string, callback: AsyncCallback\<{ resultInfo: string }>): void;<br>新版本信息:401,202|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:on(type: 'uiStateChange', callback: Callback\<{ param: string }>): void;<br>旧版本信息:401|类名:DeviceManager;<br>方法or属性:on(type: 'uiStateChange', callback: Callback\<{ param: string }>): void;<br>新版本信息:401,202|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:on(type: 'deviceStateChange', callback: Callback\<{ action: DeviceStateChangeAction, device: DeviceInfo }>): void;<br>旧版本信息:401|类名:DeviceManager;<br>方法or属性:on(type: 'deviceStateChange', callback: Callback\<{ action: DeviceStateChangeAction, device: DeviceInfo }>): void;<br>新版本信息:401,202|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:on(type: 'deviceFound', callback: Callback\<{ subscribeId: number, device: DeviceInfo }>): void;<br>旧版本信息:401|类名:DeviceManager;<br>方法or属性:on(type: 'deviceFound', callback: Callback\<{ subscribeId: number, device: DeviceInfo }>): void;<br>新版本信息:401,202|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:on(type: 'discoverFail', callback: Callback\<{ subscribeId: number, reason: number }>): void;<br>旧版本信息:401|类名:DeviceManager;<br>方法or属性:on(type: 'discoverFail', callback: Callback\<{ subscribeId: number, reason: number }>): void;<br>新版本信息:401,202|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:on(type: 'publishSuccess', callback: Callback\<{ publishId: number }>): void;<br>旧版本信息:401|类名:DeviceManager;<br>方法or属性:on(type: 'publishSuccess', callback: Callback\<{ publishId: number }>): void;<br>新版本信息:401,202|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:on(type: 'publishFail', callback: Callback\<{ publishId: number, reason: number }>): void;<br>旧版本信息:401|类名:DeviceManager;<br>方法or属性:on(type: 'publishFail', callback: Callback\<{ publishId: number, reason: number }>): void;<br>新版本信息:401,202|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:on(type: 'serviceDie', callback: () => void): void;<br>旧版本信息:401|类名:DeviceManager;<br>方法or属性:on(type: 'serviceDie', callback: () => void): void;<br>新版本信息:401,202|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:off(type: 'uiStateChange', callback?: Callback\<{ param: string }>): void;<br>旧版本信息:401|类名:DeviceManager;<br>方法or属性:off(type: 'uiStateChange', callback?: Callback\<{ param: string }>): void;<br>新版本信息:401,202|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:off(type: 'deviceStateChange', callback?: Callback\<{ action: DeviceStateChangeAction, device: DeviceInfo }>): void;<br>旧版本信息:401|类名:DeviceManager;<br>方法or属性:off(type: 'deviceStateChange', callback?: Callback\<{ action: DeviceStateChangeAction, device: DeviceInfo }>): void;<br>新版本信息:401,202|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:off(type: 'deviceFound', callback?: Callback\<{ subscribeId: number, device: DeviceInfo }>): void;<br>旧版本信息:401|类名:DeviceManager;<br>方法or属性:off(type: 'deviceFound', callback?: Callback\<{ subscribeId: number, device: DeviceInfo }>): void;<br>新版本信息:401,202|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:off(type: 'discoverFail', callback?: Callback\<{ subscribeId: number, reason: number }>): void;<br>旧版本信息:401|类名:DeviceManager;<br>方法or属性:off(type: 'discoverFail', callback?: Callback\<{ subscribeId: number, reason: number }>): void;<br>新版本信息:401,202|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:off(type: 'publishSuccess', callback?: Callback\<{ publishId: number }>): void;<br>旧版本信息:401|类名:DeviceManager;<br>方法or属性:off(type: 'publishSuccess', callback?: Callback\<{ publishId: number }>): void;<br>新版本信息:401,202|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:off(type: 'publishFail', callback?: Callback\<{ publishId: number, reason: number }>): void;<br>旧版本信息:401|类名:DeviceManager;<br>方法or属性:off(type: 'publishFail', callback?: Callback\<{ publishId: number, reason: number }>): void;<br>新版本信息:401,202|@ohos.distributedHardware.deviceManager.d.ts|
|错误码有变化|类名:DeviceManager;<br>方法or属性:off(type: 'serviceDie', callback?: () => void): void;<br>旧版本信息:401|类名:DeviceManager;<br>方法or属性:off(type: 'serviceDie', callback?: () => void): void;<br>新版本信息:401,202|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:DeviceInfo;<br>方法or属性:deviceId: string;<br>旧版本信息:|类名:DeviceInfo;<br>方法or属性:deviceId: string;<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:DeviceInfo;<br>方法or属性:deviceName: string;<br>旧版本信息:|类名:DeviceInfo;<br>方法or属性:deviceName: string;<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:DeviceInfo;<br>方法or属性:deviceType: DeviceType;<br>旧版本信息:|类名:DeviceInfo;<br>方法or属性:deviceType: DeviceType;<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:DeviceInfo;<br>方法or属性:networkId: string;<br>旧版本信息:|类名:DeviceInfo;<br>方法or属性:networkId: string;<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:DeviceInfo;<br>方法or属性:range: number;<br>旧版本信息:|类名:DeviceInfo;<br>方法or属性:range: number;<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:DeviceInfo;<br>方法or属性:authForm: AuthForm;<br>旧版本信息:|类名:DeviceInfo;<br>方法or属性:authForm: AuthForm;<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:AuthForm;<br>方法or属性:INVALID_TYPE = -1<br>旧版本信息:|类名:AuthForm;<br>方法or属性:INVALID_TYPE = -1<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:AuthForm;<br>方法or属性:PEER_TO_PEER = 0<br>旧版本信息:|类名:AuthForm;<br>方法or属性:PEER_TO_PEER = 0<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:AuthForm;<br>方法or属性:IDENTICAL_ACCOUNT = 1<br>旧版本信息:|类名:AuthForm;<br>方法or属性:IDENTICAL_ACCOUNT = 1<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:AuthForm;<br>方法or属性:ACROSS_ACCOUNT = 2<br>旧版本信息:|类名:AuthForm;<br>方法or属性:ACROSS_ACCOUNT = 2<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:DeviceType;<br>方法or属性:UNKNOWN_TYPE = 0<br>旧版本信息:|类名:DeviceType;<br>方法or属性:UNKNOWN_TYPE = 0<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:DeviceType;<br>方法or属性:SPEAKER = 0x0A<br>旧版本信息:|类名:DeviceType;<br>方法or属性:SPEAKER = 0x0A<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:DeviceType;<br>方法or属性:PHONE = 0x0E<br>旧版本信息:|类名:DeviceType;<br>方法or属性:PHONE = 0x0E<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:DeviceType;<br>方法or属性:TABLET = 0x11<br>旧版本信息:|类名:DeviceType;<br>方法or属性:TABLET = 0x11<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:DeviceType;<br>方法or属性:WEARABLE = 0x6D<br>旧版本信息:|类名:DeviceType;<br>方法or属性:WEARABLE = 0x6D<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:DeviceType;<br>方法or属性:CAR = 0x83<br>旧版本信息:|类名:DeviceType;<br>方法or属性:CAR = 0x83<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:DeviceType;<br>方法or属性:TV = 0x9C<br>旧版本信息:|类名:DeviceType;<br>方法or属性:TV = 0x9C<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:DeviceStateChangeAction;<br>方法or属性:ONLINE = 0<br>旧版本信息:|类名:DeviceStateChangeAction;<br>方法or属性:ONLINE = 0<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:DeviceStateChangeAction;<br>方法or属性:READY = 1<br>旧版本信息:|类名:DeviceStateChangeAction;<br>方法or属性:READY = 1<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:DeviceStateChangeAction;<br>方法or属性:OFFLINE = 2<br>旧版本信息:|类名:DeviceStateChangeAction;<br>方法or属性:OFFLINE = 2<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:DeviceStateChangeAction;<br>方法or属性:CHANGE = 3<br>旧版本信息:|类名:DeviceStateChangeAction;<br>方法or属性:CHANGE = 3<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:SubscribeInfo;<br>方法or属性:subscribeId: number;<br>旧版本信息:|类名:SubscribeInfo;<br>方法or属性:subscribeId: number;<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:SubscribeInfo;<br>方法or属性:mode: DiscoverMode;<br>旧版本信息:|类名:SubscribeInfo;<br>方法or属性:mode: DiscoverMode;<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:PublishInfo;<br>方法or属性:mode: DiscoverMode;<br>旧版本信息:|类名:PublishInfo;<br>方法or属性:mode: DiscoverMode;<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:SubscribeInfo;<br>方法or属性:medium: ExchangeMedium;<br>旧版本信息:|类名:SubscribeInfo;<br>方法or属性:medium: ExchangeMedium;<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:SubscribeInfo;<br>方法or属性:freq: ExchangeFreq;<br>旧版本信息:|类名:SubscribeInfo;<br>方法or属性:freq: ExchangeFreq;<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:PublishInfo;<br>方法or属性:freq: ExchangeFreq;<br>旧版本信息:|类名:PublishInfo;<br>方法or属性:freq: ExchangeFreq;<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:SubscribeInfo;<br>方法or属性:isSameAccount: boolean;<br>旧版本信息:|类名:SubscribeInfo;<br>方法or属性:isSameAccount: boolean;<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:SubscribeInfo;<br>方法or属性:isWakeRemote: boolean;<br>旧版本信息:|类名:SubscribeInfo;<br>方法or属性:isWakeRemote: boolean;<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:SubscribeInfo;<br>方法or属性:capability: SubscribeCap;<br>旧版本信息:|类名:SubscribeInfo;<br>方法or属性:capability: SubscribeCap;<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:PublishInfo;<br>方法or属性:publishId: number;<br>旧版本信息:|类名:PublishInfo;<br>方法or属性:publishId: number;<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:PublishInfo;<br>方法or属性:ranging: boolean;<br>旧版本信息:|类名:PublishInfo;<br>方法or属性:ranging: boolean;<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:DiscoverMode;<br>方法or属性:DISCOVER_MODE_PASSIVE = 0x55<br>旧版本信息:|类名:DiscoverMode;<br>方法or属性:DISCOVER_MODE_PASSIVE = 0x55<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:DiscoverMode;<br>方法or属性:DISCOVER_MODE_ACTIVE = 0xAA<br>旧版本信息:|类名:DiscoverMode;<br>方法or属性:DISCOVER_MODE_ACTIVE = 0xAA<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:ExchangeMedium;<br>方法or属性:AUTO = 0<br>旧版本信息:|类名:ExchangeMedium;<br>方法or属性:AUTO = 0<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:ExchangeMedium;<br>方法or属性:BLE = 1<br>旧版本信息:|类名:ExchangeMedium;<br>方法or属性:BLE = 1<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:ExchangeMedium;<br>方法or属性:COAP = 2<br>旧版本信息:|类名:ExchangeMedium;<br>方法or属性:COAP = 2<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:ExchangeMedium;<br>方法or属性:USB = 3<br>旧版本信息:|类名:ExchangeMedium;<br>方法or属性:USB = 3<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:ExchangeFreq;<br>方法or属性:LOW = 0<br>旧版本信息:|类名:ExchangeFreq;<br>方法or属性:LOW = 0<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:ExchangeFreq;<br>方法or属性:MID = 1<br>旧版本信息:|类名:ExchangeFreq;<br>方法or属性:MID = 1<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:ExchangeFreq;<br>方法or属性:HIGH = 2<br>旧版本信息:|类名:ExchangeFreq;<br>方法or属性:HIGH = 2<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:ExchangeFreq;<br>方法or属性:SUPER_HIGH = 3<br>旧版本信息:|类名:ExchangeFreq;<br>方法or属性:SUPER_HIGH = 3<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:SubscribeCap;<br>方法or属性:SUBSCRIBE_CAPABILITY_DDMP = 0<br>旧版本信息:|类名:SubscribeCap;<br>方法or属性:SUBSCRIBE_CAPABILITY_DDMP = 0<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:SubscribeCap;<br>方法or属性:SUBSCRIBE_CAPABILITY_OSD = 1<br>旧版本信息:|类名:SubscribeCap;<br>方法or属性:SUBSCRIBE_CAPABILITY_OSD = 1<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:AuthParam;<br>方法or属性:authType: number;<br>旧版本信息:|类名:AuthParam;<br>方法or属性:authType: number;<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:AuthInfo;<br>方法or属性:authType: number;<br>旧版本信息:|类名:AuthInfo;<br>方法or属性:authType: number;<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:AuthParam;<br>方法or属性:extraInfo: { [key: string]: any };<br>旧版本信息:|类名:AuthParam;<br>方法or属性:extraInfo: { [key: string]: any };<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:AuthInfo;<br>方法or属性:extraInfo: { [key: string]: any };<br>旧版本信息:|类名:AuthInfo;<br>方法or属性:extraInfo: { [key: string]: any };<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|访问级别有变化|类名:AuthInfo;<br>方法or属性:token: number;<br>旧版本信息:|类名:AuthInfo;<br>方法or属性:token: number;<br>新版本信息:systemapi|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:release(): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:release(): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:getTrustedDeviceListSync(): Array\<DeviceInfo>;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:getTrustedDeviceListSync(): Array\<DeviceInfo>;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:getTrustedDeviceList(callback: AsyncCallback\<Array\<DeviceInfo>>): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:getTrustedDeviceList(callback: AsyncCallback\<Array\<DeviceInfo>>): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:getTrustedDeviceList(): Promise\<Array\<DeviceInfo>>;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:getTrustedDeviceList(): Promise\<Array\<DeviceInfo>>;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:getLocalDeviceInfoSync(): DeviceInfo;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:getLocalDeviceInfoSync(): DeviceInfo;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:getLocalDeviceInfo(callback: AsyncCallback\<DeviceInfo>): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:getLocalDeviceInfo(callback: AsyncCallback\<DeviceInfo>): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:getLocalDeviceInfo(): Promise\<DeviceInfo>;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:getLocalDeviceInfo(): Promise\<DeviceInfo>;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:getDeviceInfo(networkId: string, callback: AsyncCallback\<DeviceInfo>): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:getDeviceInfo(networkId: string, callback: AsyncCallback\<DeviceInfo>): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:getDeviceInfo(networkId: string): Promise\<DeviceInfo>;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:getDeviceInfo(networkId: string): Promise\<DeviceInfo>;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:startDeviceDiscovery(subscribeInfo: SubscribeInfo): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:startDeviceDiscovery(subscribeInfo: SubscribeInfo): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:startDeviceDiscovery(subscribeInfo: SubscribeInfo, filterOptions?: string): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:startDeviceDiscovery(subscribeInfo: SubscribeInfo, filterOptions?: string): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:stopDeviceDiscovery(subscribeId: number): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:stopDeviceDiscovery(subscribeId: number): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:publishDeviceDiscovery(publishInfo: PublishInfo): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:publishDeviceDiscovery(publishInfo: PublishInfo): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:unPublishDeviceDiscovery(publishId: number): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:unPublishDeviceDiscovery(publishId: number): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:authenticateDevice(<br> deviceInfo: DeviceInfo,<br> authParam: AuthParam,<br> callback: AsyncCallback\<{ deviceId: string, pinToken?: number }><br> ): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:authenticateDevice(<br> deviceInfo: DeviceInfo,<br> authParam: AuthParam,<br> callback: AsyncCallback\<{ deviceId: string, pinToken?: number }><br> ): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:unAuthenticateDevice(deviceInfo: DeviceInfo): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:unAuthenticateDevice(deviceInfo: DeviceInfo): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:verifyAuthInfo(authInfo: AuthInfo, callback: AsyncCallback\<{ deviceId: string, level: number }>): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:verifyAuthInfo(authInfo: AuthInfo, callback: AsyncCallback\<{ deviceId: string, level: number }>): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:setUserOperation(operateAction: number, params: string): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:setUserOperation(operateAction: number, params: string): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:requestCredentialRegisterInfo(requestInfo: string, callback: AsyncCallback\<{ registerInfo: string }>): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:requestCredentialRegisterInfo(requestInfo: string, callback: AsyncCallback\<{ registerInfo: string }>): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:importCredential(credentialInfo: string, callback: AsyncCallback\<{ resultInfo: string }>): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:importCredential(credentialInfo: string, callback: AsyncCallback\<{ resultInfo: string }>): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:deleteCredential(queryInfo: string, callback: AsyncCallback\<{ resultInfo: string }>): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:deleteCredential(queryInfo: string, callback: AsyncCallback\<{ resultInfo: string }>): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:on(type: 'uiStateChange', callback: Callback\<{ param: string }>): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:on(type: 'uiStateChange', callback: Callback\<{ param: string }>): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:on(type: 'deviceStateChange', callback: Callback\<{ action: DeviceStateChangeAction, device: DeviceInfo }>): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:on(type: 'deviceStateChange', callback: Callback\<{ action: DeviceStateChangeAction, device: DeviceInfo }>): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:on(type: 'deviceFound', callback: Callback\<{ subscribeId: number, device: DeviceInfo }>): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:on(type: 'deviceFound', callback: Callback\<{ subscribeId: number, device: DeviceInfo }>): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:on(type: 'discoverFail', callback: Callback\<{ subscribeId: number, reason: number }>): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:on(type: 'discoverFail', callback: Callback\<{ subscribeId: number, reason: number }>): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:on(type: 'publishSuccess', callback: Callback\<{ publishId: number }>): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:on(type: 'publishSuccess', callback: Callback\<{ publishId: number }>): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:on(type: 'publishFail', callback: Callback\<{ publishId: number, reason: number }>): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:on(type: 'publishFail', callback: Callback\<{ publishId: number, reason: number }>): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:on(type: 'serviceDie', callback: () => void): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:on(type: 'serviceDie', callback: () => void): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:off(type: 'uiStateChange', callback?: Callback\<{ param: string }>): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:off(type: 'uiStateChange', callback?: Callback\<{ param: string }>): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:off(type: 'deviceStateChange', callback?: Callback\<{ action: DeviceStateChangeAction, device: DeviceInfo }>): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:off(type: 'deviceStateChange', callback?: Callback\<{ action: DeviceStateChangeAction, device: DeviceInfo }>): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:off(type: 'deviceFound', callback?: Callback\<{ subscribeId: number, device: DeviceInfo }>): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:off(type: 'deviceFound', callback?: Callback\<{ subscribeId: number, device: DeviceInfo }>): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:off(type: 'discoverFail', callback?: Callback\<{ subscribeId: number, reason: number }>): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:off(type: 'discoverFail', callback?: Callback\<{ subscribeId: number, reason: number }>): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:off(type: 'publishSuccess', callback?: Callback\<{ publishId: number }>): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:off(type: 'publishSuccess', callback?: Callback\<{ publishId: number }>): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:off(type: 'publishFail', callback?: Callback\<{ publishId: number, reason: number }>): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:off(type: 'publishFail', callback?: Callback\<{ publishId: number, reason: number }>): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
|权限有变化|类名:DeviceManager;<br>方法or属性:off(type: 'serviceDie', callback?: () => void): void;<br>旧版本信息:|类名:DeviceManager;<br>方法or属性:off(type: 'serviceDie', callback?: () => void): void;<br>新版本信息:ohos.permission.ACCESS_SERVICE_DM|@ohos.distributedHardware.deviceManager.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|新增|NA|类名:agent;<br>方法or属性:function create(context: BaseContext, config: Config, callback: AsyncCallback\<Task>): void;|@ohos.request.d.ts|
|新增|NA|类名:agent;<br>方法or属性:function create(context: BaseContext, config: Config): Promise\<Task>;|@ohos.request.d.ts|
|新增|NA|类名:agent;<br>方法or属性:function remove(id: string, callback: AsyncCallback\<void>): void;|@ohos.request.d.ts|
|新增|NA|类名:agent;<br>方法or属性:function remove(id: string): Promise\<void>;|@ohos.request.d.ts|
|新增|NA|类名:agent;<br>方法or属性:function show(id: string, callback: AsyncCallback\<TaskInfo>): void;|@ohos.request.d.ts|
|新增|NA|类名:agent;<br>方法or属性:function show(id: string): Promise\<TaskInfo>;|@ohos.request.d.ts|
|新增|NA|类名:agent;<br>方法or属性:function touch(id: string, token: string, callback: AsyncCallback\<TaskInfo>): void;|@ohos.request.d.ts|
|新增|NA|类名:agent;<br>方法or属性:function touch(id: string, token: string): Promise\<TaskInfo>;|@ohos.request.d.ts|
|新增|NA|类名:agent;<br>方法or属性:function search(filter: Filter, callback: AsyncCallback\<Array\<string>>): void;|@ohos.request.d.ts|
|新增|NA|类名:agent;<br>方法or属性:function search(filter: Filter): Promise\<Array\<string>>;|@ohos.request.d.ts|
|新增|NA|类名:agent;<br>方法or属性:function query(id: string, callback: AsyncCallback\<TaskInfo>): void;|@ohos.request.d.ts|
|新增|NA|类名:agent;<br>方法or属性:function query(id: string): Promise\<TaskInfo>;|@ohos.request.d.ts|
|新增|NA|类名:Action;<br>方法or属性:DOWNLOAD|@ohos.request.d.ts|
|新增|NA|类名:Action;<br>方法or属性:UPLOAD|@ohos.request.d.ts|
|新增|NA|类名:Mode;<br>方法or属性:BACKGROUND|@ohos.request.d.ts|
|新增|NA|类名:Mode;<br>方法or属性:FOREGROUND|@ohos.request.d.ts|
|新增|NA|类名:Network;<br>方法or属性:ANY|@ohos.request.d.ts|
|新增|NA|类名:Network;<br>方法or属性:WIFI|@ohos.request.d.ts|
|新增|NA|类名:Network;<br>方法or属性:CELLULAR|@ohos.request.d.ts|
|新增|NA|类名:FileSpec;<br>方法or属性:path: string;|@ohos.request.d.ts|
|新增|NA|类名:FileSpec;<br>方法or属性:mimeType?: string;|@ohos.request.d.ts|
|新增|NA|类名:FileSpec;<br>方法or属性:filename?: string;|@ohos.request.d.ts|
|新增|NA|类名:FileSpec;<br>方法or属性:extras?: object;|@ohos.request.d.ts|
|新增|NA|类名:Config;<br>方法or属性:extras?: object;|@ohos.request.d.ts|
|新增|NA|类名:FormItem;<br>方法or属性:name: string;|@ohos.request.d.ts|
|新增|NA|类名:FormItem;<br>方法or属性:value: string \| FileSpec \| Array\<FileSpec>;|@ohos.request.d.ts|
|新增|NA|类名:Config;<br>方法or属性:action: Action;|@ohos.request.d.ts|
|新增|NA|类名:Config;<br>方法or属性:url: string;|@ohos.request.d.ts|
|新增|NA|类名:Config;<br>方法or属性:title?: string;|@ohos.request.d.ts|
|新增|NA|类名:Config;<br>方法or属性:description?: string;|@ohos.request.d.ts|
|新增|NA|类名:Config;<br>方法or属性:mode?: Mode;|@ohos.request.d.ts|
|新增|NA|类名:Filter;<br>方法or属性:mode?: Mode;|@ohos.request.d.ts|
|新增|NA|类名:Config;<br>方法or属性:overwrite?: boolean;|@ohos.request.d.ts|
|新增|NA|类名:Config;<br>方法or属性:method?: string;|@ohos.request.d.ts|
|新增|NA|类名:Config;<br>方法or属性:headers?: object;|@ohos.request.d.ts|
|新增|NA|类名:Config;<br>方法or属性:data?: string \| Array\<FormItem>;|@ohos.request.d.ts|
|新增|NA|类名:Config;<br>方法or属性:saveas?: string;|@ohos.request.d.ts|
|新增|NA|类名:Config;<br>方法or属性:network?: Network;|@ohos.request.d.ts|
|新增|NA|类名:Config;<br>方法or属性:metered?: boolean;|@ohos.request.d.ts|
|新增|NA|类名:Config;<br>方法or属性:roaming?: boolean;|@ohos.request.d.ts|
|新增|NA|类名:Config;<br>方法or属性:retry?: boolean;|@ohos.request.d.ts|
|新增|NA|类名:Config;<br>方法or属性:redirect?: boolean;|@ohos.request.d.ts|
|新增|NA|类名:Config;<br>方法or属性:index?: number;|@ohos.request.d.ts|
|新增|NA|类名:Config;<br>方法or属性:begins?: number;|@ohos.request.d.ts|
|新增|NA|类名:Config;<br>方法or属性:ends?: number;|@ohos.request.d.ts|
|新增|NA|类名:Config;<br>方法or属性:gauge?: boolean;|@ohos.request.d.ts|
|新增|NA|类名:Config;<br>方法or属性:precise?: boolean;|@ohos.request.d.ts|
|新增|NA|类名:Config;<br>方法or属性:token?: string;|@ohos.request.d.ts|
|新增|NA|类名:State;<br>方法or属性:INITIALIZED = 0x00|@ohos.request.d.ts|
|新增|NA|类名:State;<br>方法or属性:WAITING = 0x10|@ohos.request.d.ts|
|新增|NA|类名:State;<br>方法or属性:RUNNING = 0x20|@ohos.request.d.ts|
|新增|NA|类名:State;<br>方法or属性:RETRYING = 0x21|@ohos.request.d.ts|
|新增|NA|类名:State;<br>方法or属性:PAUSED = 0x30|@ohos.request.d.ts|
|新增|NA|类名:State;<br>方法or属性:STOPPED = 0x31|@ohos.request.d.ts|
|新增|NA|类名:State;<br>方法or属性:COMPLETED = 0x40|@ohos.request.d.ts|
|新增|NA|类名:State;<br>方法or属性:FAILED = 0x41|@ohos.request.d.ts|
|新增|NA|类名:State;<br>方法or属性:REMOVED = 0x50|@ohos.request.d.ts|
|新增|NA|类名:Progress;<br>方法or属性:readonly state: State;|@ohos.request.d.ts|
|新增|NA|类名:Progress;<br>方法or属性:readonly index: number;|@ohos.request.d.ts|
|新增|NA|类名:Progress;<br>方法or属性:readonly processed: number;|@ohos.request.d.ts|
|新增|NA|类名:Progress;<br>方法or属性:readonly sizes: Array\<number>;|@ohos.request.d.ts|
|新增|NA|类名:Progress;<br>方法or属性:readonly extras?: object;|@ohos.request.d.ts|
|新增|NA|类名:TaskInfo;<br>方法or属性:readonly extras?: object;|@ohos.request.d.ts|
|新增|NA|类名:Faults;<br>方法or属性:OTHERS = 0xFF|@ohos.request.d.ts|
|新增|NA|类名:Faults;<br>方法or属性:DISCONNECTED = 0x00|@ohos.request.d.ts|
|新增|NA|类名:Faults;<br>方法or属性:TIMEOUT = 0x10|@ohos.request.d.ts|
|新增|NA|类名:Faults;<br>方法or属性:PROTOCOL = 0x20|@ohos.request.d.ts|
|新增|NA|类名:Faults;<br>方法or属性:FSIO = 0x40|@ohos.request.d.ts|
|新增|NA|类名:Filter;<br>方法or属性:bundle?: string;|@ohos.request.d.ts|
|新增|NA|类名:Filter;<br>方法or属性:before?: number;|@ohos.request.d.ts|
|新增|NA|类名:Filter;<br>方法or属性:after?: number;|@ohos.request.d.ts|
|新增|NA|类名:Filter;<br>方法or属性:state?: State;|@ohos.request.d.ts|
|新增|NA|类名:Filter;<br>方法or属性:action?: Action;|@ohos.request.d.ts|
|新增|NA|类名:TaskInfo;<br>方法or属性:readonly uid?: string;|@ohos.request.d.ts|
|新增|NA|类名:TaskInfo;<br>方法or属性:readonly bundle?: string;|@ohos.request.d.ts|
|新增|NA|类名:TaskInfo;<br>方法or属性:readonly saveas?: string;|@ohos.request.d.ts|
|新增|NA|类名:TaskInfo;<br>方法or属性:readonly url?: string;|@ohos.request.d.ts|
|新增|NA|类名:TaskInfo;<br>方法or属性:readonly data?: string \| Array\<FormItem>;|@ohos.request.d.ts|
|新增|NA|类名:TaskInfo;<br>方法or属性:readonly tid: string;|@ohos.request.d.ts|
|新增|NA|类名:Task;<br>方法or属性:readonly tid: string;|@ohos.request.d.ts|
|新增|NA|类名:TaskInfo;<br>方法or属性:readonly title: string;|@ohos.request.d.ts|
|新增|NA|类名:TaskInfo;<br>方法or属性:readonly description: string;|@ohos.request.d.ts|
|新增|NA|类名:TaskInfo;<br>方法or属性:readonly action: Action;|@ohos.request.d.ts|
|新增|NA|类名:TaskInfo;<br>方法or属性:readonly mode: Mode;|@ohos.request.d.ts|
|新增|NA|类名:TaskInfo;<br>方法or属性:readonly mimeType: string;|@ohos.request.d.ts|
|新增|NA|类名:TaskInfo;<br>方法or属性:readonly progress: Progress;|@ohos.request.d.ts|
|新增|NA|类名:TaskInfo;<br>方法or属性:readonly gauge: boolean;|@ohos.request.d.ts|
|新增|NA|类名:TaskInfo;<br>方法or属性:readonly ctime: number;|@ohos.request.d.ts|
|新增|NA|类名:TaskInfo;<br>方法or属性:readonly mtime: number;|@ohos.request.d.ts|
|新增|NA|类名:TaskInfo;<br>方法or属性:readonly retry: boolean;|@ohos.request.d.ts|
|新增|NA|类名:TaskInfo;<br>方法or属性:readonly tries: number;|@ohos.request.d.ts|
|新增|NA|类名:TaskInfo;<br>方法or属性:readonly faults: Faults;|@ohos.request.d.ts|
|新增|NA|类名:TaskInfo;<br>方法or属性:readonly reason: string;|@ohos.request.d.ts|
|新增|NA|类名:Task;<br>方法or属性:config: Config;|@ohos.request.d.ts|
|新增|NA|类名:Task;<br>方法or属性:on(event: 'progress', callback: (progress: Progress) => void): void;|@ohos.request.d.ts|
|新增|NA|类名:Task;<br>方法or属性:on(event: 'completed', callback: (progress: Progress) => void): void;|@ohos.request.d.ts|
|新增|NA|类名:Task;<br>方法or属性:on(event: 'failed', callback: (progress: Progress) => void): void;|@ohos.request.d.ts|
|新增|NA|类名:Task;<br>方法or属性:off(event: 'progress', callback?: (progress: Progress) => void): void;|@ohos.request.d.ts|
|新增|NA|类名:Task;<br>方法or属性:off(event: 'completed', callback?: (progress: Progress) => void): void;|@ohos.request.d.ts|
|新增|NA|类名:Task;<br>方法or属性:off(event: 'failed', callback?: (progress: Progress) => void): void;|@ohos.request.d.ts|
|新增|NA|类名:Task;<br>方法or属性:start(callback: AsyncCallback\<void>): void;|@ohos.request.d.ts|
|新增|NA|类名:Task;<br>方法or属性:start(): Promise\<void>;|@ohos.request.d.ts|
|新增|NA|类名:Task;<br>方法or属性:pause(callback: AsyncCallback\<void>): void;|@ohos.request.d.ts|
|新增|NA|类名:Task;<br>方法or属性:pause(): Promise\<void>;|@ohos.request.d.ts|
|新增|NA|类名:Task;<br>方法or属性:resume(callback: AsyncCallback\<void>): void;|@ohos.request.d.ts|
|新增|NA|类名:Task;<br>方法or属性:resume(): Promise\<void>;|@ohos.request.d.ts|
|新增|NA|类名:Task;<br>方法or属性:stop(callback: AsyncCallback\<void>): void;|@ohos.request.d.ts|
|新增|NA|类名:Task;<br>方法or属性:stop(): Promise\<void>;|@ohos.request.d.ts|
|权限有变化|类名:request;<br>方法or属性:declare request<br>旧版本信息:ohos.permission.INTERNET|类名:request;<br>方法or属性:declare request<br>新版本信息:|@ohos.request.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|新增|NA|类名:DriverExtensionAbility;<br>方法or属性:context: DriverExtensionContext;|@ohos.app.ability.DriverExtensionAbility.d.ts|
|新增|NA|类名:DriverExtensionAbility;<br>方法or属性:onInit(want: Want): void;|@ohos.app.ability.DriverExtensionAbility.d.ts|
|新增|NA|类名:DriverExtensionAbility;<br>方法or属性:onRelease(): void;|@ohos.app.ability.DriverExtensionAbility.d.ts|
|新增|NA|类名:DriverExtensionAbility;<br>方法or属性:onConnect(want: Want): rpc.RemoteObject \| Promise\<rpc.RemoteObject>;|@ohos.app.ability.DriverExtensionAbility.d.ts|
|新增|NA|类名:DriverExtensionAbility;<br>方法or属性:onDisconnect(want: Want): void \| Promise\<void>;|@ohos.app.ability.DriverExtensionAbility.d.ts|
|新增|NA|类名:DriverExtensionAbility;<br>方法or属性:onDump(params: Array\<string>): Array\<string>;|@ohos.app.ability.DriverExtensionAbility.d.ts|
|新增|NA|类名:deviceManager;<br>方法or属性:function queryDevices(busType?: number): Array\<Readonly\<Device>>;|@ohos.driver.deviceManager.d.ts|
|新增|NA|类名:deviceManager;<br>方法or属性:function bindDevice(deviceId: number, onDisconnect: AsyncCallback\<number>,<br><br> callback: AsyncCallback\<{deviceId: number, remote: rpc.IRemoteObject}>): void;|@ohos.driver.deviceManager.d.ts|
|新增|NA|类名:deviceManager;<br>方法or属性:function bindDevice(deviceId: number, onDisconnect: AsyncCallback\<number>): Promise\<{deviceId: number,<br><br> remote: rpc.IRemoteObject}>;|@ohos.driver.deviceManager.d.ts|
|新增|NA|类名:deviceManager;<br>方法or属性:function unbindDevice(deviceId: number, callback: AsyncCallback\<number>): void;|@ohos.driver.deviceManager.d.ts|
|新增|NA|类名:deviceManager;<br>方法or属性:function unbindDevice(deviceId: number): Promise\<number>;|@ohos.driver.deviceManager.d.ts|
|新增|NA|类名:BusType;<br>方法or属性:USB = 1|@ohos.driver.deviceManager.d.ts|
|新增|NA|类名:Device;<br>方法or属性:busType: BusType;|@ohos.driver.deviceManager.d.ts|
|新增|NA|类名:Device;<br>方法or属性:deviceId: number;|@ohos.driver.deviceManager.d.ts|
|新增|NA|类名:Device;<br>方法or属性:description: string;|@ohos.driver.deviceManager.d.ts|
|新增|NA|类名:USBDevice;<br>方法or属性:vendorId: number;|@ohos.driver.deviceManager.d.ts|
|新增|NA|类名:USBDevice;<br>方法or属性:productId: number;|@ohos.driver.deviceManager.d.ts|
|新增|NA|类名:DriverExtensionContext;<br>方法or属性:updateDriverState(): void;|DriverExtensionContext.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|新增|NA|类名:SyncState;<br>方法or属性:UPLOADING|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:SyncState;<br>方法or属性:UPLOAD_FAILED|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:SyncState;<br>方法or属性:DOWNLOADING|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:SyncState;<br>方法or属性:DOWNLOAD_FAILED|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:SyncState;<br>方法or属性:COMPLETED|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:State;<br>方法or属性:COMPLETED|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:SyncState;<br>方法or属性:STOPPED|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:State;<br>方法or属性:STOPPED|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:ErrorType;<br>方法or属性:NO_ERROR|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:ErrorType;<br>方法or属性:NETWORK_UNAVAILABLE|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:ErrorType;<br>方法or属性:WIFI_UNAVAILABLE|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:ErrorType;<br>方法or属性:BATTERY_LEVEL_LOW|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:ErrorType;<br>方法or属性:BATTERY_LEVEL_WARNING|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:ErrorType;<br>方法or属性:CLOUD_STORAGE_FULL|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:ErrorType;<br>方法or属性:LOCAL_STORAGE_FULL|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:SyncProgress;<br>方法or属性:state: SyncState;|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:SyncProgress;<br>方法or属性:error: ErrorType;|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:GallerySync;<br>方法or属性:constructor();|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:Download;<br>方法or属性:constructor();|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:GallerySync;<br>方法or属性:on(evt: 'progress', callback: (pg: SyncProgress) => void): void;|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:GallerySync;<br>方法or属性:off(evt: 'progress'): void;|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:Download;<br>方法or属性:off(evt: 'progress'): void;|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:GallerySync;<br>方法or属性:start(): Promise\<void>;|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:GallerySync;<br>方法or属性:start(callback: AsyncCallback\<void>): void;|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:GallerySync;<br>方法or属性:stop(): Promise\<void>;|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:GallerySync;<br>方法or属性:stop(callback: AsyncCallback\<void>): void;|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:State;<br>方法or属性:RUNNING|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:State;<br>方法or属性:FAILED|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:DownloadProgress;<br>方法or属性:state: State;|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:DownloadProgress;<br>方法or属性:processed: number;|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:DownloadProgress;<br>方法or属性:size: number;|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:DownloadProgress;<br>方法or属性:uri: string;|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:Download;<br>方法or属性:on(evt: 'progress', callback: (pg: DownloadProgress) => void): void;|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:Download;<br>方法or属性:start(uri: string): Promise\<void>;|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:Download;<br>方法or属性:start(uri: string, callback: AsyncCallback\<void>): void;|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:Download;<br>方法or属性:stop(uri: string): Promise\<void>;|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:Download;<br>方法or属性:stop(uri: string, callback: AsyncCallback\<void>): void;|@ohos.file.cloudSync.d.ts|
|新增|NA|类名:cloudSyncManager;<br>方法or属性:function enableCloud(accountId: string, switches: { [bundleName: string]: boolean }): Promise\<void>;|@ohos.file.cloudSyncManager.d.ts|
|新增|NA|类名:cloudSyncManager;<br>方法or属性:function enableCloud(<br> accountId: string,<br> switches: { [bundleName: string]: boolean },<br> callback: AsyncCallback\<void><br> ): void;|@ohos.file.cloudSyncManager.d.ts|
|新增|NA|类名:cloudSyncManager;<br>方法or属性:function disableCloud(accountId: string): Promise\<void>;|@ohos.file.cloudSyncManager.d.ts|
|新增|NA|类名:cloudSyncManager;<br>方法or属性:function disableCloud(accountId: string, callback: AsyncCallback\<void>): void;|@ohos.file.cloudSyncManager.d.ts|
|新增|NA|类名:cloudSyncManager;<br>方法or属性:function clean(accountId: string, appActions: { [bundleName: string]: Action }): Promise\<void>;|@ohos.file.cloudSyncManager.d.ts|
|新增|NA|类名:cloudSyncManager;<br>方法or属性:function clean(accountId: string, appActions: { [bundleName: string]: Action }, callback: AsyncCallback\<void>): void;|@ohos.file.cloudSyncManager.d.ts|
|新增|NA|类名:Action;<br>方法or属性:RETAIN_DATA|@ohos.file.cloudSyncManager.d.ts|
|新增|NA|类名:Action;<br>方法or属性:CLEAR_DATA|@ohos.file.cloudSyncManager.d.ts|
|新增|NA|类名:sourcefile;<br>方法or属性:declare function createRandomAccessFile(file: string \| File, mode?: number): Promise\<RandomAccessFile>;|@ohos.file.fs.d.ts|
|新增|NA|类名:sourcefile;<br>方法or属性:declare function createRandomAccessFile(file: string \| File, callback: AsyncCallback\<RandomAccessFile>): void;|@ohos.file.fs.d.ts|
|新增|NA|类名:sourcefile;<br>方法or属性:declare function createRandomAccessFile(file: string \| File, mode: number, callback: AsyncCallback\<RandomAccessFile>): void;|@ohos.file.fs.d.ts|
|新增|NA|类名:sourcefile;<br>方法or属性:declare function createRandomAccessFileSync(file: string \| File, mode?: number): RandomAccessFile;|@ohos.file.fs.d.ts|
|新增|NA|类名:RandomAccessFile;<br>方法or属性:readonly fd: number;|@ohos.file.fs.d.ts|
|新增|NA|类名:RandomAccessFile;<br>方法or属性:readonly filePointer: number;|@ohos.file.fs.d.ts|
|新增|NA|类名:RandomAccessFile;<br>方法or属性:setFilePointer(filePointer: number): void;|@ohos.file.fs.d.ts|
|新增|NA|类名:RandomAccessFile;<br>方法or属性:close(): void;|@ohos.file.fs.d.ts|
|新增|NA|类名:RandomAccessFile;<br>方法or属性:write(<br> buffer: ArrayBuffer \| string,<br> options?: {<br> offset?: number;<br> length?: number;<br> encoding?: string;<br> }<br> ): Promise\<number>;|@ohos.file.fs.d.ts|
|新增|NA|类名:RandomAccessFile;<br>方法or属性:write(buffer: ArrayBuffer \| string, callback: AsyncCallback\<number>): void;|@ohos.file.fs.d.ts|
|新增|NA|类名:RandomAccessFile;<br>方法or属性:write(<br> buffer: ArrayBuffer \| string,<br> options: {<br> offset?: number;<br> length?: number;<br> encoding?: string;<br> },<br> callback: AsyncCallback\<number><br> ): void;|@ohos.file.fs.d.ts|
|新增|NA|类名:RandomAccessFile;<br>方法or属性:writeSync(<br> buffer: ArrayBuffer \| string,<br> options?: {<br> offset?: number;<br> length?: number;<br> encoding?: string;<br> }<br> ): number;|@ohos.file.fs.d.ts|
|新增|NA|类名:RandomAccessFile;<br>方法or属性:read(<br> buffer: ArrayBuffer,<br> options?: {<br> offset?: number;<br> length?: number;<br> }<br> ): Promise\<number>;|@ohos.file.fs.d.ts|
|新增|NA|类名:RandomAccessFile;<br>方法or属性:read(buffer: ArrayBuffer, callback: AsyncCallback\<number>): void;|@ohos.file.fs.d.ts|
|新增|NA|类名:RandomAccessFile;<br>方法or属性:read(<br> buffer: ArrayBuffer,<br> options: {<br> offset?: number;<br> length?: number;<br> },<br> callback: AsyncCallback\<number><br> ): void;|@ohos.file.fs.d.ts|
|新增|NA|类名:RandomAccessFile;<br>方法or属性:readSync(<br> buffer: ArrayBuffer,<br> options?: {<br> offset?: number;<br> length?: number;<br> }<br> ): number;|@ohos.file.fs.d.ts|
|新增|NA|类名:photoAccessHelper;<br>方法or属性:function getPhotoAccessHelper(context: Context): PhotoAccessHelper;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:photoAccessHelper;<br>方法or属性:type MemberType = number \| string \| boolean;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoType;<br>方法or属性:IMAGE = 1|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoType;<br>方法or属性:VIDEO|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:AlbumSubtype;<br>方法or属性:VIDEO|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoSubtype;<br>方法or属性:DEFAULT|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoSubtype;<br>方法or属性:SCREENSHOT|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:AlbumSubtype;<br>方法or属性:SCREENSHOT|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PositionType;<br>方法or属性:LOCAL = 1 \<\< 0|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PositionType;<br>方法or属性:CLOUD = 1 \<\< 1|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAsset;<br>方法or属性:readonly uri: string;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAsset;<br>方法or属性:readonly photoType: PhotoType;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAsset;<br>方法or属性:readonly displayName: string;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAsset;<br>方法or属性:get(member: string): MemberType;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAsset;<br>方法or属性:set(member: string, value: string): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAsset;<br>方法or属性:commitModify(callback: AsyncCallback\<void>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:Album;<br>方法or属性:commitModify(callback: AsyncCallback\<void>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAsset;<br>方法or属性:commitModify(): Promise\<void>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:Album;<br>方法or属性:commitModify(): Promise\<void>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAsset;<br>方法or属性:open(mode: string, callback: AsyncCallback\<number>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAsset;<br>方法or属性:open(mode: string): Promise\<number>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAsset;<br>方法or属性:getReadOnlyFd(callback: AsyncCallback\<number>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAsset;<br>方法or属性:getReadOnlyFd(): Promise\<number>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAsset;<br>方法or属性:close(fd: number, callback: AsyncCallback\<void>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAsset;<br>方法or属性:close(fd: number): Promise\<void>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAsset;<br>方法or属性:getThumbnail(callback: AsyncCallback\<image.PixelMap>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAsset;<br>方法or属性:getThumbnail(size: image.Size, callback: AsyncCallback\<image.PixelMap>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAsset;<br>方法or属性:getThumbnail(size?: image.Size): Promise\<image.PixelMap>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAsset;<br>方法or属性:setFavorite(favoriteState: boolean, callback: AsyncCallback\<void>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAsset;<br>方法or属性:setFavorite(favoriteState: boolean): Promise\<void>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAsset;<br>方法or属性:setHidden(hiddenState: boolean, callback: AsyncCallback\<void>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAsset;<br>方法or属性:setHidden(hiddenState: boolean): Promise\<void>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoKeys;<br>方法or属性:URI = 'uri'|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:AlbumKeys;<br>方法or属性:URI = 'uri'|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoKeys;<br>方法or属性:PHOTO_TYPE = 'media_type'|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoKeys;<br>方法or属性:DISPLAY_NAME = 'display_name'|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoKeys;<br>方法or属性:SIZE = 'size'|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoKeys;<br>方法or属性:DATE_ADDED = 'date_added'|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoKeys;<br>方法or属性:DATE_MODIFIED = 'date_modified'|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoKeys;<br>方法or属性:DURATION = 'duration'|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoKeys;<br>方法or属性:WIDTH = 'width'|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoKeys;<br>方法or属性:HEIGHT = 'height'|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoKeys;<br>方法or属性:DATE_TAKEN = 'date_taken'|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoKeys;<br>方法or属性:ORIENTATION = 'orientation'|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoKeys;<br>方法or属性:FAVORITE = 'is_favorite'|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoKeys;<br>方法or属性:TITLE = 'title'|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoKeys;<br>方法or属性:POSITION = 'position'|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoKeys;<br>方法or属性:DATE_TRASHED = 'date_trashed'|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoKeys;<br>方法or属性:HIDDEN = 'hidden'|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:AlbumKeys;<br>方法or属性:ALBUM_NAME = 'album_name'|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:FetchOptions;<br>方法or属性:fetchColumns: Array\<string>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:FetchOptions;<br>方法or属性:predicates: dataSharePredicates.DataSharePredicates;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoCreateOptions;<br>方法or属性:subtype?: PhotoSubtype;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:CreateOptions;<br>方法or属性:title?: string;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:FetchResult;<br>方法or属性:getCount(): number;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:FetchResult;<br>方法or属性:isAfterLast(): boolean;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:FetchResult;<br>方法or属性:getFirstObject(callback: AsyncCallback\<T>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:FetchResult;<br>方法or属性:getFirstObject(): Promise\<T>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:FetchResult;<br>方法or属性:getNextObject(callback: AsyncCallback\<T>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:FetchResult;<br>方法or属性:getNextObject(): Promise\<T>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:FetchResult;<br>方法or属性:getLastObject(callback: AsyncCallback\<T>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:FetchResult;<br>方法or属性:getLastObject(): Promise\<T>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:FetchResult;<br>方法or属性:getObjectByPosition(index: number, callback: AsyncCallback\<T>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:FetchResult;<br>方法or属性:getObjectByPosition(index: number): Promise\<T>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:FetchResult;<br>方法or属性:getAllObjects(callback: AsyncCallback\<Array\<T>>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:FetchResult;<br>方法or属性:getAllObjects(): Promise\<Array\<T>>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:FetchResult;<br>方法or属性:close(): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:AlbumType;<br>方法or属性:USER = 0|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:AlbumType;<br>方法or属性:SYSTEM = 1024|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:AlbumSubtype;<br>方法or属性:USER_GENERIC = 1|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:AlbumSubtype;<br>方法or属性:FAVORITE = 1025|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:AlbumSubtype;<br>方法or属性:HIDDEN|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:AlbumSubtype;<br>方法or属性:TRASH|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:AlbumSubtype;<br>方法or属性:CAMERA|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:AlbumSubtype;<br>方法or属性:ANY = 2147483647|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:AbsAlbum;<br>方法or属性:readonly albumType: AlbumType;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:AbsAlbum;<br>方法or属性:readonly albumSubtype: AlbumSubtype;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:AbsAlbum;<br>方法or属性:albumName: string;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:AbsAlbum;<br>方法or属性:readonly albumUri: string;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:AbsAlbum;<br>方法or属性:readonly count: number;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:AbsAlbum;<br>方法or属性:readonly coverUri: string;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:AbsAlbum;<br>方法or属性:getAssets(options: FetchOptions, callback: AsyncCallback\<FetchResult\<PhotoAsset>>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAccessHelper;<br>方法or属性:getAssets(options: FetchOptions, callback: AsyncCallback\<FetchResult\<PhotoAsset>>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:AbsAlbum;<br>方法or属性:getAssets(options: FetchOptions): Promise\<FetchResult\<PhotoAsset>>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAccessHelper;<br>方法or属性:getAssets(options: FetchOptions): Promise\<FetchResult\<PhotoAsset>>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:Album;<br>方法or属性:addAssets(assets: Array\<PhotoAsset>, callback: AsyncCallback\<void>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:Album;<br>方法or属性:addAssets(assets: Array\<PhotoAsset>): Promise\<void>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:Album;<br>方法or属性:removeAssets(assets: Array\<PhotoAsset>, callback: AsyncCallback\<void>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:Album;<br>方法or属性:removeAssets(assets: Array\<PhotoAsset>): Promise\<void>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:Album;<br>方法or属性:recoverAssets(assets: Array\<PhotoAsset>, callback: AsyncCallback\<void>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:Album;<br>方法or属性:recoverAssets(assets: Array\<PhotoAsset>): Promise\<void>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:Album;<br>方法or属性:deleteAssets(assets: Array\<PhotoAsset>, callback: AsyncCallback\<void>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:Album;<br>方法or属性:deleteAssets(assets: Array\<PhotoAsset>): Promise\<void>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:Album;<br>方法or属性:setCoverUri(uri: string, callback: AsyncCallback\<void>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:Album;<br>方法or属性:setCoverUri(uri: string): Promise\<void>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAccessHelper;<br>方法or属性:createAsset(displayName: string, callback: AsyncCallback\<PhotoAsset>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAccessHelper;<br>方法or属性:createAsset(displayName: string): Promise\<PhotoAsset>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAccessHelper;<br>方法or属性:createAsset(displayName: string, options: PhotoCreateOptions): Promise\<PhotoAsset>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAccessHelper;<br>方法or属性:createAsset(displayName: string, options: PhotoCreateOptions, callback: AsyncCallback\<PhotoAsset>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAccessHelper;<br>方法or属性:createAsset(photoType: PhotoType, extension: string, options: CreateOptions, callback: AsyncCallback\<string>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAccessHelper;<br>方法or属性:createAsset(photoType: PhotoType, extension: string, callback: AsyncCallback\<string>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAccessHelper;<br>方法or属性:createAsset(photoType: PhotoType, extension: string, options?: CreateOptions): Promise\<string>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAccessHelper;<br>方法or属性:createAlbum(name: string, callback: AsyncCallback\<Album>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAccessHelper;<br>方法or属性:createAlbum(name: string): Promise\<Album>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAccessHelper;<br>方法or属性:deleteAlbums(albums: Array\<Album>, callback: AsyncCallback\<void>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAccessHelper;<br>方法or属性:deleteAlbums(albums: Array\<Album>): Promise\<void>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAccessHelper;<br>方法or属性:getAlbums(<br> type: AlbumType,<br> subtype: AlbumSubtype,<br> options: FetchOptions,<br> callback: AsyncCallback\<FetchResult\<Album>><br> ): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAccessHelper;<br>方法or属性:getAlbums(type: AlbumType, subtype: AlbumSubtype, callback: AsyncCallback\<FetchResult\<Album>>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAccessHelper;<br>方法or属性:getAlbums(type: AlbumType, subtype: AlbumSubtype, options?: FetchOptions): Promise\<FetchResult\<Album>>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAccessHelper;<br>方法or属性:deleteAssets(uriList: Array\<string>, callback: AsyncCallback\<void>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAccessHelper;<br>方法or属性:deleteAssets(uriList: Array\<string>): Promise\<void>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAccessHelper;<br>方法or属性:registerChange(uri: string, forChildUris: boolean, callback: Callback\<ChangeData>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAccessHelper;<br>方法or属性:unRegisterChange(uri: string, callback?: Callback\<ChangeData>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAccessHelper;<br>方法or属性:release(callback: AsyncCallback\<void>): void;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:PhotoAccessHelper;<br>方法or属性:release(): Promise\<void>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:NotifyType;<br>方法or属性:NOTIFY_ADD|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:NotifyType;<br>方法or属性:NOTIFY_UPDATE|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:NotifyType;<br>方法or属性:NOTIFY_REMOVE|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:NotifyType;<br>方法or属性:NOTIFY_ALBUM_ADD_ASSET|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:NotifyType;<br>方法or属性:NOTIFY_ALBUM_REMOVE_ASSET|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:DefaultChangeUri;<br>方法or属性:DEFAULT_PHOTO_URI = 'file://media/Photo'|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:DefaultChangeUri;<br>方法or属性:DEFAULT_ALBUM_URI = 'file://media/PhotoAlbum'|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:ChangeData;<br>方法or属性:type: NotifyType;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:ChangeData;<br>方法or属性:uris: Array\<string>;|@ohos.file.photoAccessHelper.d.ts|
|新增|NA|类名:ChangeData;<br>方法or属性:extraUris: Array\<string>;|@ohos.file.photoAccessHelper.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function choose(callback: AsyncCallback\<string>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function choose(callback: AsyncCallback\<string>): void;<br>新版本信息:9<br>代替接口:|@ohos.document.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function choose(types: string[], callback: AsyncCallback\<string>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function choose(types: string[], callback: AsyncCallback\<string>): void;<br>新版本信息:9<br>代替接口:|@ohos.document.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function show(uri: string, type: string, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function show(uri: string, type: string, callback: AsyncCallback\<void>): void;<br>新版本信息:9<br>代替接口:|@ohos.document.d.ts|
|废弃版本有变化|类名:document;<br>方法or属性:declare document<br>旧版本信息:|类名:document;<br>方法or属性:declare document<br>新版本信息:9<br>代替接口:|@ohos.document.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function access(path: string, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function access(path: string, callback: AsyncCallback\<void>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.access|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function access(path: string, mode: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function access(path: string, mode: number, callback: AsyncCallback\<void>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.access|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function close(fd: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function close(fd: number, callback: AsyncCallback\<void>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.close|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function copyFile(src: string \| number, dest: string \| number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function copyFile(src: string \| number, dest: string \| number, callback: AsyncCallback\<void>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.copyFile|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function copyFile(<br> src: string \| number,<br> dest: string \| number,<br> mode: number,<br> callback: AsyncCallback\<void><br>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function copyFile(<br> src: string \| number,<br> dest: string \| number,<br> mode: number,<br> callback: AsyncCallback\<void><br>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.copyFile|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function createStream(path: string, mode: string, callback: AsyncCallback\<Stream>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function createStream(path: string, mode: string, callback: AsyncCallback\<Stream>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.createStream|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function chown(path: string, uid: number, gid: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function chown(path: string, uid: number, gid: number, callback: AsyncCallback\<void>): void;<br>新版本信息:9<br>代替接口:|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function chmod(path: string, mode: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function chmod(path: string, mode: number, callback: AsyncCallback\<void>): void;<br>新版本信息:9<br>代替接口:|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function ftruncate(fd: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function ftruncate(fd: number, callback: AsyncCallback\<void>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.truncate|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function ftruncate(fd: number, len: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function ftruncate(fd: number, len: number, callback: AsyncCallback\<void>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.truncate|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function fsync(fd: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function fsync(fd: number, callback: AsyncCallback\<void>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.fsync|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function fstat(fd: number, callback: AsyncCallback\<Stat>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function fstat(fd: number, callback: AsyncCallback\<Stat>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.stat|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function fdatasync(fd: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function fdatasync(fd: number, callback: AsyncCallback\<void>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.fdatasync|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function fchown(fd: number, uid: number, gid: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function fchown(fd: number, uid: number, gid: number, callback: AsyncCallback\<void>): void;<br>新版本信息:9<br>代替接口:|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function fchmod(fd: number, mode: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function fchmod(fd: number, mode: number, callback: AsyncCallback\<void>): void;<br>新版本信息:9<br>代替接口:|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function fdopenStream(fd: number, mode: string, callback: AsyncCallback\<Stream>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function fdopenStream(fd: number, mode: string, callback: AsyncCallback\<Stream>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.fdopenStream|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function hash(path: string, algorithm: string, callback: AsyncCallback\<string>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function hash(path: string, algorithm: string, callback: AsyncCallback\<string>): void;<br>新版本信息:9<br>代替接口: ohos.file.hash.hash|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function lchown(path: string, uid: number, gid: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function lchown(path: string, uid: number, gid: number, callback: AsyncCallback\<void>): void;<br>新版本信息:9<br>代替接口:|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function lstat(path: string, callback: AsyncCallback\<Stat>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function lstat(path: string, callback: AsyncCallback\<Stat>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.lstat|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function mkdir(path: string, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function mkdir(path: string, callback: AsyncCallback\<void>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.mkdir|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function mkdir(path: string, mode: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function mkdir(path: string, mode: number, callback: AsyncCallback\<void>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.mkdir|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function mkdtemp(prefix: string, callback: AsyncCallback\<string>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function mkdtemp(prefix: string, callback: AsyncCallback\<string>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.mkdtemp|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function open(path: string, callback: AsyncCallback\<number>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function open(path: string, callback: AsyncCallback\<number>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.open|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function open(path: string, flags: number, callback: AsyncCallback\<number>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function open(path: string, flags: number, callback: AsyncCallback\<number>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.open|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function open(path: string, flags: number, mode: number, callback: AsyncCallback\<number>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function open(path: string, flags: number, mode: number, callback: AsyncCallback\<number>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.open|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function opendir(path: string, callback: AsyncCallback\<Dir>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function opendir(path: string, callback: AsyncCallback\<Dir>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.listFile|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function readText(<br> filePath: string,<br> options: {<br> position?: number;<br> length?: number;<br> encoding?: string;<br> },<br> callback: AsyncCallback\<string><br>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function readText(<br> filePath: string,<br> options: {<br> position?: number;<br> length?: number;<br> encoding?: string;<br> },<br> callback: AsyncCallback\<string><br>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.readText|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function read(fd: number, buffer: ArrayBuffer, callback: AsyncCallback\<ReadOut>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function read(fd: number, buffer: ArrayBuffer, callback: AsyncCallback\<ReadOut>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.read|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function read(<br> fd: number,<br> buffer: ArrayBuffer,<br> options: {<br> offset?: number;<br> length?: number;<br> position?: number;<br> },<br> callback: AsyncCallback\<ReadOut><br>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function read(<br> fd: number,<br> buffer: ArrayBuffer,<br> options: {<br> offset?: number;<br> length?: number;<br> position?: number;<br> },<br> callback: AsyncCallback\<ReadOut><br>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.read|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function rename(oldPath: string, newPath: string, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function rename(oldPath: string, newPath: string, callback: AsyncCallback\<void>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.rename|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function rmdir(path: string, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function rmdir(path: string, callback: AsyncCallback\<void>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.rmdir|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function stat(path: string, callback: AsyncCallback\<Stat>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function stat(path: string, callback: AsyncCallback\<Stat>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.stat|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function symlink(target: string, srcPath: string, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function symlink(target: string, srcPath: string, callback: AsyncCallback\<void>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.symlink|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function truncate(path: string, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function truncate(path: string, callback: AsyncCallback\<void>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.truncate|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function truncate(path: string, len: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function truncate(path: string, len: number, callback: AsyncCallback\<void>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.truncate|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function unlink(path: string, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function unlink(path: string, callback: AsyncCallback\<void>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.unlink|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function write(fd: number, buffer: ArrayBuffer \| string, callback: AsyncCallback\<number>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function write(fd: number, buffer: ArrayBuffer \| string, callback: AsyncCallback\<number>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.write|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function write(<br> fd: number,<br> buffer: ArrayBuffer \| string,<br> options: {<br> offset?: number;<br> length?: number;<br> position?: number;<br> encoding?: string;<br> },<br> callback: AsyncCallback\<number><br>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function write(<br> fd: number,<br> buffer: ArrayBuffer \| string,<br> options: {<br> offset?: number;<br> length?: number;<br> position?: number;<br> encoding?: string;<br> },<br> callback: AsyncCallback\<number><br>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.write|@ohos.fileio.d.ts|
|废弃版本有变化|类名:sourcefile;<br>方法or属性:declare function createWatcher(filename: string, events: number, callback: AsyncCallback\<number>): Watcher;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function createWatcher(filename: string, events: number, callback: AsyncCallback\<number>): Watcher;<br>新版本信息:10<br>代替接口: ohos.file.fs.createWatcher|@ohos.fileio.d.ts|
|废弃版本有变化|类名:Dir;<br>方法or属性:declare interface Dir<br>旧版本信息:|类名:Dir;<br>方法or属性:declare interface Dir<br>新版本信息:9<br>代替接口: ohos.file.fs.listFile|@ohos.fileio.d.ts|
|废弃版本有变化|类名:Dir;<br>方法or属性:read(callback: AsyncCallback\<Dirent>): void;<br>旧版本信息:|类名:Dir;<br>方法or属性:read(callback: AsyncCallback\<Dirent>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.listFile|@ohos.fileio.d.ts|
|废弃版本有变化|类名:Dir;<br>方法or属性:close(callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:Dir;<br>方法or属性:close(callback: AsyncCallback\<void>): void;<br>新版本信息:9<br>代替接口: ohos.file.fs.listFile|@ohos.fileio.d.ts|
|废弃版本有变化|类名:Watcher;<br>方法or属性:declare interface Watcher<br>旧版本信息:|类名:Watcher;<br>方法or属性:declare interface Watcher<br>新版本信息:10<br>代替接口: ohos.file.fs.Watcher|@ohos.fileio.d.ts|
|废弃版本有变化|类名:Watcher;<br>方法or属性:stop(): Promise\<void>;<br>旧版本信息:|类名:Watcher;<br>方法or属性:stop(): Promise\<void>;<br>新版本信息:10<br>代替接口: ohos.file.fs.Watcher.stop|@ohos.fileio.d.ts|
|废弃版本有变化|类名:Watcher;<br>方法or属性:stop(callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:Watcher;<br>方法or属性:stop(callback: AsyncCallback\<void>): void;<br>新版本信息:10<br>代替接口: ohos.file.fs.Watcher.stop|@ohos.fileio.d.ts|
|废弃版本有变化|类名:Statfs;<br>方法or属性:declare Statfs<br>旧版本信息:|类名:Statfs;<br>方法or属性:declare Statfs<br>新版本信息:9<br>代替接口: ohos.file.statvfs.statfs|@ohos.statfs.d.ts|
|废弃版本有变化|类名:Statfs;<br>方法or属性:function getFreeBytes(path: string): Promise\<number>;<br>旧版本信息:|类名:Statfs;<br>方法or属性:function getFreeBytes(path: string): Promise\<number>;<br>新版本信息:9<br>代替接口: ohos.file.statvfs.getFreeSize|@ohos.statfs.d.ts|
|废弃版本有变化|类名:Statfs;<br>方法or属性:function getTotalBytes(path: string): Promise\<number>;<br>旧版本信息:|类名:Statfs;<br>方法or属性:function getTotalBytes(path: string): Promise\<number>;<br>新版本信息:9<br>代替接口: ohos.file.statvfs.getTotalSize|@ohos.statfs.d.ts|
|废弃版本有变化|类名:FileResponse;<br>方法or属性:export interface FileResponse<br>旧版本信息:|类名:FileResponse;<br>方法or属性:export interface FileResponse<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileResponse;<br>方法or属性:uri: string;<br>旧版本信息:|类名:FileResponse;<br>方法or属性:uri: string;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileListOption;<br>方法or属性:uri: string;<br>旧版本信息:|类名:FileListOption;<br>方法or属性:uri: string;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileGetOption;<br>方法or属性:uri: string;<br>旧版本信息:|类名:FileGetOption;<br>方法or属性:uri: string;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileDeleteOption;<br>方法or属性:uri: string;<br>旧版本信息:|类名:FileDeleteOption;<br>方法or属性:uri: string;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileWriteTextOption;<br>方法or属性:uri: string;<br>旧版本信息:|类名:FileWriteTextOption;<br>方法or属性:uri: string;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileReadTextOption;<br>方法or属性:uri: string;<br>旧版本信息:|类名:FileReadTextOption;<br>方法or属性:uri: string;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileWriteArrayBufferOption;<br>方法or属性:uri: string;<br>旧版本信息:|类名:FileWriteArrayBufferOption;<br>方法or属性:uri: string;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileReadArrayBufferOption;<br>方法or属性:uri: string;<br>旧版本信息:|类名:FileReadArrayBufferOption;<br>方法or属性:uri: string;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileAccessOption;<br>方法or属性:uri: string;<br>旧版本信息:|类名:FileAccessOption;<br>方法or属性:uri: string;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileMkdirOption;<br>方法or属性:uri: string;<br>旧版本信息:|类名:FileMkdirOption;<br>方法or属性:uri: string;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileRmdirOption;<br>方法or属性:uri: string;<br>旧版本信息:|类名:FileRmdirOption;<br>方法or属性:uri: string;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileResponse;<br>方法or属性:length: number;<br>旧版本信息:|类名:FileResponse;<br>方法or属性:length: number;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileResponse;<br>方法or属性:lastModifiedTime: number;<br>旧版本信息:|类名:FileResponse;<br>方法or属性:lastModifiedTime: number;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileResponse;<br>方法or属性:type: 'dir' \| 'file';<br>旧版本信息:|类名:FileResponse;<br>方法or属性:type: 'dir' \| 'file';<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileResponse;<br>方法or属性:subFiles?: Array\<FileResponse>;<br>旧版本信息:|类名:FileResponse;<br>方法or属性:subFiles?: Array\<FileResponse>;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileMoveOption;<br>方法or属性:export interface FileMoveOption<br>旧版本信息:|类名:FileMoveOption;<br>方法or属性:export interface FileMoveOption<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileMoveOption;<br>方法or属性:srcUri: string;<br>旧版本信息:|类名:FileMoveOption;<br>方法or属性:srcUri: string;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileCopyOption;<br>方法or属性:srcUri: string;<br>旧版本信息:|类名:FileCopyOption;<br>方法or属性:srcUri: string;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileMoveOption;<br>方法or属性:dstUri: string;<br>旧版本信息:|类名:FileMoveOption;<br>方法or属性:dstUri: string;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileCopyOption;<br>方法or属性:dstUri: string;<br>旧版本信息:|类名:FileCopyOption;<br>方法or属性:dstUri: string;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileMoveOption;<br>方法or属性:success?: (uri: string) => void;<br>旧版本信息:|类名:FileMoveOption;<br>方法or属性:success?: (uri: string) => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileCopyOption;<br>方法or属性:success?: (uri: string) => void;<br>旧版本信息:|类名:FileCopyOption;<br>方法or属性:success?: (uri: string) => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileMoveOption;<br>方法or属性:fail?: (data: string, code: number) => void;<br>旧版本信息:|类名:FileMoveOption;<br>方法or属性:fail?: (data: string, code: number) => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileListOption;<br>方法or属性:fail?: (data: string, code: number) => void;<br>旧版本信息:|类名:FileListOption;<br>方法or属性:fail?: (data: string, code: number) => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileCopyOption;<br>方法or属性:fail?: (data: string, code: number) => void;<br>旧版本信息:|类名:FileCopyOption;<br>方法or属性:fail?: (data: string, code: number) => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileGetOption;<br>方法or属性:fail?: (data: string, code: number) => void;<br>旧版本信息:|类名:FileGetOption;<br>方法or属性:fail?: (data: string, code: number) => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileDeleteOption;<br>方法or属性:fail?: (data: string, code: number) => void;<br>旧版本信息:|类名:FileDeleteOption;<br>方法or属性:fail?: (data: string, code: number) => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileWriteTextOption;<br>方法or属性:fail?: (data: string, code: number) => void;<br>旧版本信息:|类名:FileWriteTextOption;<br>方法or属性:fail?: (data: string, code: number) => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileReadTextOption;<br>方法or属性:fail?: (data: string, code: number) => void;<br>旧版本信息:|类名:FileReadTextOption;<br>方法or属性:fail?: (data: string, code: number) => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileWriteArrayBufferOption;<br>方法or属性:fail?: (data: string, code: number) => void;<br>旧版本信息:|类名:FileWriteArrayBufferOption;<br>方法or属性:fail?: (data: string, code: number) => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileReadArrayBufferOption;<br>方法or属性:fail?: (data: string, code: number) => void;<br>旧版本信息:|类名:FileReadArrayBufferOption;<br>方法or属性:fail?: (data: string, code: number) => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileAccessOption;<br>方法or属性:fail?: (data: string, code: number) => void;<br>旧版本信息:|类名:FileAccessOption;<br>方法or属性:fail?: (data: string, code: number) => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileMkdirOption;<br>方法or属性:fail?: (data: string, code: number) => void;<br>旧版本信息:|类名:FileMkdirOption;<br>方法or属性:fail?: (data: string, code: number) => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileRmdirOption;<br>方法or属性:fail?: (data: string, code: number) => void;<br>旧版本信息:|类名:FileRmdirOption;<br>方法or属性:fail?: (data: string, code: number) => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileMoveOption;<br>方法or属性:complete?: () => void;<br>旧版本信息:|类名:FileMoveOption;<br>方法or属性:complete?: () => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileListOption;<br>方法or属性:complete?: () => void;<br>旧版本信息:|类名:FileListOption;<br>方法or属性:complete?: () => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileCopyOption;<br>方法or属性:complete?: () => void;<br>旧版本信息:|类名:FileCopyOption;<br>方法or属性:complete?: () => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileGetOption;<br>方法or属性:complete?: () => void;<br>旧版本信息:|类名:FileGetOption;<br>方法or属性:complete?: () => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileDeleteOption;<br>方法or属性:complete?: () => void;<br>旧版本信息:|类名:FileDeleteOption;<br>方法or属性:complete?: () => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileWriteTextOption;<br>方法or属性:complete?: () => void;<br>旧版本信息:|类名:FileWriteTextOption;<br>方法or属性:complete?: () => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileReadTextOption;<br>方法or属性:complete?: () => void;<br>旧版本信息:|类名:FileReadTextOption;<br>方法or属性:complete?: () => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileWriteArrayBufferOption;<br>方法or属性:complete?: () => void;<br>旧版本信息:|类名:FileWriteArrayBufferOption;<br>方法or属性:complete?: () => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileReadArrayBufferOption;<br>方法or属性:complete?: () => void;<br>旧版本信息:|类名:FileReadArrayBufferOption;<br>方法or属性:complete?: () => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileAccessOption;<br>方法or属性:complete?: () => void;<br>旧版本信息:|类名:FileAccessOption;<br>方法or属性:complete?: () => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileMkdirOption;<br>方法or属性:complete?: () => void;<br>旧版本信息:|类名:FileMkdirOption;<br>方法or属性:complete?: () => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileRmdirOption;<br>方法or属性:complete?: () => void;<br>旧版本信息:|类名:FileRmdirOption;<br>方法or属性:complete?: () => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileListResponse;<br>方法or属性:export interface FileListResponse<br>旧版本信息:|类名:FileListResponse;<br>方法or属性:export interface FileListResponse<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileListResponse;<br>方法or属性:fileList: Array\<FileResponse>;<br>旧版本信息:|类名:FileListResponse;<br>方法or属性:fileList: Array\<FileResponse>;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileListOption;<br>方法or属性:export interface FileListOption<br>旧版本信息:|类名:FileListOption;<br>方法or属性:export interface FileListOption<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileListOption;<br>方法or属性:success?: (data: FileListResponse) => void;<br>旧版本信息:|类名:FileListOption;<br>方法or属性:success?: (data: FileListResponse) => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileCopyOption;<br>方法or属性:export interface FileCopyOption<br>旧版本信息:|类名:FileCopyOption;<br>方法or属性:export interface FileCopyOption<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileGetOption;<br>方法or属性:export interface FileGetOption<br>旧版本信息:|类名:FileGetOption;<br>方法or属性:export interface FileGetOption<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileGetOption;<br>方法or属性:recursive?: boolean;<br>旧版本信息:|类名:FileGetOption;<br>方法or属性:recursive?: boolean;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileMkdirOption;<br>方法or属性:recursive?: boolean;<br>旧版本信息:|类名:FileMkdirOption;<br>方法or属性:recursive?: boolean;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileRmdirOption;<br>方法or属性:recursive?: boolean;<br>旧版本信息:|类名:FileRmdirOption;<br>方法or属性:recursive?: boolean;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileGetOption;<br>方法or属性:success?: (file: FileResponse) => void;<br>旧版本信息:|类名:FileGetOption;<br>方法or属性:success?: (file: FileResponse) => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileDeleteOption;<br>方法or属性:export interface FileDeleteOption<br>旧版本信息:|类名:FileDeleteOption;<br>方法or属性:export interface FileDeleteOption<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileDeleteOption;<br>方法or属性:success?: () => void;<br>旧版本信息:|类名:FileDeleteOption;<br>方法or属性:success?: () => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileWriteTextOption;<br>方法or属性:success?: () => void;<br>旧版本信息:|类名:FileWriteTextOption;<br>方法or属性:success?: () => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileWriteArrayBufferOption;<br>方法or属性:success?: () => void;<br>旧版本信息:|类名:FileWriteArrayBufferOption;<br>方法or属性:success?: () => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileAccessOption;<br>方法or属性:success?: () => void;<br>旧版本信息:|类名:FileAccessOption;<br>方法or属性:success?: () => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileMkdirOption;<br>方法or属性:success?: () => void;<br>旧版本信息:|类名:FileMkdirOption;<br>方法or属性:success?: () => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileRmdirOption;<br>方法or属性:success?: () => void;<br>旧版本信息:|类名:FileRmdirOption;<br>方法or属性:success?: () => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileWriteTextOption;<br>方法or属性:export interface FileWriteTextOption<br>旧版本信息:|类名:FileWriteTextOption;<br>方法or属性:export interface FileWriteTextOption<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileWriteTextOption;<br>方法or属性:text: string;<br>旧版本信息:|类名:FileWriteTextOption;<br>方法or属性:text: string;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileReadTextResponse;<br>方法or属性:text: string;<br>旧版本信息:|类名:FileReadTextResponse;<br>方法or属性:text: string;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileWriteTextOption;<br>方法or属性:encoding?: string;<br>旧版本信息:|类名:FileWriteTextOption;<br>方法or属性:encoding?: string;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileReadTextOption;<br>方法or属性:encoding?: string;<br>旧版本信息:|类名:FileReadTextOption;<br>方法or属性:encoding?: string;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileWriteTextOption;<br>方法or属性:append?: boolean;<br>旧版本信息:|类名:FileWriteTextOption;<br>方法or属性:append?: boolean;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileWriteArrayBufferOption;<br>方法or属性:append?: boolean;<br>旧版本信息:|类名:FileWriteArrayBufferOption;<br>方法or属性:append?: boolean;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileReadTextResponse;<br>方法or属性:export interface FileReadTextResponse<br>旧版本信息:|类名:FileReadTextResponse;<br>方法or属性:export interface FileReadTextResponse<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileReadTextOption;<br>方法or属性:export interface FileReadTextOption<br>旧版本信息:|类名:FileReadTextOption;<br>方法or属性:export interface FileReadTextOption<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileReadTextOption;<br>方法or属性:position?: number;<br>旧版本信息:|类名:FileReadTextOption;<br>方法or属性:position?: number;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileWriteArrayBufferOption;<br>方法or属性:position?: number;<br>旧版本信息:|类名:FileWriteArrayBufferOption;<br>方法or属性:position?: number;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileReadArrayBufferOption;<br>方法or属性:position?: number;<br>旧版本信息:|类名:FileReadArrayBufferOption;<br>方法or属性:position?: number;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileReadTextOption;<br>方法or属性:length?: number;<br>旧版本信息:|类名:FileReadTextOption;<br>方法or属性:length?: number;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileReadArrayBufferOption;<br>方法or属性:length?: number;<br>旧版本信息:|类名:FileReadArrayBufferOption;<br>方法or属性:length?: number;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileReadTextOption;<br>方法or属性:success?: (data: FileReadTextResponse) => void;<br>旧版本信息:|类名:FileReadTextOption;<br>方法or属性:success?: (data: FileReadTextResponse) => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileWriteArrayBufferOption;<br>方法or属性:export interface FileWriteArrayBufferOption<br>旧版本信息:|类名:FileWriteArrayBufferOption;<br>方法or属性:export interface FileWriteArrayBufferOption<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileWriteArrayBufferOption;<br>方法or属性:buffer: Uint8Array;<br>旧版本信息:|类名:FileWriteArrayBufferOption;<br>方法or属性:buffer: Uint8Array;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileReadArrayBufferResponse;<br>方法or属性:buffer: Uint8Array;<br>旧版本信息:|类名:FileReadArrayBufferResponse;<br>方法or属性:buffer: Uint8Array;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileReadArrayBufferResponse;<br>方法or属性:export interface FileReadArrayBufferResponse<br>旧版本信息:|类名:FileReadArrayBufferResponse;<br>方法or属性:export interface FileReadArrayBufferResponse<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileReadArrayBufferOption;<br>方法or属性:export interface FileReadArrayBufferOption<br>旧版本信息:|类名:FileReadArrayBufferOption;<br>方法or属性:export interface FileReadArrayBufferOption<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileReadArrayBufferOption;<br>方法or属性:success?: (data: FileReadArrayBufferResponse) => void;<br>旧版本信息:|类名:FileReadArrayBufferOption;<br>方法or属性:success?: (data: FileReadArrayBufferResponse) => void;<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileAccessOption;<br>方法or属性:export interface FileAccessOption<br>旧版本信息:|类名:FileAccessOption;<br>方法or属性:export interface FileAccessOption<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileMkdirOption;<br>方法or属性:export interface FileMkdirOption<br>旧版本信息:|类名:FileMkdirOption;<br>方法or属性:export interface FileMkdirOption<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:FileRmdirOption;<br>方法or属性:export interface FileRmdirOption<br>旧版本信息:|类名:FileRmdirOption;<br>方法or属性:export interface FileRmdirOption<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:File;<br>方法or属性:export default class File<br>旧版本信息:|类名:File;<br>方法or属性:export default class File<br>新版本信息:10<br>代替接口:|@system.file.d.ts|
|废弃版本有变化|类名:File;<br>方法or属性:static move(options: FileMoveOption): void;<br>旧版本信息:|类名:File;<br>方法or属性:static move(options: FileMoveOption): void;<br>新版本信息:10<br>代替接口: ohos.file.fs.moveFile|@system.file.d.ts|
|废弃版本有变化|类名:File;<br>方法or属性:static copy(options: FileCopyOption): void;<br>旧版本信息:|类名:File;<br>方法or属性:static copy(options: FileCopyOption): void;<br>新版本信息:10<br>代替接口: ohos.file.fs.copyFile|@system.file.d.ts|
|废弃版本有变化|类名:File;<br>方法or属性:static list(options: FileListOption): void;<br>旧版本信息:|类名:File;<br>方法or属性:static list(options: FileListOption): void;<br>新版本信息:10<br>代替接口: ohos.file.fs.listFile|@system.file.d.ts|
|废弃版本有变化|类名:File;<br>方法or属性:static get(options: FileGetOption): void;<br>旧版本信息:|类名:File;<br>方法or属性:static get(options: FileGetOption): void;<br>新版本信息:10<br>代替接口: ohos.file.fs.stat|@system.file.d.ts|
|废弃版本有变化|类名:File;<br>方法or属性:static delete(options: FileDeleteOption): void;<br>旧版本信息:|类名:File;<br>方法or属性:static delete(options: FileDeleteOption): void;<br>新版本信息:10<br>代替接口: ohos.file.fs.unlink|@system.file.d.ts|
|废弃版本有变化|类名:File;<br>方法or属性:static writeText(options: FileWriteTextOption): void;<br>旧版本信息:|类名:File;<br>方法or属性:static writeText(options: FileWriteTextOption): void;<br>新版本信息:10<br>代替接口: ohos.file.fs.write|@system.file.d.ts|
|废弃版本有变化|类名:File;<br>方法or属性:static readText(options: FileReadTextOption): void;<br>旧版本信息:|类名:File;<br>方法or属性:static readText(options: FileReadTextOption): void;<br>新版本信息:10<br>代替接口: ohos.file.fs.readText|@system.file.d.ts|
|废弃版本有变化|类名:File;<br>方法or属性:static writeArrayBuffer(options: FileWriteArrayBufferOption): void;<br>旧版本信息:|类名:File;<br>方法or属性:static writeArrayBuffer(options: FileWriteArrayBufferOption): void;<br>新版本信息:10<br>代替接口: ohos.file.fs.write|@system.file.d.ts|
|废弃版本有变化|类名:File;<br>方法or属性:static readArrayBuffer(options: FileReadArrayBufferOption): void;<br>旧版本信息:|类名:File;<br>方法or属性:static readArrayBuffer(options: FileReadArrayBufferOption): void;<br>新版本信息:10<br>代替接口: ohos.file.fs.read|@system.file.d.ts|
|废弃版本有变化|类名:File;<br>方法or属性:static access(options: FileAccessOption): void;<br>旧版本信息:|类名:File;<br>方法or属性:static access(options: FileAccessOption): void;<br>新版本信息:10<br>代替接口: ohos.file.fs.access|@system.file.d.ts|
|废弃版本有变化|类名:File;<br>方法or属性:static mkdir(options: FileMkdirOption): void;<br>旧版本信息:|类名:File;<br>方法or属性:static mkdir(options: FileMkdirOption): void;<br>新版本信息:10<br>代替接口: ohos.file.fs.mkdir|@system.file.d.ts|
|废弃版本有变化|类名:File;<br>方法or属性:static rmdir(options: FileRmdirOption): void;<br>旧版本信息:|类名:File;<br>方法or属性:static rmdir(options: FileRmdirOption): void;<br>新版本信息:10<br>代替接口: ohos.file.fs.rmdir|@system.file.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function choose(callback: AsyncCallback\<string>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function choose(callback: AsyncCallback\<string>): void;<br>新版本信息:Parameter|@ohos.document.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function choose(types: string[], callback: AsyncCallback\<string>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function choose(types: string[], callback: AsyncCallback\<string>): void;<br>新版本信息:Parameter|@ohos.document.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function show(uri: string, type: string, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function show(uri: string, type: string, callback: AsyncCallback\<void>): void;<br>新版本信息:Parameter|@ohos.document.d.ts|
|新增(错误码)|类名:storageStatistics;<br>方法or属性:function getTotalSizeOfVolume(volumeUuid: string): Promise\<number>;<br>旧版本信息:|类名:storageStatistics;<br>方法or属性:function getTotalSizeOfVolume(volumeUuid: string): Promise\<number>;<br>新版本信息:201,202,401,13600001,13600008,13900032|@ohos.file.storageStatistics.d.ts|
|新增(错误码)|类名:storageStatistics;<br>方法or属性:function getFreeSizeOfVolume(volumeUuid: string): Promise\<number>;<br>旧版本信息:|类名:storageStatistics;<br>方法or属性:function getFreeSizeOfVolume(volumeUuid: string): Promise\<number>;<br>新版本信息:201,202,401,13600001,13600008,13900032|@ohos.file.storageStatistics.d.ts|
|新增(错误码)|类名:storageStatistics;<br>方法or属性:function getBundleStats(packageName: string): Promise\<BundleStats>;<br>旧版本信息:|类名:storageStatistics;<br>方法or属性:function getBundleStats(packageName: string): Promise\<BundleStats>;<br>新版本信息:201,202,401,13600001,13600008,13900032|@ohos.file.storageStatistics.d.ts|
|新增(错误码)|类名:storageStatistics;<br>方法or属性:function getCurrentBundleStats(): Promise\<BundleStats>;<br>旧版本信息:|类名:storageStatistics;<br>方法or属性:function getCurrentBundleStats(): Promise\<BundleStats>;<br>新版本信息:401,13600001,13900032|@ohos.file.storageStatistics.d.ts|
|新增(错误码)|类名:storageStatistics;<br>方法or属性:function getSystemSize(): Promise\<number>;<br>旧版本信息:|类名:storageStatistics;<br>方法or属性:function getSystemSize(): Promise\<number>;<br>新版本信息:201,202,401,13600001,13900032|@ohos.file.storageStatistics.d.ts|
|新增(错误码)|类名:storageStatistics;<br>方法or属性:function getUserStorageStats(callback: AsyncCallback\<StorageStats>): void;<br>旧版本信息:|类名:storageStatistics;<br>方法or属性:function getUserStorageStats(callback: AsyncCallback\<StorageStats>): void;<br>新版本信息:201,202,401,13600001,13900032|@ohos.file.storageStatistics.d.ts|
|新增(错误码)|类名:storageStatistics;<br>方法or属性:function getUserStorageStats(userId: number, callback: AsyncCallback\<StorageStats>): void;<br>旧版本信息:|类名:storageStatistics;<br>方法or属性:function getUserStorageStats(userId: number, callback: AsyncCallback\<StorageStats>): void;<br>新版本信息:201,202,401,13600001,13600009,13900032|@ohos.file.storageStatistics.d.ts|
|新增(错误码)|类名:storageStatistics;<br>方法or属性:function getTotalSize(): Promise\<number>;<br>旧版本信息:|类名:storageStatistics;<br>方法or属性:function getTotalSize(): Promise\<number>;<br>新版本信息:201,202,401,13600001,13900032|@ohos.file.storageStatistics.d.ts|
|新增(错误码)|类名:storageStatistics;<br>方法or属性:function getFreeSize(): Promise\<number>;<br>旧版本信息:|类名:storageStatistics;<br>方法or属性:function getFreeSize(): Promise\<number>;<br>新版本信息:201,202,401,13600001,13900032|@ohos.file.storageStatistics.d.ts|
|新增(错误码)|类名:volumeManager;<br>方法or属性:function getAllVolumes(): Promise\<Array\<Volume>>;<br>旧版本信息:|类名:volumeManager;<br>方法or属性:function getAllVolumes(): Promise\<Array\<Volume>>;<br>新版本信息:201,202,401,13600001,13900032|@ohos.file.volumeManager.d.ts|
|新增(错误码)|类名:volumeManager;<br>方法or属性:function mount(volumeId: string): Promise\<void>;<br>旧版本信息:|类名:volumeManager;<br>方法or属性:function mount(volumeId: string): Promise\<void>;<br>新版本信息:201,202,401,13600001,13600002,13600003,13600005,13600008,13900032|@ohos.file.volumeManager.d.ts|
|新增(错误码)|类名:volumeManager;<br>方法or属性:function unmount(volumeId: string): Promise\<void>;<br>旧版本信息:|类名:volumeManager;<br>方法or属性:function unmount(volumeId: string): Promise\<void>;<br>新版本信息:201,202,401,13600001,13600002,13600004,13600005,13600008,13900032|@ohos.file.volumeManager.d.ts|
|新增(错误码)|类名:volumeManager;<br>方法or属性:function getVolumeByUuid(uuid: string): Promise\<Volume>;<br>旧版本信息:|类名:volumeManager;<br>方法or属性:function getVolumeByUuid(uuid: string): Promise\<Volume>;<br>新版本信息:201,202,401,13600001,13600008,13900032|@ohos.file.volumeManager.d.ts|
|新增(错误码)|类名:volumeManager;<br>方法or属性:function getVolumeById(volumeId: string): Promise\<Volume>;<br>旧版本信息:|类名:volumeManager;<br>方法or属性:function getVolumeById(volumeId: string): Promise\<Volume>;<br>新版本信息:201,202,401,13600001,13600008,13900032|@ohos.file.volumeManager.d.ts|
|新增(错误码)|类名:volumeManager;<br>方法or属性:function setVolumeDescription(uuid: string, description: string): Promise\<void>;<br>旧版本信息:|类名:volumeManager;<br>方法or属性:function setVolumeDescription(uuid: string, description: string): Promise\<void>;<br>新版本信息:201,202,401,13600001,13600002,13600005,13600008,13900032|@ohos.file.volumeManager.d.ts|
|新增(错误码)|类名:volumeManager;<br>方法or属性:function format(volumeId: string, fsType: string): Promise\<void>;<br>旧版本信息:|类名:volumeManager;<br>方法or属性:function format(volumeId: string, fsType: string): Promise\<void>;<br>新版本信息:201,202,401,13600001,13600002,13600005,13600008,13900032|@ohos.file.volumeManager.d.ts|
|新增(错误码)|类名:volumeManager;<br>方法or属性:function partition(diskId: string, type: number): Promise\<void>;<br>旧版本信息:|类名:volumeManager;<br>方法or属性:function partition(diskId: string, type: number): Promise\<void>;<br>新版本信息:201,202,401,13600001,13600008,13900032|@ohos.file.volumeManager.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function access(path: string, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function access(path: string, callback: AsyncCallback\<void>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function access(path: string, mode: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function access(path: string, mode: number, callback: AsyncCallback\<void>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function close(fd: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function close(fd: number, callback: AsyncCallback\<void>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function copyFile(src: string \| number, dest: string \| number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function copyFile(src: string \| number, dest: string \| number, callback: AsyncCallback\<void>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function copyFile(<br> src: string \| number,<br> dest: string \| number,<br> mode: number,<br> callback: AsyncCallback\<void><br>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function copyFile(<br> src: string \| number,<br> dest: string \| number,<br> mode: number,<br> callback: AsyncCallback\<void><br>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function createStream(path: string, mode: string, callback: AsyncCallback\<Stream>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function createStream(path: string, mode: string, callback: AsyncCallback\<Stream>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function chown(path: string, uid: number, gid: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function chown(path: string, uid: number, gid: number, callback: AsyncCallback\<void>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function chmod(path: string, mode: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function chmod(path: string, mode: number, callback: AsyncCallback\<void>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function ftruncate(fd: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function ftruncate(fd: number, callback: AsyncCallback\<void>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function ftruncate(fd: number, len: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function ftruncate(fd: number, len: number, callback: AsyncCallback\<void>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function fsync(fd: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function fsync(fd: number, callback: AsyncCallback\<void>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function fstat(fd: number, callback: AsyncCallback\<Stat>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function fstat(fd: number, callback: AsyncCallback\<Stat>): void;<br>新版本信息:fstat|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function fdatasync(fd: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function fdatasync(fd: number, callback: AsyncCallback\<void>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function fchown(fd: number, uid: number, gid: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function fchown(fd: number, uid: number, gid: number, callback: AsyncCallback\<void>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function fchmod(fd: number, mode: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function fchmod(fd: number, mode: number, callback: AsyncCallback\<void>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function fdopenStream(fd: number, mode: string, callback: AsyncCallback\<Stream>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function fdopenStream(fd: number, mode: string, callback: AsyncCallback\<Stream>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function hash(path: string, algorithm: string, callback: AsyncCallback\<string>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function hash(path: string, algorithm: string, callback: AsyncCallback\<string>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function lchown(path: string, uid: number, gid: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function lchown(path: string, uid: number, gid: number, callback: AsyncCallback\<void>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function lstat(path: string, callback: AsyncCallback\<Stat>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function lstat(path: string, callback: AsyncCallback\<Stat>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function mkdir(path: string, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function mkdir(path: string, callback: AsyncCallback\<void>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function mkdir(path: string, mode: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function mkdir(path: string, mode: number, callback: AsyncCallback\<void>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function mkdtemp(prefix: string, callback: AsyncCallback\<string>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function mkdtemp(prefix: string, callback: AsyncCallback\<string>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function open(path: string, callback: AsyncCallback\<number>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function open(path: string, callback: AsyncCallback\<number>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function open(path: string, flags: number, callback: AsyncCallback\<number>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function open(path: string, flags: number, callback: AsyncCallback\<number>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function open(path: string, flags: number, mode: number, callback: AsyncCallback\<number>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function open(path: string, flags: number, mode: number, callback: AsyncCallback\<number>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function opendir(path: string, callback: AsyncCallback\<Dir>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function opendir(path: string, callback: AsyncCallback\<Dir>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function readText(<br> filePath: string,<br> options: {<br> position?: number;<br> length?: number;<br> encoding?: string;<br> },<br> callback: AsyncCallback\<string><br>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function readText(<br> filePath: string,<br> options: {<br> position?: number;<br> length?: number;<br> encoding?: string;<br> },<br> callback: AsyncCallback\<string><br>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function read(fd: number, buffer: ArrayBuffer, callback: AsyncCallback\<ReadOut>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function read(fd: number, buffer: ArrayBuffer, callback: AsyncCallback\<ReadOut>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function read(<br> fd: number,<br> buffer: ArrayBuffer,<br> options: {<br> offset?: number;<br> length?: number;<br> position?: number;<br> },<br> callback: AsyncCallback\<ReadOut><br>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function read(<br> fd: number,<br> buffer: ArrayBuffer,<br> options: {<br> offset?: number;<br> length?: number;<br> position?: number;<br> },<br> callback: AsyncCallback\<ReadOut><br>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function rename(oldPath: string, newPath: string, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function rename(oldPath: string, newPath: string, callback: AsyncCallback\<void>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function rmdir(path: string, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function rmdir(path: string, callback: AsyncCallback\<void>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function stat(path: string, callback: AsyncCallback\<Stat>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function stat(path: string, callback: AsyncCallback\<Stat>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function symlink(target: string, srcPath: string, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function symlink(target: string, srcPath: string, callback: AsyncCallback\<void>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function truncate(path: string, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function truncate(path: string, callback: AsyncCallback\<void>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function truncate(path: string, len: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function truncate(path: string, len: number, callback: AsyncCallback\<void>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function unlink(path: string, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function unlink(path: string, callback: AsyncCallback\<void>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function write(fd: number, buffer: ArrayBuffer \| string, callback: AsyncCallback\<number>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function write(fd: number, buffer: ArrayBuffer \| string, callback: AsyncCallback\<number>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:sourcefile;<br>方法or属性:declare function write(<br> fd: number,<br> buffer: ArrayBuffer \| string,<br> options: {<br> offset?: number;<br> length?: number;<br> position?: number;<br> encoding?: string;<br> },<br> callback: AsyncCallback\<number><br>): void;<br>旧版本信息:|类名:sourcefile;<br>方法or属性:declare function write(<br> fd: number,<br> buffer: ArrayBuffer \| string,<br> options: {<br> offset?: number;<br> length?: number;<br> position?: number;<br> encoding?: string;<br> },<br> callback: AsyncCallback\<number><br>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:Dir;<br>方法or属性:read(callback: AsyncCallback\<Dirent>): void;<br>旧版本信息:|类名:Dir;<br>方法or属性:read(callback: AsyncCallback\<Dirent>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:Dir;<br>方法or属性:close(callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:Dir;<br>方法or属性:close(callback: AsyncCallback\<void>): void;<br>新版本信息:close|@ohos.fileio.d.ts|
|新增(错误码)|类名:Stream;<br>方法or属性:close(callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:Stream;<br>方法or属性:close(callback: AsyncCallback\<void>): void;<br>新版本信息:close|@ohos.fileio.d.ts|
|新增(错误码)|类名:Stream;<br>方法or属性:flush(callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:Stream;<br>方法or属性:flush(callback: AsyncCallback\<void>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:Stream;<br>方法or属性:write(buffer: ArrayBuffer \| string, callback: AsyncCallback\<number>): void;<br>旧版本信息:|类名:Stream;<br>方法or属性:write(buffer: ArrayBuffer \| string, callback: AsyncCallback\<number>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:Stream;<br>方法or属性:write(<br> buffer: ArrayBuffer \| string,<br> options: {<br> offset?: number;<br> length?: number;<br> position?: number;<br> encoding?: string;<br> },<br> callback: AsyncCallback\<number><br> ): void;<br>旧版本信息:|类名:Stream;<br>方法or属性:write(<br> buffer: ArrayBuffer \| string,<br> options: {<br> offset?: number;<br> length?: number;<br> position?: number;<br> encoding?: string;<br> },<br> callback: AsyncCallback\<number><br> ): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:Stream;<br>方法or属性:read(buffer: ArrayBuffer, callback: AsyncCallback\<ReadOut>): void;<br>旧版本信息:|类名:Stream;<br>方法or属性:read(buffer: ArrayBuffer, callback: AsyncCallback\<ReadOut>): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:Stream;<br>方法or属性:read(<br> buffer: ArrayBuffer,<br> options: {<br> position?: number;<br> offset?: number;<br> length?: number;<br> },<br> callback: AsyncCallback\<ReadOut><br> ): void;<br>旧版本信息:|类名:Stream;<br>方法or属性:read(<br> buffer: ArrayBuffer,<br> options: {<br> position?: number;<br> offset?: number;<br> length?: number;<br> },<br> callback: AsyncCallback\<ReadOut><br> ): void;<br>新版本信息:Parameter|@ohos.fileio.d.ts|
|新增(错误码)|类名:Watcher;<br>方法or属性:stop(callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:Watcher;<br>方法or属性:stop(callback: AsyncCallback\<void>): void;<br>新版本信息:stop|@ohos.fileio.d.ts|
|访问级别有变化|类名:storageStatistics;<br>方法or属性:function getTotalSizeOfVolume(volumeUuid: string): Promise\<number>;<br>旧版本信息:|类名:storageStatistics;<br>方法or属性:function getTotalSizeOfVolume(volumeUuid: string): Promise\<number>;<br>新版本信息:systemapi|@ohos.file.storageStatistics.d.ts|
|访问级别有变化|类名:storageStatistics;<br>方法or属性:function getFreeSizeOfVolume(volumeUuid: string): Promise\<number>;<br>旧版本信息:|类名:storageStatistics;<br>方法or属性:function getFreeSizeOfVolume(volumeUuid: string): Promise\<number>;<br>新版本信息:systemapi|@ohos.file.storageStatistics.d.ts|
|访问级别有变化|类名:storageStatistics;<br>方法or属性:function getBundleStats(packageName: string): Promise\<BundleStats>;<br>旧版本信息:|类名:storageStatistics;<br>方法or属性:function getBundleStats(packageName: string): Promise\<BundleStats>;<br>新版本信息:systemapi|@ohos.file.storageStatistics.d.ts|
|访问级别有变化|类名:storageStatistics;<br>方法or属性:function getSystemSize(): Promise\<number>;<br>旧版本信息:|类名:storageStatistics;<br>方法or属性:function getSystemSize(): Promise\<number>;<br>新版本信息:systemapi|@ohos.file.storageStatistics.d.ts|
|访问级别有变化|类名:storageStatistics;<br>方法or属性:function getUserStorageStats(callback: AsyncCallback\<StorageStats>): void;<br>旧版本信息:|类名:storageStatistics;<br>方法or属性:function getUserStorageStats(callback: AsyncCallback\<StorageStats>): void;<br>新版本信息:systemapi|@ohos.file.storageStatistics.d.ts|
|访问级别有变化|类名:storageStatistics;<br>方法or属性:function getUserStorageStats(userId: number, callback: AsyncCallback\<StorageStats>): void;<br>旧版本信息:|类名:storageStatistics;<br>方法or属性:function getUserStorageStats(userId: number, callback: AsyncCallback\<StorageStats>): void;<br>新版本信息:systemapi|@ohos.file.storageStatistics.d.ts|
|访问级别有变化|类名:storageStatistics;<br>方法or属性:function getTotalSize(): Promise\<number>;<br>旧版本信息:|类名:storageStatistics;<br>方法or属性:function getTotalSize(): Promise\<number>;<br>新版本信息:systemapi|@ohos.file.storageStatistics.d.ts|
|访问级别有变化|类名:storageStatistics;<br>方法or属性:function getFreeSize(): Promise\<number>;<br>旧版本信息:|类名:storageStatistics;<br>方法or属性:function getFreeSize(): Promise\<number>;<br>新版本信息:systemapi|@ohos.file.storageStatistics.d.ts|
|访问级别有变化|类名:volumeManager;<br>方法or属性:function getAllVolumes(): Promise\<Array\<Volume>>;<br>旧版本信息:|类名:volumeManager;<br>方法or属性:function getAllVolumes(): Promise\<Array\<Volume>>;<br>新版本信息:systemapi|@ohos.file.volumeManager.d.ts|
|访问级别有变化|类名:volumeManager;<br>方法or属性:function mount(volumeId: string): Promise\<void>;<br>旧版本信息:|类名:volumeManager;<br>方法or属性:function mount(volumeId: string): Promise\<void>;<br>新版本信息:systemapi|@ohos.file.volumeManager.d.ts|
|访问级别有变化|类名:volumeManager;<br>方法or属性:function unmount(volumeId: string): Promise\<void>;<br>旧版本信息:|类名:volumeManager;<br>方法or属性:function unmount(volumeId: string): Promise\<void>;<br>新版本信息:systemapi|@ohos.file.volumeManager.d.ts|
|访问级别有变化|类名:volumeManager;<br>方法or属性:function getVolumeByUuid(uuid: string): Promise\<Volume>;<br>旧版本信息:|类名:volumeManager;<br>方法or属性:function getVolumeByUuid(uuid: string): Promise\<Volume>;<br>新版本信息:systemapi|@ohos.file.volumeManager.d.ts|
|访问级别有变化|类名:volumeManager;<br>方法or属性:function getVolumeById(volumeId: string): Promise\<Volume>;<br>旧版本信息:|类名:volumeManager;<br>方法or属性:function getVolumeById(volumeId: string): Promise\<Volume>;<br>新版本信息:systemapi|@ohos.file.volumeManager.d.ts|
|访问级别有变化|类名:volumeManager;<br>方法or属性:function setVolumeDescription(uuid: string, description: string): Promise\<void>;<br>旧版本信息:|类名:volumeManager;<br>方法or属性:function setVolumeDescription(uuid: string, description: string): Promise\<void>;<br>新版本信息:systemapi|@ohos.file.volumeManager.d.ts|
|访问级别有变化|类名:volumeManager;<br>方法or属性:function format(volumeId: string, fsType: string): Promise\<void>;<br>旧版本信息:|类名:volumeManager;<br>方法or属性:function format(volumeId: string, fsType: string): Promise\<void>;<br>新版本信息:systemapi|@ohos.file.volumeManager.d.ts|
|访问级别有变化|类名:volumeManager;<br>方法or属性:function partition(diskId: string, type: number): Promise\<void>;<br>旧版本信息:|类名:volumeManager;<br>方法or属性:function partition(diskId: string, type: number): Promise\<void>;<br>新版本信息:systemapi|@ohos.file.volumeManager.d.ts|
|访问级别有变化|类名:Volume;<br>方法or属性:path: string;<br>旧版本信息:|类名:Volume;<br>方法or属性:path: string;<br>新版本信息:systemapi|@ohos.file.volumeManager.d.ts|
|权限有变化|类名:storageStatistics;<br>方法or属性:function getTotalSizeOfVolume(volumeUuid: string): Promise\<number>;<br>旧版本信息:|类名:storageStatistics;<br>方法or属性:function getTotalSizeOfVolume(volumeUuid: string): Promise\<number>;<br>新版本信息:ohos.permission.STORAGE_MANAGER|@ohos.file.storageStatistics.d.ts|
|权限有变化|类名:storageStatistics;<br>方法or属性:function getFreeSizeOfVolume(volumeUuid: string): Promise\<number>;<br>旧版本信息:|类名:storageStatistics;<br>方法or属性:function getFreeSizeOfVolume(volumeUuid: string): Promise\<number>;<br>新版本信息:ohos.permission.STORAGE_MANAGER|@ohos.file.storageStatistics.d.ts|
|权限有变化|类名:storageStatistics;<br>方法or属性:function getBundleStats(packageName: string): Promise\<BundleStats>;<br>旧版本信息:|类名:storageStatistics;<br>方法or属性:function getBundleStats(packageName: string): Promise\<BundleStats>;<br>新版本信息:ohos.permission.STORAGE_MANAGER|@ohos.file.storageStatistics.d.ts|
|权限有变化|类名:storageStatistics;<br>方法or属性:function getSystemSize(): Promise\<number>;<br>旧版本信息:|类名:storageStatistics;<br>方法or属性:function getSystemSize(): Promise\<number>;<br>新版本信息:ohos.permission.STORAGE_MANAGER|@ohos.file.storageStatistics.d.ts|
|权限有变化|类名:storageStatistics;<br>方法or属性:function getUserStorageStats(callback: AsyncCallback\<StorageStats>): void;<br>旧版本信息:|类名:storageStatistics;<br>方法or属性:function getUserStorageStats(callback: AsyncCallback\<StorageStats>): void;<br>新版本信息:ohos.permission.STORAGE_MANAGER|@ohos.file.storageStatistics.d.ts|
|权限有变化|类名:storageStatistics;<br>方法or属性:function getUserStorageStats(userId: number, callback: AsyncCallback\<StorageStats>): void;<br>旧版本信息:|类名:storageStatistics;<br>方法or属性:function getUserStorageStats(userId: number, callback: AsyncCallback\<StorageStats>): void;<br>新版本信息:ohos.permission.STORAGE_MANAGER|@ohos.file.storageStatistics.d.ts|
|权限有变化|类名:storageStatistics;<br>方法or属性:function getTotalSize(): Promise\<number>;<br>旧版本信息:|类名:storageStatistics;<br>方法or属性:function getTotalSize(): Promise\<number>;<br>新版本信息:ohos.permission.STORAGE_MANAGER|@ohos.file.storageStatistics.d.ts|
|权限有变化|类名:storageStatistics;<br>方法or属性:function getFreeSize(): Promise\<number>;<br>旧版本信息:|类名:storageStatistics;<br>方法or属性:function getFreeSize(): Promise\<number>;<br>新版本信息:ohos.permission.STORAGE_MANAGER|@ohos.file.storageStatistics.d.ts|
|权限有变化|类名:volumeManager;<br>方法or属性:function getAllVolumes(): Promise\<Array\<Volume>>;<br>旧版本信息:|类名:volumeManager;<br>方法or属性:function getAllVolumes(): Promise\<Array\<Volume>>;<br>新版本信息:ohos.permission.STORAGE_MANAGER|@ohos.file.volumeManager.d.ts|
|权限有变化|类名:volumeManager;<br>方法or属性:function mount(volumeId: string): Promise\<void>;<br>旧版本信息:|类名:volumeManager;<br>方法or属性:function mount(volumeId: string): Promise\<void>;<br>新版本信息:ohos.permission.MOUNT_UNMOUNT_MANAGER|@ohos.file.volumeManager.d.ts|
|权限有变化|类名:volumeManager;<br>方法or属性:function unmount(volumeId: string): Promise\<void>;<br>旧版本信息:|类名:volumeManager;<br>方法or属性:function unmount(volumeId: string): Promise\<void>;<br>新版本信息:ohos.permission.MOUNT_UNMOUNT_MANAGER|@ohos.file.volumeManager.d.ts|
|权限有变化|类名:volumeManager;<br>方法or属性:function getVolumeByUuid(uuid: string): Promise\<Volume>;<br>旧版本信息:|类名:volumeManager;<br>方法or属性:function getVolumeByUuid(uuid: string): Promise\<Volume>;<br>新版本信息:ohos.permission.STORAGE_MANAGER|@ohos.file.volumeManager.d.ts|
|权限有变化|类名:volumeManager;<br>方法or属性:function getVolumeById(volumeId: string): Promise\<Volume>;<br>旧版本信息:|类名:volumeManager;<br>方法or属性:function getVolumeById(volumeId: string): Promise\<Volume>;<br>新版本信息:ohos.permission.STORAGE_MANAGER|@ohos.file.volumeManager.d.ts|
|权限有变化|类名:volumeManager;<br>方法or属性:function setVolumeDescription(uuid: string, description: string): Promise\<void>;<br>旧版本信息:|类名:volumeManager;<br>方法or属性:function setVolumeDescription(uuid: string, description: string): Promise\<void>;<br>新版本信息:ohos.permission.MOUNT_UNMOUNT_MANAGER|@ohos.file.volumeManager.d.ts|
|权限有变化|类名:volumeManager;<br>方法or属性:function format(volumeId: string, fsType: string): Promise\<void>;<br>旧版本信息:|类名:volumeManager;<br>方法or属性:function format(volumeId: string, fsType: string): Promise\<void>;<br>新版本信息:ohos.permission.MOUNT_FORMAT_MANAGER|@ohos.file.volumeManager.d.ts|
|权限有变化|类名:volumeManager;<br>方法or属性:function partition(diskId: string, type: number): Promise\<void>;<br>旧版本信息:|类名:volumeManager;<br>方法or属性:function partition(diskId: string, type: number): Promise\<void>;<br>新版本信息:ohos.permission.MOUNT_FORMAT_MANAGER|@ohos.file.volumeManager.d.ts|
|权限有变化|类名:fileShare;<br>方法or属性:function grantUriPermission(<br> uri: string,<br> bundleName: string,<br> flag: wantConstant.Flags,<br> callback: AsyncCallback\<void><br> ): void;<br>旧版本信息:|类名:fileShare;<br>方法or属性:function grantUriPermission(<br> uri: string,<br> bundleName: string,<br> flag: wantConstant.Flags,<br> callback: AsyncCallback\<void><br> ): void;<br>新版本信息:ohos.permission.WRITE_MEDIA|@ohos.fileshare.d.ts|
|权限有变化|类名:fileShare;<br>方法or属性:function grantUriPermission(uri: string, bundleName: string, flag: wantConstant.Flags): Promise\<void>;<br>旧版本信息:|类名:fileShare;<br>方法or属性:function grantUriPermission(uri: string, bundleName: string, flag: wantConstant.Flags): Promise\<void>;<br>新版本信息:ohos.permission.WRITE_MEDIA|@ohos.fileshare.d.ts|
|type有变化|类名:PhotoSelectOptions;<br>方法or属性:MIMEType?: PhotoViewMIMETypes;<br>旧版本信息:PhotoViewMIMETypes|类名:PhotoSelectOptions;<br>方法or属性:MIMEType?: PhotoViewMIMETypes;<br>新版本信息:?PhotoViewMIMETypes|@ohos.file.picker.d.ts|
|type有变化|类名:PhotoSelectOptions;<br>方法or属性:maxSelectNumber?: number;<br>旧版本信息:number|类名:PhotoSelectOptions;<br>方法or属性:maxSelectNumber?: number;<br>新版本信息:?number|@ohos.file.picker.d.ts|
|type有变化|类名:PhotoSaveOptions;<br>方法or属性:newFileNames?: Array\<string>;<br>旧版本信息:Array\<string>|类名:PhotoSaveOptions;<br>方法or属性:newFileNames?: Array\<string>;<br>新版本信息:?Array\<string>|@ohos.file.picker.d.ts|
|type有变化|类名:DocumentSaveOptions;<br>方法or属性:newFileNames?: Array\<string>;<br>旧版本信息:Array\<string>|类名:DocumentSaveOptions;<br>方法or属性:newFileNames?: Array\<string>;<br>新版本信息:?Array\<string>|@ohos.file.picker.d.ts|
|type有变化|类名:AudioSaveOptions;<br>方法or属性:newFileNames?: Array\<string>;<br>旧版本信息:Array\<string>|类名:AudioSaveOptions;<br>方法or属性:newFileNames?: Array\<string>;<br>新版本信息:?Array\<string>|@ohos.file.picker.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|新增|NA|类名:geoLocationManager;<br>方法or属性:function on(type: 'locatingRequiredDataChange', config: LocatingRequiredDataConfig, callback: Callback\<Array\<LocatingRequiredData>>): void;|@ohos.geoLocationManager.d.ts|
|新增|NA|类名:geoLocationManager;<br>方法or属性:function off(type: 'locatingRequiredDataChange', callback?: Callback\<Array\<LocatingRequiredData>>): void;|@ohos.geoLocationManager.d.ts|
|新增|NA|类名:geoLocationManager;<br>方法or属性:function getLocatingRequiredData(config: LocatingRequiredDataConfig): Promise\<Array\<LocatingRequiredData>>;|@ohos.geoLocationManager.d.ts|
|新增|NA|类名:LocatingRequiredDataConfig;<br>方法or属性:type: LocatingRequiredDataType;|@ohos.geoLocationManager.d.ts|
|新增|NA|类名:LocatingRequiredDataConfig;<br>方法or属性:needStartScan: boolean;|@ohos.geoLocationManager.d.ts|
|新增|NA|类名:LocatingRequiredDataConfig;<br>方法or属性:scanInterval?: number;|@ohos.geoLocationManager.d.ts|
|新增|NA|类名:LocatingRequiredDataConfig;<br>方法or属性:scanTimeout?: number;|@ohos.geoLocationManager.d.ts|
|新增|NA|类名:LocatingRequiredData;<br>方法or属性:wifiData?: WifiScanInfo;|@ohos.geoLocationManager.d.ts|
|新增|NA|类名:LocatingRequiredData;<br>方法or属性:bluetoothData?: BluetoothScanInfo;|@ohos.geoLocationManager.d.ts|
|新增|NA|类名:WifiScanInfo;<br>方法or属性:ssid: string;|@ohos.geoLocationManager.d.ts|
|新增|NA|类名:WifiScanInfo;<br>方法or属性:bssid: string;|@ohos.geoLocationManager.d.ts|
|新增|NA|类名:WifiScanInfo;<br>方法or属性:rssi: number;|@ohos.geoLocationManager.d.ts|
|新增|NA|类名:BluetoothScanInfo;<br>方法or属性:rssi: number;|@ohos.geoLocationManager.d.ts|
|新增|NA|类名:WifiScanInfo;<br>方法or属性:frequency: number;|@ohos.geoLocationManager.d.ts|
|新增|NA|类名:WifiScanInfo;<br>方法or属性:timestamp: number;|@ohos.geoLocationManager.d.ts|
|新增|NA|类名:BluetoothScanInfo;<br>方法or属性:timestamp: number;|@ohos.geoLocationManager.d.ts|
|新增|NA|类名:BluetoothScanInfo;<br>方法or属性:deviceName: string;|@ohos.geoLocationManager.d.ts|
|新增|NA|类名:BluetoothScanInfo;<br>方法or属性:macAddress: string;|@ohos.geoLocationManager.d.ts|
|新增|NA|类名:LocatingRequiredDataType;<br>方法or属性:WIFI = 1|@ohos.geoLocationManager.d.ts|
|新增|NA|类名:LocatingRequiredDataType;<br>方法or属性:BLUETOOTH|@ohos.geoLocationManager.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|新增|NA|类名:SuggestionType;<br>方法or属性:SUGGESTION_TYPE_NONE = 0|@ohos.i18n.d.ts|
|新增|NA|类名:SuggestionType;<br>方法or属性:SUGGESTION_TYPE_RELATED = 1|@ohos.i18n.d.ts|
|新增|NA|类名:SuggestionType;<br>方法or属性:SUGGESTION_TYPE_SIM = 2|@ohos.i18n.d.ts|
|新增|NA|类名:SortOptions;<br>方法or属性:locale?: string;|@ohos.i18n.d.ts|
|新增|NA|类名:SortOptions;<br>方法or属性:isUseLocalName?: boolean;|@ohos.i18n.d.ts|
|新增|NA|类名:SortOptions;<br>方法or属性:isSuggestedFirst?: boolean;|@ohos.i18n.d.ts|
|新增|NA|类名:LocaleItem;<br>方法or属性:id: string;|@ohos.i18n.d.ts|
|新增|NA|类名:LocaleItem;<br>方法or属性:suggestionType: SuggestionType;|@ohos.i18n.d.ts|
|新增|NA|类名:LocaleItem;<br>方法or属性:displayName: string;|@ohos.i18n.d.ts|
|新增|NA|类名:LocaleItem;<br>方法or属性:localName?: string;|@ohos.i18n.d.ts|
|新增|NA|类名:TimeZoneCityItem;<br>方法or属性:zoneId: string;|@ohos.i18n.d.ts|
|新增|NA|类名:TimeZoneCityItem;<br>方法or属性:cityId: string;|@ohos.i18n.d.ts|
|新增|NA|类名:TimeZoneCityItem;<br>方法or属性:cityDisplayName: string;|@ohos.i18n.d.ts|
|新增|NA|类名:TimeZoneCityItem;<br>方法or属性:offset: number;|@ohos.i18n.d.ts|
|新增|NA|类名:TimeZoneCityItem;<br>方法or属性:zoneDisplayName: string;|@ohos.i18n.d.ts|
|新增|NA|类名:TimeZoneCityItem;<br>方法or属性:rawOffset?: number;|@ohos.i18n.d.ts|
|新增|NA|类名:SystemLocaleManager;<br>方法or属性:constructor();|@ohos.i18n.d.ts|
|新增|NA|类名:SystemLocaleManager;<br>方法or属性:getLanguageInfoArray(languages: Array\<string>, options?: SortOptions): Array\<LocaleItem>;|@ohos.i18n.d.ts|
|新增|NA|类名:SystemLocaleManager;<br>方法or属性:getRegionInfoArray(regions: Array\<string>, options?: SortOptions): Array\<LocaleItem>;|@ohos.i18n.d.ts|
|新增|NA|类名:SystemLocaleManager;<br>方法or属性:static getTimeZoneCityItemArray(): Array\<TimeZoneCityItem>;|@ohos.i18n.d.ts|
|新增|NA|类名:resourceManager;<br>方法or属性:export function getSystemResourceManager(): ResourceManager;|@ohos.resourceManager.d.ts|
|新增|NA|类名:ResourceManager;<br>方法or属性:getColor(resId: number, callback: _AsyncCallback\<number>): void;|@ohos.resourceManager.d.ts|
|新增|NA|类名:ResourceManager;<br>方法or属性:getColor(resId: number): Promise\<number>;|@ohos.resourceManager.d.ts|
|新增|NA|类名:ResourceManager;<br>方法or属性:getColor(resource: Resource, callback: _AsyncCallback\<number>): void;|@ohos.resourceManager.d.ts|
|新增|NA|类名:ResourceManager;<br>方法or属性:getColor(resource: Resource): Promise\<number>;|@ohos.resourceManager.d.ts|
|新增|NA|类名:ResourceManager;<br>方法or属性:getColorByName(resName: string, callback: _AsyncCallback\<number>): void;|@ohos.resourceManager.d.ts|
|新增|NA|类名:ResourceManager;<br>方法or属性:getColorByName(resName: string): Promise\<number>;|@ohos.resourceManager.d.ts|
|新增|NA|类名:ResourceManager;<br>方法or属性:getColorSync(resId: number) : number;|@ohos.resourceManager.d.ts|
|新增|NA|类名:ResourceManager;<br>方法or属性:getColorSync(resource: Resource) : number;|@ohos.resourceManager.d.ts|
|新增|NA|类名:ResourceManager;<br>方法or属性:getColorByNameSync(resName: string) : number;|@ohos.resourceManager.d.ts|
|新增|NA|类名:ResourceManager;<br>方法or属性:addResource(path: string) : void;|@ohos.resourceManager.d.ts|
|新增|NA|类名:ResourceManager;<br>方法or属性:removeResource(path: string) : void;|@ohos.resourceManager.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|删除|类名:InputMethodSetting;<br>方法or属性:on(type: 'imeShow' \| 'imeHide', callback: (info: Array\<InputWindowInfo>) => void): void;|NA|@ohos.inputMethod.d.ts|
|删除|类名:InputMethodSetting;<br>方法or属性:off(type: 'imeShow' \| 'imeHide', callback?: (info: Array\<InputWindowInfo>) => void): void;|NA|@ohos.inputMethod.d.ts|
|删除|类名:InputMethodController;<br>方法or属性:on(type: 'deleteLeft' \| 'deleteRight', callback: (length: number) => void): void;|NA|@ohos.inputMethod.d.ts|
|删除|类名:InputMethodController;<br>方法or属性:on(type: 'sendKeyboardStatus', callback: (keyBoardStatus: KeyboardStatus) => void): void;|NA|@ohos.inputMethod.d.ts|
|删除|类名:InputMethodController;<br>方法or属性:off(type: 'selectByRange'): void;|NA|@ohos.inputMethod.d.ts|
|删除|类名:InputMethodController;<br>方法or属性:off(type: 'selectByMovement'): void;|NA|@ohos.inputMethod.d.ts|
|删除|类名:InputMethodController;<br>方法or属性:off(type: 'insertText'): void;|NA|@ohos.inputMethod.d.ts|
|删除|类名:InputMethodController;<br>方法or属性:off(type: 'deleteLeft' \| 'deleteRight'): void;|NA|@ohos.inputMethod.d.ts|
|删除|类名:InputMethodController;<br>方法or属性:off(type: 'sendKeyboardStatus'): void;|NA|@ohos.inputMethod.d.ts|
|删除|类名:InputMethodController;<br>方法or属性:off(type: 'sendFunctionKey'): void;|NA|@ohos.inputMethod.d.ts|
|删除|类名:InputMethodController;<br>方法or属性:off(type: 'moveCursor'): void;|NA|@ohos.inputMethod.d.ts|
|删除|类名:InputMethodController;<br>方法or属性:off(type: 'handleExtendAction'): void;|NA|@ohos.inputMethod.d.ts|
|新增|NA|类名:InputMethodSetting;<br>方法or属性:on(type: 'imeShow', callback: (info: Array\<InputWindowInfo>) => void): void;|@ohos.inputMethod.d.ts|
|新增|NA|类名:InputMethodSetting;<br>方法or属性:on(type: 'imeHide', callback: (info: Array\<InputWindowInfo>) => void): void;|@ohos.inputMethod.d.ts|
|新增|NA|类名:InputMethodSetting;<br>方法or属性:off(type: 'imeShow', callback?: (info: Array\<InputWindowInfo>) => void): void;|@ohos.inputMethod.d.ts|
|新增|NA|类名:InputMethodSetting;<br>方法or属性:off(type: 'imeHide', callback?: (info: Array\<InputWindowInfo>) => void): void;|@ohos.inputMethod.d.ts|
|新增|NA|类名:InputMethodController;<br>方法or属性:on(type: 'deleteLeft', callback: (length: number) => void): void;|@ohos.inputMethod.d.ts|
|新增|NA|类名:InputMethodController;<br>方法or属性:on(type: 'deleteRight', callback: (length: number) => void): void;|@ohos.inputMethod.d.ts|
|新增|NA|类名:InputMethodController;<br>方法or属性:on(type: 'sendKeyboardStatus', callback: (keyboardStatus: KeyboardStatus) => void): void;|@ohos.inputMethod.d.ts|
|新增|NA|类名:InputMethodController;<br>方法or属性:on(type: 'getLeftTextOfCursor', callback: (length: number) => string): void;|@ohos.inputMethod.d.ts|
|新增|NA|类名:InputMethodController;<br>方法or属性:on(type: 'getRightTextOfCursor', callback: (length: number) => string): void;|@ohos.inputMethod.d.ts|
|新增|NA|类名:InputMethodController;<br>方法or属性:on(type: 'getTextIndexAtCursor', callback: () => number): void;|@ohos.inputMethod.d.ts|
|新增|NA|类名:InputMethodController;<br>方法or属性:off(type: 'selectByRange', callback?: Callback\<Range>): void;|@ohos.inputMethod.d.ts|
|新增|NA|类名:InputMethodController;<br>方法or属性:off(type: 'selectByMovement', callback?: Callback\<Movement>): void;|@ohos.inputMethod.d.ts|
|新增|NA|类名:InputMethodController;<br>方法or属性:off(type: 'insertText', callback?: (text: string) => void): void;|@ohos.inputMethod.d.ts|
|新增|NA|类名:InputMethodController;<br>方法or属性:off(type: 'deleteLeft', callback?: (length: number) => void): void;|@ohos.inputMethod.d.ts|
|新增|NA|类名:InputMethodController;<br>方法or属性:off(type: 'deleteRight', callback?: (length: number) => void): void;|@ohos.inputMethod.d.ts|
|新增|NA|类名:InputMethodController;<br>方法or属性:off(type: 'sendKeyboardStatus', callback?: (keyboardStatus: KeyboardStatus) => void): void;|@ohos.inputMethod.d.ts|
|新增|NA|类名:InputMethodController;<br>方法or属性:off(type: 'sendFunctionKey', callback?: (functionKey: FunctionKey) => void): void;|@ohos.inputMethod.d.ts|
|新增|NA|类名:InputMethodController;<br>方法or属性:off(type: 'moveCursor', callback?: (direction: Direction) => void): void;|@ohos.inputMethod.d.ts|
|新增|NA|类名:InputMethodController;<br>方法or属性:off(type: 'handleExtendAction', callback?: (action: ExtendAction) => void): void;|@ohos.inputMethod.d.ts|
|新增|NA|类名:InputMethodController;<br>方法or属性:off(type: 'getLeftTextOfCursor', callback?: (length: number) => string): void;|@ohos.inputMethod.d.ts|
|新增|NA|类名:InputMethodController;<br>方法or属性:off(type: 'getRightTextOfCursor', callback?: (length: number) => string): void;|@ohos.inputMethod.d.ts|
|新增|NA|类名:InputMethodController;<br>方法or属性:off(type: 'getTextIndexAtCursor', callback?: () => number): void;|@ohos.inputMethod.d.ts|
|新增|NA|类名:TextConfig;<br>方法or属性:cursorInfo?: CursorInfo;|@ohos.inputMethod.d.ts|
|新增|NA|类名:TextConfig;<br>方法or属性:selection?: Range;|@ohos.inputMethod.d.ts|
|新增|NA|类名:TextConfig;<br>方法or属性:windowId?: number;|@ohos.inputMethod.d.ts|
|新增|NA|类名:KeyboardDelegate;<br>方法or属性:on(type: 'keyEvent', callback: (event: InputKeyEvent) => boolean): void;|@ohos.inputMethodEngine.d.ts|
|新增|NA|类名:KeyboardDelegate;<br>方法or属性:on(type: 'editorAttributeChanged', callback: (attr: EditorAttribute) => void): void;|@ohos.inputMethodEngine.d.ts|
|新增|NA|类名:KeyboardDelegate;<br>方法or属性:off(type: 'keyEvent', callback?: (event: InputKeyEvent) => boolean): void;|@ohos.inputMethodEngine.d.ts|
|新增|NA|类名:KeyboardDelegate;<br>方法or属性:off(type: 'editorAttributeChanged', callback?: (attr: EditorAttribute) => void): void;|@ohos.inputMethodEngine.d.ts|
|新增|NA|类名:wallpaper;<br>方法or属性:function setCustomWallpaper(source: string, wallpaperType: WallpaperType, callback: AsyncCallback\<void>): void;|@ohos.wallpaper.d.ts|
|新增|NA|类名:wallpaper;<br>方法or属性:function setCustomWallpaper(source: string, wallpaperType: WallpaperType): Promise\<void>;|@ohos.wallpaper.d.ts|
|新增|NA|类名:WallpaperExtensionAbility;<br>方法or属性:onCreate(want: object): void;|@ohos.WallpaperExtensionAbility.d.ts|
|新增|NA|类名:WallpaperExtensionAbility;<br>方法or属性:onWallpaperChange(wallpaperType: number): void;|@ohos.WallpaperExtensionAbility.d.ts|
|新增|NA|类名:WallpaperExtensionAbility;<br>方法or属性:onDestroy(): void;|@ohos.WallpaperExtensionAbility.d.ts|
|错误码有变化|类名:wallpaper;<br>方法or属性:function off(<br><br> type: 'wallpaperChange',<br><br> callback?: (wallpaperType: WallpaperType, resourceType: WallpaperResourceType, uri?: string) => void<br><br> ): void;<br>旧版本信息:202|类名:wallpaper;<br>方法or属性:function off(<br><br> type: 'wallpaperChange',<br><br> callback?: (wallpaperType: WallpaperType, resourceType: WallpaperResourceType, uri?: string) => void<br><br> ): void;<br>新版本信息:401,202|@ohos.wallpaper.d.ts|
|type有变化|类名:InputMethodProperty;<br>方法or属性:readonly labelId?: number;<br>旧版本信息:|类名:InputMethodProperty;<br>方法or属性:readonly labelId?: number;<br>新版本信息:?number|@ohos.inputMethod.d.ts|
|type有变化|类名:InputMethodProperty;<br>方法or属性:readonly iconId?: number;<br>旧版本信息:|类名:InputMethodProperty;<br>方法or属性:readonly iconId?: number;<br>新版本信息:?number|@ohos.inputMethod.d.ts|
|type有变化|类名:Movement;<br>方法or属性:direction: Direction;<br>旧版本信息:number|类名:Movement;<br>方法or属性:direction: Direction;<br>新版本信息:Direction|@ohos.inputMethod.d.ts|
|type有变化|类名:TextConfig;<br>方法or属性:inputAttribute: InputAttribute;<br>旧版本信息:|类名:TextConfig;<br>方法or属性:inputAttribute: InputAttribute;<br>新版本信息:InputAttribute|@ohos.inputMethod.d.ts|
|type有变化|类名:Movement;<br>方法or属性:direction: Direction;<br>旧版本信息:number|类名:Movement;<br>方法or属性:direction: Direction;<br>新版本信息:Direction|@ohos.inputMethodEngine.d.ts|
|type有变化|类名:InputMethodSubtype;<br>方法or属性:readonly labelId?: number;<br>旧版本信息:|类名:InputMethodSubtype;<br>方法or属性:readonly labelId?: number;<br>新版本信息:?number|@ohos.InputMethodSubtype.d.ts|
|函数有变化|类名:Panel;<br>方法or属性:on(type: 'show' \| 'hide', callback: () => void): void;|类名:Panel;<br>方法or属性:on(type: 'show', callback: () => void): void;|@ohos.inputMethodEngine.d.ts|
|函数有变化|类名:Panel;<br>方法or属性:on(type: 'show' \| 'hide', callback: () => void): void;|类名:Panel;<br>方法or属性:on(type: 'hide', callback: () => void): void;|@ohos.inputMethodEngine.d.ts|
|函数有变化|类名:Panel;<br>方法or属性:off(type: 'show' \| 'hide', callback?: () => void): void;|类名:Panel;<br>方法or属性:off(type: 'show', callback?: () => void): void;|@ohos.inputMethodEngine.d.ts|
|函数有变化|类名:Panel;<br>方法or属性:off(type: 'show' \| 'hide', callback?: () => void): void;|类名:Panel;<br>方法or属性:off(type: 'hide', callback?: () => void): void;|@ohos.inputMethodEngine.d.ts|
|函数有变化|类名:wallpaper;<br>方法or属性:function on(<br><br> type: 'wallpaperChange',<br><br> callback: (wallpaperType: WallpaperType, resourceType: WallpaperResourceType) => void<br><br> ): void;|类名:wallpaper;<br>方法or属性:function on(<br><br> type: 'wallpaperChange',<br><br> callback: (wallpaperType: WallpaperType, resourceType: WallpaperResourceType, uri?: string) => void<br><br> ): void;|@ohos.wallpaper.d.ts|
|函数有变化|类名:wallpaper;<br>方法or属性:function off(<br><br> type: 'wallpaperChange',<br><br> callback?: (wallpaperType: WallpaperType, resourceType: WallpaperResourceType) => void<br><br> ): void;|类名:wallpaper;<br>方法or属性:function off(<br><br> type: 'wallpaperChange',<br><br> callback?: (wallpaperType: WallpaperType, resourceType: WallpaperResourceType, uri?: string) => void<br><br> ): void;|@ohos.wallpaper.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|新增|NA|类名:CooperateMsg;<br>方法or属性:COOPERATE_SESSION_DISCONNECTED = 7|@ohos.cooperate.d.ts|
|新增|NA|类名:dragInteraction;<br>方法or属性:function on(type: 'drag', callback: Callback\<DragState>): void;|@ohos.deviceStatus.dragInteraction.d.ts|
|新增|NA|类名:dragInteraction;<br>方法or属性:function off(type: 'drag', callback?: Callback\<DragState>): void;|@ohos.deviceStatus.dragInteraction.d.ts|
|新增|NA|类名:DragState;<br>方法or属性:MSG_DRAG_STATE_START = 1|@ohos.deviceStatus.dragInteraction.d.ts|
|新增|NA|类名:DragState;<br>方法or属性:MSG_DRAG_STATE_STOP = 2|@ohos.deviceStatus.dragInteraction.d.ts|
|新增|NA|类名:DragState;<br>方法or属性:MSG_DRAG_STATE_CANCEL = 3|@ohos.deviceStatus.dragInteraction.d.ts|
|函数有变化|类名:CooperateMsg;<br>方法or属性:COOPERATE_PREPARE|类名:CooperateMsg;<br>方法or属性:COOPERATE_PREPARE = 0|@ohos.cooperate.d.ts|
|函数有变化|类名:CooperateMsg;<br>方法or属性:COOPERATE_UNPREPARE|类名:CooperateMsg;<br>方法or属性:COOPERATE_UNPREPARE = 1|@ohos.cooperate.d.ts|
|函数有变化|类名:CooperateMsg;<br>方法or属性:COOPERATE_ACTIVATE|类名:CooperateMsg;<br>方法or属性:COOPERATE_ACTIVATE = 2|@ohos.cooperate.d.ts|
|函数有变化|类名:CooperateMsg;<br>方法or属性:COOPERATE_ACTIVATE_SUCCESS|类名:CooperateMsg;<br>方法or属性:COOPERATE_ACTIVATE_SUCCESS = 3|@ohos.cooperate.d.ts|
|函数有变化|类名:CooperateMsg;<br>方法or属性:COOPERATE_ACTIVATE_FAIL|类名:CooperateMsg;<br>方法or属性:COOPERATE_ACTIVATE_FAIL = 4|@ohos.cooperate.d.ts|
|函数有变化|类名:CooperateMsg;<br>方法or属性:COOPERATE_DEACTIVATE_SUCCESS|类名:CooperateMsg;<br>方法or属性:COOPERATE_DEACTIVATE_SUCCESS = 5|@ohos.cooperate.d.ts|
|函数有变化|类名:CooperateMsg;<br>方法or属性:COOPERATE_DEACTIVATE_FAIL|类名:CooperateMsg;<br>方法or属性:COOPERATE_DEACTIVATE_FAIL = 6|@ohos.cooperate.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|新增|NA|类名:Pinch;<br>方法or属性:type: ActionType;|@ohos.multimodalInput.gestureEvent.d.ts|
|新增|NA|类名:ThreeFingersSwipe;<br>方法or属性:type: ActionType;|@ohos.multimodalInput.gestureEvent.d.ts|
|新增|NA|类名:FourFingersSwipe;<br>方法or属性:type: ActionType;|@ohos.multimodalInput.gestureEvent.d.ts|
|新增|NA|类名:Pinch;<br>方法or属性:scale: number;|@ohos.multimodalInput.gestureEvent.d.ts|
|新增|NA|类名:ThreeFingersSwipe;<br>方法or属性:x: number;|@ohos.multimodalInput.gestureEvent.d.ts|
|新增|NA|类名:FourFingersSwipe;<br>方法or属性:x: number;|@ohos.multimodalInput.gestureEvent.d.ts|
|新增|NA|类名:ThreeFingersSwipe;<br>方法or属性:y: number;|@ohos.multimodalInput.gestureEvent.d.ts|
|新增|NA|类名:FourFingersSwipe;<br>方法or属性:y: number;|@ohos.multimodalInput.gestureEvent.d.ts|
|新增|NA|类名:ActionType;<br>方法or属性:CANCEL = 0|@ohos.multimodalInput.gestureEvent.d.ts|
|新增|NA|类名:ActionType;<br>方法or属性:BEGIN = 1|@ohos.multimodalInput.gestureEvent.d.ts|
|新增|NA|类名:ActionType;<br>方法or属性:UPDATE = 2|@ohos.multimodalInput.gestureEvent.d.ts|
|新增|NA|类名:ActionType;<br>方法or属性:END = 3|@ohos.multimodalInput.gestureEvent.d.ts|
|新增|NA|类名:inputDevice;<br>方法or属性:function setKeyboardRepeatDelay(delay: number, callback: AsyncCallback\<void>): void;|@ohos.multimodalInput.inputDevice.d.ts|
|新增|NA|类名:inputDevice;<br>方法or属性:function setKeyboardRepeatDelay(delay: number): Promise\<void>;|@ohos.multimodalInput.inputDevice.d.ts|
|新增|NA|类名:inputDevice;<br>方法or属性:function getKeyboardRepeatDelay(callback: AsyncCallback\<number>): void;|@ohos.multimodalInput.inputDevice.d.ts|
|新增|NA|类名:inputDevice;<br>方法or属性:function getKeyboardRepeatDelay(): Promise\<number>;|@ohos.multimodalInput.inputDevice.d.ts|
|新增|NA|类名:inputDevice;<br>方法or属性:function setKeyboardRepeatRate(rate: number, callback: AsyncCallback\<void>): void;|@ohos.multimodalInput.inputDevice.d.ts|
|新增|NA|类名:inputDevice;<br>方法or属性:function setKeyboardRepeatRate(rate: number): Promise\<void>;|@ohos.multimodalInput.inputDevice.d.ts|
|新增|NA|类名:inputDevice;<br>方法or属性:function getKeyboardRepeatRate(callback: AsyncCallback\<number>): void;|@ohos.multimodalInput.inputDevice.d.ts|
|新增|NA|类名:inputDevice;<br>方法or属性:function getKeyboardRepeatRate(): Promise\<number>;|@ohos.multimodalInput.inputDevice.d.ts|
|新增|NA|类名:inputMonitor;<br>方法or属性:function on(type: 'pinch', receiver: Callback\<Pinch>): void;|@ohos.multimodalInput.inputMonitor.d.ts|
|新增|NA|类名:inputMonitor;<br>方法or属性:function on(type: 'threeFingersSwipe', receiver: Callback\<ThreeFingersSwipe>): void;|@ohos.multimodalInput.inputMonitor.d.ts|
|新增|NA|类名:inputMonitor;<br>方法or属性:function on(type: 'fourFingersSwipe', receiver: Callback\<FourFingersSwipe>): void;|@ohos.multimodalInput.inputMonitor.d.ts|
|新增|NA|类名:inputMonitor;<br>方法or属性:function off(type: 'pinch', receiver?: Callback\<Pinch>): void;|@ohos.multimodalInput.inputMonitor.d.ts|
|新增|NA|类名:inputMonitor;<br>方法or属性:function off(type: 'threeFingersSwipe', receiver?: Callback\<ThreeFingersSwipe>): void;|@ohos.multimodalInput.inputMonitor.d.ts|
|新增|NA|类名:inputMonitor;<br>方法or属性:function off(type: 'fourFingersSwipe', receiver?: Callback\<FourFingersSwipe>): void;|@ohos.multimodalInput.inputMonitor.d.ts|
|新增|NA|类名:IntentionCode;<br>方法or属性:INTENTION_UNKNOWN = -1|@ohos.multimodalInput.intentionCode.d.ts|
|新增|NA|类名:IntentionCode;<br>方法or属性:INTENTION_UP = 1|@ohos.multimodalInput.intentionCode.d.ts|
|新增|NA|类名:IntentionCode;<br>方法or属性:INTENTION_DOWN = 2|@ohos.multimodalInput.intentionCode.d.ts|
|新增|NA|类名:IntentionCode;<br>方法or属性:INTENTION_LEFT = 3|@ohos.multimodalInput.intentionCode.d.ts|
|新增|NA|类名:IntentionCode;<br>方法or属性:INTENTION_RIGHT = 4|@ohos.multimodalInput.intentionCode.d.ts|
|新增|NA|类名:IntentionCode;<br>方法or属性:INTENTION_SELECT = 5|@ohos.multimodalInput.intentionCode.d.ts|
|新增|NA|类名:IntentionCode;<br>方法or属性:INTENTION_ESCAPE = 6|@ohos.multimodalInput.intentionCode.d.ts|
|新增|NA|类名:IntentionCode;<br>方法or属性:INTENTION_BACK = 7|@ohos.multimodalInput.intentionCode.d.ts|
|新增|NA|类名:IntentionCode;<br>方法or属性:INTENTION_FORWARD = 8|@ohos.multimodalInput.intentionCode.d.ts|
|新增|NA|类名:IntentionCode;<br>方法or属性:INTENTION_MENU = 9|@ohos.multimodalInput.intentionCode.d.ts|
|新增|NA|类名:IntentionCode;<br>方法or属性:INTENTION_PAGE_UP = 11|@ohos.multimodalInput.intentionCode.d.ts|
|新增|NA|类名:IntentionCode;<br>方法or属性:INTENTION_PAGE_DOWN = 12|@ohos.multimodalInput.intentionCode.d.ts|
|新增|NA|类名:IntentionCode;<br>方法or属性:INTENTION_ZOOM_OUT = 13|@ohos.multimodalInput.intentionCode.d.ts|
|新增|NA|类名:IntentionCode;<br>方法or属性:INTENTION_ZOOM_IN = 14|@ohos.multimodalInput.intentionCode.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function setTouchpadScrollSwitch(state: boolean, callback: AsyncCallback\<void>): void;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function setTouchpadScrollSwitch(state: boolean): Promise\<void>;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function getTouchpadScrollSwitch(callback: AsyncCallback\<boolean>): void;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function getTouchpadScrollSwitch(): Promise\<boolean>;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function setTouchpadScrollDirection(state: boolean, callback: AsyncCallback\<void>): void;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function setTouchpadScrollDirection(state: boolean): Promise\<void>;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function getTouchpadScrollDirection(callback: AsyncCallback\<boolean>): void;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function getTouchpadScrollDirection(): Promise\<boolean>;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function setTouchpadTapSwitch(state: boolean, callback: AsyncCallback\<void>): void;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function setTouchpadTapSwitch(state: boolean): Promise\<void>;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function getTouchpadTapSwitch(callback: AsyncCallback\<boolean>): void;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function getTouchpadTapSwitch(): Promise\<boolean>;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function setTouchpadPointerSpeed(speed: number, callback: AsyncCallback\<void>): void;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function setTouchpadPointerSpeed(speed: number): Promise\<void>;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function getTouchpadPointerSpeed(callback: AsyncCallback\<number>): void;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function getTouchpadPointerSpeed(): Promise\<number>;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function setTouchpadPinchSwitch(state: boolean, callback: AsyncCallback\<void>): void;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function setTouchpadPinchSwitch(state: boolean): Promise\<void>;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function getTouchpadPinchSwitch(callback: AsyncCallback\<boolean>): void;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function getTouchpadPinchSwitch(): Promise\<boolean>;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function setTouchpadSwipeSwitch(state: boolean, callback: AsyncCallback\<void>): void;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function setTouchpadSwipeSwitch(state: boolean): Promise\<void>;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function getTouchpadSwipeSwitch(callback: AsyncCallback\<boolean>): void;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function getTouchpadSwipeSwitch(): Promise\<boolean>;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function setTouchpadRightClickType(type: RightClickType, callback: AsyncCallback\<void>): void;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function setTouchpadRightClickType(type: RightClickType): Promise\<void>;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function getTouchpadRightClickType(callback: AsyncCallback\<RightClickType>): void;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:pointer;<br>方法or属性:function getTouchpadRightClickType(): Promise\<RightClickType>;|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:PointerStyle;<br>方法or属性:HORIZONTAL_TEXT_CURSOR|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:PointerStyle;<br>方法or属性:CURSOR_CROSS|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:PointerStyle;<br>方法or属性:CURSOR_CIRCLE|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:RightClickType;<br>方法or属性:TOUCHPAD_RIGHT_BUTTON = 1|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:RightClickType;<br>方法or属性:TOUCHPAD_LEFT_BUTTON = 2|@ohos.multimodalInput.pointer.d.ts|
|新增|NA|类名:RightClickType;<br>方法or属性:TOUCHPAD_TWO_FINGER_TAP = 3|@ohos.multimodalInput.pointer.d.ts|
|错误码有变化|类名:pointer;<br>方法or属性:function setMousePrimaryButton(primary: PrimaryButton, callback: AsyncCallback\<void>): void;<br>旧版本信息:401|类名:pointer;<br>方法or属性:function setMousePrimaryButton(primary: PrimaryButton, callback: AsyncCallback\<void>): void;<br>新版本信息:202,401|@ohos.multimodalInput.pointer.d.ts|
|错误码有变化|类名:pointer;<br>方法or属性:function setMousePrimaryButton(primary: PrimaryButton): Promise\<void>;<br>旧版本信息:401|类名:pointer;<br>方法or属性:function setMousePrimaryButton(primary: PrimaryButton): Promise\<void>;<br>新版本信息:202,401|@ohos.multimodalInput.pointer.d.ts|
|错误码有变化|类名:pointer;<br>方法or属性:function getMousePrimaryButton(callback: AsyncCallback\<PrimaryButton>): void;<br>旧版本信息:401|类名:pointer;<br>方法or属性:function getMousePrimaryButton(callback: AsyncCallback\<PrimaryButton>): void;<br>新版本信息:202,401|@ohos.multimodalInput.pointer.d.ts|
|错误码有变化|类名:pointer;<br>方法or属性:function getMousePrimaryButton(): Promise\<PrimaryButton>;<br>旧版本信息:401|类名:pointer;<br>方法or属性:function getMousePrimaryButton(): Promise\<PrimaryButton>;<br>新版本信息:202,401|@ohos.multimodalInput.pointer.d.ts|
|错误码有变化|类名:pointer;<br>方法or属性:function setHoverScrollState(state: boolean, callback: AsyncCallback\<void>): void;<br>旧版本信息:401|类名:pointer;<br>方法or属性:function setHoverScrollState(state: boolean, callback: AsyncCallback\<void>): void;<br>新版本信息:202,401|@ohos.multimodalInput.pointer.d.ts|
|错误码有变化|类名:pointer;<br>方法or属性:function setHoverScrollState(state: boolean): Promise\<void>;<br>旧版本信息:401|类名:pointer;<br>方法or属性:function setHoverScrollState(state: boolean): Promise\<void>;<br>新版本信息:202,401|@ohos.multimodalInput.pointer.d.ts|
|错误码有变化|类名:pointer;<br>方法or属性:function getHoverScrollState(callback: AsyncCallback\<boolean>): void;<br>旧版本信息:401|类名:pointer;<br>方法or属性:function getHoverScrollState(callback: AsyncCallback\<boolean>): void;<br>新版本信息:202,401|@ohos.multimodalInput.pointer.d.ts|
|错误码有变化|类名:pointer;<br>方法or属性:function getHoverScrollState(): Promise\<boolean>;<br>旧版本信息:401|类名:pointer;<br>方法or属性:function getHoverScrollState(): Promise\<boolean>;<br>新版本信息:202,401|@ohos.multimodalInput.pointer.d.ts|
|错误码有变化|类名:pointer;<br>方法or属性:function setMouseScrollRows(rows: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:401|类名:pointer;<br>方法or属性:function setMouseScrollRows(rows: number, callback: AsyncCallback\<void>): void;<br>新版本信息:202,401|@ohos.multimodalInput.pointer.d.ts|
|错误码有变化|类名:pointer;<br>方法or属性:function setMouseScrollRows(rows: number): Promise\<void>;<br>旧版本信息:401|类名:pointer;<br>方法or属性:function setMouseScrollRows(rows: number): Promise\<void>;<br>新版本信息:202,401|@ohos.multimodalInput.pointer.d.ts|
|错误码有变化|类名:pointer;<br>方法or属性:function getMouseScrollRows(callback: AsyncCallback\<number>): void;<br>旧版本信息:401|类名:pointer;<br>方法or属性:function getMouseScrollRows(callback: AsyncCallback\<number>): void;<br>新版本信息:202,401|@ohos.multimodalInput.pointer.d.ts|
|错误码有变化|类名:pointer;<br>方法or属性:function getMouseScrollRows(): Promise\<number>;<br>旧版本信息:401|类名:pointer;<br>方法or属性:function getMouseScrollRows(): Promise\<number>;<br>新版本信息:202,401|@ohos.multimodalInput.pointer.d.ts|
|错误码有变化|类名:shortKey;<br>方法or属性:function setKeyDownDuration(businessKey: string, delay: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:401|类名:shortKey;<br>方法or属性:function setKeyDownDuration(businessKey: string, delay: number, callback: AsyncCallback\<void>): void;<br>新版本信息:202,401|@ohos.multimodalInput.shortKey.d.ts|
|错误码有变化|类名:shortKey;<br>方法or属性:function setKeyDownDuration(businessKey: string, delay: number): Promise\<void>;<br>旧版本信息:401|类名:shortKey;<br>方法or属性:function setKeyDownDuration(businessKey: string, delay: number): Promise\<void>;<br>新版本信息:202,401|@ohos.multimodalInput.shortKey.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|删除|类名:avSession;<br>方法or属性:function on(type: 'sessionCreate' \| 'sessionDestroy' \| 'topSessionChange', callback: (session: AVSessionDescriptor) => void): void;|NA|@ohos.multimedia.avsession.d.ts|
|删除|类名:avSession;<br>方法or属性:function off(type: 'sessionCreate' \| 'sessionDestroy' \| 'topSessionChange', callback?: (session: AVSessionDescriptor) => void): void;|NA|@ohos.multimedia.avsession.d.ts|
|删除|类名:AVSession;<br>方法or属性:on(type: 'play' \| 'pause' \| 'stop' \| 'playNext' \| 'playPrevious' \| 'fastForward' \| 'rewind', callback: () => void): void;|NA|@ohos.multimedia.avsession.d.ts|
|删除|类名:AVSession;<br>方法or属性:on(type: 'outputDeviceChange', callback: (device: OutputDeviceInfo) => void): void;|NA|@ohos.multimedia.avsession.d.ts|
|删除|类名:AVSessionController;<br>方法or属性:on(type: 'outputDeviceChange', callback: (device: OutputDeviceInfo) => void): void;|NA|@ohos.multimedia.avsession.d.ts|
|删除|类名:AVSession;<br>方法or属性:off(type: 'play' \| 'pause' \| 'stop' \| 'playNext' \| 'playPrevious' \| 'fastForward' \| 'rewind', callback?: () => void): void;|NA|@ohos.multimedia.avsession.d.ts|
|删除|类名:AVSession;<br>方法or属性:off(type: 'outputDeviceChange', callback?: (device: OutputDeviceInfo) => void): void;|NA|@ohos.multimedia.avsession.d.ts|
|删除|类名:AVSessionController;<br>方法or属性:off(type: 'outputDeviceChange', callback?: (device: OutputDeviceInfo) => void): void;|NA|@ohos.multimedia.avsession.d.ts|
|删除|类名:OutputDeviceInfo;<br>方法or属性:isRemote: boolean;|NA|@ohos.multimedia.avsession.d.ts|
|删除|类名:OutputDeviceInfo;<br>方法or属性:audioDeviceId: Array\<number>;|NA|@ohos.multimedia.avsession.d.ts|
|删除|类名:OutputDeviceInfo;<br>方法or属性:deviceName: Array\<string>;|NA|@ohos.multimedia.avsession.d.ts|
|删除|类名:ImageSource;<br>方法or属性:getDelayTime(): Promise\<Array\<number>>;|NA|@ohos.multimedia.image.d.ts|
|删除|类名:ImageSource;<br>方法or属性:getDelayTime(callback: AsyncCallback\<Array\<number>>): void;|NA|@ohos.multimedia.image.d.ts|
|新增|NA|类名:effectKit;<br>方法or属性:function createColorPicker(source:image.PixelMap,region:Array\<number>):Promise\<ColorPicker>;|@ohos.effectKit.d.ts|
|新增|NA|类名:effectKit;<br>方法or属性:function createColorPicker(source:image.PixelMap,region:Array\<number>,callback:AsyncCallback\<ColorPicker>):void;|@ohos.effectKit.d.ts|
|新增|NA|类名:AVMediaDescription;<br>方法or属性:artist?: string;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVMediaDescription;<br>方法or属性:duration?: number;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastController;<br>方法or属性:getAVPlaybackState(callback: AsyncCallback\<AVPlaybackState>): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastController;<br>方法or属性:getAVPlaybackState(): Promise\<AVPlaybackState>;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:audio;<br>方法or属性:type AudioEffectInfoArray = Array\<Readonly\<AudioEffectMode>>;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:StreamUsage;<br>方法or属性:STREAM_USAGE_MUSIC = 1|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:StreamUsage;<br>方法or属性:STREAM_USAGE_VOICE_MESSAGE = 5|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:StreamUsage;<br>方法or属性:STREAM_USAGE_RINGTONE = 6|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:StreamUsage;<br>方法or属性:STREAM_USAGE_NOTIFICATION = 7|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:StreamUsage;<br>方法or属性:STREAM_USAGE_MOVIE = 10|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:StreamUsage;<br>方法or属性:STREAM_USAGE_GAME = 11|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:StreamUsage;<br>方法or属性:STREAM_USAGE_AUDIOBOOK = 12|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:StreamUsage;<br>方法or属性:STREAM_USAGE_NAVIGATION = 13|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:StreamUsage;<br>方法or属性:STREAM_USAGE_DTMF = 14|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:StreamUsage;<br>方法or属性:STREAM_USAGE_ENFORCED_TONE = 15|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:StreamUsage;<br>方法or属性:STREAM_USAGE_ULTRASONIC = 16|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioRendererOptions;<br>方法or属性:privacyType?: AudioPrivacyType;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioPrivacyType;<br>方法or属性:PRIVACY_TYPE_PUBLIC = 0|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioPrivacyType;<br>方法or属性:PRIVACY_TYPE_PRIVATE = 1|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:VolumeAdjustType;<br>方法or属性:VOLUME_UP = 0|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:VolumeAdjustType;<br>方法or属性:VOLUME_DOWN = 1|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioStreamManager;<br>方法or属性:getAudioEffectInfoArray(usage: StreamUsage, callback: AsyncCallback\<AudioEffectInfoArray>): void;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioStreamManager;<br>方法or属性:getAudioEffectInfoArray(usage: StreamUsage): Promise\<AudioEffectInfoArray>;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioVolumeGroupManager;<br>方法or属性:isVolumeUnadjustable(): boolean;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioVolumeGroupManager;<br>方法or属性:adjustVolumeByStep(adjustType: VolumeAdjustType, callback: AsyncCallback\<void>): void;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioVolumeGroupManager;<br>方法or属性:adjustVolumeByStep(adjustType: VolumeAdjustType): Promise\<void>;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioVolumeGroupManager;<br>方法or属性:adjustSystemVolumeByStep(volumeType: AudioVolumeType, adjustType: VolumeAdjustType, callback: AsyncCallback\<void>): void;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioVolumeGroupManager;<br>方法or属性:adjustSystemVolumeByStep(volumeType: AudioVolumeType, adjustType: VolumeAdjustType): Promise\<void>;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioVolumeGroupManager;<br>方法or属性:getSystemVolumeInDb(volumeType: AudioVolumeType, volumeLevel: number, device: DeviceType, callback: AsyncCallback\<number>): void;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioVolumeGroupManager;<br>方法or属性:getSystemVolumeInDb(volumeType: AudioVolumeType, volumeLevel: number, device: DeviceType): Promise\<number>;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioRenderer;<br>方法or属性:getAudioEffectMode(callback: AsyncCallback\<AudioEffectMode>): void;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioRenderer;<br>方法or属性:getAudioEffectMode(): Promise\<AudioEffectMode>;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioRenderer;<br>方法or属性:setAudioEffectMode(mode: AudioEffectMode, callback: AsyncCallback\<void>): void;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioRenderer;<br>方法or属性:setAudioEffectMode(mode: AudioEffectMode): Promise\<void>;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioRenderer;<br>方法or属性:getMinStreamVolume(callback: AsyncCallback\<number>): void;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioRenderer;<br>方法or属性:getMinStreamVolume(): Promise\<number>;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioRenderer;<br>方法or属性:getMaxStreamVolume(callback: AsyncCallback\<number>): void;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioRenderer;<br>方法or属性:getMaxStreamVolume(): Promise\<number>;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioRenderer;<br>方法or属性:getUnderflowCount(callback: AsyncCallback\<number>): void;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioRenderer;<br>方法or属性:getUnderflowCount(): Promise\<number>;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioRenderer;<br>方法or属性:getCurrentOutputDevices(callback: AsyncCallback\<AudioDeviceDescriptors>): void;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioRenderer;<br>方法or属性:getCurrentOutputDevices(): Promise\<AudioDeviceDescriptors>;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioRenderer;<br>方法or属性:on(type: 'outputDeviceChange', callback: Callback\<AudioDeviceDescriptors>): void;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioRenderer;<br>方法or属性:off(type: 'outputDeviceChange', callback?: Callback\<AudioDeviceDescriptors>): void;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:SourceType;<br>方法or属性:SOURCE_TYPE_PLAYBACK_CAPTURE = 2|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioCapturerOptions;<br>方法or属性:playbackCaptureConfig?: AudioPlaybackCaptureConfig;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:CaptureFilterOptions;<br>方法or属性:usages: Array\<StreamUsage>;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioPlaybackCaptureConfig;<br>方法or属性:filterOptions: CaptureFilterOptions;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioCapturer;<br>方法or属性:off(type: 'audioInterrupt'): void;|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioEffectMode;<br>方法or属性:EFFECT_NONE = 0|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:AudioEffectMode;<br>方法or属性:EFFECT_DEFAULT = 1|@ohos.multimedia.audio.d.ts|
|新增|NA|类名:avSession;<br>方法or属性:function on(type: 'sessionCreate', callback: (session: AVSessionDescriptor) => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:avSession;<br>方法or属性:function on(type: 'sessionDestroy', callback: (session: AVSessionDescriptor) => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:avSession;<br>方法or属性:function on(type: 'topSessionChange', callback: (session: AVSessionDescriptor) => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:avSession;<br>方法or属性:function on(type: 'deviceAvailable', callback: (device: OutputDeviceInfo) => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:avSession;<br>方法or属性:function off(type: 'sessionCreate', callback?: (session: AVSessionDescriptor) => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:avSession;<br>方法or属性:function off(type: 'sessionDestroy', callback?: (session: AVSessionDescriptor) => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:avSession;<br>方法or属性:function off(type: 'topSessionChange', callback?: (session: AVSessionDescriptor) => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:avSession;<br>方法or属性:function off(type: 'deviceAvailable', callback?: (device: OutputDeviceInfo) => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:avSession;<br>方法or属性:function startCastDeviceDiscovery(callback: AsyncCallback\<void>): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:avSession;<br>方法or属性:function startCastDeviceDiscovery(filter: number, callback: AsyncCallback\<void>): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:avSession;<br>方法or属性:function startCastDeviceDiscovery(filter?: number): Promise\<void>;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:avSession;<br>方法or属性:function stopCastDeviceDiscovery(callback: AsyncCallback\<void>): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:avSession;<br>方法or属性:function stopCastDeviceDiscovery(): Promise\<void>;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:avSession;<br>方法or属性:function setDiscoverable(enable: boolean, callback: AsyncCallback\<void>): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:avSession;<br>方法or属性:function setDiscoverable(enable: boolean): Promise\<void>;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:avSession;<br>方法or属性:function getAVCastController(sessionId: string, callback: AsyncCallback\<AVCastController>): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:avSession;<br>方法or属性:function getAVCastController(sessionId: string): Promise\<AVCastController>;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:avSession;<br>方法or属性:function startCasting(session: SessionToken, device: OutputDeviceInfo, callback: AsyncCallback\<void>): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:avSession;<br>方法or属性:function startCasting(session: SessionToken, device: OutputDeviceInfo): Promise\<void>;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:avSession;<br>方法or属性:function stopCasting(session: SessionToken, callback: AsyncCallback\<void>): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:avSession;<br>方法or属性:function stopCasting(session: SessionToken): Promise\<void>;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:avSession;<br>方法or属性:type AVCastControlCommandType = 'play' \| 'pause' \| 'stop' \| 'playNext' \| 'playPrevious' \| 'fastForward' \| 'rewind' \|<br> 'seek' \| 'setVolume' \| 'setSpeed' \| 'setLoopMode' \| 'toggleFavorite';|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:ProtocolType;<br>方法or属性:TYPE_LOCAL = 0|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:ProtocolType;<br>方法or属性:TYPE_CAST_PLUS_MIRROR = 1|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:ProtocolType;<br>方法or属性:TYPE_CAST_PLUS_STREAM = 2|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVSession;<br>方法or属性:readonly sessionType: AVSessionType;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVSession;<br>方法or属性:getAVCastController(callback: AsyncCallback\<AVCastController>): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVSession;<br>方法or属性:getAVCastController(): Promise\<AVCastController>;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVSession;<br>方法or属性:on(type: 'play', callback: () => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVSession;<br>方法or属性:on(type: 'pause', callback: () => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVSession;<br>方法or属性:on(type: 'stop', callback: () => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVSession;<br>方法or属性:on(type: 'playNext', callback: () => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVSession;<br>方法or属性:on(type: 'playPrevious', callback: () => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVSession;<br>方法or属性:on(type: 'fastForward', callback: () => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVSession;<br>方法or属性:on(type: 'rewind', callback: () => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVSession;<br>方法or属性:on(type: 'outputDeviceChange', callback: (state: ConnectionState, device: OutputDeviceInfo) => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVSessionController;<br>方法or属性:on(type: 'outputDeviceChange', callback: (state: ConnectionState, device: OutputDeviceInfo) => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVSession;<br>方法or属性:off(type: 'play', callback?: () => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVSession;<br>方法or属性:off(type: 'pause', callback?: () => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVSession;<br>方法or属性:off(type: 'stop', callback?: () => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVSession;<br>方法or属性:off(type: 'playNext', callback?: () => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVSession;<br>方法or属性:off(type: 'playPrevious', callback?: () => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVSession;<br>方法or属性:off(type: 'fastForward', callback?: () => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVSession;<br>方法or属性:off(type: 'rewind', callback?: () => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVSession;<br>方法or属性:off(type: 'outputDeviceChange', callback?: (state: ConnectionState, device: OutputDeviceInfo) => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVSessionController;<br>方法or属性:off(type: 'outputDeviceChange', callback?: (state: ConnectionState, device: OutputDeviceInfo) => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVSession;<br>方法or属性:stopCasting(callback: AsyncCallback\<void>): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVSession;<br>方法or属性:stopCasting(): Promise\<void>;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastControlCommand;<br>方法or属性:command: AVCastControlCommandType;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastControlCommand;<br>方法or属性:parameter?: media.PlaybackSpeed \| number;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastController;<br>方法or属性:setDisplaySurface(surfaceId: string, callback: AsyncCallback\<void>): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastController;<br>方法or属性:setDisplaySurface(surfaceId: string): Promise\<void>;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastController;<br>方法or属性:sendControlCommand(command: AVCastControlCommand, callback: AsyncCallback\<void>): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastController;<br>方法or属性:sendControlCommand(command: AVCastControlCommand): Promise\<void>;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastController;<br>方法or属性:start(item: AVQueueItem, callback: AsyncCallback\<void>): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastController;<br>方法or属性:start(item: AVQueueItem): Promise\<void>;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastController;<br>方法or属性:prepare(item: AVQueueItem, callback: AsyncCallback\<void>): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastController;<br>方法or属性:prepare(item: AVQueueItem): Promise\<void>;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastController;<br>方法or属性:getCurrentItem(callback: AsyncCallback\<AVQueueItem>): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastController;<br>方法or属性:getCurrentItem(): Promise\<AVQueueItem>;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastController;<br>方法or属性:on(type: 'playbackStateChange', filter: Array\<keyof AVPlaybackState> \| 'all', callback: (state: AVPlaybackState) => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastController;<br>方法or属性:on(type: 'mediaItemChange', callback: Callback\<AVQueueItem>): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastController;<br>方法or属性:on(type: 'playNext', callback: Callback\<void>): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastController;<br>方法or属性:on(type: 'playPrevious', callback: Callback\<void>): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastController;<br>方法or属性:on(type: 'seekDone', callback: Callback\<number>): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastController;<br>方法or属性:on(type: 'videoSizeChange', callback: (width: number, height: number) => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastController;<br>方法or属性:on(type: 'error', callback: ErrorCallback): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastController;<br>方法or属性:off(type: 'playbackStateChange', callback?: (state: AVPlaybackState) => void): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastController;<br>方法or属性:off(type: 'mediaItemChange'): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastController;<br>方法or属性:off(type: 'playNext'): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastController;<br>方法or属性:off(type: 'playPrevious'): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastController;<br>方法or属性:off(type: 'seekDone'): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastController;<br>方法or属性:off(type: 'videoSizeChange'): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastController;<br>方法or属性:off(type: 'error'): void;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:ConnectionState;<br>方法or属性:STATE_CONNECTING = 0|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:ConnectionState;<br>方法or属性:STATE_CONNECTED = 1|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:ConnectionState;<br>方法or属性:STATE_DISCONNECTED = 6|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVMediaDescription;<br>方法or属性:mediaType?: string;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVMediaDescription;<br>方法or属性:mediaSize?: number;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVMediaDescription;<br>方法or属性:albumTitle?: string;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVMediaDescription;<br>方法or属性:albumCoverUri?: string;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVMediaDescription;<br>方法or属性:lyricContent?: string;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVMediaDescription;<br>方法or属性:lyricUri?: string;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVMediaDescription;<br>方法or属性:fdSrc?: media.AVFileDescriptor;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVMediaDescription;<br>方法or属性:startPosition?: number;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVMediaDescription;<br>方法or属性:creditsPosition?: number;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVMediaDescription;<br>方法or属性:appName?: string;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVPlaybackState;<br>方法or属性:volume?: number;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastCategory;<br>方法or属性:CATEGORY_LOCAL = 0|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVCastCategory;<br>方法or属性:CATEGORY_REMOTE = 1|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:DeviceType;<br>方法or属性:DEVICE_TYPE_LOCAL = 0|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:DeviceType;<br>方法or属性:DEVICE_TYPE_TV = 2|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:DeviceType;<br>方法or属性:DEVICE_TYPE_SMART_SPEAKER = 3|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:DeviceType;<br>方法or属性:DEVICE_TYPE_BLUETOOTH = 10|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:DeviceInfo;<br>方法or属性:castCategory: number;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:DeviceInfo;<br>方法or属性:deviceId: string;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:DeviceInfo;<br>方法or属性:deviceName: string;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:DeviceInfo;<br>方法or属性:deviceType: DeviceType;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:DeviceInfo;<br>方法or属性:ipAddress?: string;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:DeviceInfo;<br>方法or属性:providerId?: number;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:OutputDeviceInfo;<br>方法or属性:devices: Array\<DeviceInfo>;|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:PlaybackState;<br>方法or属性:PLAYBACK_STATE_COMPLETED = 7|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:PlaybackState;<br>方法or属性:PLAYBACK_STATE_RELEASED = 8|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:PlaybackState;<br>方法or属性:PLAYBACK_STATE_ERROR = 9|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVSessionErrorCode;<br>方法or属性:ERR_CODE_DEVICE_CONNECTION_FAILED = 6600108|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:AVSessionErrorCode;<br>方法or属性:ERR_CODE_REMOTE_CONNECTION_NOT_EXIST = 6600109|@ohos.multimedia.avsession.d.ts|
|新增|NA|类名:PrelaunchConfig;<br>方法or属性:cameraDevice: CameraDevice;|@ohos.multimedia.camera.d.ts|
|新增|NA|类名:CameraManager;<br>方法or属性:isPrelaunchSupported(camera: CameraDevice): boolean;|@ohos.multimedia.camera.d.ts|
|新增|NA|类名:CameraManager;<br>方法or属性:setPrelaunchConfig(prelaunchConfig: PrelaunchConfig): void;|@ohos.multimedia.camera.d.ts|
|新增|NA|类名:CameraManager;<br>方法or属性:prelaunch(): void;|@ohos.multimedia.camera.d.ts|
|新增|NA|类名:CameraManager;<br>方法or属性:createDeferredPreviewOutput(profile: Profile): PreviewOutput;|@ohos.multimedia.camera.d.ts|
|新增|NA|类名:PreviewOutput;<br>方法or属性:addDeferredSurface(surfaceId: string): void;|@ohos.multimedia.camera.d.ts|
|新增|NA|类名:PhotoOutput;<br>方法or属性:on(type: 'quickThumbnail', callback: AsyncCallback\<image.PixelMap>): void;|@ohos.multimedia.camera.d.ts|
|新增|NA|类名:PhotoOutput;<br>方法or属性:isQuickThumbnailSupported(): boolean;|@ohos.multimedia.camera.d.ts|
|新增|NA|类名:PhotoOutput;<br>方法or属性:enableQuickThumbnail(enabled: boolean): void;|@ohos.multimedia.camera.d.ts|
|新增|NA|类名:PropertyKey;<br>方法or属性:DATE_TIME = 'DateTime'|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PropertyKey;<br>方法or属性:GPS_TIME_STAMP = 'GPSTimeStamp'|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PropertyKey;<br>方法or属性:GPS_DATE_STAMP = 'GPSDateStamp'|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PropertyKey;<br>方法or属性:IMAGE_DESCRIPTION = 'ImageDescription'|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PropertyKey;<br>方法or属性:MAKE = 'Make'|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PropertyKey;<br>方法or属性:MODEL = 'Model'|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PropertyKey;<br>方法or属性:PHOTO_MODE = 'PhotoMode'|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PropertyKey;<br>方法or属性:SENSITIVITY_TYPE = 'SensitivityType'|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PropertyKey;<br>方法or属性:STANDARD_OUTPUT_SENSITIVITY = 'StandardOutputSensitivity'|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PropertyKey;<br>方法or属性:RECOMMENDED_EXPOSURE_INDEX = 'RecommendedExposureIndex'|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PropertyKey;<br>方法or属性:ISO_SPEED = 'ISOSpeedRatings'|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PropertyKey;<br>方法or属性:APERTURE_VALUE = 'ApertureValue'|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PropertyKey;<br>方法or属性:EXPOSURE_BIAS_VALUE = 'ExposureBiasValue'|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PropertyKey;<br>方法or属性:METERING_MODE = 'MeteringMode'|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PropertyKey;<br>方法or属性:LIGHT_SOURCE = 'LightSource'|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PropertyKey;<br>方法or属性:FLASH = 'Flash'|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PropertyKey;<br>方法or属性:FOCAL_LENGTH = 'FocalLength'|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PropertyKey;<br>方法or属性:USER_COMMENT = 'UserComment'|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PropertyKey;<br>方法or属性:PIXEL_X_DIMENSION = 'PixelXDimension'|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PropertyKey;<br>方法or属性:PIXEL_Y_DIMENSION = 'PixelYDimension'|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PropertyKey;<br>方法or属性:WHITE_BALANCE = 'WhiteBalance'|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PropertyKey;<br>方法or属性:FOCAL_LENGTH_IN_35_MM_FILM = 'FocalLengthIn35mmFilm'|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PropertyKey;<br>方法or属性:CAPTURE_MODE = 'HwMnoteCaptureMode'|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PropertyKey;<br>方法or属性:PHYSICAL_APERTURE = 'HwMnotePhysicalAperture'|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PixelMap;<br>方法or属性:getColorSpace(): colorSpaceManager.ColorSpaceManager;|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PixelMap;<br>方法or属性:marshalling(sequence: rpc.MessageSequence): void;|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PixelMap;<br>方法or属性:unmarshalling(sequence: rpc.MessageSequence): Promise\<PixelMap>;|@ohos.multimedia.image.d.ts|
|新增|NA|类名:PixelMap;<br>方法or属性:setColorSpace(colorSpace: colorSpaceManager.ColorSpaceManager): void;|@ohos.multimedia.image.d.ts|
|新增|NA|类名:ImageSource;<br>方法or属性:getDelayTimeList(): Promise\<Array\<number>>;|@ohos.multimedia.image.d.ts|
|新增|NA|类名:ImageSource;<br>方法or属性:getDelayTimeList(callback: AsyncCallback\<Array\<number>>): void;|@ohos.multimedia.image.d.ts|
|新增|NA|类名:AVPlayer;<br>方法or属性:audioEffectMode ?: audio.AudioEffectMode;|@ohos.multimedia.media.d.ts|
|新增(错误码)|类名:effectKit;<br>方法or属性:function createColorPicker(source:image.PixelMap): Promise\<ColorPicker>;<br>旧版本信息:|类名:effectKit;<br>方法or属性:function createColorPicker(source:image.PixelMap): Promise\<ColorPicker>;<br>新版本信息:401|@ohos.effectKit.d.ts|
|新增(错误码)|类名:effectKit;<br>方法or属性:function createColorPicker(source:image.PixelMap,callback:AsyncCallback\<ColorPicker>):void;<br>旧版本信息:|类名:effectKit;<br>方法or属性:function createColorPicker(source:image.PixelMap,callback:AsyncCallback\<ColorPicker>):void;<br>新版本信息:401|@ohos.effectKit.d.ts|
|新增(错误码)|类名:avSession;<br>方法or属性:function createAVSession(context: Context, tag: string, type: AVSessionType): Promise\<AVSession>;<br>旧版本信息:|类名:avSession;<br>方法or属性:function createAVSession(context: Context, tag: string, type: AVSessionType): Promise\<AVSession>;<br>新版本信息:401,6600101|@ohos.multimedia.avsession.d.ts|
|新增(错误码)|类名:avSession;<br>方法or属性:function getAllSessionDescriptors(): Promise\<Array\<Readonly\<AVSessionDescriptor>>>;<br>旧版本信息:|类名:avSession;<br>方法or属性:function getAllSessionDescriptors(): Promise\<Array\<Readonly\<AVSessionDescriptor>>>;<br>新版本信息:201,6600101|@ohos.multimedia.avsession.d.ts|
|新增(错误码)|类名:avSession;<br>方法or属性:function createController(sessionId: string): Promise\<AVSessionController>;<br>旧版本信息:|类名:avSession;<br>方法or属性:function createController(sessionId: string): Promise\<AVSessionController>;<br>新版本信息:201,401,6600101,6600102|@ohos.multimedia.avsession.d.ts|
|新增(错误码)|类名:avSession;<br>方法or属性:function castAudio(session: SessionToken \| 'all', audioDevices: Array\<audio.AudioDeviceDescriptor>): Promise\<void>;<br>旧版本信息:|类名:avSession;<br>方法or属性:function castAudio(session: SessionToken \| 'all', audioDevices: Array\<audio.AudioDeviceDescriptor>): Promise\<void>;<br>新版本信息:201,401,6600101,6600102,6600104|@ohos.multimedia.avsession.d.ts|
|新增(错误码)|类名:avSession;<br>方法or属性:function sendSystemAVKeyEvent(event: KeyEvent): Promise\<void>;<br>旧版本信息:|类名:avSession;<br>方法or属性:function sendSystemAVKeyEvent(event: KeyEvent): Promise\<void>;<br>新版本信息:201,401,6600101,6600105|@ohos.multimedia.avsession.d.ts|
|新增(错误码)|类名:avSession;<br>方法or属性:function sendSystemControlCommand(command: AVControlCommand): Promise\<void>;<br>旧版本信息:|类名:avSession;<br>方法or属性:function sendSystemControlCommand(command: AVControlCommand): Promise\<void>;<br>新版本信息:201,401,6600101,6600105,6600107|@ohos.multimedia.avsession.d.ts|
|新增(错误码)|类名:AVSession;<br>方法or属性:setAVMetadata(data: AVMetadata): Promise\<void>;<br>旧版本信息:|类名:AVSession;<br>方法or属性:setAVMetadata(data: AVMetadata): Promise\<void>;<br>新版本信息:401,6600101,6600102|@ohos.multimedia.avsession.d.ts|
|新增(错误码)|类名:AVSession;<br>方法or属性:setAVPlaybackState(state: AVPlaybackState): Promise\<void>;<br>旧版本信息:|类名:AVSession;<br>方法or属性:setAVPlaybackState(state: AVPlaybackState): Promise\<void>;<br>新版本信息:401,6600101,6600102|@ohos.multimedia.avsession.d.ts|
|新增(错误码)|类名:AVSession;<br>方法or属性:setLaunchAbility(ability: WantAgent): Promise\<void>;<br>旧版本信息:|类名:AVSession;<br>方法or属性:setLaunchAbility(ability: WantAgent): Promise\<void>;<br>新版本信息:401,6600101,6600102|@ohos.multimedia.avsession.d.ts|
|新增(错误码)|类名:AVSession;<br>方法or属性:getController(): Promise\<AVSessionController>;<br>旧版本信息:|类名:AVSession;<br>方法or属性:getController(): Promise\<AVSessionController>;<br>新版本信息:6600101,6600102|@ohos.multimedia.avsession.d.ts|
|新增(错误码)|类名:AVSession;<br>方法or属性:getOutputDevice(): Promise\<OutputDeviceInfo>;<br>旧版本信息:|类名:AVSession;<br>方法or属性:getOutputDevice(): Promise\<OutputDeviceInfo>;<br>新版本信息:6600101,6600102|@ohos.multimedia.avsession.d.ts|
|新增(错误码)|类名:AVSessionController;<br>方法or属性:getOutputDevice(): Promise\<OutputDeviceInfo>;<br>旧版本信息:|类名:AVSessionController;<br>方法or属性:getOutputDevice(): Promise\<OutputDeviceInfo>;<br>新版本信息:600101,600103|@ohos.multimedia.avsession.d.ts|
|新增(错误码)|类名:AVSession;<br>方法or属性:activate(): Promise\<void>;<br>旧版本信息:|类名:AVSession;<br>方法or属性:activate(): Promise\<void>;<br>新版本信息:6600101,6600102|@ohos.multimedia.avsession.d.ts|
|新增(错误码)|类名:AVSession;<br>方法or属性:deactivate(): Promise\<void>;<br>旧版本信息:|类名:AVSession;<br>方法or属性:deactivate(): Promise\<void>;<br>新版本信息:6600101,6600102|@ohos.multimedia.avsession.d.ts|
|新增(错误码)|类名:AVSession;<br>方法or属性:destroy(): Promise\<void>;<br>旧版本信息:|类名:AVSession;<br>方法or属性:destroy(): Promise\<void>;<br>新版本信息:6600101,6600102|@ohos.multimedia.avsession.d.ts|
|新增(错误码)|类名:AVSessionController;<br>方法or属性:destroy(): Promise\<void>;<br>旧版本信息:|类名:AVSessionController;<br>方法or属性:destroy(): Promise\<void>;<br>新版本信息:6600101,6600103|@ohos.multimedia.avsession.d.ts|
|新增(错误码)|类名:AVSessionController;<br>方法or属性:getAVPlaybackState(): Promise\<AVPlaybackState>;<br>旧版本信息:|类名:AVSessionController;<br>方法or属性:getAVPlaybackState(): Promise\<AVPlaybackState>;<br>新版本信息:6600101,6600102,6600103|@ohos.multimedia.avsession.d.ts|
|新增(错误码)|类名:AVSessionController;<br>方法or属性:getAVMetadata(): Promise\<AVMetadata>;<br>旧版本信息:|类名:AVSessionController;<br>方法or属性:getAVMetadata(): Promise\<AVMetadata>;<br>新版本信息:6600101,6600102,6600103|@ohos.multimedia.avsession.d.ts|
|新增(错误码)|类名:AVSessionController;<br>方法or属性:sendAVKeyEvent(event: KeyEvent): Promise\<void>;<br>旧版本信息:|类名:AVSessionController;<br>方法or属性:sendAVKeyEvent(event: KeyEvent): Promise\<void>;<br>新版本信息:401,600101,600102,600103,600105,600106|@ohos.multimedia.avsession.d.ts|
|新增(错误码)|类名:AVSessionController;<br>方法or属性:getLaunchAbility(): Promise\<WantAgent>;<br>旧版本信息:|类名:AVSessionController;<br>方法or属性:getLaunchAbility(): Promise\<WantAgent>;<br>新版本信息:6600101,6600102,6600103|@ohos.multimedia.avsession.d.ts|
|新增(错误码)|类名:AVSessionController;<br>方法or属性:isActive(): Promise\<boolean>;<br>旧版本信息:|类名:AVSessionController;<br>方法or属性:isActive(): Promise\<boolean>;<br>新版本信息:6600101,6600102,6600103|@ohos.multimedia.avsession.d.ts|
|新增(错误码)|类名:AVSessionController;<br>方法or属性:getValidCommands(): Promise\<Array\<AVControlCommandType>>;<br>旧版本信息:|类名:AVSessionController;<br>方法or属性:getValidCommands(): Promise\<Array\<AVControlCommandType>>;<br>新版本信息:6600101,6600102,6600103|@ohos.multimedia.avsession.d.ts|
|新增(错误码)|类名:AVSessionController;<br>方法or属性:sendControlCommand(command: AVControlCommand): Promise\<void>;<br>旧版本信息:|类名:AVSessionController;<br>方法or属性:sendControlCommand(command: AVControlCommand): Promise\<void>;<br>新版本信息:401,6600101,6600102,6600103,6600105,6600106,6600107|@ohos.multimedia.avsession.d.ts|
|新增(错误码)|类名:ImageSource;<br>方法or属性:createPixelMapList(options?: DecodingOptions): Promise\<Array\<PixelMap>>;<br>旧版本信息:|类名:ImageSource;<br>方法or属性:createPixelMapList(options?: DecodingOptions): Promise\<Array\<PixelMap>>;<br>新版本信息:62980096,62980103,62980110,62980111,62980118|@ohos.multimedia.image.d.ts|
|新增(错误码)|类名:ImageSource;<br>方法or属性:createPixelMapList(callback: AsyncCallback\<Array\<PixelMap>>): void;<br>旧版本信息:|类名:ImageSource;<br>方法or属性:createPixelMapList(callback: AsyncCallback\<Array\<PixelMap>>): void;<br>新版本信息:62980096,62980103,62980110,62980111,62980118|@ohos.multimedia.image.d.ts|
|新增(错误码)|类名:ImageSource;<br>方法or属性:createPixelMapList(options: DecodingOptions, callback: AsyncCallback\<Array\<PixelMap>>): void;<br>旧版本信息:|类名:ImageSource;<br>方法or属性:createPixelMapList(options: DecodingOptions, callback: AsyncCallback\<Array\<PixelMap>>): void;<br>新版本信息:62980096,62980103,62980110,62980111,62980118|@ohos.multimedia.image.d.ts|
|新增(错误码)|类名:ImageSource;<br>方法or属性:getFrameCount(): Promise\<number>;<br>旧版本信息:|类名:ImageSource;<br>方法or属性:getFrameCount(): Promise\<number>;<br>新版本信息:62980096,62980110,62980111,62980113,62980116,62980118,62980122|@ohos.multimedia.image.d.ts|
|新增(错误码)|类名:ImageSource;<br>方法or属性:getFrameCount(callback: AsyncCallback\<number>): void;<br>旧版本信息:|类名:ImageSource;<br>方法or属性:getFrameCount(callback: AsyncCallback\<number>): void;<br>新版本信息:62980096,62980110,62980111,62980113,62980116,62980118,62980122|@ohos.multimedia.image.d.ts|
|错误码有变化|类名:avSession;<br>方法or属性:function createAVSession(context: Context, tag: string, type: AVSessionType, callback: AsyncCallback\<AVSession>): void;<br>旧版本信息:401,{@link|类名:avSession;<br>方法or属性:function createAVSession(context: Context, tag: string, type: AVSessionType, callback: AsyncCallback\<AVSession>): void;<br>新版本信息:401,6600101|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:avSession;<br>方法or属性:function getAllSessionDescriptors(callback: AsyncCallback\<Array\<Readonly\<AVSessionDescriptor>>>): void;<br>旧版本信息:201,{@link|类名:avSession;<br>方法or属性:function getAllSessionDescriptors(callback: AsyncCallback\<Array\<Readonly\<AVSessionDescriptor>>>): void;<br>新版本信息:201,6600101|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:avSession;<br>方法or属性:function createController(sessionId: string, callback: AsyncCallback\<AVSessionController>): void;<br>旧版本信息:201,401,{@link,{@link|类名:avSession;<br>方法or属性:function createController(sessionId: string, callback: AsyncCallback\<AVSessionController>): void;<br>新版本信息:201,401,6600101,6600102|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:avSession;<br>方法or属性:function castAudio(session: SessionToken \| 'all', audioDevices: Array\<audio.AudioDeviceDescriptor>, callback: AsyncCallback\<void>): void;<br>旧版本信息:201,401,{@link,{@link,{@link|类名:avSession;<br>方法or属性:function castAudio(session: SessionToken \| 'all', audioDevices: Array\<audio.AudioDeviceDescriptor>, callback: AsyncCallback\<void>): void;<br>新版本信息:201,401,6600101,6600102,6600104|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:avSession;<br>方法or属性:function on(type: 'sessionServiceDie', callback: () => void): void;<br>旧版本信息:201,401,{@link|类名:avSession;<br>方法or属性:function on(type: 'sessionServiceDie', callback: () => void): void;<br>新版本信息:201,401,6600101|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:avSession;<br>方法or属性:function off(type: 'sessionServiceDie', callback?: () => void): void;<br>旧版本信息:201,401,{@link|类名:avSession;<br>方法or属性:function off(type: 'sessionServiceDie', callback?: () => void): void;<br>新版本信息:201,401,6600101|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:avSession;<br>方法or属性:function sendSystemAVKeyEvent(event: KeyEvent, callback: AsyncCallback\<void>): void;<br>旧版本信息:201,401,{@link,{@link|类名:avSession;<br>方法or属性:function sendSystemAVKeyEvent(event: KeyEvent, callback: AsyncCallback\<void>): void;<br>新版本信息:201,401,6600101,6600105|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:avSession;<br>方法or属性:function sendSystemControlCommand(command: AVControlCommand, callback: AsyncCallback\<void>): void;<br>旧版本信息:201,401,{@link,{@link,{@link|类名:avSession;<br>方法or属性:function sendSystemControlCommand(command: AVControlCommand, callback: AsyncCallback\<void>): void;<br>新版本信息:201,401,6600101,6600105,6600107|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSession;<br>方法or属性:setAVMetadata(data: AVMetadata, callback: AsyncCallback\<void>): void;<br>旧版本信息:401,{@link,{@link|类名:AVSession;<br>方法or属性:setAVMetadata(data: AVMetadata, callback: AsyncCallback\<void>): void;<br>新版本信息:401,6600101,6600102|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSession;<br>方法or属性:setAVPlaybackState(state: AVPlaybackState, callback: AsyncCallback\<void>): void;<br>旧版本信息:401,{@link,{@link|类名:AVSession;<br>方法or属性:setAVPlaybackState(state: AVPlaybackState, callback: AsyncCallback\<void>): void;<br>新版本信息:401,6600101,6600102|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSession;<br>方法or属性:setLaunchAbility(ability: WantAgent, callback: AsyncCallback\<void>): void;<br>旧版本信息:401,{@link,{@link|类名:AVSession;<br>方法or属性:setLaunchAbility(ability: WantAgent, callback: AsyncCallback\<void>): void;<br>新版本信息:401,6600101,6600102|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSession;<br>方法or属性:dispatchSessionEvent(event: string, args: {[key: string]: Object}, callback: AsyncCallback\<void>): void;<br>旧版本信息:401,{@link,{@link|类名:AVSession;<br>方法or属性:dispatchSessionEvent(event: string, args: {[key: string]: Object}, callback: AsyncCallback\<void>): void;<br>新版本信息:401,6600101,6600102|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSession;<br>方法or属性:dispatchSessionEvent(event: string, args: {[key: string]: Object}): Promise\<void>;<br>旧版本信息:401,{@link,{@link|类名:AVSession;<br>方法or属性:dispatchSessionEvent(event: string, args: {[key: string]: Object}): Promise\<void>;<br>新版本信息:401,6600101,6600102|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSession;<br>方法or属性:setExtras(extras: {[key: string]: Object}, callback: AsyncCallback\<void>): void;<br>旧版本信息:401,{@link,{@link|类名:AVSession;<br>方法or属性:setExtras(extras: {[key: string]: Object}, callback: AsyncCallback\<void>): void;<br>新版本信息:401,6600101,6600102|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSession;<br>方法or属性:setExtras(extras: {[key: string]: Object}): Promise\<void>;<br>旧版本信息:401,{@link,{@link|类名:AVSession;<br>方法or属性:setExtras(extras: {[key: string]: Object}): Promise\<void>;<br>新版本信息:401,6600101,6600102|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSession;<br>方法or属性:getController(callback: AsyncCallback\<AVSessionController>): void;<br>旧版本信息:{@link,{@link|类名:AVSession;<br>方法or属性:getController(callback: AsyncCallback\<AVSessionController>): void;<br>新版本信息:6600101,6600102|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSession;<br>方法or属性:getOutputDevice(callback: AsyncCallback\<OutputDeviceInfo>): void;<br>旧版本信息:{@link,{@link|类名:AVSession;<br>方法or属性:getOutputDevice(callback: AsyncCallback\<OutputDeviceInfo>): void;<br>新版本信息:6600101,6600102|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSessionController;<br>方法or属性:getOutputDevice(callback: AsyncCallback\<OutputDeviceInfo>): void;<br>旧版本信息:{@link,{@link|类名:AVSessionController;<br>方法or属性:getOutputDevice(callback: AsyncCallback\<OutputDeviceInfo>): void;<br>新版本信息:600101,600103|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSession;<br>方法or属性:on(type: 'seek', callback: (time: number) => void): void;<br>旧版本信息:401,{@link,{@link|类名:AVSession;<br>方法or属性:on(type: 'seek', callback: (time: number) => void): void;<br>新版本信息:401,6600101,6600102|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSession;<br>方法or属性:on(type: 'setSpeed', callback: (speed: number) => void): void;<br>旧版本信息:401,{@link,{@link|类名:AVSession;<br>方法or属性:on(type: 'setSpeed', callback: (speed: number) => void): void;<br>新版本信息:401,6600101,6600102|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSession;<br>方法or属性:on(type: 'setLoopMode', callback: (mode: LoopMode) => void): void;<br>旧版本信息:401,{@link,{@link|类名:AVSession;<br>方法or属性:on(type: 'setLoopMode', callback: (mode: LoopMode) => void): void;<br>新版本信息:401,6600101,6600102|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSession;<br>方法or属性:on(type: 'toggleFavorite', callback: (assetId: string) => void): void;<br>旧版本信息:401,{@link,{@link|类名:AVSession;<br>方法or属性:on(type: 'toggleFavorite', callback: (assetId: string) => void): void;<br>新版本信息:401,6600101,6600102|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSession;<br>方法or属性:on(type: 'handleKeyEvent', callback: (event: KeyEvent) => void): void;<br>旧版本信息:401,{@link,{@link|类名:AVSession;<br>方法or属性:on(type: 'handleKeyEvent', callback: (event: KeyEvent) => void): void;<br>新版本信息:401,6600101,6600102|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSession;<br>方法or属性:off(type: 'seek', callback?: (time: number) => void): void;<br>旧版本信息:401,{@link,{@link|类名:AVSession;<br>方法or属性:off(type: 'seek', callback?: (time: number) => void): void;<br>新版本信息:401,6600101,6600102|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSession;<br>方法or属性:off(type: 'setSpeed', callback?: (speed: number) => void): void;<br>旧版本信息:401,{@link,{@link|类名:AVSession;<br>方法or属性:off(type: 'setSpeed', callback?: (speed: number) => void): void;<br>新版本信息:401,6600101,6600102|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSession;<br>方法or属性:off(type: 'setLoopMode', callback?: (mode: LoopMode) => void): void;<br>旧版本信息:401,{@link,{@link|类名:AVSession;<br>方法or属性:off(type: 'setLoopMode', callback?: (mode: LoopMode) => void): void;<br>新版本信息:401,6600101,6600102|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSession;<br>方法or属性:off(type: 'toggleFavorite', callback?: (assetId: string) => void): void;<br>旧版本信息:401,{@link,{@link|类名:AVSession;<br>方法or属性:off(type: 'toggleFavorite', callback?: (assetId: string) => void): void;<br>新版本信息:401,6600101,6600102|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSession;<br>方法or属性:off(type: 'handleKeyEvent', callback?: (event: KeyEvent) => void): void;<br>旧版本信息:401,{@link,{@link|类名:AVSession;<br>方法or属性:off(type: 'handleKeyEvent', callback?: (event: KeyEvent) => void): void;<br>新版本信息:401,6600101,6600102|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSession;<br>方法or属性:activate(callback: AsyncCallback\<void>): void;<br>旧版本信息:{@link,{@link|类名:AVSession;<br>方法or属性:activate(callback: AsyncCallback\<void>): void;<br>新版本信息:6600101,6600102|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSession;<br>方法or属性:deactivate(callback: AsyncCallback\<void>): void;<br>旧版本信息:{@link,{@link|类名:AVSession;<br>方法or属性:deactivate(callback: AsyncCallback\<void>): void;<br>新版本信息:6600101,6600102|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSession;<br>方法or属性:destroy(callback: AsyncCallback\<void>): void;<br>旧版本信息:{@link,{@link|类名:AVSession;<br>方法or属性:destroy(callback: AsyncCallback\<void>): void;<br>新版本信息:6600101,6600102|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSessionController;<br>方法or属性:destroy(callback: AsyncCallback\<void>): void;<br>旧版本信息:{@link,{@link|类名:AVSessionController;<br>方法or属性:destroy(callback: AsyncCallback\<void>): void;<br>新版本信息:6600101,6600103|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSessionController;<br>方法or属性:getAVPlaybackState(callback: AsyncCallback\<AVPlaybackState>): void;<br>旧版本信息:{@link,{@link,{@link|类名:AVSessionController;<br>方法or属性:getAVPlaybackState(callback: AsyncCallback\<AVPlaybackState>): void;<br>新版本信息:6600101,6600102,6600103|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSessionController;<br>方法or属性:getAVMetadata(callback: AsyncCallback\<AVMetadata>): void;<br>旧版本信息:{@link,{@link,{@link|类名:AVSessionController;<br>方法or属性:getAVMetadata(callback: AsyncCallback\<AVMetadata>): void;<br>新版本信息:6600101,6600102,6600103|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSessionController;<br>方法or属性:sendAVKeyEvent(event: KeyEvent, callback: AsyncCallback\<void>): void;<br>旧版本信息:401,{@link,{@link,{@link,{@link,{@link|类名:AVSessionController;<br>方法or属性:sendAVKeyEvent(event: KeyEvent, callback: AsyncCallback\<void>): void;<br>新版本信息:401,600101,600102,600103,600105,600106|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSessionController;<br>方法or属性:getLaunchAbility(callback: AsyncCallback\<WantAgent>): void;<br>旧版本信息:{@link,{@link,{@link|类名:AVSessionController;<br>方法or属性:getLaunchAbility(callback: AsyncCallback\<WantAgent>): void;<br>新版本信息:6600101,6600102,6600103|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSessionController;<br>方法or属性:getRealPlaybackPositionSync(): number;<br>旧版本信息:{@link,{@link|类名:AVSessionController;<br>方法or属性:getRealPlaybackPositionSync(): number;<br>新版本信息:6600101,6600103|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSessionController;<br>方法or属性:isActive(callback: AsyncCallback\<boolean>): void;<br>旧版本信息:{@link,{@link,{@link|类名:AVSessionController;<br>方法or属性:isActive(callback: AsyncCallback\<boolean>): void;<br>新版本信息:6600101,6600102,6600103|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSessionController;<br>方法or属性:getValidCommands(callback: AsyncCallback\<Array\<AVControlCommandType>>): void;<br>旧版本信息:{@link,{@link,{@link|类名:AVSessionController;<br>方法or属性:getValidCommands(callback: AsyncCallback\<Array\<AVControlCommandType>>): void;<br>新版本信息:6600101,6600102,6600103|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSessionController;<br>方法or属性:sendControlCommand(command: AVControlCommand, callback: AsyncCallback\<void>): void;<br>旧版本信息:401,{@link,{@link,{@link,{@link,{@link,{@link|类名:AVSessionController;<br>方法or属性:sendControlCommand(command: AVControlCommand, callback: AsyncCallback\<void>): void;<br>新版本信息:401,6600101,6600102,6600103,6600105,6600106,6600107|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSessionController;<br>方法or属性:on(type: 'metadataChange', filter: Array\<keyof AVMetadata> \| 'all', callback: (data: AVMetadata) => void);<br>旧版本信息:401,{@link,{@link|类名:AVSessionController;<br>方法or属性:on(type: 'metadataChange', filter: Array\<keyof AVMetadata> \| 'all', callback: (data: AVMetadata) => void);<br>新版本信息:401,6600101,6600103|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSessionController;<br>方法or属性:on(type: 'playbackStateChange', filter: Array\<keyof AVPlaybackState> \| 'all', callback: (state: AVPlaybackState) => void);<br>旧版本信息:401,{@link,{@link|类名:AVSessionController;<br>方法or属性:on(type: 'playbackStateChange', filter: Array\<keyof AVPlaybackState> \| 'all', callback: (state: AVPlaybackState) => void);<br>新版本信息:401,6600101,6600103|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSessionController;<br>方法or属性:on(type: 'sessionDestroy', callback: () => void);<br>旧版本信息:401,{@link,{@link|类名:AVSessionController;<br>方法or属性:on(type: 'sessionDestroy', callback: () => void);<br>新版本信息:401,6600101,6600103|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSessionController;<br>方法or属性:on(type: 'activeStateChange', callback: (isActive: boolean) => void);<br>旧版本信息:401,{@link,{@link|类名:AVSessionController;<br>方法or属性:on(type: 'activeStateChange', callback: (isActive: boolean) => void);<br>新版本信息:401,6600101,6600103|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSessionController;<br>方法or属性:on(type: 'validCommandChange', callback: (commands: Array\<AVControlCommandType>) => void);<br>旧版本信息:401,{@link,{@link|类名:AVSessionController;<br>方法or属性:on(type: 'validCommandChange', callback: (commands: Array\<AVControlCommandType>) => void);<br>新版本信息:401,6600101,6600103|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSessionController;<br>方法or属性:on(type: 'sessionEvent', callback: (sessionEvent: string, args: {[key: string]: Object}) => void): void;<br>旧版本信息:401,{@link,{@link|类名:AVSessionController;<br>方法or属性:on(type: 'sessionEvent', callback: (sessionEvent: string, args: {[key: string]: Object}) => void): void;<br>新版本信息:401,6600101,6600103|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSessionController;<br>方法or属性:on(type: 'extrasChange', callback: (extras: {[key: string]: Object}) => void): void;<br>旧版本信息:401,{@link,{@link|类名:AVSessionController;<br>方法or属性:on(type: 'extrasChange', callback: (extras: {[key: string]: Object}) => void): void;<br>新版本信息:401,6600101,6600103|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSessionController;<br>方法or属性:off(type: 'metadataChange', callback?: (data: AVMetadata) => void);<br>旧版本信息:401,{@link,{@link|类名:AVSessionController;<br>方法or属性:off(type: 'metadataChange', callback?: (data: AVMetadata) => void);<br>新版本信息:401,6600101,6600103|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSessionController;<br>方法or属性:off(type: 'playbackStateChange', callback?: (state: AVPlaybackState) => void);<br>旧版本信息:401,{@link,{@link|类名:AVSessionController;<br>方法or属性:off(type: 'playbackStateChange', callback?: (state: AVPlaybackState) => void);<br>新版本信息:401,6600101,6600103|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSessionController;<br>方法or属性:off(type: 'sessionDestroy', callback?: () => void);<br>旧版本信息:401,{@link,{@link|类名:AVSessionController;<br>方法or属性:off(type: 'sessionDestroy', callback?: () => void);<br>新版本信息:401,6600101,6600103|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSessionController;<br>方法or属性:off(type: 'activeStateChange', callback?: (isActive: boolean) => void);<br>旧版本信息:401,{@link,{@link|类名:AVSessionController;<br>方法or属性:off(type: 'activeStateChange', callback?: (isActive: boolean) => void);<br>新版本信息:401,6600101,6600103|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSessionController;<br>方法or属性:off(type: 'validCommandChange', callback?: (commands: Array\<AVControlCommandType>) => void);<br>旧版本信息:401,{@link,{@link|类名:AVSessionController;<br>方法or属性:off(type: 'validCommandChange', callback?: (commands: Array\<AVControlCommandType>) => void);<br>新版本信息:401,6600101,6600103|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSessionController;<br>方法or属性:off(type: 'sessionEvent', callback?: (sessionEvent: string, args: {[key: string]: Object}) => void): void;<br>旧版本信息:401,{@link,{@link|类名:AVSessionController;<br>方法or属性:off(type: 'sessionEvent', callback?: (sessionEvent: string, args: {[key: string]: Object}) => void): void;<br>新版本信息:401,6600101,6600103|@ohos.multimedia.avsession.d.ts|
|错误码有变化|类名:AVSessionController;<br>方法or属性:off(type: 'extrasChange', callback?: (extras: {[key: string]: Object}) => void): void;<br>旧版本信息:401,{@link,{@link|类名:AVSessionController;<br>方法or属性:off(type: 'extrasChange', callback?: (extras: {[key: string]: Object}) => void): void;<br>新版本信息:401,6600101,6600103|@ohos.multimedia.avsession.d.ts|
|访问级别有变化|类名:ConnectType;<br>方法or属性:CONNECT_TYPE_LOCAL = 1<br>旧版本信息:|类名:ConnectType;<br>方法or属性:CONNECT_TYPE_LOCAL = 1<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ConnectType;<br>方法or属性:CONNECT_TYPE_DISTRIBUTED = 2<br>旧版本信息:|类名:ConnectType;<br>方法or属性:CONNECT_TYPE_DISTRIBUTED = 2<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:VolumeGroupInfo;<br>方法or属性:readonly groupId: number;<br>旧版本信息:|类名:VolumeGroupInfo;<br>方法or属性:readonly groupId: number;<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:VolumeGroupInfo;<br>方法or属性:readonly mappingId: number;<br>旧版本信息:|类名:VolumeGroupInfo;<br>方法or属性:readonly mappingId: number;<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:VolumeGroupInfo;<br>方法or属性:readonly groupName: string;<br>旧版本信息:|类名:VolumeGroupInfo;<br>方法or属性:readonly groupName: string;<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:VolumeGroupInfo;<br>方法or属性:readonly type: ConnectType;<br>旧版本信息:|类名:VolumeGroupInfo;<br>方法or属性:readonly type: ConnectType;<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:VolumeEvent;<br>方法or属性:interface VolumeEvent<br>旧版本信息:systemapi|类名:VolumeEvent;<br>方法or属性:interface VolumeEvent<br>新版本信息:|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:VolumeEvent;<br>方法or属性:volumeGroupId: number;<br>旧版本信息:|类名:VolumeEvent;<br>方法or属性:volumeGroupId: number;<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:VolumeEvent;<br>方法or属性:networkId: string;<br>旧版本信息:|类名:VolumeEvent;<br>方法or属性:networkId: string;<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_0 = 0<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_0 = 0<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_1 = 1<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_1 = 1<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_2 = 2<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_2 = 2<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_3 = 3<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_3 = 3<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_4 = 4<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_4 = 4<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_5 = 5<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_5 = 5<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_6 = 6<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_6 = 6<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_7 = 7<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_7 = 7<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_8 = 8<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_8 = 8<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_9 = 9<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_9 = 9<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_S = 10<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_S = 10<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_P = 11<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_P = 11<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_A = 12<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_A = 12<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_B = 13<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_B = 13<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_C = 14<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_C = 14<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_D = 15<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_DIAL_D = 15<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_COMMON_SUPERVISORY_DIAL = 100<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_COMMON_SUPERVISORY_DIAL = 100<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_COMMON_SUPERVISORY_BUSY = 101<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_COMMON_SUPERVISORY_BUSY = 101<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_COMMON_SUPERVISORY_CONGESTION = 102<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_COMMON_SUPERVISORY_CONGESTION = 102<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_COMMON_SUPERVISORY_RADIO_ACK = 103<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_COMMON_SUPERVISORY_RADIO_ACK = 103<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_COMMON_SUPERVISORY_RADIO_NOT_AVAILABLE = 104<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_COMMON_SUPERVISORY_RADIO_NOT_AVAILABLE = 104<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_COMMON_SUPERVISORY_CALL_WAITING = 106<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_COMMON_SUPERVISORY_CALL_WAITING = 106<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_COMMON_SUPERVISORY_RINGTONE = 107<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_COMMON_SUPERVISORY_RINGTONE = 107<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_COMMON_PROPRIETARY_BEEP = 200<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_COMMON_PROPRIETARY_BEEP = 200<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_COMMON_PROPRIETARY_ACK = 201<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_COMMON_PROPRIETARY_ACK = 201<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_COMMON_PROPRIETARY_PROMPT = 203<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_COMMON_PROPRIETARY_PROMPT = 203<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:ToneType;<br>方法or属性:TONE_TYPE_COMMON_PROPRIETARY_DOUBLE_BEEP = 204<br>旧版本信息:|类名:ToneType;<br>方法or属性:TONE_TYPE_COMMON_PROPRIETARY_DOUBLE_BEEP = 204<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:TonePlayer;<br>方法or属性:load(type: ToneType, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:TonePlayer;<br>方法or属性:load(type: ToneType, callback: AsyncCallback\<void>): void;<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:TonePlayer;<br>方法or属性:load(type: ToneType): Promise\<void>;<br>旧版本信息:|类名:TonePlayer;<br>方法or属性:load(type: ToneType): Promise\<void>;<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:TonePlayer;<br>方法or属性:start(callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:TonePlayer;<br>方法or属性:start(callback: AsyncCallback\<void>): void;<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:TonePlayer;<br>方法or属性:start(): Promise\<void>;<br>旧版本信息:|类名:TonePlayer;<br>方法or属性:start(): Promise\<void>;<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:TonePlayer;<br>方法or属性:stop(callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:TonePlayer;<br>方法or属性:stop(callback: AsyncCallback\<void>): void;<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:TonePlayer;<br>方法or属性:stop(): Promise\<void>;<br>旧版本信息:|类名:TonePlayer;<br>方法or属性:stop(): Promise\<void>;<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:TonePlayer;<br>方法or属性:release(callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:TonePlayer;<br>方法or属性:release(callback: AsyncCallback\<void>): void;<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:TonePlayer;<br>方法or属性:release(): Promise\<void>;<br>旧版本信息:|类名:TonePlayer;<br>方法or属性:release(): Promise\<void>;<br>新版本信息:systemapi|@ohos.multimedia.audio.d.ts|
|访问级别有变化|类名:avSession;<br>方法or属性:function getAllSessionDescriptors(): Promise\<Array\<Readonly\<AVSessionDescriptor>>>;<br>旧版本信息:|类名:avSession;<br>方法or属性:function getAllSessionDescriptors(): Promise\<Array\<Readonly\<AVSessionDescriptor>>>;<br>新版本信息:systemapi|@ohos.multimedia.avsession.d.ts|
|访问级别有变化|类名:avSession;<br>方法or属性:function createController(sessionId: string): Promise\<AVSessionController>;<br>旧版本信息:|类名:avSession;<br>方法or属性:function createController(sessionId: string): Promise\<AVSessionController>;<br>新版本信息:systemapi|@ohos.multimedia.avsession.d.ts|
|访问级别有变化|类名:avSession;<br>方法or属性:function castAudio(session: SessionToken \| 'all', audioDevices: Array\<audio.AudioDeviceDescriptor>): Promise\<void>;<br>旧版本信息:|类名:avSession;<br>方法or属性:function castAudio(session: SessionToken \| 'all', audioDevices: Array\<audio.AudioDeviceDescriptor>): Promise\<void>;<br>新版本信息:systemapi|@ohos.multimedia.avsession.d.ts|
|访问级别有变化|类名:avSession;<br>方法or属性:function sendSystemAVKeyEvent(event: KeyEvent): Promise\<void>;<br>旧版本信息:|类名:avSession;<br>方法or属性:function sendSystemAVKeyEvent(event: KeyEvent): Promise\<void>;<br>新版本信息:systemapi|@ohos.multimedia.avsession.d.ts|
|访问级别有变化|类名:avSession;<br>方法or属性:function sendSystemControlCommand(command: AVControlCommand): Promise\<void>;<br>旧版本信息:|类名:avSession;<br>方法or属性:function sendSystemControlCommand(command: AVControlCommand): Promise\<void>;<br>新版本信息:systemapi|@ohos.multimedia.avsession.d.ts|
|访问级别有变化|类名:SessionToken;<br>方法or属性:sessionId: string;<br>旧版本信息:|类名:SessionToken;<br>方法or属性:sessionId: string;<br>新版本信息:systemapi|@ohos.multimedia.avsession.d.ts|
|访问级别有变化|类名:AVSessionDescriptor;<br>方法or属性:sessionId: string;<br>旧版本信息:|类名:AVSessionDescriptor;<br>方法or属性:sessionId: string;<br>新版本信息:systemapi|@ohos.multimedia.avsession.d.ts|
|访问级别有变化|类名:SessionToken;<br>方法or属性:pid?: number;<br>旧版本信息:|类名:SessionToken;<br>方法or属性:pid?: number;<br>新版本信息:systemapi|@ohos.multimedia.avsession.d.ts|
|访问级别有变化|类名:SessionToken;<br>方法or属性:uid?: number;<br>旧版本信息:|类名:SessionToken;<br>方法or属性:uid?: number;<br>新版本信息:systemapi|@ohos.multimedia.avsession.d.ts|
|访问级别有变化|类名:AVSessionDescriptor;<br>方法or属性:type: AVSessionType;<br>旧版本信息:|类名:AVSessionDescriptor;<br>方法or属性:type: AVSessionType;<br>新版本信息:systemapi|@ohos.multimedia.avsession.d.ts|
|访问级别有变化|类名:AVSessionDescriptor;<br>方法or属性:sessionTag: string;<br>旧版本信息:|类名:AVSessionDescriptor;<br>方法or属性:sessionTag: string;<br>新版本信息:systemapi|@ohos.multimedia.avsession.d.ts|
|访问级别有变化|类名:AVSessionDescriptor;<br>方法or属性:elementName: ElementName;<br>旧版本信息:|类名:AVSessionDescriptor;<br>方法or属性:elementName: ElementName;<br>新版本信息:systemapi|@ohos.multimedia.avsession.d.ts|
|访问级别有变化|类名:AVSessionDescriptor;<br>方法or属性:isActive: boolean;<br>旧版本信息:|类名:AVSessionDescriptor;<br>方法or属性:isActive: boolean;<br>新版本信息:systemapi|@ohos.multimedia.avsession.d.ts|
|访问级别有变化|类名:AVSessionDescriptor;<br>方法or属性:isTopSession: boolean;<br>旧版本信息:|类名:AVSessionDescriptor;<br>方法or属性:isTopSession: boolean;<br>新版本信息:systemapi|@ohos.multimedia.avsession.d.ts|
|访问级别有变化|类名:AVSessionDescriptor;<br>方法or属性:outputDevice: OutputDeviceInfo;<br>旧版本信息:|类名:AVSessionDescriptor;<br>方法or属性:outputDevice: OutputDeviceInfo;<br>新版本信息:systemapi|@ohos.multimedia.avsession.d.ts|
|权限有变化|类名:avSession;<br>方法or属性:function getAllSessionDescriptors(): Promise\<Array\<Readonly\<AVSessionDescriptor>>>;<br>旧版本信息:|类名:avSession;<br>方法or属性:function getAllSessionDescriptors(): Promise\<Array\<Readonly\<AVSessionDescriptor>>>;<br>新版本信息:ohos.permission.MANAGE_MEDIA_RESOURCES|@ohos.multimedia.avsession.d.ts|
|权限有变化|类名:avSession;<br>方法or属性:function createController(sessionId: string): Promise\<AVSessionController>;<br>旧版本信息:|类名:avSession;<br>方法or属性:function createController(sessionId: string): Promise\<AVSessionController>;<br>新版本信息:ohos.permission.MANAGE_MEDIA_RESOURCES|@ohos.multimedia.avsession.d.ts|
|权限有变化|类名:avSession;<br>方法or属性:function castAudio(session: SessionToken \| 'all', audioDevices: Array\<audio.AudioDeviceDescriptor>): Promise\<void>;<br>旧版本信息:|类名:avSession;<br>方法or属性:function castAudio(session: SessionToken \| 'all', audioDevices: Array\<audio.AudioDeviceDescriptor>): Promise\<void>;<br>新版本信息:ohos.permission.MANAGE_MEDIA_RESOURCES|@ohos.multimedia.avsession.d.ts|
|权限有变化|类名:avSession;<br>方法or属性:function sendSystemAVKeyEvent(event: KeyEvent): Promise\<void>;<br>旧版本信息:|类名:avSession;<br>方法or属性:function sendSystemAVKeyEvent(event: KeyEvent): Promise\<void>;<br>新版本信息:ohos.permission.MANAGE_MEDIA_RESOURCES|@ohos.multimedia.avsession.d.ts|
|权限有变化|类名:avSession;<br>方法or属性:function sendSystemControlCommand(command: AVControlCommand): Promise\<void>;<br>旧版本信息:|类名:avSession;<br>方法or属性:function sendSystemControlCommand(command: AVControlCommand): Promise\<void>;<br>新版本信息:ohos.permission.MANAGE_MEDIA_RESOURCES|@ohos.multimedia.avsession.d.ts|
|权限有变化|类名:SessionToken;<br>方法or属性:sessionId: string;<br>旧版本信息:|类名:SessionToken;<br>方法or属性:sessionId: string;<br>新版本信息:ohos.permission.MANAGE_MEDIA_RESOURCES|@ohos.multimedia.avsession.d.ts|
|权限有变化|类名:SessionToken;<br>方法or属性:pid?: number;<br>旧版本信息:|类名:SessionToken;<br>方法or属性:pid?: number;<br>新版本信息:ohos.permission.MANAGE_MEDIA_RESOURCES|@ohos.multimedia.avsession.d.ts|
|权限有变化|类名:SessionToken;<br>方法or属性:uid?: number;<br>旧版本信息:|类名:SessionToken;<br>方法or属性:uid?: number;<br>新版本信息:ohos.permission.MANAGE_MEDIA_RESOURCES|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AudioRendererInfo;<br>方法or属性:content?: ContentType;<br>旧版本信息:|类名:AudioRendererInfo;<br>方法or属性:content?: ContentType;<br>新版本信息:?ContentType|@ohos.multimedia.audio.d.ts|
|type有变化|类名:SessionToken;<br>方法or属性:sessionId: string;<br>旧版本信息:|类名:SessionToken;<br>方法or属性:sessionId: string;<br>新版本信息:string|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVSessionDescriptor;<br>方法or属性:sessionId: string;<br>旧版本信息:|类名:AVSessionDescriptor;<br>方法or属性:sessionId: string;<br>新版本信息:string|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:SessionToken;<br>方法or属性:pid?: number;<br>旧版本信息:|类名:SessionToken;<br>方法or属性:pid?: number;<br>新版本信息:?number|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:SessionToken;<br>方法or属性:uid?: number;<br>旧版本信息:|类名:SessionToken;<br>方法or属性:uid?: number;<br>新版本信息:?number|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVMetadata;<br>方法or属性:assetId: string;<br>旧版本信息:|类名:AVMetadata;<br>方法or属性:assetId: string;<br>新版本信息:string|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVMetadata;<br>方法or属性:title?: string;<br>旧版本信息:|类名:AVMetadata;<br>方法or属性:title?: string;<br>新版本信息:?string|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVMediaDescription;<br>方法or属性:title?: string;<br>旧版本信息:|类名:AVMediaDescription;<br>方法or属性:title?: string;<br>新版本信息:?string|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVMetadata;<br>方法or属性:artist?: string;<br>旧版本信息:|类名:AVMetadata;<br>方法or属性:artist?: string;<br>新版本信息:?string|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVMetadata;<br>方法or属性:author?: string;<br>旧版本信息:|类名:AVMetadata;<br>方法or属性:author?: string;<br>新版本信息:?string|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVMetadata;<br>方法or属性:album?: string;<br>旧版本信息:|类名:AVMetadata;<br>方法or属性:album?: string;<br>新版本信息:?string|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVMetadata;<br>方法or属性:writer?: string;<br>旧版本信息:|类名:AVMetadata;<br>方法or属性:writer?: string;<br>新版本信息:?string|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVMetadata;<br>方法or属性:composer?: string;<br>旧版本信息:|类名:AVMetadata;<br>方法or属性:composer?: string;<br>新版本信息:?string|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVMetadata;<br>方法or属性:duration?: number;<br>旧版本信息:|类名:AVMetadata;<br>方法or属性:duration?: number;<br>新版本信息:?number|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVMetadata;<br>方法or属性:publishDate?: Date;<br>旧版本信息:|类名:AVMetadata;<br>方法or属性:publishDate?: Date;<br>新版本信息:?Date|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVMetadata;<br>方法or属性:subtitle?: string;<br>旧版本信息:|类名:AVMetadata;<br>方法or属性:subtitle?: string;<br>新版本信息:?string|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVMediaDescription;<br>方法or属性:subtitle?: string;<br>旧版本信息:|类名:AVMediaDescription;<br>方法or属性:subtitle?: string;<br>新版本信息:?string|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVMetadata;<br>方法or属性:description?: string;<br>旧版本信息:|类名:AVMetadata;<br>方法or属性:description?: string;<br>新版本信息:?string|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVMediaDescription;<br>方法or属性:description?: string;<br>旧版本信息:|类名:AVMediaDescription;<br>方法or属性:description?: string;<br>新版本信息:?string|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVMetadata;<br>方法or属性:lyric?: string;<br>旧版本信息:|类名:AVMetadata;<br>方法or属性:lyric?: string;<br>新版本信息:?string|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVMetadata;<br>方法or属性:previousAssetId?: string;<br>旧版本信息:|类名:AVMetadata;<br>方法or属性:previousAssetId?: string;<br>新版本信息:?string|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVMetadata;<br>方法or属性:nextAssetId?: string;<br>旧版本信息:|类名:AVMetadata;<br>方法or属性:nextAssetId?: string;<br>新版本信息:?string|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVMediaDescription;<br>方法or属性:mediaId: string;<br>旧版本信息:|类名:AVMediaDescription;<br>方法or属性:mediaId: string;<br>新版本信息:string|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVMediaDescription;<br>方法or属性:iconUri?: string;<br>旧版本信息:|类名:AVMediaDescription;<br>方法or属性:iconUri?: string;<br>新版本信息:?string|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVMediaDescription;<br>方法or属性:mediaUri?: string;<br>旧版本信息:|类名:AVMediaDescription;<br>方法or属性:mediaUri?: string;<br>新版本信息:?string|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVQueueItem;<br>方法or属性:itemId: number;<br>旧版本信息:|类名:AVQueueItem;<br>方法or属性:itemId: number;<br>新版本信息:number|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVPlaybackState;<br>方法or属性:speed?: number;<br>旧版本信息:|类名:AVPlaybackState;<br>方法or属性:speed?: number;<br>新版本信息:?number|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVPlaybackState;<br>方法or属性:bufferedTime?: number;<br>旧版本信息:|类名:AVPlaybackState;<br>方法or属性:bufferedTime?: number;<br>新版本信息:?number|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVPlaybackState;<br>方法or属性:isFavorite?: boolean;<br>旧版本信息:|类名:AVPlaybackState;<br>方法or属性:isFavorite?: boolean;<br>新版本信息:?boolean|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVPlaybackState;<br>方法or属性:activeItemId?: number;<br>旧版本信息:|类名:AVPlaybackState;<br>方法or属性:activeItemId?: number;<br>新版本信息:?number|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:PlaybackPosition;<br>方法or属性:elapsedTime: number;<br>旧版本信息:|类名:PlaybackPosition;<br>方法or属性:elapsedTime: number;<br>新版本信息:number|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:PlaybackPosition;<br>方法or属性:updateTime: number;<br>旧版本信息:|类名:PlaybackPosition;<br>方法or属性:updateTime: number;<br>新版本信息:number|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVSessionDescriptor;<br>方法or属性:sessionTag: string;<br>旧版本信息:|类名:AVSessionDescriptor;<br>方法or属性:sessionTag: string;<br>新版本信息:string|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVSessionDescriptor;<br>方法or属性:isActive: boolean;<br>旧版本信息:|类名:AVSessionDescriptor;<br>方法or属性:isActive: boolean;<br>新版本信息:boolean|@ohos.multimedia.avsession.d.ts|
|type有变化|类名:AVSessionDescriptor;<br>方法or属性:isTopSession: boolean;<br>旧版本信息:|类名:AVSessionDescriptor;<br>方法or属性:isTopSession: boolean;<br>新版本信息:boolean|@ohos.multimedia.avsession.d.ts|
|函数有变化|类名:AudioRendererInfo;<br>方法or属性:content: ContentType;|类名:AudioRendererInfo;<br>方法or属性:content?: ContentType;|@ohos.multimedia.audio.d.ts|
|函数有变化|类名:SessionToken;<br>方法or属性:pid: number;|类名:SessionToken;<br>方法or属性:pid?: number;|@ohos.multimedia.avsession.d.ts|
|函数有变化|类名:SessionToken;<br>方法or属性:uid: number;|类名:SessionToken;<br>方法or属性:uid?: number;|@ohos.multimedia.avsession.d.ts|
|函数有变化|类名:AVMediaDescription;<br>方法or属性:icon?: image.PixelMap \| string;|类名:AVMediaDescription;<br>方法or属性:icon?: image.PixelMap;|@ohos.multimedia.avsession.d.ts|
|函数有变化|类名:CameraInput;<br>方法or属性:on(type: 'error', camera: CameraDevice, callback: ErrorCallback\<BusinessError>): void;|类名:CameraInput;<br>方法or属性:on(type: 'error', camera: CameraDevice, callback: ErrorCallback): void;|@ohos.multimedia.camera.d.ts|
|函数有变化|类名:CaptureSession;<br>方法or属性:on(type: 'error', callback: ErrorCallback\<BusinessError>): void;|类名:CaptureSession;<br>方法or属性:on(type: 'error', callback: ErrorCallback): void;|@ohos.multimedia.camera.d.ts|
|函数有变化|类名:PreviewOutput;<br>方法or属性:on(type: 'error', callback: ErrorCallback\<BusinessError>): void;|类名:PreviewOutput;<br>方法or属性:on(type: 'error', callback: ErrorCallback): void;|@ohos.multimedia.camera.d.ts|
|函数有变化|类名:PhotoOutput;<br>方法or属性:on(type: 'error', callback: ErrorCallback\<BusinessError>): void;|类名:PhotoOutput;<br>方法or属性:on(type: 'error', callback: ErrorCallback): void;|@ohos.multimedia.camera.d.ts|
|函数有变化|类名:VideoOutput;<br>方法or属性:on(type: 'error', callback: ErrorCallback\<BusinessError>): void;|类名:VideoOutput;<br>方法or属性:on(type: 'error', callback: ErrorCallback): void;|@ohos.multimedia.camera.d.ts|
|函数有变化|类名:MetadataOutput;<br>方法or属性:on(type: 'error', callback: ErrorCallback\<BusinessError>): void;|类名:MetadataOutput;<br>方法or属性:on(type: 'error', callback: ErrorCallback): void;|@ohos.multimedia.camera.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|新增|NA|类名:Support;<br>方法or属性:COMMON_EVENT_CHARGE_IDLE_MODE_CHANGED = 'usual.event.CHARGE_IDLE_MODE_CHANGED'|@ohos.commonEventManager.d.ts|
|新增|NA|类名:emitter;<br>方法or属性:function off(eventId: number, callback: Callback\<EventData>): void;|@ohos.events.emitter.d.ts|
|新增|NA|类名:notificationSubscribe;<br>方法or属性:function remove(hashCodes: Array\<String>, reason: RemoveReason, callback: AsyncCallback\<void>): void;|@ohos.notificationSubscribe.d.ts|
|新增|NA|类名:notificationSubscribe;<br>方法or属性:function remove(hashCodes: Array\<String>, reason: RemoveReason): Promise\<void>;|@ohos.notificationSubscribe.d.ts|
|错误码有变化|类名:reminderAgentManager;<br>方法or属性:function publishReminder(reminderReq: ReminderRequest, callback: AsyncCallback\<number>): void;<br>旧版本信息:401|类名:reminderAgentManager;<br>方法or属性:function publishReminder(reminderReq: ReminderRequest, callback: AsyncCallback\<number>): void;<br>新版本信息:401,1700001,1700002|@ohos.reminderAgentManager.d.ts|
|错误码有变化|类名:reminderAgentManager;<br>方法or属性:function publishReminder(reminderReq: ReminderRequest): Promise\<number>;<br>旧版本信息:401|类名:reminderAgentManager;<br>方法or属性:function publishReminder(reminderReq: ReminderRequest): Promise\<number>;<br>新版本信息:401,1700001,1700002|@ohos.reminderAgentManager.d.ts|
|错误码有变化|类名:reminderAgentManager;<br>方法or属性:function cancelReminder(reminderId: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:401|类名:reminderAgentManager;<br>方法or属性:function cancelReminder(reminderId: number, callback: AsyncCallback\<void>): void;<br>新版本信息:401,1700003,1700004|@ohos.reminderAgentManager.d.ts|
|错误码有变化|类名:reminderAgentManager;<br>方法or属性:function cancelReminder(reminderId: number): Promise\<void>;<br>旧版本信息:401|类名:reminderAgentManager;<br>方法or属性:function cancelReminder(reminderId: number): Promise\<void>;<br>新版本信息:401,1700003,1700004|@ohos.reminderAgentManager.d.ts|
|错误码有变化|类名:reminderAgentManager;<br>方法or属性:function getValidReminders(callback: AsyncCallback\<Array\<ReminderRequest>>): void;<br>旧版本信息:401|类名:reminderAgentManager;<br>方法or属性:function getValidReminders(callback: AsyncCallback\<Array\<ReminderRequest>>): void;<br>新版本信息:401,1700004|@ohos.reminderAgentManager.d.ts|
|错误码有变化|类名:reminderAgentManager;<br>方法or属性:function getValidReminders(): Promise\<Array\<ReminderRequest>>;<br>旧版本信息:401|类名:reminderAgentManager;<br>方法or属性:function getValidReminders(): Promise\<Array\<ReminderRequest>>;<br>新版本信息:401,1700004|@ohos.reminderAgentManager.d.ts|
|错误码有变化|类名:reminderAgentManager;<br>方法or属性:function cancelAllReminders(callback: AsyncCallback\<void>): void;<br>旧版本信息:401|类名:reminderAgentManager;<br>方法or属性:function cancelAllReminders(callback: AsyncCallback\<void>): void;<br>新版本信息:401,1700004|@ohos.reminderAgentManager.d.ts|
|错误码有变化|类名:reminderAgentManager;<br>方法or属性:function cancelAllReminders(): Promise\<void>;<br>旧版本信息:401|类名:reminderAgentManager;<br>方法or属性:function cancelAllReminders(): Promise\<void>;<br>新版本信息:401,1700004|@ohos.reminderAgentManager.d.ts|
|访问级别有变化|类名:notification;<br>方法or属性:function publish(request: NotificationRequest, userId: number): Promise\<void>;<br>旧版本信息:|类名:notification;<br>方法or属性:function publish(request: NotificationRequest, userId: number): Promise\<void>;<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:notification;<br>方法or属性:function isNotificationEnabled(userId: number): Promise\<boolean>;<br>旧版本信息:|类名:notification;<br>方法or属性:function isNotificationEnabled(userId: number): Promise\<boolean>;<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:notification;<br>方法or属性:function removeAll(userId: number): Promise\<void>;<br>旧版本信息:|类名:notification;<br>方法or属性:function removeAll(userId: number): Promise\<void>;<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:notification;<br>方法or属性:function removeGroupByBundle(bundle: BundleOption, groupName: string): Promise\<void>;<br>旧版本信息:|类名:notification;<br>方法or属性:function removeGroupByBundle(bundle: BundleOption, groupName: string): Promise\<void>;<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:notification;<br>方法or属性:function setDoNotDisturbDate(date: DoNotDisturbDate): Promise\<void>;<br>旧版本信息:|类名:notification;<br>方法or属性:function setDoNotDisturbDate(date: DoNotDisturbDate): Promise\<void>;<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:notification;<br>方法or属性:function setDoNotDisturbDate(date: DoNotDisturbDate, userId: number): Promise\<void>;<br>旧版本信息:|类名:notification;<br>方法or属性:function setDoNotDisturbDate(date: DoNotDisturbDate, userId: number): Promise\<void>;<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:notification;<br>方法or属性:function getDoNotDisturbDate(): Promise\<DoNotDisturbDate>;<br>旧版本信息:|类名:notification;<br>方法or属性:function getDoNotDisturbDate(): Promise\<DoNotDisturbDate>;<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:notification;<br>方法or属性:function getDoNotDisturbDate(userId: number): Promise\<DoNotDisturbDate>;<br>旧版本信息:|类名:notification;<br>方法or属性:function getDoNotDisturbDate(userId: number): Promise\<DoNotDisturbDate>;<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:notification;<br>方法or属性:function supportDoNotDisturbMode(): Promise\<boolean>;<br>旧版本信息:|类名:notification;<br>方法or属性:function supportDoNotDisturbMode(): Promise\<boolean>;<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:notification;<br>方法or属性:function enableDistributed(enable: boolean): Promise\<void>;<br>旧版本信息:|类名:notification;<br>方法or属性:function enableDistributed(enable: boolean): Promise\<void>;<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:notification;<br>方法or属性:function enableDistributedByBundle(bundle: BundleOption, enable: boolean): Promise\<void>;<br>旧版本信息:|类名:notification;<br>方法or属性:function enableDistributedByBundle(bundle: BundleOption, enable: boolean): Promise\<void>;<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:notification;<br>方法or属性:function isDistributedEnabledByBundle(bundle: BundleOption): Promise\<boolean>;<br>旧版本信息:|类名:notification;<br>方法or属性:function isDistributedEnabledByBundle(bundle: BundleOption): Promise\<boolean>;<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:notification;<br>方法or属性:function getDeviceRemindType(): Promise\<DeviceRemindType>;<br>旧版本信息:|类名:notification;<br>方法or属性:function getDeviceRemindType(): Promise\<DeviceRemindType>;<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:DoNotDisturbType;<br>方法or属性:TYPE_NONE = 0<br>旧版本信息:|类名:DoNotDisturbType;<br>方法or属性:TYPE_NONE = 0<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:DoNotDisturbType;<br>方法or属性:TYPE_ONCE = 1<br>旧版本信息:|类名:DoNotDisturbType;<br>方法or属性:TYPE_ONCE = 1<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:DoNotDisturbType;<br>方法or属性:TYPE_DAILY = 2<br>旧版本信息:|类名:DoNotDisturbType;<br>方法or属性:TYPE_DAILY = 2<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:DoNotDisturbType;<br>方法or属性:TYPE_CLEARLY = 3<br>旧版本信息:|类名:DoNotDisturbType;<br>方法or属性:TYPE_CLEARLY = 3<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:DoNotDisturbDate;<br>方法or属性:type: DoNotDisturbType;<br>旧版本信息:|类名:DoNotDisturbDate;<br>方法or属性:type: DoNotDisturbType;<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:DoNotDisturbDate;<br>方法or属性:begin: Date;<br>旧版本信息:|类名:DoNotDisturbDate;<br>方法or属性:begin: Date;<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:DoNotDisturbDate;<br>方法or属性:end: Date;<br>旧版本信息:|类名:DoNotDisturbDate;<br>方法or属性:end: Date;<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:DeviceRemindType;<br>方法or属性:IDLE_DONOT_REMIND = 0<br>旧版本信息:|类名:DeviceRemindType;<br>方法or属性:IDLE_DONOT_REMIND = 0<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:DeviceRemindType;<br>方法or属性:IDLE_REMIND = 1<br>旧版本信息:|类名:DeviceRemindType;<br>方法or属性:IDLE_REMIND = 1<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:DeviceRemindType;<br>方法or属性:ACTIVE_DONOT_REMIND = 2<br>旧版本信息:|类名:DeviceRemindType;<br>方法or属性:ACTIVE_DONOT_REMIND = 2<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:DeviceRemindType;<br>方法or属性:ACTIVE_REMIND = 3<br>旧版本信息:|类名:DeviceRemindType;<br>方法or属性:ACTIVE_REMIND = 3<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:SourceType;<br>方法or属性:TYPE_NORMAL = 0<br>旧版本信息:|类名:SourceType;<br>方法or属性:TYPE_NORMAL = 0<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:SourceType;<br>方法or属性:TYPE_CONTINUOUS = 1<br>旧版本信息:|类名:SourceType;<br>方法or属性:TYPE_CONTINUOUS = 1<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:SourceType;<br>方法or属性:TYPE_TIMER = 2<br>旧版本信息:|类名:SourceType;<br>方法or属性:TYPE_TIMER = 2<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:RemoveReason;<br>方法or属性:CLICK_REASON_REMOVE = 1<br>旧版本信息:|类名:RemoveReason;<br>方法or属性:CLICK_REASON_REMOVE = 1<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:RemoveReason;<br>方法or属性:CANCEL_REASON_REMOVE = 2<br>旧版本信息:|类名:RemoveReason;<br>方法or属性:CANCEL_REASON_REMOVE = 2<br>新版本信息:systemapi|@ohos.notification.d.ts|
|访问级别有变化|类名:NotificationCheckInfo;<br>方法or属性:bundleName: string;<br>旧版本信息:|类名:NotificationCheckInfo;<br>方法or属性:bundleName: string;<br>新版本信息:systemapi|@ohos.notificationManager.d.ts|
|访问级别有变化|类名:NotificationCheckInfo;<br>方法or属性:notificationId: number;<br>旧版本信息:|类名:NotificationCheckInfo;<br>方法or属性:notificationId: number;<br>新版本信息:systemapi|@ohos.notificationManager.d.ts|
|访问级别有变化|类名:NotificationCheckInfo;<br>方法or属性:contentType: ContentType;<br>旧版本信息:|类名:NotificationCheckInfo;<br>方法or属性:contentType: ContentType;<br>新版本信息:systemapi|@ohos.notificationManager.d.ts|
|访问级别有变化|类名:NotificationCheckResult;<br>方法or属性:code: number;<br>旧版本信息:|类名:NotificationCheckResult;<br>方法or属性:code: number;<br>新版本信息:systemapi|@ohos.notificationManager.d.ts|
|访问级别有变化|类名:NotificationCheckResult;<br>方法or属性:message: string;<br>旧版本信息:|类名:NotificationCheckResult;<br>方法or属性:message: string;<br>新版本信息:systemapi|@ohos.notificationManager.d.ts|
|访问级别有变化|类名:DoNotDisturbType;<br>方法or属性:TYPE_NONE = 0<br>旧版本信息:|类名:DoNotDisturbType;<br>方法or属性:TYPE_NONE = 0<br>新版本信息:systemapi|@ohos.notificationManager.d.ts|
|访问级别有变化|类名:DoNotDisturbType;<br>方法or属性:TYPE_ONCE = 1<br>旧版本信息:|类名:DoNotDisturbType;<br>方法or属性:TYPE_ONCE = 1<br>新版本信息:systemapi|@ohos.notificationManager.d.ts|
|访问级别有变化|类名:DoNotDisturbType;<br>方法or属性:TYPE_DAILY = 2<br>旧版本信息:|类名:DoNotDisturbType;<br>方法or属性:TYPE_DAILY = 2<br>新版本信息:systemapi|@ohos.notificationManager.d.ts|
|访问级别有变化|类名:DoNotDisturbType;<br>方法or属性:TYPE_CLEARLY = 3<br>旧版本信息:|类名:DoNotDisturbType;<br>方法or属性:TYPE_CLEARLY = 3<br>新版本信息:systemapi|@ohos.notificationManager.d.ts|
|访问级别有变化|类名:DoNotDisturbDate;<br>方法or属性:type: DoNotDisturbType;<br>旧版本信息:|类名:DoNotDisturbDate;<br>方法or属性:type: DoNotDisturbType;<br>新版本信息:systemapi|@ohos.notificationManager.d.ts|
|访问级别有变化|类名:DoNotDisturbDate;<br>方法or属性:begin: Date;<br>旧版本信息:|类名:DoNotDisturbDate;<br>方法or属性:begin: Date;<br>新版本信息:systemapi|@ohos.notificationManager.d.ts|
|访问级别有变化|类名:DoNotDisturbDate;<br>方法or属性:end: Date;<br>旧版本信息:|类名:DoNotDisturbDate;<br>方法or属性:end: Date;<br>新版本信息:systemapi|@ohos.notificationManager.d.ts|
|访问级别有变化|类名:DeviceRemindType;<br>方法or属性:IDLE_DONOT_REMIND = 0<br>旧版本信息:|类名:DeviceRemindType;<br>方法or属性:IDLE_DONOT_REMIND = 0<br>新版本信息:systemapi|@ohos.notificationManager.d.ts|
|访问级别有变化|类名:DeviceRemindType;<br>方法or属性:IDLE_REMIND = 1<br>旧版本信息:|类名:DeviceRemindType;<br>方法or属性:IDLE_REMIND = 1<br>新版本信息:systemapi|@ohos.notificationManager.d.ts|
|访问级别有变化|类名:DeviceRemindType;<br>方法or属性:ACTIVE_DONOT_REMIND = 2<br>旧版本信息:|类名:DeviceRemindType;<br>方法or属性:ACTIVE_DONOT_REMIND = 2<br>新版本信息:systemapi|@ohos.notificationManager.d.ts|
|访问级别有变化|类名:DeviceRemindType;<br>方法or属性:ACTIVE_REMIND = 3<br>旧版本信息:|类名:DeviceRemindType;<br>方法or属性:ACTIVE_REMIND = 3<br>新版本信息:systemapi|@ohos.notificationManager.d.ts|
|访问级别有变化|类名:SourceType;<br>方法or属性:TYPE_NORMAL = 0<br>旧版本信息:|类名:SourceType;<br>方法or属性:TYPE_NORMAL = 0<br>新版本信息:systemapi|@ohos.notificationManager.d.ts|
|访问级别有变化|类名:SourceType;<br>方法or属性:TYPE_CONTINUOUS = 1<br>旧版本信息:|类名:SourceType;<br>方法or属性:TYPE_CONTINUOUS = 1<br>新版本信息:systemapi|@ohos.notificationManager.d.ts|
|访问级别有变化|类名:SourceType;<br>方法or属性:TYPE_TIMER = 2<br>旧版本信息:|类名:SourceType;<br>方法or属性:TYPE_TIMER = 2<br>新版本信息:systemapi|@ohos.notificationManager.d.ts|
|访问级别有变化|类名:notificationSubscribe;<br>方法or属性:export type BundleOption = _BundleOption;<br>旧版本信息:|类名:notificationSubscribe;<br>方法or属性:export type BundleOption = _BundleOption;<br>新版本信息:systemapi|@ohos.notificationSubscribe.d.ts|
|访问级别有变化|类名:NotificationKey;<br>方法or属性:id: number;<br>旧版本信息:|类名:NotificationKey;<br>方法or属性:id: number;<br>新版本信息:systemapi|@ohos.notificationSubscribe.d.ts|
|访问级别有变化|类名:NotificationKey;<br>方法or属性:label?: string;<br>旧版本信息:|类名:NotificationKey;<br>方法or属性:label?: string;<br>新版本信息:systemapi|@ohos.notificationSubscribe.d.ts|
|访问级别有变化|类名:RemoveReason;<br>方法or属性:CLICK_REASON_REMOVE = 1<br>旧版本信息:|类名:RemoveReason;<br>方法or属性:CLICK_REASON_REMOVE = 1<br>新版本信息:systemapi|@ohos.notificationSubscribe.d.ts|
|访问级别有变化|类名:RemoveReason;<br>方法or属性:CANCEL_REASON_REMOVE = 2<br>旧版本信息:|类名:RemoveReason;<br>方法or属性:CANCEL_REASON_REMOVE = 2<br>新版本信息:systemapi|@ohos.notificationSubscribe.d.ts|
|访问级别有变化|类名:NotificationSorting;<br>方法or属性:readonly slot: NotificationSlot;<br>旧版本信息:|类名:NotificationSorting;<br>方法or属性:readonly slot: NotificationSlot;<br>新版本信息:systemapi|notificationSorting.d.ts|
|访问级别有变化|类名:NotificationSorting;<br>方法or属性:readonly hashCode: string;<br>旧版本信息:|类名:NotificationSorting;<br>方法or属性:readonly hashCode: string;<br>新版本信息:systemapi|notificationSorting.d.ts|
|访问级别有变化|类名:NotificationSorting;<br>方法or属性:readonly ranking: number;<br>旧版本信息:|类名:NotificationSorting;<br>方法or属性:readonly ranking: number;<br>新版本信息:systemapi|notificationSorting.d.ts|
|访问级别有变化|类名:NotificationSortingMap;<br>方法or属性:readonly sortings: { [key: string]: NotificationSorting };<br>旧版本信息:|类名:NotificationSortingMap;<br>方法or属性:readonly sortings: { [key: string]: NotificationSorting };<br>新版本信息:systemapi|notificationSortingMap.d.ts|
|访问级别有变化|类名:NotificationSortingMap;<br>方法or属性:readonly sortedHashCode: Array\<string>;<br>旧版本信息:|类名:NotificationSortingMap;<br>方法or属性:readonly sortedHashCode: Array\<string>;<br>新版本信息:systemapi|notificationSortingMap.d.ts|
|访问级别有变化|类名:NotificationSubscribeInfo;<br>方法or属性:bundleNames?: Array\<string>;<br>旧版本信息:|类名:NotificationSubscribeInfo;<br>方法or属性:bundleNames?: Array\<string>;<br>新版本信息:systemapi|notificationSubscribeInfo.d.ts|
|访问级别有变化|类名:NotificationSubscribeInfo;<br>方法or属性:userId?: number;<br>旧版本信息:|类名:NotificationSubscribeInfo;<br>方法or属性:userId?: number;<br>新版本信息:systemapi|notificationSubscribeInfo.d.ts|
|访问级别有变化|类名:NotificationSubscriber;<br>方法or属性:onConsume?: (data: SubscribeCallbackData) => void;<br>旧版本信息:|类名:NotificationSubscriber;<br>方法or属性:onConsume?: (data: SubscribeCallbackData) => void;<br>新版本信息:systemapi|notificationSubscriber.d.ts|
|访问级别有变化|类名:NotificationSubscriber;<br>方法or属性:onCancel?: (data: SubscribeCallbackData) => void;<br>旧版本信息:|类名:NotificationSubscriber;<br>方法or属性:onCancel?: (data: SubscribeCallbackData) => void;<br>新版本信息:systemapi|notificationSubscriber.d.ts|
|访问级别有变化|类名:NotificationSubscriber;<br>方法or属性:onUpdate?: (data: NotificationSortingMap) => void;<br>旧版本信息:|类名:NotificationSubscriber;<br>方法or属性:onUpdate?: (data: NotificationSortingMap) => void;<br>新版本信息:systemapi|notificationSubscriber.d.ts|
|访问级别有变化|类名:NotificationSubscriber;<br>方法or属性:onConnect?: () => void;<br>旧版本信息:|类名:NotificationSubscriber;<br>方法or属性:onConnect?: () => void;<br>新版本信息:systemapi|notificationSubscriber.d.ts|
|访问级别有变化|类名:NotificationSubscriber;<br>方法or属性:onDisconnect?: () => void;<br>旧版本信息:|类名:NotificationSubscriber;<br>方法or属性:onDisconnect?: () => void;<br>新版本信息:systemapi|notificationSubscriber.d.ts|
|访问级别有变化|类名:NotificationSubscriber;<br>方法or属性:onDestroy?: () => void;<br>旧版本信息:|类名:NotificationSubscriber;<br>方法or属性:onDestroy?: () => void;<br>新版本信息:systemapi|notificationSubscriber.d.ts|
|访问级别有变化|类名:NotificationSubscriber;<br>方法or属性:onDoNotDisturbDateChange?: (mode: notification.DoNotDisturbDate) => void;<br>旧版本信息:|类名:NotificationSubscriber;<br>方法or属性:onDoNotDisturbDateChange?: (mode: notification.DoNotDisturbDate) => void;<br>新版本信息:systemapi|notificationSubscriber.d.ts|
|访问级别有变化|类名:NotificationSubscriber;<br>方法or属性:onEnabledNotificationChanged?: (callbackData: EnabledNotificationCallbackData) => void;<br>旧版本信息:|类名:NotificationSubscriber;<br>方法or属性:onEnabledNotificationChanged?: (callbackData: EnabledNotificationCallbackData) => void;<br>新版本信息:systemapi|notificationSubscriber.d.ts|
|访问级别有变化|类名:NotificationSubscriber;<br>方法or属性:onBadgeChanged?: (data: BadgeNumberCallbackData) => void;<br>旧版本信息:|类名:NotificationSubscriber;<br>方法or属性:onBadgeChanged?: (data: BadgeNumberCallbackData) => void;<br>新版本信息:systemapi|notificationSubscriber.d.ts|
|访问级别有变化|类名:SubscribeCallbackData;<br>方法or属性:readonly request: NotificationRequest;<br>旧版本信息:|类名:SubscribeCallbackData;<br>方法or属性:readonly request: NotificationRequest;<br>新版本信息:systemapi|notificationSubscriber.d.ts|
|访问级别有变化|类名:SubscribeCallbackData;<br>方法or属性:readonly sortingMap?: NotificationSortingMap;<br>旧版本信息:|类名:SubscribeCallbackData;<br>方法or属性:readonly sortingMap?: NotificationSortingMap;<br>新版本信息:systemapi|notificationSubscriber.d.ts|
|访问级别有变化|类名:SubscribeCallbackData;<br>方法or属性:readonly reason?: number;<br>旧版本信息:|类名:SubscribeCallbackData;<br>方法or属性:readonly reason?: number;<br>新版本信息:systemapi|notificationSubscriber.d.ts|
|访问级别有变化|类名:SubscribeCallbackData;<br>方法or属性:readonly sound?: string;<br>旧版本信息:|类名:SubscribeCallbackData;<br>方法or属性:readonly sound?: string;<br>新版本信息:systemapi|notificationSubscriber.d.ts|
|访问级别有变化|类名:SubscribeCallbackData;<br>方法or属性:readonly vibrationValues?: Array\<number>;<br>旧版本信息:|类名:SubscribeCallbackData;<br>方法or属性:readonly vibrationValues?: Array\<number>;<br>新版本信息:systemapi|notificationSubscriber.d.ts|
|访问级别有变化|类名:EnabledNotificationCallbackData;<br>方法or属性:readonly bundle: string;<br>旧版本信息:|类名:EnabledNotificationCallbackData;<br>方法or属性:readonly bundle: string;<br>新版本信息:systemapi|notificationSubscriber.d.ts|
|访问级别有变化|类名:BadgeNumberCallbackData;<br>方法or属性:readonly bundle: string;<br>旧版本信息:|类名:BadgeNumberCallbackData;<br>方法or属性:readonly bundle: string;<br>新版本信息:systemapi|notificationSubscriber.d.ts|
|访问级别有变化|类名:EnabledNotificationCallbackData;<br>方法or属性:readonly uid: number;<br>旧版本信息:|类名:EnabledNotificationCallbackData;<br>方法or属性:readonly uid: number;<br>新版本信息:systemapi|notificationSubscriber.d.ts|
|访问级别有变化|类名:BadgeNumberCallbackData;<br>方法or属性:readonly uid: number;<br>旧版本信息:|类名:BadgeNumberCallbackData;<br>方法or属性:readonly uid: number;<br>新版本信息:systemapi|notificationSubscriber.d.ts|
|访问级别有变化|类名:EnabledNotificationCallbackData;<br>方法or属性:readonly enable: boolean;<br>旧版本信息:|类名:EnabledNotificationCallbackData;<br>方法or属性:readonly enable: boolean;<br>新版本信息:systemapi|notificationSubscriber.d.ts|
|访问级别有变化|类名:BadgeNumberCallbackData;<br>方法or属性:readonly badgeNumber: number;<br>旧版本信息:|类名:BadgeNumberCallbackData;<br>方法or属性:readonly badgeNumber: number;<br>新版本信息:systemapi|notificationSubscriber.d.ts|
|权限有变化|类名:notification;<br>方法or属性:function publish(request: NotificationRequest, userId: number): Promise\<void>;<br>旧版本信息:|类名:notification;<br>方法or属性:function publish(request: NotificationRequest, userId: number): Promise\<void>;<br>新版本信息:ohos.permission.NOTIFICATION_CONTROLLER|@ohos.notification.d.ts|
|权限有变化|类名:notification;<br>方法or属性:function isNotificationEnabled(userId: number): Promise\<boolean>;<br>旧版本信息:|类名:notification;<br>方法or属性:function isNotificationEnabled(userId: number): Promise\<boolean>;<br>新版本信息:ohos.permission.NOTIFICATION_CONTROLLER|@ohos.notification.d.ts|
|权限有变化|类名:notification;<br>方法or属性:function removeAll(userId: number): Promise\<void>;<br>旧版本信息:|类名:notification;<br>方法or属性:function removeAll(userId: number): Promise\<void>;<br>新版本信息:ohos.permission.NOTIFICATION_CONTROLLER|@ohos.notification.d.ts|
|权限有变化|类名:notification;<br>方法or属性:function removeGroupByBundle(bundle: BundleOption, groupName: string): Promise\<void>;<br>旧版本信息:|类名:notification;<br>方法or属性:function removeGroupByBundle(bundle: BundleOption, groupName: string): Promise\<void>;<br>新版本信息:ohos.permission.NOTIFICATION_CONTROLLER|@ohos.notification.d.ts|
|权限有变化|类名:notification;<br>方法or属性:function setDoNotDisturbDate(date: DoNotDisturbDate): Promise\<void>;<br>旧版本信息:|类名:notification;<br>方法or属性:function setDoNotDisturbDate(date: DoNotDisturbDate): Promise\<void>;<br>新版本信息:ohos.permission.NOTIFICATION_CONTROLLER|@ohos.notification.d.ts|
|权限有变化|类名:notification;<br>方法or属性:function setDoNotDisturbDate(date: DoNotDisturbDate, userId: number): Promise\<void>;<br>旧版本信息:|类名:notification;<br>方法or属性:function setDoNotDisturbDate(date: DoNotDisturbDate, userId: number): Promise\<void>;<br>新版本信息:ohos.permission.NOTIFICATION_CONTROLLER|@ohos.notification.d.ts|
|权限有变化|类名:notification;<br>方法or属性:function getDoNotDisturbDate(): Promise\<DoNotDisturbDate>;<br>旧版本信息:|类名:notification;<br>方法or属性:function getDoNotDisturbDate(): Promise\<DoNotDisturbDate>;<br>新版本信息:ohos.permission.NOTIFICATION_CONTROLLER|@ohos.notification.d.ts|
|权限有变化|类名:notification;<br>方法or属性:function getDoNotDisturbDate(userId: number): Promise\<DoNotDisturbDate>;<br>旧版本信息:|类名:notification;<br>方法or属性:function getDoNotDisturbDate(userId: number): Promise\<DoNotDisturbDate>;<br>新版本信息:ohos.permission.NOTIFICATION_CONTROLLER|@ohos.notification.d.ts|
|权限有变化|类名:notification;<br>方法or属性:function supportDoNotDisturbMode(): Promise\<boolean>;<br>旧版本信息:|类名:notification;<br>方法or属性:function supportDoNotDisturbMode(): Promise\<boolean>;<br>新版本信息:ohos.permission.NOTIFICATION_CONTROLLER|@ohos.notification.d.ts|
|权限有变化|类名:notification;<br>方法or属性:function enableDistributed(enable: boolean): Promise\<void>;<br>旧版本信息:|类名:notification;<br>方法or属性:function enableDistributed(enable: boolean): Promise\<void>;<br>新版本信息:ohos.permission.NOTIFICATION_CONTROLLER|@ohos.notification.d.ts|
|权限有变化|类名:notification;<br>方法or属性:function enableDistributedByBundle(bundle: BundleOption, enable: boolean): Promise\<void>;<br>旧版本信息:|类名:notification;<br>方法or属性:function enableDistributedByBundle(bundle: BundleOption, enable: boolean): Promise\<void>;<br>新版本信息:ohos.permission.NOTIFICATION_CONTROLLER|@ohos.notification.d.ts|
|权限有变化|类名:notification;<br>方法or属性:function isDistributedEnabledByBundle(bundle: BundleOption): Promise\<boolean>;<br>旧版本信息:|类名:notification;<br>方法or属性:function isDistributedEnabledByBundle(bundle: BundleOption): Promise\<boolean>;<br>新版本信息:ohos.permission.NOTIFICATION_CONTROLLER|@ohos.notification.d.ts|
|权限有变化|类名:notification;<br>方法or属性:function getDeviceRemindType(): Promise\<DeviceRemindType>;<br>旧版本信息:|类名:notification;<br>方法or属性:function getDeviceRemindType(): Promise\<DeviceRemindType>;<br>新版本信息:ohos.permission.NOTIFICATION_CONTROLLER|@ohos.notification.d.ts|
|权限有变化|类名:NotificationCheckInfo;<br>方法or属性:bundleName: string;<br>旧版本信息:|类名:NotificationCheckInfo;<br>方法or属性:bundleName: string;<br>新版本信息:ohos.permission.NOTIFICATION_CONTROLLER,ohos.permission.NOTIFICATION_AGENT_CONTROLLER|@ohos.notificationManager.d.ts|
|权限有变化|类名:NotificationCheckInfo;<br>方法or属性:notificationId: number;<br>旧版本信息:|类名:NotificationCheckInfo;<br>方法or属性:notificationId: number;<br>新版本信息:ohos.permission.NOTIFICATION_CONTROLLER,ohos.permission.NOTIFICATION_AGENT_CONTROLLER|@ohos.notificationManager.d.ts|
|权限有变化|类名:NotificationCheckInfo;<br>方法or属性:contentType: ContentType;<br>旧版本信息:|类名:NotificationCheckInfo;<br>方法or属性:contentType: ContentType;<br>新版本信息:ohos.permission.NOTIFICATION_CONTROLLER,ohos.permission.NOTIFICATION_AGENT_CONTROLLER|@ohos.notificationManager.d.ts|
|权限有变化|类名:NotificationCheckResult;<br>方法or属性:code: number;<br>旧版本信息:|类名:NotificationCheckResult;<br>方法or属性:code: number;<br>新版本信息:ohos.permission.NOTIFICATION_CONTROLLER,ohos.permission.NOTIFICATION_AGENT_CONTROLLER|@ohos.notificationManager.d.ts|
|权限有变化|类名:NotificationCheckResult;<br>方法or属性:message: string;<br>旧版本信息:|类名:NotificationCheckResult;<br>方法or属性:message: string;<br>新版本信息:ohos.permission.NOTIFICATION_CONTROLLER,ohos.permission.NOTIFICATION_AGENT_CONTROLLER|@ohos.notificationManager.d.ts|
|type有变化|类名:EventData;<br>方法or属性:data?: { [key: string]: any };<br>旧版本信息:|类名:EventData;<br>方法or属性:data?: { [key: string]: any };<br>新版本信息:?object|@ohos.events.emitter.d.ts|
|type有变化|类名:InnerEvent;<br>方法or属性:eventId: number;<br>旧版本信息:|类名:InnerEvent;<br>方法or属性:eventId: number;<br>新版本信息:number|@ohos.events.emitter.d.ts|
|type有变化|类名:InnerEvent;<br>方法or属性:priority?: EventPriority;<br>旧版本信息:|类名:InnerEvent;<br>方法or属性:priority?: EventPriority;<br>新版本信息:?EventPriority|@ohos.events.emitter.d.ts|
|type有变化|类名:BundleOption;<br>方法or属性:bundle: string;<br>旧版本信息:|类名:BundleOption;<br>方法or属性:bundle: string;<br>新版本信息:string|@ohos.notification.d.ts|
|type有变化|类名:BundleOption;<br>方法or属性:uid?: number;<br>旧版本信息:|类名:BundleOption;<br>方法or属性:uid?: number;<br>新版本信息:?number|@ohos.notification.d.ts|
|type有变化|类名:NotificationKey;<br>方法or属性:id: number;<br>旧版本信息:|类名:NotificationKey;<br>方法or属性:id: number;<br>新版本信息:number|@ohos.notification.d.ts|
|type有变化|类名:NotificationKey;<br>方法or属性:label?: string;<br>旧版本信息:|类名:NotificationKey;<br>方法or属性:label?: string;<br>新版本信息:?string|@ohos.notification.d.ts|
|type有变化|类名:NotificationCheckInfo;<br>方法or属性:bundleName: string;<br>旧版本信息:|类名:NotificationCheckInfo;<br>方法or属性:bundleName: string;<br>新版本信息:string|@ohos.notificationManager.d.ts|
|type有变化|类名:NotificationCheckInfo;<br>方法or属性:notificationId: number;<br>旧版本信息:|类名:NotificationCheckInfo;<br>方法or属性:notificationId: number;<br>新版本信息:number|@ohos.notificationManager.d.ts|
|type有变化|类名:NotificationCheckInfo;<br>方法or属性:contentType: ContentType;<br>旧版本信息:|类名:NotificationCheckInfo;<br>方法or属性:contentType: ContentType;<br>新版本信息:ContentType|@ohos.notificationManager.d.ts|
|type有变化|类名:NotificationCheckResult;<br>方法or属性:code: number;<br>旧版本信息:|类名:NotificationCheckResult;<br>方法or属性:code: number;<br>新版本信息:number|@ohos.notificationManager.d.ts|
|type有变化|类名:NotificationCheckResult;<br>方法or属性:message: string;<br>旧版本信息:|类名:NotificationCheckResult;<br>方法or属性:message: string;<br>新版本信息:string|@ohos.notificationManager.d.ts|
|type有变化|类名:DoNotDisturbDate;<br>方法or属性:type: DoNotDisturbType;<br>旧版本信息:|类名:DoNotDisturbDate;<br>方法or属性:type: DoNotDisturbType;<br>新版本信息:DoNotDisturbType|@ohos.notificationManager.d.ts|
|type有变化|类名:DoNotDisturbDate;<br>方法or属性:begin: Date;<br>旧版本信息:|类名:DoNotDisturbDate;<br>方法or属性:begin: Date;<br>新版本信息:Date|@ohos.notificationManager.d.ts|
|type有变化|类名:DoNotDisturbDate;<br>方法or属性:end: Date;<br>旧版本信息:|类名:DoNotDisturbDate;<br>方法or属性:end: Date;<br>新版本信息:Date|@ohos.notificationManager.d.ts|
|type有变化|类名:NotificationKey;<br>方法or属性:id: number;<br>旧版本信息:|类名:NotificationKey;<br>方法or属性:id: number;<br>新版本信息:number|@ohos.notificationSubscribe.d.ts|
|type有变化|类名:NotificationKey;<br>方法or属性:label?: string;<br>旧版本信息:|类名:NotificationKey;<br>方法or属性:label?: string;<br>新版本信息:?string|@ohos.notificationSubscribe.d.ts|
|type有变化|类名:ActionResult;<br>方法or属性:bundleName: string;<br>旧版本信息:|类名:ActionResult;<br>方法or属性:bundleName: string;<br>新版本信息:string|@system.notification.d.ts|
|type有变化|类名:ActionResult;<br>方法or属性:abilityName: string;<br>旧版本信息:|类名:ActionResult;<br>方法or属性:abilityName: string;<br>新版本信息:string|@system.notification.d.ts|
|type有变化|类名:ActionResult;<br>方法or属性:uri: string;<br>旧版本信息:|类名:ActionResult;<br>方法or属性:uri: string;<br>新版本信息:string|@system.notification.d.ts|
|type有变化|类名:ShowNotificationOptions;<br>方法or属性:contentTitle?: string;<br>旧版本信息:|类名:ShowNotificationOptions;<br>方法or属性:contentTitle?: string;<br>新版本信息:?string|@system.notification.d.ts|
|type有变化|类名:ShowNotificationOptions;<br>方法or属性:contentText?: string;<br>旧版本信息:|类名:ShowNotificationOptions;<br>方法or属性:contentText?: string;<br>新版本信息:?string|@system.notification.d.ts|
|type有变化|类名:ShowNotificationOptions;<br>方法or属性:clickAction?: ActionResult;<br>旧版本信息:|类名:ShowNotificationOptions;<br>方法or属性:clickAction?: ActionResult;<br>新版本信息:?ActionResult|@system.notification.d.ts|
|type有变化|类名:CommonEventData;<br>方法or属性:event: string;<br>旧版本信息:|类名:CommonEventData;<br>方法or属性:event: string;<br>新版本信息:string|commonEventData.d.ts|
|type有变化|类名:CommonEventData;<br>方法or属性:bundleName?: string;<br>旧版本信息:|类名:CommonEventData;<br>方法or属性:bundleName?: string;<br>新版本信息:?string|commonEventData.d.ts|
|type有变化|类名:CommonEventData;<br>方法or属性:code?: number;<br>旧版本信息:|类名:CommonEventData;<br>方法or属性:code?: number;<br>新版本信息:?number|commonEventData.d.ts|
|type有变化|类名:CommonEventData;<br>方法or属性:data?: string;<br>旧版本信息:|类名:CommonEventData;<br>方法or属性:data?: string;<br>新版本信息:?string|commonEventData.d.ts|
|type有变化|类名:CommonEventData;<br>方法or属性:parameters?: { [key: string]: any };<br>旧版本信息:|类名:CommonEventData;<br>方法or属性:parameters?: { [key: string]: any };<br>新版本信息:?object|commonEventData.d.ts|
|type有变化|类名:CommonEventPublishData;<br>方法or属性:bundleName?: string;<br>旧版本信息:|类名:CommonEventPublishData;<br>方法or属性:bundleName?: string;<br>新版本信息:?string|commonEventPublishData.d.ts|
|type有变化|类名:CommonEventPublishData;<br>方法or属性:code?: number;<br>旧版本信息:|类名:CommonEventPublishData;<br>方法or属性:code?: number;<br>新版本信息:?number|commonEventPublishData.d.ts|
|type有变化|类名:CommonEventPublishData;<br>方法or属性:data?: string;<br>旧版本信息:|类名:CommonEventPublishData;<br>方法or属性:data?: string;<br>新版本信息:?string|commonEventPublishData.d.ts|
|type有变化|类名:CommonEventPublishData;<br>方法or属性:subscriberPermissions?: Array\<string>;<br>旧版本信息:|类名:CommonEventPublishData;<br>方法or属性:subscriberPermissions?: Array\<string>;<br>新版本信息:?Array\<string>|commonEventPublishData.d.ts|
|type有变化|类名:CommonEventPublishData;<br>方法or属性:isOrdered?: boolean;<br>旧版本信息:|类名:CommonEventPublishData;<br>方法or属性:isOrdered?: boolean;<br>新版本信息:?boolean|commonEventPublishData.d.ts|
|type有变化|类名:CommonEventPublishData;<br>方法or属性:isSticky?: boolean;<br>旧版本信息:|类名:CommonEventPublishData;<br>方法or属性:isSticky?: boolean;<br>新版本信息:?boolean|commonEventPublishData.d.ts|
|type有变化|类名:CommonEventPublishData;<br>方法or属性:parameters?: { [key: string]: any };<br>旧版本信息:|类名:CommonEventPublishData;<br>方法or属性:parameters?: { [key: string]: any };<br>新版本信息:?object|commonEventPublishData.d.ts|
|type有变化|类名:CommonEventSubscribeInfo;<br>方法or属性:events: Array\<string>;<br>旧版本信息:|类名:CommonEventSubscribeInfo;<br>方法or属性:events: Array\<string>;<br>新版本信息:Array\<string>|commonEventSubscribeInfo.d.ts|
|type有变化|类名:CommonEventSubscribeInfo;<br>方法or属性:publisherPermission?: string;<br>旧版本信息:|类名:CommonEventSubscribeInfo;<br>方法or属性:publisherPermission?: string;<br>新版本信息:?string|commonEventSubscribeInfo.d.ts|
|type有变化|类名:CommonEventSubscribeInfo;<br>方法or属性:publisherDeviceId?: string;<br>旧版本信息:|类名:CommonEventSubscribeInfo;<br>方法or属性:publisherDeviceId?: string;<br>新版本信息:?string|commonEventSubscribeInfo.d.ts|
|type有变化|类名:CommonEventSubscribeInfo;<br>方法or属性:userId?: number;<br>旧版本信息:|类名:CommonEventSubscribeInfo;<br>方法or属性:userId?: number;<br>新版本信息:?number|commonEventSubscribeInfo.d.ts|
|type有变化|类名:CommonEventSubscribeInfo;<br>方法or属性:priority?: number;<br>旧版本信息:|类名:CommonEventSubscribeInfo;<br>方法or属性:priority?: number;<br>新版本信息:?number|commonEventSubscribeInfo.d.ts|
|type有变化|类名:NotificationActionButton;<br>方法or属性:title: string;<br>旧版本信息:|类名:NotificationActionButton;<br>方法or属性:title: string;<br>新版本信息:string|notificationActionButton.d.ts|
|type有变化|类名:NotificationActionButton;<br>方法or属性:wantAgent: WantAgent;<br>旧版本信息:|类名:NotificationActionButton;<br>方法or属性:wantAgent: WantAgent;<br>新版本信息:WantAgent|notificationActionButton.d.ts|
|type有变化|类名:NotificationActionButton;<br>方法or属性:extras?: { [key: string]: any };<br>旧版本信息:|类名:NotificationActionButton;<br>方法or属性:extras?: { [key: string]: any };<br>新版本信息:?object|notificationActionButton.d.ts|
|type有变化|类名:NotificationActionButton;<br>方法or属性:userInput?: NotificationUserInput;<br>旧版本信息:|类名:NotificationActionButton;<br>方法or属性:userInput?: NotificationUserInput;<br>新版本信息:?NotificationUserInput|notificationActionButton.d.ts|
|type有变化|类名:BundleOption;<br>方法or属性:bundle: string;<br>旧版本信息:|类名:BundleOption;<br>方法or属性:bundle: string;<br>新版本信息:string|NotificationCommonDef.d.ts|
|type有变化|类名:BundleOption;<br>方法or属性:uid?: number;<br>旧版本信息:|类名:BundleOption;<br>方法or属性:uid?: number;<br>新版本信息:?number|NotificationCommonDef.d.ts|
|type有变化|类名:NotificationBasicContent;<br>方法or属性:title: string;<br>旧版本信息:|类名:NotificationBasicContent;<br>方法or属性:title: string;<br>新版本信息:string|notificationContent.d.ts|
|type有变化|类名:NotificationBasicContent;<br>方法or属性:text: string;<br>旧版本信息:|类名:NotificationBasicContent;<br>方法or属性:text: string;<br>新版本信息:string|notificationContent.d.ts|
|type有变化|类名:NotificationBasicContent;<br>方法or属性:additionalText?: string;<br>旧版本信息:|类名:NotificationBasicContent;<br>方法or属性:additionalText?: string;<br>新版本信息:?string|notificationContent.d.ts|
|type有变化|类名:NotificationLongTextContent;<br>方法or属性:longText: string;<br>旧版本信息:|类名:NotificationLongTextContent;<br>方法or属性:longText: string;<br>新版本信息:string|notificationContent.d.ts|
|type有变化|类名:NotificationLongTextContent;<br>方法or属性:briefText: string;<br>旧版本信息:|类名:NotificationLongTextContent;<br>方法or属性:briefText: string;<br>新版本信息:string|notificationContent.d.ts|
|type有变化|类名:NotificationMultiLineContent;<br>方法or属性:briefText: string;<br>旧版本信息:|类名:NotificationMultiLineContent;<br>方法or属性:briefText: string;<br>新版本信息:string|notificationContent.d.ts|
|type有变化|类名:NotificationPictureContent;<br>方法or属性:briefText: string;<br>旧版本信息:|类名:NotificationPictureContent;<br>方法or属性:briefText: string;<br>新版本信息:string|notificationContent.d.ts|
|type有变化|类名:NotificationLongTextContent;<br>方法or属性:expandedTitle: string;<br>旧版本信息:|类名:NotificationLongTextContent;<br>方法or属性:expandedTitle: string;<br>新版本信息:string|notificationContent.d.ts|
|type有变化|类名:NotificationPictureContent;<br>方法or属性:expandedTitle: string;<br>旧版本信息:|类名:NotificationPictureContent;<br>方法or属性:expandedTitle: string;<br>新版本信息:string|notificationContent.d.ts|
|type有变化|类名:NotificationMultiLineContent;<br>方法or属性:longTitle: string;<br>旧版本信息:|类名:NotificationMultiLineContent;<br>方法or属性:longTitle: string;<br>新版本信息:string|notificationContent.d.ts|
|type有变化|类名:NotificationMultiLineContent;<br>方法or属性:lines: Array\<string>;<br>旧版本信息:|类名:NotificationMultiLineContent;<br>方法or属性:lines: Array\<string>;<br>新版本信息:Array\<string>|notificationContent.d.ts|
|type有变化|类名:NotificationPictureContent;<br>方法or属性:picture: image.PixelMap;<br>旧版本信息:|类名:NotificationPictureContent;<br>方法or属性:picture: image.PixelMap;<br>新版本信息:image.PixelMap|notificationContent.d.ts|
|type有变化|类名:NotificationContent;<br>方法or属性:contentType: notification.ContentType;<br>旧版本信息:|类名:NotificationContent;<br>方法or属性:contentType: notification.ContentType;<br>新版本信息:notification.ContentType|notificationContent.d.ts|
|type有变化|类名:NotificationContent;<br>方法or属性:normal?: NotificationBasicContent;<br>旧版本信息:|类名:NotificationContent;<br>方法or属性:normal?: NotificationBasicContent;<br>新版本信息:?NotificationBasicContent|notificationContent.d.ts|
|type有变化|类名:NotificationContent;<br>方法or属性:longText?: NotificationLongTextContent;<br>旧版本信息:|类名:NotificationContent;<br>方法or属性:longText?: NotificationLongTextContent;<br>新版本信息:?NotificationLongTextContent|notificationContent.d.ts|
|type有变化|类名:NotificationContent;<br>方法or属性:multiLine?: NotificationMultiLineContent;<br>旧版本信息:|类名:NotificationContent;<br>方法or属性:multiLine?: NotificationMultiLineContent;<br>新版本信息:?NotificationMultiLineContent|notificationContent.d.ts|
|type有变化|类名:NotificationContent;<br>方法or属性:picture?: NotificationPictureContent;<br>旧版本信息:|类名:NotificationContent;<br>方法or属性:picture?: NotificationPictureContent;<br>新版本信息:?NotificationPictureContent|notificationContent.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:content: NotificationContent;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:content: NotificationContent;<br>新版本信息:NotificationContent|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:id?: number;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:id?: number;<br>新版本信息:?number|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:slotType?: notification.SlotType;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:slotType?: notification.SlotType;<br>新版本信息:?notification.SlotType|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:isOngoing?: boolean;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:isOngoing?: boolean;<br>新版本信息:?boolean|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:isUnremovable?: boolean;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:isUnremovable?: boolean;<br>新版本信息:?boolean|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:deliveryTime?: number;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:deliveryTime?: number;<br>新版本信息:?number|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:tapDismissed?: boolean;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:tapDismissed?: boolean;<br>新版本信息:?boolean|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:autoDeletedTime?: number;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:autoDeletedTime?: number;<br>新版本信息:?number|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:wantAgent?: WantAgent;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:wantAgent?: WantAgent;<br>新版本信息:?WantAgent|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:extraInfo?: { [key: string]: any };<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:extraInfo?: { [key: string]: any };<br>新版本信息:?object|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:color?: number;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:color?: number;<br>新版本信息:?number|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:colorEnabled?: boolean;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:colorEnabled?: boolean;<br>新版本信息:?boolean|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:isAlertOnce?: boolean;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:isAlertOnce?: boolean;<br>新版本信息:?boolean|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:isStopwatch?: boolean;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:isStopwatch?: boolean;<br>新版本信息:?boolean|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:isCountDown?: boolean;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:isCountDown?: boolean;<br>新版本信息:?boolean|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:isFloatingIcon?: boolean;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:isFloatingIcon?: boolean;<br>新版本信息:?boolean|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:label?: string;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:label?: string;<br>新版本信息:?string|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:badgeIconStyle?: number;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:badgeIconStyle?: number;<br>新版本信息:?number|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:showDeliveryTime?: boolean;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:showDeliveryTime?: boolean;<br>新版本信息:?boolean|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:actionButtons?: Array\<NotificationActionButton>;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:actionButtons?: Array\<NotificationActionButton>;<br>新版本信息:?Array\<NotificationActionButton>|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:smallIcon?: image.PixelMap;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:smallIcon?: image.PixelMap;<br>新版本信息:?image.PixelMap|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:largeIcon?: image.PixelMap;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:largeIcon?: image.PixelMap;<br>新版本信息:?image.PixelMap|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:groupName?: string;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:groupName?: string;<br>新版本信息:?string|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:readonly creatorBundleName?: string;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:readonly creatorBundleName?: string;<br>新版本信息:?string|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:readonly creatorUid?: number;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:readonly creatorUid?: number;<br>新版本信息:?number|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:readonly creatorPid?: number;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:readonly creatorPid?: number;<br>新版本信息:?number|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:readonly creatorUserId?: number;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:readonly creatorUserId?: number;<br>新版本信息:?number|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:classification?: string;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:classification?: string;<br>新版本信息:?string|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:readonly hashCode?: string;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:readonly hashCode?: string;<br>新版本信息:?string|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:isRemoveAllowed?: boolean;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:isRemoveAllowed?: boolean;<br>新版本信息:?boolean|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:readonly source?: number;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:readonly source?: number;<br>新版本信息:?number|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:template?: NotificationTemplate;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:template?: NotificationTemplate;<br>新版本信息:?NotificationTemplate|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:distributedOption?: DistributedOptions;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:distributedOption?: DistributedOptions;<br>新版本信息:?DistributedOptions|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:readonly deviceId?: string;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:readonly deviceId?: string;<br>新版本信息:?string|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:readonly notificationFlags?: NotificationFlags;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:readonly notificationFlags?: NotificationFlags;<br>新版本信息:?NotificationFlags|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:removalWantAgent?: WantAgent;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:removalWantAgent?: WantAgent;<br>新版本信息:?WantAgent|notificationRequest.d.ts|
|type有变化|类名:NotificationRequest;<br>方法or属性:badgeNumber?: number;<br>旧版本信息:|类名:NotificationRequest;<br>方法or属性:badgeNumber?: number;<br>新版本信息:?number|notificationRequest.d.ts|
|type有变化|类名:DistributedOptions;<br>方法or属性:isDistributed?: boolean;<br>旧版本信息:|类名:DistributedOptions;<br>方法or属性:isDistributed?: boolean;<br>新版本信息:?boolean|notificationRequest.d.ts|
|type有变化|类名:DistributedOptions;<br>方法or属性:supportDisplayDevices?: Array\<string>;<br>旧版本信息:|类名:DistributedOptions;<br>方法or属性:supportDisplayDevices?: Array\<string>;<br>新版本信息:?Array\<string>|notificationRequest.d.ts|
|type有变化|类名:DistributedOptions;<br>方法or属性:supportOperateDevices?: Array\<string>;<br>旧版本信息:|类名:DistributedOptions;<br>方法or属性:supportOperateDevices?: Array\<string>;<br>新版本信息:?Array\<string>|notificationRequest.d.ts|
|type有变化|类名:DistributedOptions;<br>方法or属性:readonly remindType?: number;<br>旧版本信息:|类名:DistributedOptions;<br>方法or属性:readonly remindType?: number;<br>新版本信息:?number|notificationRequest.d.ts|
|type有变化|类名:NotificationSlot;<br>方法or属性:type: notification.SlotType;<br>旧版本信息:|类名:NotificationSlot;<br>方法or属性:type: notification.SlotType;<br>新版本信息:notification.SlotType|notificationSlot.d.ts|
|type有变化|类名:NotificationSlot;<br>方法or属性:level?: notification.SlotLevel;<br>旧版本信息:|类名:NotificationSlot;<br>方法or属性:level?: notification.SlotLevel;<br>新版本信息:?notification.SlotLevel|notificationSlot.d.ts|
|type有变化|类名:NotificationSlot;<br>方法or属性:desc?: string;<br>旧版本信息:|类名:NotificationSlot;<br>方法or属性:desc?: string;<br>新版本信息:?string|notificationSlot.d.ts|
|type有变化|类名:NotificationSlot;<br>方法or属性:badgeFlag?: boolean;<br>旧版本信息:|类名:NotificationSlot;<br>方法or属性:badgeFlag?: boolean;<br>新版本信息:?boolean|notificationSlot.d.ts|
|type有变化|类名:NotificationSlot;<br>方法or属性:bypassDnd?: boolean;<br>旧版本信息:|类名:NotificationSlot;<br>方法or属性:bypassDnd?: boolean;<br>新版本信息:?boolean|notificationSlot.d.ts|
|type有变化|类名:NotificationSlot;<br>方法or属性:lockscreenVisibility?: number;<br>旧版本信息:|类名:NotificationSlot;<br>方法or属性:lockscreenVisibility?: number;<br>新版本信息:?number|notificationSlot.d.ts|
|type有变化|类名:NotificationSlot;<br>方法or属性:vibrationEnabled?: boolean;<br>旧版本信息:|类名:NotificationSlot;<br>方法or属性:vibrationEnabled?: boolean;<br>新版本信息:?boolean|notificationSlot.d.ts|
|type有变化|类名:NotificationSlot;<br>方法or属性:sound?: string;<br>旧版本信息:|类名:NotificationSlot;<br>方法or属性:sound?: string;<br>新版本信息:?string|notificationSlot.d.ts|
|type有变化|类名:NotificationSlot;<br>方法or属性:lightEnabled?: boolean;<br>旧版本信息:|类名:NotificationSlot;<br>方法or属性:lightEnabled?: boolean;<br>新版本信息:?boolean|notificationSlot.d.ts|
|type有变化|类名:NotificationSlot;<br>方法or属性:lightColor?: number;<br>旧版本信息:|类名:NotificationSlot;<br>方法or属性:lightColor?: number;<br>新版本信息:?number|notificationSlot.d.ts|
|type有变化|类名:NotificationSlot;<br>方法or属性:vibrationValues?: Array\<number>;<br>旧版本信息:|类名:NotificationSlot;<br>方法or属性:vibrationValues?: Array\<number>;<br>新版本信息:?Array\<number>|notificationSlot.d.ts|
|type有变化|类名:NotificationSlot;<br>方法or属性:readonly enabled?: boolean;<br>旧版本信息:|类名:NotificationSlot;<br>方法or属性:readonly enabled?: boolean;<br>新版本信息:?boolean|notificationSlot.d.ts|
|type有变化|类名:NotificationSorting;<br>方法or属性:readonly slot: NotificationSlot;<br>旧版本信息:|类名:NotificationSorting;<br>方法or属性:readonly slot: NotificationSlot;<br>新版本信息:NotificationSlot|notificationSorting.d.ts|
|type有变化|类名:NotificationSorting;<br>方法or属性:readonly hashCode: string;<br>旧版本信息:|类名:NotificationSorting;<br>方法or属性:readonly hashCode: string;<br>新版本信息:string|notificationSorting.d.ts|
|type有变化|类名:NotificationSorting;<br>方法or属性:readonly ranking: number;<br>旧版本信息:|类名:NotificationSorting;<br>方法or属性:readonly ranking: number;<br>新版本信息:number|notificationSorting.d.ts|
|type有变化|类名:NotificationSortingMap;<br>方法or属性:readonly sortings: { [key: string]: NotificationSorting };<br>旧版本信息:|类名:NotificationSortingMap;<br>方法or属性:readonly sortings: { [key: string]: NotificationSorting };<br>新版本信息:object|notificationSortingMap.d.ts|
|type有变化|类名:NotificationSortingMap;<br>方法or属性:readonly sortedHashCode: Array\<string>;<br>旧版本信息:|类名:NotificationSortingMap;<br>方法or属性:readonly sortedHashCode: Array\<string>;<br>新版本信息:Array\<string>|notificationSortingMap.d.ts|
|type有变化|类名:NotificationSubscribeInfo;<br>方法or属性:bundleNames?: Array\<string>;<br>旧版本信息:|类名:NotificationSubscribeInfo;<br>方法or属性:bundleNames?: Array\<string>;<br>新版本信息:?Array\<string>|notificationSubscribeInfo.d.ts|
|type有变化|类名:NotificationSubscribeInfo;<br>方法or属性:userId?: number;<br>旧版本信息:|类名:NotificationSubscribeInfo;<br>方法or属性:userId?: number;<br>新版本信息:?number|notificationSubscribeInfo.d.ts|
|type有变化|类名:SubscribeCallbackData;<br>方法or属性:readonly request: NotificationRequest;<br>旧版本信息:|类名:SubscribeCallbackData;<br>方法or属性:readonly request: NotificationRequest;<br>新版本信息:NotificationRequest|notificationSubscriber.d.ts|
|type有变化|类名:SubscribeCallbackData;<br>方法or属性:readonly sortingMap?: NotificationSortingMap;<br>旧版本信息:|类名:SubscribeCallbackData;<br>方法or属性:readonly sortingMap?: NotificationSortingMap;<br>新版本信息:?NotificationSortingMap|notificationSubscriber.d.ts|
|type有变化|类名:SubscribeCallbackData;<br>方法or属性:readonly reason?: number;<br>旧版本信息:|类名:SubscribeCallbackData;<br>方法or属性:readonly reason?: number;<br>新版本信息:?number|notificationSubscriber.d.ts|
|type有变化|类名:SubscribeCallbackData;<br>方法or属性:readonly sound?: string;<br>旧版本信息:|类名:SubscribeCallbackData;<br>方法or属性:readonly sound?: string;<br>新版本信息:?string|notificationSubscriber.d.ts|
|type有变化|类名:SubscribeCallbackData;<br>方法or属性:readonly vibrationValues?: Array\<number>;<br>旧版本信息:|类名:SubscribeCallbackData;<br>方法or属性:readonly vibrationValues?: Array\<number>;<br>新版本信息:?Array\<number>|notificationSubscriber.d.ts|
|type有变化|类名:EnabledNotificationCallbackData;<br>方法or属性:readonly bundle: string;<br>旧版本信息:|类名:EnabledNotificationCallbackData;<br>方法or属性:readonly bundle: string;<br>新版本信息:string|notificationSubscriber.d.ts|
|type有变化|类名:BadgeNumberCallbackData;<br>方法or属性:readonly bundle: string;<br>旧版本信息:|类名:BadgeNumberCallbackData;<br>方法or属性:readonly bundle: string;<br>新版本信息:string|notificationSubscriber.d.ts|
|type有变化|类名:EnabledNotificationCallbackData;<br>方法or属性:readonly uid: number;<br>旧版本信息:|类名:EnabledNotificationCallbackData;<br>方法or属性:readonly uid: number;<br>新版本信息:number|notificationSubscriber.d.ts|
|type有变化|类名:BadgeNumberCallbackData;<br>方法or属性:readonly uid: number;<br>旧版本信息:|类名:BadgeNumberCallbackData;<br>方法or属性:readonly uid: number;<br>新版本信息:number|notificationSubscriber.d.ts|
|type有变化|类名:EnabledNotificationCallbackData;<br>方法or属性:readonly enable: boolean;<br>旧版本信息:|类名:EnabledNotificationCallbackData;<br>方法or属性:readonly enable: boolean;<br>新版本信息:boolean|notificationSubscriber.d.ts|
|type有变化|类名:BadgeNumberCallbackData;<br>方法or属性:readonly badgeNumber: number;<br>旧版本信息:|类名:BadgeNumberCallbackData;<br>方法or属性:readonly badgeNumber: number;<br>新版本信息:number|notificationSubscriber.d.ts|
|type有变化|类名:NotificationTemplate;<br>方法or属性:name: string;<br>旧版本信息:|类名:NotificationTemplate;<br>方法or属性:name: string;<br>新版本信息:string|notificationTemplate.d.ts|
|type有变化|类名:NotificationTemplate;<br>方法or属性:data: { [key: string]: Object };<br>旧版本信息:|类名:NotificationTemplate;<br>方法or属性:data: { [key: string]: Object };<br>新版本信息:object|notificationTemplate.d.ts|
|type有变化|类名:NotificationUserInput;<br>方法or属性:inputKey: string;<br>旧版本信息:|类名:NotificationUserInput;<br>方法or属性:inputKey: string;<br>新版本信息:string|notificationUserInput.d.ts|
|函数有变化|类名:NotificationRequest;<br>方法or属性:readonly isRemoveAllowed?: boolean;|类名:NotificationRequest;<br>方法or属性:isRemoveAllowed?: boolean;|notificationRequest.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|新增|NA|类名:ResourceType;<br>方法or属性:RUNNING_LOCK = 1 \<\< 7|@ohos.resourceschedule.backgroundTaskManager.d.ts|
|新增|NA|类名:ResourceType;<br>方法or属性:SENSOR = 1 \<\< 8|@ohos.resourceschedule.backgroundTaskManager.d.ts|
|废弃版本有变化|类名:particleAbility;<br>方法or属性:function startBackgroundRunning(id: number, request: NotificationRequest): Promise\<void>;<br>旧版本信息:|类名:particleAbility;<br>方法or属性:function startBackgroundRunning(id: number, request: NotificationRequest): Promise\<void>;<br>新版本信息:9<br>代替接口: ohos.resourceschedule.backgroundTaskManager/backgroundTaskManager#startBackgroundRunning|@ohos.ability.particleAbility.d.ts|
|废弃版本有变化|类名:particleAbility;<br>方法or属性:function cancelBackgroundRunning(): Promise\<void>;<br>旧版本信息:|类名:particleAbility;<br>方法or属性:function cancelBackgroundRunning(): Promise\<void>;<br>新版本信息:9<br>代替接口: ohos.resourceschedule.backgroundTaskManager/backgroundTaskManager#stopBackgroundRunning|@ohos.ability.particleAbility.d.ts|
|权限有变化|类名:particleAbility;<br>方法or属性:function startBackgroundRunning(id: number, request: NotificationRequest): Promise\<void>;<br>旧版本信息:|类名:particleAbility;<br>方法or属性:function startBackgroundRunning(id: number, request: NotificationRequest): Promise\<void>;<br>新版本信息:ohos.permission.KEEP_BACKGROUND_RUNNING|@ohos.ability.particleAbility.d.ts|
|model有变化|类名:particleAbility;<br>方法or属性:function startBackgroundRunning(id: number, request: NotificationRequest): Promise\<void>;<br>旧版本信息:|类名:particleAbility;<br>方法or属性:function startBackgroundRunning(id: number, request: NotificationRequest): Promise\<void>;<br>新版本信息:FAModelOnly|@ohos.ability.particleAbility.d.ts|
|model有变化|类名:particleAbility;<br>方法or属性:function cancelBackgroundRunning(): Promise\<void>;<br>旧版本信息:|类名:particleAbility;<br>方法or属性:function cancelBackgroundRunning(): Promise\<void>;<br>新版本信息:FAModelOnly|@ohos.ability.particleAbility.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|新增|NA|类名:AsyKeyGeneratorBySpec;<br>方法or属性:generateKeyPair(callback: AsyncCallback\<KeyPair>): void;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeyGeneratorBySpec;<br>方法or属性:generateKeyPair(): Promise\<KeyPair>;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:cert;<br>方法or属性:function createCertExtension(inStream: EncodingBlob, callback: AsyncCallback\<CertExtension>): void;|@ohos.security.cert.d.ts|
|新增|NA|类名:cert;<br>方法or属性:function createCertExtension(inStream: EncodingBlob): Promise\<CertExtension>;|@ohos.security.cert.d.ts|
|新增|NA|类名:CertItemType;<br>方法or属性:CERT_ITEM_TYPE_TBS = 0|@ohos.security.cert.d.ts|
|新增|NA|类名:CertItemType;<br>方法or属性:CERT_ITEM_TYPE_PUBLIC_KEY = 1|@ohos.security.cert.d.ts|
|新增|NA|类名:CertItemType;<br>方法or属性:CERT_ITEM_TYPE_ISSUER_UNIQUE_ID = 2|@ohos.security.cert.d.ts|
|新增|NA|类名:CertItemType;<br>方法or属性:CERT_ITEM_TYPE_SUBJECT_UNIQUE_ID = 3|@ohos.security.cert.d.ts|
|新增|NA|类名:CertItemType;<br>方法or属性:CERT_ITEM_TYPE_EXTENSIONS = 4|@ohos.security.cert.d.ts|
|新增|NA|类名:ExtensionOidType;<br>方法or属性:EXTENSION_OID_TYPE_ALL = 0|@ohos.security.cert.d.ts|
|新增|NA|类名:ExtensionOidType;<br>方法or属性:EXTENSION_OID_TYPE_CRITICAL = 1|@ohos.security.cert.d.ts|
|新增|NA|类名:ExtensionOidType;<br>方法or属性:EXTENSION_OID_TYPE_UNCRITICAL = 2|@ohos.security.cert.d.ts|
|新增|NA|类名:ExtensionEntryType;<br>方法or属性:EXTENSION_ENTRY_TYPE_ENTRY = 0|@ohos.security.cert.d.ts|
|新增|NA|类名:ExtensionEntryType;<br>方法or属性:EXTENSION_ENTRY_TYPE_ENTRY_CRITICAL = 1|@ohos.security.cert.d.ts|
|新增|NA|类名:ExtensionEntryType;<br>方法or属性:EXTENSION_ENTRY_TYPE_ENTRY_VALUE = 2|@ohos.security.cert.d.ts|
|新增|NA|类名:X509Cert;<br>方法or属性:getCertSerialNumber(): bigint;|@ohos.security.cert.d.ts|
|新增|NA|类名:X509Cert;<br>方法or属性:getItem(itemType: CertItemType): DataBlob;|@ohos.security.cert.d.ts|
|新增|NA|类名:CertExtension;<br>方法or属性:getEncoded(): EncodingBlob;|@ohos.security.cert.d.ts|
|新增|NA|类名:CertExtension;<br>方法or属性:getOidList(valueType: ExtensionOidType): DataArray;|@ohos.security.cert.d.ts|
|新增|NA|类名:CertExtension;<br>方法or属性:getEntry(valueType: ExtensionEntryType, oid: DataBlob): DataBlob;|@ohos.security.cert.d.ts|
|新增|NA|类名:CertExtension;<br>方法or属性:checkCA(): number;|@ohos.security.cert.d.ts|
|新增|NA|类名:cryptoFramework;<br>方法or属性:function createAsyKeyGeneratorBySpec(asyKeySpec: AsyKeySpec): AsyKeyGeneratorBySpec;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:PriKey;<br>方法or属性:getAsyKeySpec(itemType: AsyKeySpecItem): bigint \| string \| number;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:PubKey;<br>方法or属性:getAsyKeySpec(itemType: AsyKeySpecItem): bigint \| string \| number;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:Random;<br>方法or属性:generateRandomSync(len: number): DataBlob;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:Random;<br>方法or属性:readonly algName: string;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeyGeneratorBySpec;<br>方法or属性:readonly algName: string;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:CipherSpecItem;<br>方法or属性:OAEP_MD_NAME_STR = 100|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:CipherSpecItem;<br>方法or属性:OAEP_MGF_NAME_STR = 101|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:CipherSpecItem;<br>方法or属性:OAEP_MGF1_MD_STR = 102|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:CipherSpecItem;<br>方法or属性:OAEP_MGF1_PSRC_UINT8ARR = 103|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:SignSpecItem;<br>方法or属性:PSS_MD_NAME_STR = 100|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:SignSpecItem;<br>方法or属性:PSS_MGF_NAME_STR = 101|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:SignSpecItem;<br>方法or属性:PSS_MGF1_MD_STR = 102|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:SignSpecItem;<br>方法or属性:PSS_SALT_LEN_NUM = 103|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:SignSpecItem;<br>方法or属性:PSS_TRAILER_FIELD_NUM = 104|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:Cipher;<br>方法or属性:setCipherSpec(itemType: CipherSpecItem, itemValue: Uint8Array): void;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:Cipher;<br>方法or属性:getCipherSpec(itemType: CipherSpecItem): string \| Uint8Array;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:Sign;<br>方法or属性:setSignSpec(itemType: SignSpecItem, itemValue: number): void;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:Sign;<br>方法or属性:getSignSpec(itemType: SignSpecItem): string \| number;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:Verify;<br>方法or属性:setVerifySpec(itemType: SignSpecItem, itemValue: number): void;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:Verify;<br>方法or属性:getVerifySpec(itemType: SignSpecItem): string \| number;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpecItem;<br>方法or属性:DSA_P_BN = 101|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpecItem;<br>方法or属性:DSA_Q_BN = 102|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpecItem;<br>方法or属性:DSA_G_BN = 103|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpecItem;<br>方法or属性:DSA_SK_BN = 104|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpecItem;<br>方法or属性:DSA_PK_BN = 105|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpecItem;<br>方法or属性:ECC_FP_P_BN = 201|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpecItem;<br>方法or属性:ECC_A_BN = 202|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpecItem;<br>方法or属性:ECC_B_BN = 203|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpecItem;<br>方法or属性:ECC_G_X_BN = 204|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpecItem;<br>方法or属性:ECC_G_Y_BN = 205|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpecItem;<br>方法or属性:ECC_N_BN = 206|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpecItem;<br>方法or属性:ECC_H_NUM = 207|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpecItem;<br>方法or属性:ECC_SK_BN = 208|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpecItem;<br>方法or属性:ECC_PK_X_BN = 209|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpecItem;<br>方法or属性:ECC_PK_Y_BN = 210|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpecItem;<br>方法or属性:ECC_FIELD_TYPE_STR = 211|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpecItem;<br>方法or属性:ECC_FIELD_SIZE_NUM = 212|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpecItem;<br>方法or属性:ECC_CURVE_NAME_STR = 213|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpecItem;<br>方法or属性:RSA_N_BN = 301|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpecItem;<br>方法or属性:RSA_SK_BN = 302|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpecItem;<br>方法or属性:RSA_PK_BN = 303|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpecType;<br>方法or属性:COMMON_PARAMS_SPEC = 0|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpecType;<br>方法or属性:PRIVATE_KEY_SPEC = 1|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpecType;<br>方法or属性:PUBLIC_KEY_SPEC = 2|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpecType;<br>方法or属性:KEY_PAIR_SPEC = 3|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpec;<br>方法or属性:algName: string;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeySpec;<br>方法or属性:specType: AsyKeySpecType;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:DSACommonParamsSpec;<br>方法or属性:p: bigint;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:ECFieldFp;<br>方法or属性:p: bigint;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:DSACommonParamsSpec;<br>方法or属性:q: bigint;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:DSACommonParamsSpec;<br>方法or属性:g: bigint;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:DSAPubKeySpec;<br>方法or属性:params: DSACommonParamsSpec;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:DSAKeyPairSpec;<br>方法or属性:params: DSACommonParamsSpec;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:DSAPubKeySpec;<br>方法or属性:pk: bigint;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:DSAKeyPairSpec;<br>方法or属性:pk: bigint;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:RSAPubKeySpec;<br>方法or属性:pk: bigint;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:RSAKeyPairSpec;<br>方法or属性:pk: bigint;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:DSAKeyPairSpec;<br>方法or属性:sk: bigint;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:ECCPriKeySpec;<br>方法or属性:sk: bigint;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:ECCKeyPairSpec;<br>方法or属性:sk: bigint;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:RSAKeyPairSpec;<br>方法or属性:sk: bigint;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:ECField;<br>方法or属性:fieldType: string;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:Point;<br>方法or属性:x: bigint;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:Point;<br>方法or属性:y: bigint;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:ECCCommonParamsSpec;<br>方法or属性:field: ECField;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:ECCCommonParamsSpec;<br>方法or属性:a: bigint;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:ECCCommonParamsSpec;<br>方法or属性:b: bigint;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:ECCCommonParamsSpec;<br>方法or属性:g: Point;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:ECCCommonParamsSpec;<br>方法or属性:n: bigint;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:RSACommonParamsSpec;<br>方法or属性:n: bigint;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:ECCCommonParamsSpec;<br>方法or属性:h: number;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:ECCPriKeySpec;<br>方法or属性:params: ECCCommonParamsSpec;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:ECCPubKeySpec;<br>方法or属性:params: ECCCommonParamsSpec;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:ECCKeyPairSpec;<br>方法or属性:params: ECCCommonParamsSpec;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:ECCPubKeySpec;<br>方法or属性:pk: Point;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:ECCKeyPairSpec;<br>方法or属性:pk: Point;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:RSAPubKeySpec;<br>方法or属性:params: RSACommonParamsSpec;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:RSAKeyPairSpec;<br>方法or属性:params: RSACommonParamsSpec;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeyGeneratorBySpec;<br>方法or属性:generatePriKey(callback: AsyncCallback\<PriKey>): void;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeyGeneratorBySpec;<br>方法or属性:generatePriKey(): Promise\<PriKey>;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeyGeneratorBySpec;<br>方法or属性:generatePubKey(callback: AsyncCallback\<PubKey>): void;|@ohos.security.cryptoFramework.d.ts|
|新增|NA|类名:AsyKeyGeneratorBySpec;<br>方法or属性:generatePubKey(): Promise\<PubKey>;|@ohos.security.cryptoFramework.d.ts|
|废弃版本有变化|类名:X509Cert;<br>方法or属性:getSerialNumber(): number;<br>旧版本信息:|类名:X509Cert;<br>方法or属性:getSerialNumber(): number;<br>新版本信息:10<br>代替接口: ohos.security.cert.X509Cert.getCertSerialNumber|@ohos.security.cert.d.ts|
|新增(错误码)|类名:Key;<br>方法or属性:getEncoded(): DataBlob;<br>旧版本信息:|类名:Key;<br>方法or属性:getEncoded(): DataBlob;<br>新版本信息:801,17620001,17630001|@ohos.security.cryptoFramework.d.ts|
|错误码有变化|类名:cryptoFramework;<br>方法or属性:function createAsyKeyGenerator(algName: string): AsyKeyGenerator;<br>旧版本信息:401|类名:cryptoFramework;<br>方法or属性:function createAsyKeyGenerator(algName: string): AsyKeyGenerator;<br>新版本信息:401,801,17620001|@ohos.security.cryptoFramework.d.ts|
|错误码有变化|类名:cryptoFramework;<br>方法or属性:function createCipher(transformation: string): Cipher;<br>旧版本信息:401,801|类名:cryptoFramework;<br>方法or属性:function createCipher(transformation: string): Cipher;<br>新版本信息:401,801,17620001|@ohos.security.cryptoFramework.d.ts|
|错误码有变化|类名:cryptoFramework;<br>方法or属性:function createSign(algName: string): Sign;<br>旧版本信息:401|类名:cryptoFramework;<br>方法or属性:function createSign(algName: string): Sign;<br>新版本信息:401,801,17620001|@ohos.security.cryptoFramework.d.ts|
|错误码有变化|类名:cryptoFramework;<br>方法or属性:function createVerify(algName: string): Verify;<br>旧版本信息:401|类名:cryptoFramework;<br>方法or属性:function createVerify(algName: string): Verify;<br>新版本信息:401,801,17620001|@ohos.security.cryptoFramework.d.ts|
|错误码有变化|类名:cryptoFramework;<br>方法or属性:function createKeyAgreement(algName: string): KeyAgreement;<br>旧版本信息:401|类名:cryptoFramework;<br>方法or属性:function createKeyAgreement(algName: string): KeyAgreement;<br>新版本信息:401,801,17620001|@ohos.security.cryptoFramework.d.ts|
|错误码有变化|类名:AsyKeyGenerator;<br>方法or属性:generateKeyPair(callback: AsyncCallback\<KeyPair>): void;<br>旧版本信息:401,17620001|类名:AsyKeyGenerator;<br>方法or属性:generateKeyPair(callback: AsyncCallback\<KeyPair>): void;<br>新版本信息:401,17620001,17630001|@ohos.security.cryptoFramework.d.ts|
|错误码有变化|类名:AsyKeyGenerator;<br>方法or属性:generateKeyPair(): Promise\<KeyPair>;<br>旧版本信息:401,17620001|类名:AsyKeyGenerator;<br>方法or属性:generateKeyPair(): Promise\<KeyPair>;<br>新版本信息:401,17620001,17630001|@ohos.security.cryptoFramework.d.ts|
|错误码有变化|类名:AsyKeyGenerator;<br>方法or属性:convertKey(pubKey: DataBlob, priKey: DataBlob, callback: AsyncCallback\<KeyPair>): void;<br>旧版本信息:401,17620001|类名:AsyKeyGenerator;<br>方法or属性:convertKey(pubKey: DataBlob, priKey: DataBlob, callback: AsyncCallback\<KeyPair>): void;<br>新版本信息:401,17620001,17630001|@ohos.security.cryptoFramework.d.ts|
|错误码有变化|类名:AsyKeyGenerator;<br>方法or属性:convertKey(pubKey: DataBlob, priKey: DataBlob): Promise\<KeyPair>;<br>旧版本信息:401,17620001|类名:AsyKeyGenerator;<br>方法or属性:convertKey(pubKey: DataBlob, priKey: DataBlob): Promise\<KeyPair>;<br>新版本信息:401,17620001,17630001|@ohos.security.cryptoFramework.d.ts|
|type有变化|类名:PermissionUsedRequest;<br>方法or属性:tokenId?: number;<br>旧版本信息:number|类名:PermissionUsedRequest;<br>方法or属性:tokenId?: number;<br>新版本信息:?number|@ohos.privacyManager.d.ts|
|type有变化|类名:PermissionUsedRequest;<br>方法or属性:isRemote?: boolean;<br>旧版本信息:boolean|类名:PermissionUsedRequest;<br>方法or属性:isRemote?: boolean;<br>新版本信息:?boolean|@ohos.privacyManager.d.ts|
|type有变化|类名:PermissionUsedRequest;<br>方法or属性:deviceId?: string;<br>旧版本信息:string|类名:PermissionUsedRequest;<br>方法or属性:deviceId?: string;<br>新版本信息:?string|@ohos.privacyManager.d.ts|
|type有变化|类名:PermissionUsedRequest;<br>方法or属性:bundleName?: string;<br>旧版本信息:string|类名:PermissionUsedRequest;<br>方法or属性:bundleName?: string;<br>新版本信息:?string|@ohos.privacyManager.d.ts|
|type有变化|类名:PermissionUsedRequest;<br>方法or属性:permissionNames?: Array\<Permissions>;<br>旧版本信息:Array\<Permissions>|类名:PermissionUsedRequest;<br>方法or属性:permissionNames?: Array\<Permissions>;<br>新版本信息:?Array\<Permissions>|@ohos.privacyManager.d.ts|
|type有变化|类名:PermissionUsedRequest;<br>方法or属性:beginTime?: number;<br>旧版本信息:number|类名:PermissionUsedRequest;<br>方法or属性:beginTime?: number;<br>新版本信息:?number|@ohos.privacyManager.d.ts|
|type有变化|类名:PermissionUsedRequest;<br>方法or属性:endTime?: number;<br>旧版本信息:number|类名:PermissionUsedRequest;<br>方法or属性:endTime?: number;<br>新版本信息:?number|@ohos.privacyManager.d.ts|
|函数有变化|类名:PermissionUsedRequest;<br>方法or属性:tokenId: number;|类名:PermissionUsedRequest;<br>方法or属性:tokenId?: number;|@ohos.privacyManager.d.ts|
|函数有变化|类名:PermissionUsedRequest;<br>方法or属性:isRemote: boolean;|类名:PermissionUsedRequest;<br>方法or属性:isRemote?: boolean;|@ohos.privacyManager.d.ts|
|函数有变化|类名:PermissionUsedRequest;<br>方法or属性:deviceId: string;|类名:PermissionUsedRequest;<br>方法or属性:deviceId?: string;|@ohos.privacyManager.d.ts|
|函数有变化|类名:PermissionUsedRequest;<br>方法or属性:bundleName: string;|类名:PermissionUsedRequest;<br>方法or属性:bundleName?: string;|@ohos.privacyManager.d.ts|
|函数有变化|类名:PermissionUsedRequest;<br>方法or属性:permissionNames: Array\<Permissions>;|类名:PermissionUsedRequest;<br>方法or属性:permissionNames?: Array\<Permissions>;|@ohos.privacyManager.d.ts|
|函数有变化|类名:PermissionUsedRequest;<br>方法or属性:beginTime: number;|类名:PermissionUsedRequest;<br>方法or属性:beginTime?: number;|@ohos.privacyManager.d.ts|
|函数有变化|类名:PermissionUsedRequest;<br>方法or属性:endTime: number;|类名:PermissionUsedRequest;<br>方法or属性:endTime?: number;|@ohos.privacyManager.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|新增|NA|类名:sensor;<br>方法or属性:function on(type: SensorId.COLOR, callback: Callback\<ColorResponse>, options?: Options): void;|@ohos.sensor.d.ts|
|新增|NA|类名:sensor;<br>方法or属性:function on(type: SensorId.SAR, callback: Callback\<SarResponse>, options?: Options): void;|@ohos.sensor.d.ts|
|新增|NA|类名:sensor;<br>方法or属性:function off(type: SensorId.COLOR, callback?: Callback\<ColorResponse>): void;|@ohos.sensor.d.ts|
|新增|NA|类名:sensor;<br>方法or属性:function off(type: SensorId.SAR, callback?: Callback\<SarResponse>): void;|@ohos.sensor.d.ts|
|新增|NA|类名:SensorId;<br>方法or属性:COLOR = 14|@ohos.sensor.d.ts|
|新增|NA|类名:SensorId;<br>方法or属性:SAR = 15|@ohos.sensor.d.ts|
|新增|NA|类名:ColorResponse;<br>方法or属性:lightIntensity: number;|@ohos.sensor.d.ts|
|新增|NA|类名:ColorResponse;<br>方法or属性:colorTemperature: number;|@ohos.sensor.d.ts|
|新增|NA|类名:SarResponse;<br>方法or属性:absorptionRatio: number;|@ohos.sensor.d.ts|
|新增|NA|类名:VibrateFromFile;<br>方法or属性:type: 'file';|@ohos.vibrator.d.ts|
|新增|NA|类名:VibrateFromFile;<br>方法or属性:hapticFd: HapticFileDescriptor;|@ohos.vibrator.d.ts|
|新增|NA|类名:HapticFileDescriptor;<br>方法or属性:fd: number;|@ohos.vibrator.d.ts|
|新增|NA|类名:HapticFileDescriptor;<br>方法or属性:offset?: number;|@ohos.vibrator.d.ts|
|新增|NA|类名:HapticFileDescriptor;<br>方法or属性:length?: number;|@ohos.vibrator.d.ts|
|废弃版本有变化|类名:vibrator;<br>方法or属性:function vibrate(duration: number): Promise\<void>;<br>旧版本信息:|类名:vibrator;<br>方法or属性:function vibrate(duration: number): Promise\<void>;<br>新版本信息:9<br>代替接口: vibrator#startVibration|@ohos.vibrator.d.ts|
|废弃版本有变化|类名:vibrator;<br>方法or属性:function vibrate(effectId: EffectId, callback?: AsyncCallback\<void>): void;<br>旧版本信息:|类名:vibrator;<br>方法or属性:function vibrate(effectId: EffectId, callback?: AsyncCallback\<void>): void;<br>新版本信息:9<br>代替接口: vibrator#startVibration|@ohos.vibrator.d.ts|
|废弃版本有变化|类名:vibrator;<br>方法or属性:function stop(stopMode: VibratorStopMode, callback?: AsyncCallback\<void>): void;<br>旧版本信息:|类名:vibrator;<br>方法or属性:function stop(stopMode: VibratorStopMode, callback?: AsyncCallback\<void>): void;<br>新版本信息:9<br>代替接口: vibrator#stopVibration|@ohos.vibrator.d.ts|
|错误码有变化|类名:vibrator;<br>方法or属性:function startVibration(effect: VibrateEffect, attribute: VibrateAttribute, callback: AsyncCallback\<void>): void;<br>旧版本信息:201,401,14600101|类名:vibrator;<br>方法or属性:function startVibration(effect: VibrateEffect, attribute: VibrateAttribute, callback: AsyncCallback\<void>): void;<br>新版本信息:201,401,801,14600101|@ohos.vibrator.d.ts|
|错误码有变化|类名:vibrator;<br>方法or属性:function startVibration(effect: VibrateEffect, attribute: VibrateAttribute): Promise\<void>;<br>旧版本信息:201,401,14600101|类名:vibrator;<br>方法or属性:function startVibration(effect: VibrateEffect, attribute: VibrateAttribute): Promise\<void>;<br>新版本信息:201,401,801,14600101|@ohos.vibrator.d.ts|
|权限有变化|类名:vibrator;<br>方法or属性:function vibrate(duration: number): Promise\<void>;<br>旧版本信息:|类名:vibrator;<br>方法or属性:function vibrate(duration: number): Promise\<void>;<br>新版本信息:ohos.permission.VIBRATE|@ohos.vibrator.d.ts|
|权限有变化|类名:vibrator;<br>方法or属性:function vibrate(effectId: EffectId, callback?: AsyncCallback\<void>): void;<br>旧版本信息:|类名:vibrator;<br>方法or属性:function vibrate(effectId: EffectId, callback?: AsyncCallback\<void>): void;<br>新版本信息:ohos.permission.VIBRATE|@ohos.vibrator.d.ts|
|权限有变化|类名:vibrator;<br>方法or属性:function stop(stopMode: VibratorStopMode, callback?: AsyncCallback\<void>): void;<br>旧版本信息:|类名:vibrator;<br>方法or属性:function stop(stopMode: VibratorStopMode, callback?: AsyncCallback\<void>): void;<br>新版本信息:ohos.permission.VIBRATE|@ohos.vibrator.d.ts|
|权限有变化|类名:VibrateOptions;<br>方法or属性:mode?: 'long' \| 'short';<br>旧版本信息:|类名:VibrateOptions;<br>方法or属性:mode?: 'long' \| 'short';<br>新版本信息:ohos.permission.VIBRATE|@system.vibrator.d.ts|
|权限有变化|类名:VibrateOptions;<br>方法or属性:success: () => void;<br>旧版本信息:|类名:VibrateOptions;<br>方法or属性:success: () => void;<br>新版本信息:ohos.permission.VIBRATE|@system.vibrator.d.ts|
|权限有变化|类名:VibrateOptions;<br>方法or属性:fail?: (data: string, code: number) => void;<br>旧版本信息:|类名:VibrateOptions;<br>方法or属性:fail?: (data: string, code: number) => void;<br>新版本信息:ohos.permission.VIBRATE|@system.vibrator.d.ts|
|权限有变化|类名:VibrateOptions;<br>方法or属性:complete?: () => void;<br>旧版本信息:|类名:VibrateOptions;<br>方法or属性:complete?: () => void;<br>新版本信息:ohos.permission.VIBRATE|@system.vibrator.d.ts|
|type有变化|类名:vibrator;<br>方法or属性:type VibrateEffect = VibrateTime \| VibratePreset \| VibrateFromFile;<br>旧版本信息:|类名:vibrator;<br>方法or属性:type VibrateEffect = VibrateTime \| VibratePreset \| VibrateFromFile;<br>新版本信息:VibrateTime \| VibratePreset \| VibrateFromFile|@ohos.vibrator.d.ts|
|函数有变化|类名:vibrator;<br>方法or属性:type VibrateEffect = VibrateTime \| VibratePreset;|类名:vibrator;<br>方法or属性:type VibrateEffect = VibrateTime \| VibratePreset \| VibrateFromFile;|@ohos.vibrator.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|废弃版本有变化|类名:systemParameter;<br>方法or属性:function getSync(key: string, def?: string): string;<br>旧版本信息:|类名:systemParameter;<br>方法or属性:function getSync(key: string, def?: string): string;<br>新版本信息:9<br>代替接口:|@ohos.systemparameter.d.ts|
|废弃版本有变化|类名:systemParameter;<br>方法or属性:function get(key: string, callback: AsyncCallback\<string>): void;<br>旧版本信息:|类名:systemParameter;<br>方法or属性:function get(key: string, callback: AsyncCallback\<string>): void;<br>新版本信息:9<br>代替接口:|@ohos.systemparameter.d.ts|
|废弃版本有变化|类名:systemParameter;<br>方法or属性:function get(key: string, def: string, callback: AsyncCallback\<string>): void;<br>旧版本信息:|类名:systemParameter;<br>方法or属性:function get(key: string, def: string, callback: AsyncCallback\<string>): void;<br>新版本信息:9<br>代替接口:|@ohos.systemparameter.d.ts|
|废弃版本有变化|类名:systemParameter;<br>方法or属性:function get(key: string, def?: string): Promise\<string>;<br>旧版本信息:|类名:systemParameter;<br>方法or属性:function get(key: string, def?: string): Promise\<string>;<br>新版本信息:9<br>代替接口:|@ohos.systemparameter.d.ts|
|废弃版本有变化|类名:systemParameter;<br>方法or属性:function set(key: string, value: string, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:systemParameter;<br>方法or属性:function set(key: string, value: string, callback: AsyncCallback\<void>): void;<br>新版本信息:9<br>代替接口:|@ohos.systemparameter.d.ts|
|废弃版本有变化|类名:systemParameter;<br>方法or属性:function set(key: string, value: string): Promise\<void>;<br>旧版本信息:|类名:systemParameter;<br>方法or属性:function set(key: string, value: string): Promise\<void>;<br>新版本信息:9<br>代替接口:|@ohos.systemparameter.d.ts|
|访问级别有变化|类名:systemParameter;<br>方法or属性:function getSync(key: string, def?: string): string;<br>旧版本信息:|类名:systemParameter;<br>方法or属性:function getSync(key: string, def?: string): string;<br>新版本信息:systemapi|@ohos.systemparameter.d.ts|
|访问级别有变化|类名:systemParameter;<br>方法or属性:function get(key: string, callback: AsyncCallback\<string>): void;<br>旧版本信息:|类名:systemParameter;<br>方法or属性:function get(key: string, callback: AsyncCallback\<string>): void;<br>新版本信息:systemapi|@ohos.systemparameter.d.ts|
|访问级别有变化|类名:systemParameter;<br>方法or属性:function get(key: string, def: string, callback: AsyncCallback\<string>): void;<br>旧版本信息:|类名:systemParameter;<br>方法or属性:function get(key: string, def: string, callback: AsyncCallback\<string>): void;<br>新版本信息:systemapi|@ohos.systemparameter.d.ts|
|访问级别有变化|类名:systemParameter;<br>方法or属性:function get(key: string, def?: string): Promise\<string>;<br>旧版本信息:|类名:systemParameter;<br>方法or属性:function get(key: string, def?: string): Promise\<string>;<br>新版本信息:systemapi|@ohos.systemparameter.d.ts|
|访问级别有变化|类名:systemParameter;<br>方法or属性:function setSync(key: string, value: string): void;<br>旧版本信息:|类名:systemParameter;<br>方法or属性:function setSync(key: string, value: string): void;<br>新版本信息:systemapi|@ohos.systemparameter.d.ts|
|访问级别有变化|类名:systemParameter;<br>方法or属性:function set(key: string, value: string, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:systemParameter;<br>方法or属性:function set(key: string, value: string, callback: AsyncCallback\<void>): void;<br>新版本信息:systemapi|@ohos.systemparameter.d.ts|
|访问级别有变化|类名:systemParameter;<br>方法or属性:function set(key: string, value: string): Promise\<void>;<br>旧版本信息:|类名:systemParameter;<br>方法or属性:function set(key: string, value: string): Promise\<void>;<br>新版本信息:systemapi|@ohos.systemparameter.d.ts|
|访问级别有变化|类名:systemParameterEnhance;<br>方法or属性:function getSync(key: string, def?: string): string;<br>旧版本信息:|类名:systemParameterEnhance;<br>方法or属性:function getSync(key: string, def?: string): string;<br>新版本信息:systemapi|@ohos.systemParameterEnhance.d.ts|
|访问级别有变化|类名:systemParameterEnhance;<br>方法or属性:function get(key: string, callback: AsyncCallback\<string>): void;<br>旧版本信息:|类名:systemParameterEnhance;<br>方法or属性:function get(key: string, callback: AsyncCallback\<string>): void;<br>新版本信息:systemapi|@ohos.systemParameterEnhance.d.ts|
|访问级别有变化|类名:systemParameterEnhance;<br>方法or属性:function get(key: string, def: string, callback: AsyncCallback\<string>): void;<br>旧版本信息:|类名:systemParameterEnhance;<br>方法or属性:function get(key: string, def: string, callback: AsyncCallback\<string>): void;<br>新版本信息:systemapi|@ohos.systemParameterEnhance.d.ts|
|访问级别有变化|类名:systemParameterEnhance;<br>方法or属性:function get(key: string, def?: string): Promise\<string>;<br>旧版本信息:|类名:systemParameterEnhance;<br>方法or属性:function get(key: string, def?: string): Promise\<string>;<br>新版本信息:systemapi|@ohos.systemParameterEnhance.d.ts|
|访问级别有变化|类名:systemParameterEnhance;<br>方法or属性:function setSync(key: string, value: string): void;<br>旧版本信息:|类名:systemParameterEnhance;<br>方法or属性:function setSync(key: string, value: string): void;<br>新版本信息:systemapi|@ohos.systemParameterEnhance.d.ts|
|访问级别有变化|类名:systemParameterEnhance;<br>方法or属性:function set(key: string, value: string, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:systemParameterEnhance;<br>方法or属性:function set(key: string, value: string, callback: AsyncCallback\<void>): void;<br>新版本信息:systemapi|@ohos.systemParameterEnhance.d.ts|
|访问级别有变化|类名:systemParameterEnhance;<br>方法or属性:function set(key: string, value: string): Promise\<void>;<br>旧版本信息:|类名:systemParameterEnhance;<br>方法or属性:function set(key: string, value: string): Promise\<void>;<br>新版本信息:systemapi|@ohos.systemParameterEnhance.d.ts|
|type有变化|类名:DeviceResponse;<br>方法or属性:brand: string;<br>旧版本信息:|类名:DeviceResponse;<br>方法or属性:brand: string;<br>新版本信息:string|@system.device.d.ts|
|type有变化|类名:DeviceResponse;<br>方法or属性:manufacturer: string;<br>旧版本信息:|类名:DeviceResponse;<br>方法or属性:manufacturer: string;<br>新版本信息:string|@system.device.d.ts|
|type有变化|类名:DeviceResponse;<br>方法or属性:model: string;<br>旧版本信息:|类名:DeviceResponse;<br>方法or属性:model: string;<br>新版本信息:string|@system.device.d.ts|
|type有变化|类名:DeviceResponse;<br>方法or属性:product: string;<br>旧版本信息:|类名:DeviceResponse;<br>方法or属性:product: string;<br>新版本信息:string|@system.device.d.ts|
|type有变化|类名:DeviceResponse;<br>方法or属性:language: string;<br>旧版本信息:|类名:DeviceResponse;<br>方法or属性:language: string;<br>新版本信息:string|@system.device.d.ts|
|type有变化|类名:DeviceResponse;<br>方法or属性:region: string;<br>旧版本信息:|类名:DeviceResponse;<br>方法or属性:region: string;<br>新版本信息:string|@system.device.d.ts|
|type有变化|类名:DeviceResponse;<br>方法or属性:windowWidth: number;<br>旧版本信息:|类名:DeviceResponse;<br>方法or属性:windowWidth: number;<br>新版本信息:number|@system.device.d.ts|
|type有变化|类名:DeviceResponse;<br>方法or属性:windowHeight: number;<br>旧版本信息:|类名:DeviceResponse;<br>方法or属性:windowHeight: number;<br>新版本信息:number|@system.device.d.ts|
|type有变化|类名:DeviceResponse;<br>方法or属性:screenDensity: number;<br>旧版本信息:|类名:DeviceResponse;<br>方法or属性:screenDensity: number;<br>新版本信息:number|@system.device.d.ts|
|type有变化|类名:DeviceResponse;<br>方法or属性:screenShape: 'rect' \| 'circle';<br>旧版本信息:|类名:DeviceResponse;<br>方法or属性:screenShape: 'rect' \| 'circle';<br>新版本信息:'rect' \| 'circle'|@system.device.d.ts|
|type有变化|类名:DeviceResponse;<br>方法or属性:apiVersion: number;<br>旧版本信息:|类名:DeviceResponse;<br>方法or属性:apiVersion: number;<br>新版本信息:number|@system.device.d.ts|
|type有变化|类名:DeviceResponse;<br>方法or属性:deviceType: string;<br>旧版本信息:|类名:DeviceResponse;<br>方法or属性:deviceType: string;<br>新版本信息:string|@system.device.d.ts|
因为 它太大了无法显示 source diff 。你可以改为 查看blob
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|新增|NA|类名:UIElementInfo;<br>方法or属性:readonly bundleName: string;|@ohos.UiTest.d.ts|
|新增|NA|类名:UIElementInfo;<br>方法or属性:readonly type: string;|@ohos.UiTest.d.ts|
|新增|NA|类名:UIElementInfo;<br>方法or属性:readonly text: string;|@ohos.UiTest.d.ts|
|新增|NA|类名:UIEventObserver;<br>方法or属性:once(type: 'toastShow', callback: Callback\<UIElementInfo>): void;|@ohos.UiTest.d.ts|
|新增|NA|类名:UIEventObserver;<br>方法or属性:once(type: 'dialogShow', callback: Callback\<UIElementInfo>): void;|@ohos.UiTest.d.ts|
|新增|NA|类名:Driver;<br>方法or属性:createUIEventObserver(): UIEventObserver;|@ohos.UiTest.d.ts|
|type有变化|类名:WindowFilter;<br>方法or属性:bundleName?: string;<br>旧版本信息:string?|类名:WindowFilter;<br>方法or属性:bundleName?: string;<br>新版本信息:?string|@ohos.UiTest.d.ts|
|type有变化|类名:WindowFilter;<br>方法or属性:title?: string;<br>旧版本信息:string?|类名:WindowFilter;<br>方法or属性:title?: string;<br>新版本信息:?string|@ohos.UiTest.d.ts|
|type有变化|类名:WindowFilter;<br>方法or属性:focused?: boolean;<br>旧版本信息:boolean?|类名:WindowFilter;<br>方法or属性:focused?: boolean;<br>新版本信息:?boolean|@ohos.UiTest.d.ts|
|type有变化|类名:WindowFilter;<br>方法or属性:actived?: boolean;<br>旧版本信息:boolean?|类名:WindowFilter;<br>方法or属性:actived?: boolean;<br>新版本信息:?boolean|@ohos.UiTest.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|错误码有变化|类名:usbManager;<br>方法or属性:function setCurrentFunctions(funcs: FunctionType): Promise\<void>;<br>旧版本信息:401|类名:usbManager;<br>方法or属性:function setCurrentFunctions(funcs: FunctionType): Promise\<void>;<br>新版本信息:401,14400002|@ohos.usbManager.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|新增|NA|类名:SecureDnsMode;<br>方法or属性:OFF = 0|@ohos.web.webview.d.ts|
|新增|NA|类名:SecureDnsMode;<br>方法or属性:AUTO = 1|@ohos.web.webview.d.ts|
|新增|NA|类名:SecureDnsMode;<br>方法or属性:SECURE_ONLY = 2|@ohos.web.webview.d.ts|
|新增|NA|类名:WebviewController;<br>方法or属性:prefetchPage(url: string, additionalHeaders?: Array\<WebHeader>): void;|@ohos.web.webview.d.ts|
|新增|NA|类名:WebviewController;<br>方法or属性:static prepareForPageLoad(url: string, preconnectable: boolean, numSockets: number): void;|@ohos.web.webview.d.ts|
|废弃版本有变化|类名:SecureDnsMode;<br>方法or属性:Off = 0<br>旧版本信息:|类名:SecureDnsMode;<br>方法or属性:Off = 0<br>新版本信息:10<br>代替接口: SecureDnsMode#OFF|@ohos.web.webview.d.ts|
|废弃版本有变化|类名:SecureDnsMode;<br>方法or属性:Auto = 1<br>旧版本信息:|类名:SecureDnsMode;<br>方法or属性:Auto = 1<br>新版本信息:10<br>代替接口: SecureDnsMode#AUTO|@ohos.web.webview.d.ts|
|废弃版本有变化|类名:SecureDnsMode;<br>方法or属性:SecureOnly = 2<br>旧版本信息:|类名:SecureDnsMode;<br>方法or属性:SecureOnly = 2<br>新版本信息:10<br>代替接口: SecureDnsMode#SECURE_ONLY|@ohos.web.webview.d.ts|
|新增(错误码)|类名:WebStorage;<br>方法or属性:static getOrigins(callback: AsyncCallback\<Array\<WebStorageOrigin>>): void;<br>旧版本信息:|类名:WebStorage;<br>方法or属性:static getOrigins(callback: AsyncCallback\<Array\<WebStorageOrigin>>): void;<br>新版本信息:401,17100012|@ohos.web.webview.d.ts|
|新增(错误码)|类名:WebStorage;<br>方法or属性:static getOriginQuota(origin: string, callback: AsyncCallback\<number>): void;<br>旧版本信息:|类名:WebStorage;<br>方法or属性:static getOriginQuota(origin: string, callback: AsyncCallback\<number>): void;<br>新版本信息:401,17100011|@ohos.web.webview.d.ts|
|新增(错误码)|类名:WebStorage;<br>方法or属性:static getOriginUsage(origin: string, callback: AsyncCallback\<number>): void;<br>旧版本信息:|类名:WebStorage;<br>方法or属性:static getOriginUsage(origin: string, callback: AsyncCallback\<number>): void;<br>新版本信息:401,17100011|@ohos.web.webview.d.ts|
|新增(错误码)|类名:GeolocationPermissions;<br>方法or属性:static getAccessibleGeolocation(origin: string, callback: AsyncCallback\<boolean>): void;<br>旧版本信息:|类名:GeolocationPermissions;<br>方法or属性:static getAccessibleGeolocation(origin: string, callback: AsyncCallback\<boolean>): void;<br>新版本信息:401,17100011|@ohos.web.webview.d.ts|
|新增(错误码)|类名:GeolocationPermissions;<br>方法or属性:static getStoredGeolocation(callback: AsyncCallback\<Array\<string>>): void;<br>旧版本信息:|类名:GeolocationPermissions;<br>方法or属性:static getStoredGeolocation(callback: AsyncCallback\<Array\<string>>): void;<br>新版本信息:401|@ohos.web.webview.d.ts|
|新增(错误码)|类名:WebCookieManager;<br>方法or属性:static saveCookieAsync(callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:WebCookieManager;<br>方法or属性:static saveCookieAsync(callback: AsyncCallback\<void>): void;<br>新版本信息:401|@ohos.web.webview.d.ts|
|新增(错误码)|类名:WebviewController;<br>方法or属性:storeWebArchive(baseName: string, autoName: boolean, callback: AsyncCallback\<string>): void;<br>旧版本信息:|类名:WebviewController;<br>方法or属性:storeWebArchive(baseName: string, autoName: boolean, callback: AsyncCallback\<string>): void;<br>新版本信息:401,17100001,17100003|@ohos.web.webview.d.ts|
|新增(错误码)|类名:WebviewController;<br>方法or属性:runJavaScript(script: string, callback: AsyncCallback\<string>): void;<br>旧版本信息:|类名:WebviewController;<br>方法or属性:runJavaScript(script: string, callback: AsyncCallback\<string>): void;<br>新版本信息:401,17100001|@ohos.web.webview.d.ts|
|新增(错误码)|类名:WebviewController;<br>方法or属性:runJavaScriptExt(script: string, callback: AsyncCallback\<JsMessageExt>): void;<br>旧版本信息:|类名:WebviewController;<br>方法or属性:runJavaScriptExt(script: string, callback: AsyncCallback\<JsMessageExt>): void;<br>新版本信息:401,17100001|@ohos.web.webview.d.ts|
| 操作 | 旧版本 | 新版本 | d.ts文件 |
| ---- | ------ | ------ | -------- |
|新增|NA|类名:Window;<br>方法or属性:getUIContext() : UIContext;|@ohos.window.d.ts|
|新增(错误码)|类名:screen;<br>方法or属性:function getAllScreens(): Promise\<Array\<Screen>>;<br>旧版本信息:|类名:screen;<br>方法or属性:function getAllScreens(): Promise\<Array\<Screen>>;<br>新版本信息:1400001|@ohos.screen.d.ts|
|新增(错误码)|类名:screen;<br>方法or属性:function makeExpand(options: Array\<ExpandOption>): Promise\<number>;<br>旧版本信息:|类名:screen;<br>方法or属性:function makeExpand(options: Array\<ExpandOption>): Promise\<number>;<br>新版本信息:401,1400001|@ohos.screen.d.ts|
|新增(错误码)|类名:screen;<br>方法or属性:function makeMirror(mainScreen: number, mirrorScreen: Array\<number>): Promise\<number>;<br>旧版本信息:|类名:screen;<br>方法or属性:function makeMirror(mainScreen: number, mirrorScreen: Array\<number>): Promise\<number>;<br>新版本信息:401,1400001|@ohos.screen.d.ts|
|新增(错误码)|类名:screen;<br>方法or属性:function createVirtualScreen(options: VirtualScreenOption): Promise\<Screen>;<br>旧版本信息:|类名:screen;<br>方法or属性:function createVirtualScreen(options: VirtualScreenOption): Promise\<Screen>;<br>新版本信息:201,401,1400001|@ohos.screen.d.ts|
|新增(错误码)|类名:screen;<br>方法or属性:function destroyVirtualScreen(screenId: number): Promise\<void>;<br>旧版本信息:|类名:screen;<br>方法or属性:function destroyVirtualScreen(screenId: number): Promise\<void>;<br>新版本信息:401,1400002|@ohos.screen.d.ts|
|新增(错误码)|类名:screen;<br>方法or属性:function setVirtualScreenSurface(screenId: number, surfaceId: string): Promise\<void>;<br>旧版本信息:|类名:screen;<br>方法or属性:function setVirtualScreenSurface(screenId: number, surfaceId: string): Promise\<void>;<br>新版本信息:201,401,1400001|@ohos.screen.d.ts|
|新增(错误码)|类名:screen;<br>方法or属性:function setScreenRotationLocked(isLocked: boolean): Promise\<void>;<br>旧版本信息:|类名:screen;<br>方法or属性:function setScreenRotationLocked(isLocked: boolean): Promise\<void>;<br>新版本信息:401|@ohos.screen.d.ts|
|新增(错误码)|类名:Screen;<br>方法or属性:setOrientation(orientation: Orientation): Promise\<void>;<br>旧版本信息:|类名:Screen;<br>方法or属性:setOrientation(orientation: Orientation): Promise\<void>;<br>新版本信息:401,1400003|@ohos.screen.d.ts|
|新增(错误码)|类名:Screen;<br>方法or属性:setScreenActiveMode(modeIndex: number): Promise\<void>;<br>旧版本信息:|类名:Screen;<br>方法or属性:setScreenActiveMode(modeIndex: number): Promise\<void>;<br>新版本信息:401,1400003|@ohos.screen.d.ts|
|新增(错误码)|类名:Screen;<br>方法or属性:setDensityDpi(densityDpi: number): Promise\<void>;<br>旧版本信息:|类名:Screen;<br>方法or属性:setDensityDpi(densityDpi: number): Promise\<void>;<br>新版本信息:401,1400003|@ohos.screen.d.ts|
|访问级别有变化|类名:screen;<br>方法or属性:function getAllScreens(callback: AsyncCallback\<Array\<Screen>>): void;<br>旧版本信息:|类名:screen;<br>方法or属性:function getAllScreens(callback: AsyncCallback\<Array\<Screen>>): void;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:screen;<br>方法or属性:function getAllScreens(): Promise\<Array\<Screen>>;<br>旧版本信息:|类名:screen;<br>方法or属性:function getAllScreens(): Promise\<Array\<Screen>>;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:screen;<br>方法or属性:function on(eventType: 'connect' \| 'disconnect' \| 'change', callback: Callback\<number>): void;<br>旧版本信息:|类名:screen;<br>方法or属性:function on(eventType: 'connect' \| 'disconnect' \| 'change', callback: Callback\<number>): void;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:screen;<br>方法or属性:function off(eventType: 'connect' \| 'disconnect' \| 'change', callback?: Callback\<number>): void;<br>旧版本信息:|类名:screen;<br>方法or属性:function off(eventType: 'connect' \| 'disconnect' \| 'change', callback?: Callback\<number>): void;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:screen;<br>方法or属性:function makeExpand(options: Array\<ExpandOption>, callback: AsyncCallback\<number>): void;<br>旧版本信息:|类名:screen;<br>方法or属性:function makeExpand(options: Array\<ExpandOption>, callback: AsyncCallback\<number>): void;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:screen;<br>方法or属性:function makeExpand(options: Array\<ExpandOption>): Promise\<number>;<br>旧版本信息:|类名:screen;<br>方法or属性:function makeExpand(options: Array\<ExpandOption>): Promise\<number>;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:screen;<br>方法or属性:function makeMirror(mainScreen: number, mirrorScreen: Array\<number>, callback: AsyncCallback\<number>): void;<br>旧版本信息:|类名:screen;<br>方法or属性:function makeMirror(mainScreen: number, mirrorScreen: Array\<number>, callback: AsyncCallback\<number>): void;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:screen;<br>方法or属性:function makeMirror(mainScreen: number, mirrorScreen: Array\<number>): Promise\<number>;<br>旧版本信息:|类名:screen;<br>方法or属性:function makeMirror(mainScreen: number, mirrorScreen: Array\<number>): Promise\<number>;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:screen;<br>方法or属性:function createVirtualScreen(options: VirtualScreenOption, callback: AsyncCallback\<Screen>): void;<br>旧版本信息:|类名:screen;<br>方法or属性:function createVirtualScreen(options: VirtualScreenOption, callback: AsyncCallback\<Screen>): void;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:screen;<br>方法or属性:function createVirtualScreen(options: VirtualScreenOption): Promise\<Screen>;<br>旧版本信息:|类名:screen;<br>方法or属性:function createVirtualScreen(options: VirtualScreenOption): Promise\<Screen>;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:screen;<br>方法or属性:function destroyVirtualScreen(screenId: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:screen;<br>方法or属性:function destroyVirtualScreen(screenId: number, callback: AsyncCallback\<void>): void;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:screen;<br>方法or属性:function destroyVirtualScreen(screenId: number): Promise\<void>;<br>旧版本信息:|类名:screen;<br>方法or属性:function destroyVirtualScreen(screenId: number): Promise\<void>;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:screen;<br>方法or属性:function setVirtualScreenSurface(screenId: number, surfaceId: string, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:screen;<br>方法or属性:function setVirtualScreenSurface(screenId: number, surfaceId: string, callback: AsyncCallback\<void>): void;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:screen;<br>方法or属性:function setVirtualScreenSurface(screenId: number, surfaceId: string): Promise\<void>;<br>旧版本信息:|类名:screen;<br>方法or属性:function setVirtualScreenSurface(screenId: number, surfaceId: string): Promise\<void>;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:screen;<br>方法or属性:function isScreenRotationLocked(callback: AsyncCallback\<boolean>): void;<br>旧版本信息:|类名:screen;<br>方法or属性:function isScreenRotationLocked(callback: AsyncCallback\<boolean>): void;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:screen;<br>方法or属性:function isScreenRotationLocked(): Promise\<boolean>;<br>旧版本信息:|类名:screen;<br>方法or属性:function isScreenRotationLocked(): Promise\<boolean>;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:screen;<br>方法or属性:function setScreenRotationLocked(isLocked: boolean, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:screen;<br>方法or属性:function setScreenRotationLocked(isLocked: boolean, callback: AsyncCallback\<void>): void;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:screen;<br>方法or属性:function setScreenRotationLocked(isLocked: boolean): Promise\<void>;<br>旧版本信息:|类名:screen;<br>方法or属性:function setScreenRotationLocked(isLocked: boolean): Promise\<void>;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:ExpandOption;<br>方法or属性:interface ExpandOption<br>旧版本信息:|类名:ExpandOption;<br>方法or属性:interface ExpandOption<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:ExpandOption;<br>方法or属性:screenId: number;<br>旧版本信息:|类名:ExpandOption;<br>方法or属性:screenId: number;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:ExpandOption;<br>方法or属性:startX: number;<br>旧版本信息:|类名:ExpandOption;<br>方法or属性:startX: number;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:ExpandOption;<br>方法or属性:startY: number;<br>旧版本信息:|类名:ExpandOption;<br>方法or属性:startY: number;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:VirtualScreenOption;<br>方法or属性:interface VirtualScreenOption<br>旧版本信息:|类名:VirtualScreenOption;<br>方法or属性:interface VirtualScreenOption<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:VirtualScreenOption;<br>方法or属性:name: string;<br>旧版本信息:|类名:VirtualScreenOption;<br>方法or属性:name: string;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:VirtualScreenOption;<br>方法or属性:width: number;<br>旧版本信息:|类名:VirtualScreenOption;<br>方法or属性:width: number;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:VirtualScreenOption;<br>方法or属性:height: number;<br>旧版本信息:|类名:VirtualScreenOption;<br>方法or属性:height: number;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:VirtualScreenOption;<br>方法or属性:density: number;<br>旧版本信息:|类名:VirtualScreenOption;<br>方法or属性:density: number;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:VirtualScreenOption;<br>方法or属性:surfaceId: string;<br>旧版本信息:|类名:VirtualScreenOption;<br>方法or属性:surfaceId: string;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:ScreenSourceMode;<br>方法or属性:enum ScreenSourceMode<br>旧版本信息:|类名:ScreenSourceMode;<br>方法or属性:enum ScreenSourceMode<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:ScreenSourceMode;<br>方法or属性:SCREEN_MAIN = 0<br>旧版本信息:|类名:ScreenSourceMode;<br>方法or属性:SCREEN_MAIN = 0<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:ScreenSourceMode;<br>方法or属性:SCREEN_MIRROR = 1<br>旧版本信息:|类名:ScreenSourceMode;<br>方法or属性:SCREEN_MIRROR = 1<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:ScreenSourceMode;<br>方法or属性:SCREEN_EXTEND = 2<br>旧版本信息:|类名:ScreenSourceMode;<br>方法or属性:SCREEN_EXTEND = 2<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:ScreenSourceMode;<br>方法or属性:SCREEN_ALONE = 3<br>旧版本信息:|类名:ScreenSourceMode;<br>方法or属性:SCREEN_ALONE = 3<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:Screen;<br>方法or属性:interface Screen<br>旧版本信息:|类名:Screen;<br>方法or属性:interface Screen<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:Screen;<br>方法or属性:readonly id: number;<br>旧版本信息:|类名:Screen;<br>方法or属性:readonly id: number;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:Screen;<br>方法or属性:readonly parent: number;<br>旧版本信息:|类名:Screen;<br>方法or属性:readonly parent: number;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:Screen;<br>方法or属性:readonly supportedModeInfo: Array\<ScreenModeInfo>;<br>旧版本信息:|类名:Screen;<br>方法or属性:readonly supportedModeInfo: Array\<ScreenModeInfo>;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:Screen;<br>方法or属性:readonly activeModeIndex: number;<br>旧版本信息:|类名:Screen;<br>方法or属性:readonly activeModeIndex: number;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:Screen;<br>方法or属性:readonly orientation: Orientation;<br>旧版本信息:|类名:Screen;<br>方法or属性:readonly orientation: Orientation;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:Screen;<br>方法or属性:readonly sourceMode: ScreenSourceMode;<br>旧版本信息:|类名:Screen;<br>方法or属性:readonly sourceMode: ScreenSourceMode;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:Screen;<br>方法or属性:setOrientation(orientation: Orientation, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:Screen;<br>方法or属性:setOrientation(orientation: Orientation, callback: AsyncCallback\<void>): void;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:Screen;<br>方法or属性:setOrientation(orientation: Orientation): Promise\<void>;<br>旧版本信息:|类名:Screen;<br>方法or属性:setOrientation(orientation: Orientation): Promise\<void>;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:Screen;<br>方法or属性:setScreenActiveMode(modeIndex: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:Screen;<br>方法or属性:setScreenActiveMode(modeIndex: number, callback: AsyncCallback\<void>): void;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:Screen;<br>方法or属性:setScreenActiveMode(modeIndex: number): Promise\<void>;<br>旧版本信息:|类名:Screen;<br>方法or属性:setScreenActiveMode(modeIndex: number): Promise\<void>;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:Screen;<br>方法or属性:setDensityDpi(densityDpi: number, callback: AsyncCallback\<void>): void;<br>旧版本信息:|类名:Screen;<br>方法or属性:setDensityDpi(densityDpi: number, callback: AsyncCallback\<void>): void;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:Screen;<br>方法or属性:setDensityDpi(densityDpi: number): Promise\<void>;<br>旧版本信息:|类名:Screen;<br>方法or属性:setDensityDpi(densityDpi: number): Promise\<void>;<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:Orientation;<br>方法or属性:enum Orientation<br>旧版本信息:|类名:Orientation;<br>方法or属性:enum Orientation<br>新版本信息:systemapi|@ohos.screen.d.ts|
|访问级别有变化|类名:ScreenModeInfo;<br>方法or属性:interface ScreenModeInfo<br>旧版本信息:|类名:ScreenModeInfo;<br>方法or属性:interface ScreenModeInfo<br>新版本信息:systemapi|@ohos.screen.d.ts|
|权限有变化|类名:screen;<br>方法or属性:function createVirtualScreen(options: VirtualScreenOption): Promise\<Screen>;<br>旧版本信息:|类名:screen;<br>方法or属性:function createVirtualScreen(options: VirtualScreenOption): Promise\<Screen>;<br>新版本信息:ohos.permission.CAPTURE_SCREEN|@ohos.screen.d.ts|
|权限有变化|类名:screen;<br>方法or属性:function setVirtualScreenSurface(screenId: number, surfaceId: string): Promise\<void>;<br>旧版本信息:|类名:screen;<br>方法or属性:function setVirtualScreenSurface(screenId: number, surfaceId: string): Promise\<void>;<br>新版本信息:ohos.permission.CAPTURE_SCREEN|@ohos.screen.d.ts|
|函数有变化|类名:Window;<br>方法or属性:off(type: 'windowEvent',callback:Callback\<WindowEventType>):void;|类名:Window;<br>方法or属性:off(type:'windowEvent',callback?: Callback\<WindowEventType):void;|@ohos.window.d.ts|
# ArkUI子系统LocalStorage类接口ChangeLog
## cl.LocalStorage.1 get接口返回类型变更
**变更影响**
返回类型从get<T>(propName: string): T变更为get<T>(propName: string): T | undefined
应用不需要进行适配。
## cl.LocalStorage.2 setOrCreate参数newValue变成必选
**变更影响**
原接口声明:
```js
setOrCreate<T>(propName: string, newValue?: T): boolean
```
现接口声明:
```js
setOrCreate<T>(propName: string, newValue: T): boolean
```
第二个参数newValue变为必选。
如果应用调用这个接口没有指定newValue参数,在替换新的sdk后会编译不过,需要手动指定newValue。
**适配指导**
```js
let storage = new LocalStorage();
storage.setOrCreate('propA', 'hello');
```
## cl.LocalStorage.3 link参数和返回类型变更
**变更影响**
原接口声明:
```js
link<T>(propName: string, linkUser?: T, subscribersName?: string): T
```
现接口声明:
```js
link<T>(propName: string): SubscribedAbstractProperty<T>
```
1. link第二三个参数为框架内部调用,不应对外开发,所以将接口变更为一个参数;
2. 返回类型T变更为SubscribedAbstractProperty;
**适配指导**
```js
let storage = new LocalStorage({"PropA": "47"});
let linA = storage.link("PropA");
linA.set(50);
```
## cl.LocalStorage.4 setAndLink参数和返回类型变更
**变更影响**
原接口声明:
```js
setAndLink<T>(propName: string, defaultValue: T, linkUser?: T, subscribersName?: string): T
```
现接口声明:
```js
setAndLink<T>(propName: string, defaultValue: T): SubscribedAbstractProperty<T>
```
1. setAndLink第三四个参数为框架内部调用,不应对外开发,所以将接口变更为2个参数;
2. 返回类型T变更为SubscribedAbstractProperty;
**适配指导**
```js
let storage = new LocalStorage({"PropA": "47"});
let linA = storage.setAndLink("PropA", "48")
linA.set(50);
```
## cl.LocalStorage.5 prop参数和返回类型变更
**变更影响**
原接口声明:
```js
prop<T>(propName: string, propUser?: T, subscribersName?: string): T
```
现接口声明:
```js
prop<S>(propName: string): SubscribedAbstractProperty<S>
```
1. prop第二三个参数为框架内部调用,不应对外开发,所以将接口变更为1个参数;
2. 返回类型T变更为SubscribedAbstractProperty;
**适配指导**
```js
let storage = new LocalStorage({"PropA": "47"});
let propA = storage.prop("PropA");
propA.set(51); // one-way sync
```
## cl.LocalStorage.6 setAndProp参数和返回类型变更
**变更影响**
原接口声明:
```js
setAndProp<T>(propName: string, defaultValue: T, propUser?: T, subscribersName?: string): T
```
现接口声明:
```js
setAndProp<S>(propName: string, defaultValue: S): SubscribedAbstractProperty<S>
```
1. setAndProp第三四个参数为框架内部调用,不应对外开发,所以将接口变更为2个参数;
2. 返回类型T变更为SubscribedAbstractProperty;
**适配指导**
```js
let storage = new LocalStorage({"PropA": "47"});
let propA = storage.setAndProp("PropA", "48");
propA.set(51); // one-way sync
```
\ No newline at end of file
# security子系统ChangeLog
## cl.security.1 Random的setSeed功能变更,由异步接口改为同步接口
**变更影响**
影响已发布的JS接口,接口行为发生变更。
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
修改前的接口原型:
setSeed(seed : DataBlob, callback : AsyncCallback\<void>) : void;
setSeed(seed : DataBlob) : Promise\<void>;
修改后的接口原型:
setSeed(seed : DataBlob) : void;
**适配指导**
查看API参考中setSeed对应的接口适配指南:
[加解密算法库框架-API参考](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-cryptoFramework.md)
## cl.security.2 interface DataArray 从@ohos.security.cryptoFramework.d.ts 迁移至@ohos.security.cert.d.ts
**变更影响**
影响已发布的JS接口,接口行为发生变更。
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
interface DataArray从@ohos.security.cryptoFramework.d.ts 迁移至@ohos.security.cert.d.ts
**适配指导**
重新import并使用对应的.d.ts文件:
import cryptoCert from '@ohos.security.cert';
查看API参考中对应的接口适配指南:
[证书-API参考](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-cert.md)
## cl.security.3 interface EncodingFormat从@ohos.security.cryptoFramework.d.ts 迁移至@ohos.security.cert.d.ts
**变更影响**
影响已发布的JS接口,接口行为发生变更。
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
interface EncodingFormat从@ohos.security.cryptoFramework.d.ts 迁移至@ohos.security.cert.d.ts
**适配指导**
重新import并使用对应的.d.ts文件:
import cryptoCert from '@ohos.security.cert';
查看API参考中对应的接口适配指南:
[证书-API参考](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-cert.md)
## cl.security.4 interface EncodingBlob 从@ohos.security.cryptoFramework.d.ts 迁移至@ohos.security.cert.d.ts
**变更影响**
影响已发布的JS接口,接口行为发生变更。
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
interface EncodingBlob 从@ohos.security.cryptoFramework.d.ts 迁移至@ohos.security.cert.d.ts
**适配指导**
重新import并使用对应的.d.ts文件:
import cryptoCert from '@ohos.security.cert';
查看API参考中对应的接口适配指南:
[证书-API参考](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-cert.md)
## cl.security.5 interface CertChainData从@ohos.security.cryptoFramework.d.ts 迁移至@ohos.security.cert.d.ts
**变更影响**
影响已发布的JS接口,接口行为发生变更。
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
interface CertChainData从@ohos.security.cryptoFramework.d.ts 迁移至@ohos.security.cert.d.ts
**适配指导**
重新import并使用对应的.d.ts文件:
import cryptoCert from '@ohos.security.cert';
查看API参考中对应的接口适配指南:
[证书-API参考](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-cert.md)
## cl.security.6 interface X509Cert从@ohos.security.cryptoFramework.d.ts 迁移至@ohos.security.cert.d.ts
**变更影响**
影响已发布的JS接口,接口行为发生变更。
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
interface X509Cert从@ohos.security.cryptoFramework.d.ts 迁移至@ohos.security.cert.d.ts
**适配指导**
重新import并使用对应的.d.ts文件:
import cryptoCert from '@ohos.security.cert';
查看API参考中对应的接口适配指南:
[证书-API参考](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-cert.md)
## cl.security.7 function createX509Cert从@ohos.security.cryptoFramework.d.ts 迁移至@ohos.security.cert.d.ts
**变更影响**
影响已发布的JS接口,接口行为发生变更。
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
function createX509Cert从@ohos.security.cryptoFramework.d.ts 迁移至@ohos.security.cert.d.ts
**适配指导**
重新import并使用对应的.d.ts文件:
import cryptoCert from '@ohos.security.cert';
查看API参考中对应的接口适配指南:
[证书-API参考](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-cert.md)
## cl.security.8 interface X509CrlEntry从@ohos.security.cryptoFramework.d.ts 迁移至@ohos.security.cert.d.ts
**变更影响**
影响已发布的JS接口,接口行为发生变更。
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
interface X509CrlEntry从@ohos.security.cryptoFramework.d.ts 迁移至@ohos.security.cert.d.ts
**适配指导**
重新import并使用对应的.d.ts文件:
import cryptoCert from '@ohos.security.cert';
查看API参考中对应的接口适配指南:
[证书-API参考](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-cert.md)
## cl.security.9 interface X509Crl从@ohos.security.cryptoFramework.d.ts 迁移至@ohos.security.cert.d.ts
**变更影响**
影响已发布的JS接口,接口行为发生变更。
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
interface X509Crl从@ohos.security.cryptoFramework.d.ts 迁移至@ohos.security.cert.d.ts
**适配指导**
重新import并使用对应的.d.ts文件:
import cryptoCert from '@ohos.security.cert';
查看API参考中对应的接口适配指南:
[证书-API参考](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-cert.md)
## cl.security.10 function createX509Crl从@ohos.security.cryptoFramework.d.ts 迁移至@ohos.security.cert.d.ts
**变更影响**
影响已发布的JS接口,接口行为发生变更。
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
function createX509Crl从@ohos.security.cryptoFramework.d.ts 迁移至@ohos.security.cert.d.ts
**适配指导**
重新import并使用对应的.d.ts文件:
import cryptoCert from '@ohos.security.cert';
查看API参考中对应的接口适配指南:
[证书-API参考](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-cert.md)
## cl.security.11 interface CertChainValidator从@ohos.security.cryptoFramework.d.ts 迁移至@ohos.security.cert.d.ts
**变更影响**
影响已发布的JS接口,接口行为发生变更。
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
interface CertChainValidator从@ohos.security.cryptoFramework.d.ts 迁移至@ohos.security.cert.d.ts
**适配指导**
重新import并使用对应的.d.ts文件:
import cryptoCert from '@ohos.security.cert';
查看API参考中对应的接口适配指南:
[证书-API参考](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-cert.md)
## cl.security.12 function createCertChainValidator从@ohos.security.cryptoFramework.d.ts 迁移至@ohos.security.cert.d.ts
**变更影响**
影响已发布的JS接口,接口行为发生变更。
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
function createCertChainValidator从@ohos.security.cryptoFramework.d.ts 迁移至@ohos.security.cert.d.ts
**适配指导**
重新import并使用对应的.d.ts文件:
import cryptoCert from '@ohos.security.cert';
查看API参考中对应的接口适配指南:
[证书-API参考](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-cert.md)
## cl.security.13 X509Cert 的getPublicKey功能变更,由异步接口改为同步接口
**变更影响**
影响已发布的JS接口,接口行为发生变更。
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
修改前的接口原型:
getPublicKey(callback : AsyncCallback\<PubKey>) : void;
getPublicKey() : Promise\<PubKey>;
修改后的接口原型:
getPublicKey() : cryptoFramework.PubKey;
**适配指导**
查看API参考中对应的接口适配指南:
[证书-API参考](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-cert.md)
## cl.security.14 X509Cert 的checkValidityWithDate功能变更,由异步接口改为同步接口
**变更影响**
影响已发布的JS接口,接口行为发生变更。
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
修改前的接口原型:
checkValidityWithDate(date: string, callback : AsyncCallback\<void>) : void;
checkValidityWithDate(date: string) : Promise\<void>;
修改后的接口原型:
checkValidityWithDate(date: string) : void;
**适配指导**
查看API参考中对应的接口适配指南:
[证书-API参考](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-cert.md)
## cl.security.15 X509CrlEntry 的getCertIssuer功能变更,由异步接口改为同步接口
**变更影响**
影响已发布的JS接口,接口行为发生变更。
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
修改前的接口原型:
getCertIssuer(callback : AsyncCallback\<DataBlob>) : void;
getCertIssuer() : Promise\<DataBlob>;
修改后的接口原型:
getCertIssuer() : DataBlob;
**适配指导**
查看API参考中对应的接口适配指南:
[证书-API参考](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-cert.md)
## cl.security.16 X509CrlEntry 的getRevocationDate功能变更,由异步接口改为同步接口
**变更影响**
影响已发布的JS接口,接口行为发生变更。
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
修改前的接口原型:
getRevocationDate(callback : AsyncCallback\<string>) : void;
getRevocationDate() : Promise\<string>;
修改后的接口原型:
getRevocationDate() : string;
**适配指导**
查看API参考中对应的接口适配指南:
[证书-API参考](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-cert.md)
## cl.security.17 X509Crl 的isRevoked功能变更,由异步接口改为同步接口
**变更影响**
影响已发布的JS接口,接口行为发生变更。
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
修改前的接口原型:
isRevoked(cert : X509Cert, callback : AsyncCallback\<boolean>) : void;
isRevoked(cert : X509Cert) : Promise\<boolean>;
修改后的接口原型:
isRevoked(cert : X509Cert) : boolean;
**适配指导**
查看API参考中对应的接口适配指南:
[证书-API参考](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-cert.md)
## cl.security.18 X509Crl 的getRevokedCert功能变更,由异步接口改为同步接口
**变更影响**
影响已发布的JS接口,接口行为发生变更。
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
修改前的接口原型:
getRevokedCert(serialNumber : number, callback : AsyncCallback\<X509CrlEntry>) : void;
getRevokedCert(serialNumber : number) : Promise\<X509CrlEntry>;
修改后的接口原型:
getRevokedCert(serialNumber : number) : X509CrlEntry;
**适配指导**
查看API参考中对应的接口适配指南:
[证书-API参考](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-cert.md)
## cl.security.19 X509Crl 的getRevokedCertWithCert功能变更,由异步接口改为同步接口
**变更影响**
影响已发布的JS接口,接口行为发生变更。
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
修改前的接口原型:
getRevokedCertWithCert(cert : X509Cert, callback : AsyncCallback\<X509CrlEntry>) : void;
getRevokedCertWithCert(cert : X509Cert) : Promise\<X509CrlEntry>;
修改后的接口原型:
getRevokedCertWithCert(cert : X509Cert) : X509CrlEntry;
**适配指导**
查看API参考中对应的接口适配指南:
[证书-API参考](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-cert.md)
## cl.security.20 X509Crl 的getTbsInfo功能变更,由异步接口改为同步接口
**变更影响**
影响已发布的JS接口,接口行为发生变更。
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
修改前的接口原型:
getTbsInfo(callback : AsyncCallback\<DataBlob>) : void;
getTbsInfo() : Promise\<DataBlob>;
修改后的接口原型:
getTbsInfo() : DataBlob;
**适配指导**
查看API参考中对应的接口适配指南:
[证书-API参考](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-cert.md)
## cl.security.21 HUKS支持No-Hash的签名模式
变更之前,应用传递huks.HuksTag.HUKS_TAG_DIGEST = huks.HuksKeyDigest.HUKS_DIGEST_NONE,HUKS默认使用huks.HuksKeyDigest.HUKS_DIGEST_SHA256进行处理;变更之后,应用传递huks.HuksTag.HUKS_TAG_DIGEST = huks.HuksKeyDigest.HUKS_DIGEST_NONE时,HUKS默认不进行摘要处理,需要业务先对原始数据进行hash操作,再将hash后的摘要传入huks进行签名/验签处理。
**变更影响**
影响已发布的JS接口,接口行为发生变更。
应用需要进行适配,才可以使得变更前后的签名/验签结果通过。
**关键的接口/组件变更**
发布的JS接口不变, 传入接口的参数集合发生变更。
业务使用No-Hash的签名模式,需要先对原始数据进行hash处理,再将hash后的摘要传入huks签名/验签接口。同时huks.HuksTag.HUKS_TAG_DIGEST参数设置为huks.HuksKeyDigest.HUKS_DIGEST_NONE。
**适配指导**
以签名为例,示例代码如下:
```js
import huks from '@ohos.security.huks';
let keyAlias = 'rsa_Key';
/* sha256之后的摘要值 */
let inDataAfterSha256 = new Uint8Array(
0x4B, 0x1E, 0x22, 0x64, 0xA9, 0x89, 0x60, 0x1D, 0xEC, 0x78, 0xC0, 0x5D, 0xBE, 0x46, 0xAD, 0xCF,
0x1C, 0x35, 0x16, 0x11, 0x34, 0x01, 0x4E, 0x9B, 0x7C, 0x00, 0x66, 0x0E, 0xCA, 0x09, 0xC0, 0xF3,
);
/* 签名参数 */
let signProperties = new Array();
signProperties[0] = {
tag: huks.HuksTag.HUKS_TAG_ALGORITHM,
value: huks.HuksKeyAlg.HUKS_ALG_RSA,
}
signProperties[1] = {
tag: huks.HuksTag.HUKS_TAG_PURPOSE,
value:
huks.HuksKeyPurpose.HUKS_KEY_PURPOSE_SIGN
}
signProperties[2] = {
tag: huks.HuksTag.HUKS_TAG_KEY_SIZE,
value: huks.HuksKeySize.HUKS_RSA_KEY_SIZE_2048,
}
signProperties[3] = {
tag: huks.HuksTag.HUKS_TAG_DIGEST,
value: huks.HuksKeyDigest.HUKS_DIGEST_NONE, // 设置 digest-none
}
let signOptions = {
properties: signProperties,
inData: inDataAfterSha256 // 设置HASH后的值
}
huks.initSession(keyAlias, signOptions);
```
更多接口的示例代码可参考[HUKS-guidelines](../../../application-dev/security/huks-guidelines.md)[HUKS API](../../../application-dev/reference/apis/js-apis-huks.md)
## cl.security.22 HUKS支持在密钥使用时指定密钥运算参数
变更之前,业务在生成密钥的时候,必须指定密钥运算的全部参数;变更之后,在生成密钥时,只需要包含必选参数即可,在密钥使用阶段再传入其他参数。业务使用会更加灵活。
**变更影响**
影响已发布的JS接口,接口行为发生变更。
允许应用在生成密钥阶段传入的参数中包含必选参数即可,在密钥使用阶段再传入其他可选参数。
**关键的接口/组件变更**
发布的JS接口不变, 传入接口的参数集合发生变更,将参数分为必选参数和可选参数,具体可参考[HUKS-guidelines](../../../application-dev/security/huks-guidelines.md),涉及的接口有:
huks.generateKeyItem
huks.importKeyItem
huks.importWrappedKeyItem
huks.initSession
huks.updateSession
huks.finishSession
**适配指导**
以生成密钥为例,示例代码如下:
```js
let keyAlias = 'keyAlias';
let properties = new Array();
//必选参数
properties[0] = {
tag: huks.HuksTag.HUKS_TAG_ALGORITHM,
value: huks.HuksKeyAlg.HUKS_ALG_RSA
};
//必选参数
properties[1] = {
tag: huks.HuksTag.HUKS_TAG_KEY_SIZE,
value: huks.HuksKeySize.HUKS_RSA_KEY_SIZE_2048
};
//必选参数
properties[2] = {
tag: huks.HuksTag.HUKS_TAG_PURPOSE,
value:
huks.HuksKeyPurpose.HUKS_KEY_PURPOSE_SIGN |
huks.HuksKeyPurpose.HUKS_KEY_PURPOSE_VERIFY
};
//可选参数,如果在生成密钥阶段没有传入,则在使用密钥阶段必须传入。
properties[3] = {
tag: huks.HuksTag.HUKS_TAG_DIGEST,
value: huks.HuksKeyDigest.HUKS_DIGEST_SHA256
};
let options = {
properties: properties
};
try {
huks.generateKeyItem(keyAlias, options, function (error, data) {
if (error) {
console.error(`callback: generateKeyItem failed, code: ${error.code}, msg: ${error.message}`);
} else {
console.info(`callback: generateKeyItem key success`);
}
});
} catch (error) {
console.error(`callback: generateKeyItem input arg invalid, code: ${error.code}, msg: ${error.message}`);
}
```
更多接口的示例代码可参考[HUKS-guidelines](../../../application-dev/security/huks-guidelines.md)[HUKS API](../../../application-dev/reference/apis/js-apis-huks.md)
# 元能力子系统JS API变更Changelog
OpenHarmony 3.2.10.1(Mr)版本相较于OpenHarmony 3.2.beta4版本,元能力子系统的API变更如下
## cl.ability.1 接口迁移
ability子系统UIAbilityContext的接口requestPermissionsFromUser迁移到security子系统:
之前权限弹窗应用是基于UIAbility实现的,需要借助于UIAbilityContext的startAbilityForResult接口把授权结果带回给调用方,故把requestPermissionsFromUser接口暂时放在UIAbilityContext中。现在权限弹窗应用切换为基于ServiceExtensionAbility实现,不再需要借助UIAbilityContext的startAbilityForResult接口,因此把requestPermissionsFromUser接口迁移到security子系统。
开发者需要根据以下说明对应用进行适配。
**变更影响**
影响API9版本的JS接口,应用需要进行适配才可以在新版本SDK环境正常实现功能。
**关键的接口/组件变更**
| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
| ------------------------- | ------------------- | ------------------------------------------------------------ | -------- |
| application/UIAbilityContext | UIAbilityContext | requestPermissionsFromUser(permissions: Array<string>, requestCallback: AsyncCallback<PermissionRequestResult>): void; | 删除 |
| application/UIAbilityContext | UIAbilityContext | requestPermissionsFromUser(permissions: Array<string>): Promise<PermissionRequestResult>; | 删除 |
| @ohos.abilityAccessCtrl | AtManager | requestPermissionsFromUser(context: Context, permissions: Array<Permissions>, requestCallback: AsyncCallback<PermissionRequestResult>) : void; | 新增 |
| @ohos.abilityAccessCtrl | AtManager | requestPermissionsFromUser(context: Context, permissions: Array<Permissions>) : Promise<PermissionRequestResult>; | 新增 |
**适配指导**
应用中调用requestPermissionsFromUser拉起权限弹窗应用可参考下列代码
Stage模型下的示例:
```ts
import abilityAccessCtrl from '@ohos.abilityAccessCtrl.d.ts';
//UIAbility的onWindowStageCreate生命周期
onWindowStageCreate() {
let AtManager = abilityAccessCtrl.createAtManager();
//requestPermissionsFromUser会判断权限的授权状态来决定是否唤起弹窗
AtManager.requestPermissionsFromUser(this.context, ["ohos.permission.MANAGE_DISPOSED_APP_STATUS"]).then((data) => {
console.log("data type:" + typeof(data));
console.log("data:" + data);
console.log("data permissions:" + data.permissions);
console.log("data result:" + data.authResults);
}).catch((err) => {
console.error('Failed to start ability', err.code);
})
}
```
## cl.ability.2 删除标记为废弃的API9接口
[元能力异常处理整改](../OpenHarmony_3.2.8.3/changelogs-ability.md)将部分API9接口标记为了废弃,根据OpenHarmony接口规范,需要删除标记为废弃的API9接口。
**变更影响**
基于此前版本开发的应用,需要将被删除的接口替换为新接口,否则会影响应用编译。
**关键接口/组件变更**
接口文件被删除:
| 被删除接口 | 新接口 |
| ----------------------------------------------- | ----------------------------------------------- |
| @ohos.application.Ability.d.ts | @ohos.app.ability.UIAbility.d.ts |
| @ohos.application.AbilityConstant.d.ts | @ohos.app.ability.AbilityConstant.d.ts |
| @ohos.application.AbilityLifecycleCallback.d.ts | @ohos.app.ability.AbilityLifecycleCallback.d.ts |
| @ohos.application.AbilityStage.d.ts | @ohos.app.ability.AbilityStage.d.ts |
| @ohos.application.EnvironmentCallback.d.ts | @ohos.app.ability.EnvironmentCallback.d.ts |
| @ohos.application.ExtensionAbility.d.ts | @ohos.app.ability.ExtensionAbility.d.ts |
| @ohos.application.FormExtension.d.ts | @ohos.app.form.FormExtensionAbility.d.ts |
| @ohos.application.ServiceExtensionAbility.d.ts | @ohos.app.ability.ServiceExtensionAbility.d.ts |
| @ohos.application.StartOptions.d.ts | @ohos.app.ability.StartOptions.d.ts |
| @ohos.application.context.d.ts | @ohos.app.ability.common.d.ts |
| @ohos.application.errorManager.d.ts | @ohos.app.ability.errorManager.d.ts |
接口、属性被删除:
- @ohos.application.Configuration.d.ts
- Configuration 的 direction、screenDensity、displayId、hasPointerDevice 被删除。可以使用 @ohos.app.ability.Configuration.d.ts 的 Configuration替换。
- @ohos.application.ConfigurationConstant.d.ts
- 枚举 Direction 和 ScreenDensity 被删除。可以使用 @ohos.app.ability.ConfigurationConstant.d.ts 的枚举 Direction 和 ScreenDensity 替换。
- @ohos.application.abilityManager.d.ts
- 方法 getExtensionRunningInfos 和 getTopAbility 被删除。可以使用 @ohos.app.ability.abilityManager.d.ts 的同名方法替换。
- @ohos.application.appManager.d.ts
- 枚举 ApplicationState 和 ProcessState 被删除。可以使用 @ohos.app.ability.appManager.d.ts 的枚举 ApplicationState 和 ProcessState 替换。
- 方法 registerApplicationStateObserver 和 getProcessRunningInformation被删除。可以使用 @ohos.app.ability.appManager.d.ts 的同名方法替换。
- @ohos.application.formHost.d.ts
- 方法 shareForm 和 notifyFormsPrivacyProtected 被删除。可以使用 @ohos.app.form.formHost.d.ts 的同名方法替换。
- @ohos.application.formInfo.d.ts
- 枚举 FormType 的 eTS 被删除,可以使用 @ohos.app.form.formInfo.d.ts 的 FormType 中的 eTS 替换。
- 枚举 FormParam 的 IDENTITY_KEY、BUNDLE_NAME_KEY、ABILITY_NAME_KEY、DEVICE_ID_KEY 被删除,可以使用 @ohos.app.form.formInfo.d.ts 的 FormParam 中的同名枚举替换。
- 接口 FormInfoFilter 被删除。可以使用 @ohos.app.form.formInfo.d.ts 的 FormInfoFilter 替换。
- 枚举 FormDimension 被删除。可以使用 @ohos.app.form.formInfo.d.ts 的 FormDimension 替换。
- 枚举 VisibilityType 被删除。可以使用 @ohos.app.form.formInfo.d.ts 的 VisibilityType 替换。
- @ohos.wantAgent.d.ts
- 方法 trigger 和 getOperationType 被删除。可以使用 @ohos.app.ability.wantAgent.d.ts 的同名方法替换。
- application/ApplicationContext.d.ts
- 方法 registerAbilityLifecycleCallback、unregisterAbilityLifecycleCallback、registerEnvironmentCallback、unregisterEnvironmentCallback 被删除。可以使用 on、off 替换。
- application/ServiceExtensionContext.d.ts
- 方法 connectAbility、connectAbilityWithAccount、disconnectAbility 被删除。可以使用 connectServiceExtensionAbility、connectServiceExtensionAbilityWithAccount、disconnectServiceExtensionAbility 替换。
- @ohos.application.FormExtension.d.ts
- 生命周期onCreate、onCastToNormal、onUpdate、onVisibilityChange、onEvent、onDestroy、onAcquireFormState、onShare 被删除。可以使用@ohos.app.form.FormExtensionAbility.d.ts的onAddForm、onCastToNormalForm、onUpdateForm、onChangeFormVisibility、onFormEvent、onRemoveForm、onAcquireFormState、onShareForm
- @ohos.application.abilityDelegatorRegistry.d.ts
- 导出类 AbilityDelegator、AbilityDelegatorArgs、AbilityMonitor、ShellCmdResult 被删除。可以使用@ohos.app.ability.abilityDelegatorRegistry.d.ts中的同名导出类替换。
- @ohos.application.abilityManager.d.ts
- 导出类 AbilityRunningInfo、ExtensionRunningInfo 被删除。可以使用@ohos.app.ability.abilityManager.d.ts中的同名导出类替换。
- @ohos.application.appManager.d.ts
- 导出类 AbilityStateData、AppStateData、ApplicationStateObserver、ProcessRunningInfo、ProcessRunningInformation 被删除。可以使用@ohos.app.ability.appManager.d.ts中的同名导出类替换。
- @ohos.application.missionManager.d.ts
- 导出类 MissionInfo、MissionListener、MissionSnapshot 被删除。可以使用@ohos.app.ability.missionManager.d.ts中的同名导出类替换。
- @ohos.wantAgent.d.ts
- 导出类 TriggerInfo、WantAgentInfo 被删除。可以使用@ohos.app.ability.wantAgent.d.ts中的同名导出类替换。
**适配指导**
如上所述,仅少数接口修改了接口名的如注册回调函数(registerAbilityLifecycleCallback、unregisterAbilityLifecycleCallback、registerEnvironmentCallback、unregisterEnvironmentCallback)和连接断开 ServiceExtensionAbility(connectAbility、connectAbilityWithAccount、disconnectAbility),卡片生命周期等需要替换成新的接口名。
绝大多数接口平移到了新的namespace中,所以可以通过修改import来解决适配问题:
如原先接口使用了@ohos.application.Ability
```js
import Ability from '@ohos.application.Ability';
```
可以通过直接修改import,来切换到新的namespace上:
```js
import Ability from '@ohos.app.ability.UIAbility';
```
此外还需要适配异常处理,具体参考新接口的接口文档。
# commonlibrary子系统JS API变更Changelog
OpenHarmony 3.2.10.1(Mr)版本相较于OpenHarmony 3.2.beta4版本,container子系统的API变更如下
## cl.公共基础类库子系统.1 错误码及信息变更
公共基础类库子系统子系统中ArrayList、List、LinkedList、Stack、Queue、Deque、PlainArray、LightWeightMap、LightWeightSet、HashMap、HashSet、TreeMap、TreeSet类的接口抛出的错误码及信息变更:
变更后的错误码详细介绍请参见[语言基础类库错误码](../../../application-dev/reference/errorcodes/errorcode-utils.md)
已使用相关接口开发的应用无需重新适配。
**关键的接口/组件变更**
各个类中的接口重新定义了错误码抛出的信息,并在对应模块的`*.d.ts`声明文件中通过'@throws'标签进行标示。
示例如下:
ArrayList类变更前:
constructor();
ArrayList类变更后:
@throws { BusinessError } 10200012 - The ArrayList's constructor cannot be directly invoked.
constructor();
**变更影响**
暂无影响。
# 分布式数据管理子系统JS API变更Changelog
OpenHarmony 3.2.10.1(Mr)版本相较于OpenHarmony 3.2.beta4版本,分布式数据管理子系统的API变更如下
## cl.distributeddatamgr.1 接口变更
distributeddatamgr子系统kv_store组件接口存在变更:
由于执行时间固定且耗时短,不需要异步等待执行结果,createKVManager方法需要改为同步接口。因此旧的接口function createKVManager(config: KVManagerConfig): Promise\<KVManager\>; 与 function createKVManager(config: KVManagerConfig, callback: AsyncCallback<KVManager>): void; 改为 function createKVManager(config: KVManagerConfig): KVManager;
开发者需要根据以下说明对应用进行适配。
**变更影响**
影响API9版本的JS接口,应用需要进行适配才可以在新版本SDK环境正常实现功能。
**关键的接口/组件变更**
| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
| ------------------------- | ------------------- | ------------------------------------------------------------ | -------- |
| @ohos.distributedKVStore | distributedKVStore | function createKVManager(config: KVManagerConfig): Promise\<KVManager\>; | 删除 |
| @ohos.distributedKVStore | distributedKVStore | function createKVManager(config: KVManagerConfig): KVManager; | 变更 |
**适配指导**
应用中调用createKVManager创建KVManager对象实例可参考下列代码
Stage模型下的示例:
```ts
import AbilityStage from '@ohos.application.Ability'
let kvManager;
export default class MyAbilityStage extends AbilityStage {
onCreate() {
console.log("MyAbilityStage onCreate")
let context = this.context
const kvManagerConfig = {
context: context,
bundleName: 'com.example.datamanagertest',
}
try {
kvManager = distributedKVStore.createKVManager(kvManagerConfig);
} catch (e) {
console.error(`Failed to create KVManager.code is ${e.code},message is ${e.message}`);
}
}
}
```
FA模型下的示例:
```ts
import featureAbility from '@ohos.ability.featureAbility'
let kvManager;
let context = featureAbility.getContext()
const kvManagerConfig = {
context: context,
bundleName: 'com.example.datamanagertest',
}
try {
kvManager = distributedKVStore.createKVManager(kvManagerConfig);
} catch (e) {
console.error(`Failed to create KVManager.code is ${e.code},message is ${e.message}`);
}
```
## cl.distributeddatamgr.2 function getRdbStoreV9 从@ohos.data.rdb.d.ts 迁移至@ohos.data.relationalStore.d.ts
**变更影响**
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
如下接口:
```ts
function getRdbStoreV9(context: Context, config: StoreConfigV9, version: number, callback: AsyncCallback<RdbStoreV9>): void;
function getRdbStoreV9(context: Context, config: StoreConfigV9, version: number): Promise<RdbStoreV9>;
```
从@ohos.data.rdb.d.ts 迁移至@ohos.data.relationalStore.d.ts:
```
function getRdbStore(context: Context, config: StoreConfig, callback: AsyncCallback<RdbStore>): void;
function getRdbStore(context: Context, config: StoreConfig): Promise<RdbStore>;
```
**适配指导**
* `import rdb from "@ohos.data.rdb"` 改为 `import rdb from "@ohos.data.relationalStore"`
* 按上述接口变更对齐修改所调用的方法名称即可。
## cl.distributeddatamgr.3 function deleteRdbStoreV9 从@ohos.data.rdb.d.ts 迁移至@ohos.data.relationalStore.d.ts
**变更影响**
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
如下接口:
```ts
function deleteRdbStoreV9(context: Context, name: string, callback: AsyncCallback<void>): void;
function deleteRdbStoreV9(context: Context, name: string): Promise<void>;
```
从@ohos.data.rdb.d.ts 迁移至@ohos.data.relationalStore.d.ts:
```
function deleteRdbStoreV9(context: Context, name: string, callback: AsyncCallback<void>): void;
function deleteRdbStoreV9(context: Context, name: string): Promise<void>;
```
**适配指导**
* `import rdb from "@ohos.data.rdb"` 改为 `import rdb from "@ohos.data.relationalStore"`
* 按上述接口变更对齐修改所调用的方法名称即可。
## cl.distributeddatamgr.4 interface StoreConfigV9 从@ohos.data.rdb.d.ts 迁移至@ohos.data.relationalStore.d.ts
**变更影响**
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
interface StoreConfigV9 从@ohos.data.rdb.d.ts 迁移至@ohos.data.relationalStore.d.ts 改名为interface StoreConfig。
**适配指导**
* `import rdb from "@ohos.data.rdb"` 改为 `import rdb from "@ohos.data.relationalStore"`
* 按上述接口变更对齐修改所调用的接口名称即可。
## cl.distributeddatamgr.5 enum SecurityLevel 从@ohos.data.rdb.d.ts 迁移至@ohos.data.relationalStore.d.ts
**变更影响**
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
enum SecurityLevel 从ohos.data.rdb.d.ts 迁移至@ohos.data.relationalStore.d.ts。
**适配指导**
* `import rdb from "@ohos.data.rdb"` 改为 `import rdb from "@ohos.data.relationalStore"`
* 按上述接口变更对齐修改所调用的接口名称即可。
## cl.distributeddatamgr.6 interface RdbStoreV9 从@ohos.data.rdb.d.ts 迁移至@ohos.data.relationalStore.d.ts
**变更影响**
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
interface RdbStoreV9 从@ohos.data.rdb.d.ts 迁移至@ohos.data.relationalStore.d.ts 改名为interface RdbStore。
**适配指导**
* `import rdb from "@ohos.data.rdb"` 改为 `import rdb from "@ohos.data.relationalStore"`
* 按上述接口变更对齐修改所调用的接口名称即可。
## cl.distributeddatamgr.7 class RdbPredicatesV9 从ohos.data.rdb.d.ts 迁移至@ohos.data.relationalStore.d.ts
**变更影响**
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
class RdbPredicatesV9 从ohos.data.rdb.d.ts 迁移至@ohos.data.relationalStore.d.ts 改名为interface RdbPredicates。
**适配指导**
* `import rdb from "@ohos.data.rdb"` 改为 `import rdb from "@ohos.data.relationalStore"`
* 按上述接口变更对齐修改所调用的接口名称即可。
## cl.distributeddatamgr.8 interface ResultSetV9 从api/@ohos.data.relationalStore.d.ts 迁移至@ohos.data.relationalStore.d.ts
**变更影响**
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
interface ResultSetV9 从api/data/rdb/resultSet.d.ts 迁移至@ohos.data.relationalStore.d.ts 改名为interface ResultSet。
**适配指导**
* `import rdb from "@ohos.data.rdb"` 改为 `import rdb from "@ohos.data.relationalStore"`
* ResultSetV9实例仅通过getRdbStoreV9方法获取,参考cl.distributeddatamgr.2变更后,代码可自动适配ResultSet。
## cl.multimedia.av_session.001 av_session所有接口更换为系统接口
所有av_session的接口变更为SystemApi。
**变更影响**
非系统应用无法调用系统接口,如调用方为非系统应用或未申请SystemApi相关权限,将无法调用接口。
**关键的接口/组件变更**
所有接口均变更为SystemApi,接口明细如下:
| 接口、枚举或变量名 | 类型 | 是否为SystemApi |
| -------- | -------- | ------- |
| SessionToken | interface | 是 |
| AVMetadata | interface | 是 |
| AVPlaybackState | interface | 是 |
| PlaybackPosition | interface | 是 |
| OutputDeviceInfo | interface | 是 |
| AVSessionDescriptor | interface | 是 |
| AVSessionController | interface | 是 |
| AVControlCommand | interface | 是 |
| createAVSession | function | 是 |
| getAllSessionDescriptors | function | 是 |
| createController | function | 是 |
| castAudio | function | 是 |
| on | function | 是 |
| off | function | 是 |
| sendSystemAVKeyEvent | function | 是 |
| sendSystemControlCommand | function | 是 |
| sessionId | variable | 是 |
| setAVMetadata | function | 是 |
| setAVPlaybackState | function | 是 |
| setLaunchAbility | function | 是 |
| getController | function | 是 |
| getOutputDevice | function | 是 |
| activate | function | 是 |
| deactivate | function | 是 |
| destroy | function | 是 |
| getAVPlaybackState | function | 是 |
| getAVMetadata | function | 是 |
| getOutputDevice | function | 是 |
| sendAVKeyEvent | function | 是 |
| getLaunchAbility | function | 是 |
| getRealPlaybackPositionSync | function | 是 |
| isActive | function | 是 |
| getValidCommands | function | 是 |
| sendControlCommand | function | 是 |
| AVSessionType | type | 是 |
| AVControlCommandType | type | 是 |
| LoopMode | enum | 是 |
| PlaybackState | enum | 是 |
| AVSessionErrorCode | enum | 是 |
# 事件通知子系统ChangeLog
## cl.notification.1 删除标记为废弃的API9接口
[事件通知异常处理整改](../OpenHarmony_3.2.8.3/changelogs-notification.md)将部分API9接口标记为了废弃,根据OpenHarmony接口规范,需要删除标记为废弃的API9接口。
**变更影响**
基于此前版本开发的应用,需要将被删除的接口替换为新接口,否则会影响应用编译。
**关键接口/组件变更**
原接口中标记为废弃的API9接口将被删除,可以使用新接口中的同名接口替换。
| 原接口 | 新接口 |
| ----------------------- | -------------------------------- |
| @ohos.commonEvent.d.ts | @ohos.commonEventManager.d.ts |
| @ohos.notification.d.ts | @ohos.notificationManager.d.ts |
| @ohos.notification.d.ts | @ohos.notificationSubscribe.d.ts |
接口、属性被删除:
- @ohos.notification.d.ts
- 接口 publishAsBundle、cancelAsBundle、isNotificationSlotEnabled、setSyncNotificationEnabledWithoutApp、getSyncNotificationEnabledWithoutApp 被删除。可以使用 api/@ohos.notificationManager.d.ts 的同名接口替换。
- 接口 enableNotificationSlot 被删除。可以使用 api/@ohos.notificationManager.d.ts 的接口 setNotificationEnableSlot 替换。
- 导出类 NotificationActionButton、NotificationBasicContent、NotificationContent、NotificationLongTextContent、NotificationMultiLineContent、NotificationPictureContent、NotificationFlags、NotificationFlagStatus、NotificationRequest、DistributedOptions、NotificationSlot、NotificationSorting、NotificationTemplate、NotificationUserInput 被删除。可以使用 api/@ohos.notificationManager.d.ts 的同名导出类替换。
- 导出类 NotificationSubscribeInfo、NotificationSubscriber、SubscribeCallbackData、EnabledNotificationCallbackData 被删除。可以使用 api/@ohos.notificationSubscribe.d.ts 的同名导出类替换。
**适配指导**
如上所述,仅将老接口平移到了新的namespace中,所以可以通过修改import来解决适配问题:
如原先接口使用了@ohos.commonEvent
```js
import commonEvent from '@ohos.commonEvent';
```
可以通过直接修改import,来切换到新的namespace上:
```js
import commonEvent from '@ohos.commonEventManager';
```
@ohos.notification拆分成了两个namespace,需要根据接口情况选择需要的新namespace进行适配。
此外还需要适配异常处理,具体参考新接口的接口文档。
# 时间时区子系统ChangeLog
## cl.time.1 接口异常抛出变更
时间时区子系统定时器接口异常抛出:202非系统应用异常和401参数无效异常。
**变更影响**
该接口变更前向兼容,基于此前版本开发的应用可继续使用接口,增加相应的异常处理,原有功能不受影响。
**关键接口/组件变更**
变更前:
- 接口异常抛出message,无错误码。
变更后:
- 接口异常抛出message和code,包括202非系统应用异常和401参数无效异常。
| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
| ----------------- | ----------- | ------------------------------------------------------------ | -------- |
| @ohos.systemTimer | systemTimer | function createTimer(options: TimerOptions, callback: AsyncCallback<number>): void | 变更 |
| @ohos.systemTimer | systemTimer | function createTimer(options: TimerOptions): Promise<number> | 变更 |
| @ohos.systemTimer | systemTimer | function startTimer(timer: number, triggerTime: number, callback: AsyncCallback<void>): void | 变更 |
| @ohos.systemTimer | systemTimer | function startTimer(timer: number, triggerTime: number): Promise<void> | 变更 |
| @ohos.systemTimer | systemTimer | function stopTimer(timer: number, callback: AsyncCallback<void>): void | 变更 |
| @ohos.systemTimer | systemTimer | function stopTimer(timer: number): Promise<void> | 变更 |
| @ohos.systemTimer | systemTimer | function destroyTimer(timer: number, callback: AsyncCallback<void>): void | 变更 |
| @ohos.systemTimer | systemTimer | function destroyTimer(timer: number): Promise<void> | 变更 |
**适配指导**
应用中调用systemTimer所有接口可参考下列代码进行异常捕获
createTimer callback形式调用:
**示例:**
```js
export default {
systemTimer () {
let options = {
type: systemTimer.TIMER_TYPE_REALTIME,
repeat: false
};
try {
systemTimer.createTimer(options, (error, timerId) => {
if (error) {
//捕获权限否定异常
console.info(`Failed to create timer. message: ${error.message}, code: ${error.code}`);
}
console.info(`Succeeded in creating timer. timerId: ${timerId}`);
});
} catch(e) {
//捕获参数校验失败异常
console.info(`Failed to create timer. message: ${e.message}, code: ${e.code}`);
}
}
}
```
createTimer promise形式调用:
**示例:**
```js
export default {
systemTimer () {
let options = {
type: systemTimer.TIMER_TYPE_REALTIME,
repeat: false
};
try {
systemTimer.createTimer(options).then((timerId) => {
console.info(`Succeeded in creating timer. timerId: ${timerId}`);
}).catch((error) => {
//捕获权限否定异常
console.info(`Failed to create timer. message: ${error.message}, code: ${error.code}`);
});
} catch(e) {
//捕获参数校验失败异常
console.info(`Failed to create timer. message: ${e.message}, code: ${e.code}`);
}
}
}
```
startTimer callback形式调用:
**示例:**
```js
export default {
async systemTimer () {
let options = {
type: systemTimer.TIMER_TYPE_REALTIME,
repeat:false
}
let timerId = await systemTimer.createTimer(options);
let triggerTime = new Date().getTime();
triggerTime += 3000;
try {
systemTimer.startTimer(timerId, triggerTime, (error) => {
if (error) {
//捕获权限否定异常
console.error(`Failed to start timer. message: ${error.message}, code: ${error.code}`);
}
});
} catch (e) {
//捕获参数校验失败异常
console.info(`Failed to start timer. message: ${e.message}, code: ${e.code}`);
}
}
}
```
startTimer promise形式调用:
**示例:**
```js
export default {
async systemTimer (){
let options = {
type: systemTimer.TIMER_TYPE_REALTIME,
repeat:false
}
let timerId = await systemTimer.createTimer(options);
let triggerTime = new Date().getTime();
triggerTime += 3000;
try {
systemTimer.startTimer(timerId, triggerTime).then((data) => {
console.log(`Succeeded in startting timer. Data:` + data);
}).catch((error) => {
//捕获权限否定异常
console.info(`Failed to start timer. message: ${error.message}, code: ${error.code}`);
});
} catch (e) {
//捕获参数校验失败异常
console.info(`Failed to start timer. message: ${e.message}, code: ${e.code}`);
}
}
}
```
stopTimer callback形式调用:
**示例:**
```js
export default {
async systemTimer () {
let options = {
type: systemTimer.TIMER_TYPE_REALTIME,
repeat:false
}
let timerId = await systemTimer.createTimer(options);
let triggerTime = new Date().getTime();
triggerTime += 3000;
systemTimer.startTimer(timerId, triggerTime);
try {
systemTimer.stopTimer(timerId, triggerTime, (error) => {
if (error) {
//捕获权限否定异常
console.error(`Failed to stop timer. message: ${error.message}, code: ${error.code}`);
}
});
} catch (e) {
//捕获参数校验失败异常
console.info(`Failed to stop timer. message: ${e.message}, code: ${e.code}`);
}
}
}git
```
stopTimer promise形式调用:
**示例:**
```js
export default {
async systemTimer (){
let options = {
type: systemTimer.TIMER_TYPE_REALTIME,
repeat:false
}
let timerId = await systemTimer.createTimer(options);
let triggerTime = new Date().getTime();
triggerTime += 3000;
systemTimer.startTimer(timerId, triggerTime);
try {
systemTimer.stopTimer(timerId, triggerTime).then((data) => {
console.log(`Succeeded in stop timer. Data:` + data);
}).catch((error) => {
//捕获权限否定异常
console.info(`Failed to stop timer. message: ${error.message}, code: ${error.code}`);
});
} catch (e) {
//捕获参数校验失败异常
console.info(`Failed to stop timer. message: ${e.message}, code: ${e.code}`);
}
}
}
```
destroyTimer callback形式调用:
**示例:**
```js
export default {
async systemTimer () {
let options = {
type: systemTimer.TIMER_TYPE_REALTIME,
repeat:false
}
let timerId = await systemTimer.createTimer(options);
let triggerTime = new Date().getTime();
triggerTime += 3000;
systemTimer.startTimer(timerId, triggerTime);
systemTimer.stopTimer(timerId);
try {
systemTimer.destroyTimer(timerId, triggerTime, (error) => {
if (error) {
//捕获权限否定异常
console.error(`Failed to destroy timer. message: ${error.message}, code: ${error.code}`);
}
});
} catch (e) {
//捕获参数校验失败异常
console.info(`Failed to destroy timer. message: ${e.message}, code: ${e.code}`);
}
}
}
```
destroyTimer promise形式调用:
**示例:**
```js
export default {
async systemTimer (){
let options = {
type: systemTimer.TIMER_TYPE_REALTIME,
repeat:false
}
let timerId = await systemTimer.createTimer(options);
let triggerTime = new Date().getTime();
triggerTime += 3000;
systemTimer.startTimer(timerId, triggerTime);
systemTimer.stopTimer(timerId);
try {
systemTimer.destroyTimer(timerId, triggerTime).then((data) => {
console.log(`Succeeded in destroy timer. Data:` + data);
}).catch((error) => {
//捕获权限否定异常
console.info(`Failed to destroy timer. message: ${error.message}, code: ${error.code}`);
});
} catch (e) {
//捕获参数校验失败异常
console.info(`Failed to destroy timer. message: ${e.message}, code: ${e.code}`);
}
}
}
```
## cl.time.2 接口异常抛出变更
时间时区子系统时间相关接口异常抛出:201权限否定异常、202非系统应用异常和401参数无效异常。
**变更影响**
基于此前版本开发的应用,继续使用无影响,使用新接口需要捕获并处理抛出的新异常。
**关键接口/组件变更**
变更前:
- 接口异常抛出message,错误码-1。
变更后:
- 接口异常抛出message和code,包括201权限否定异常、202非系统应用异常和401参数无效异常。
原接口中标记为废弃的接口,可以使用新接口中的同名接口替换
| 原接口 | 新接口 |
| ---------------- | -------------------- |
| @ohos.systemTime | @ohos.systemDateTime |
**适配指导**
应用中调用systemTime所有接口可参考下列代码进行异常捕获,以setTime接口为例,其他接口适配方法相同。
callback形式调用:
**示例:**
```js
import systemDateTime from @ohos.systemDateTime
// time对应的时间为2021-01-20 02:36:25
let time = 1611081385000;
try {
systemDateTime.setTime(time, (error) => {
//捕获权限否定异常和非系统应用异常
if (error) {
console.info(`Failed to setting time. message: ${error.message}, code: ${error.code}`);
return;
}
console.info(`Succeeded in setting time.`);
})
} catch(e) {
//捕获参数校验失败异常
console.info(`Failed to set time. message: ${e.message}, code: ${e.code}`);
}
```
promise形式调用:
**示例:**
```js
import systemDateTime from @ohos.systemDateTime
// time对应的时间为2021-01-20 02:36:25
let time = 1611081385000;
try {
systemDateTime.setTime(time).then(() => {
console.info(`Succeeded in setting time.`);
}).catch((error) => {
//捕获权限否定异常和非系统应用异常
console.info(`Failed to setting time. message: ${error.message}, code: ${error.code}`);
});
} catch(e) {
//捕获参数校验失败异常
console.info(`Failed to set time. message: ${e.message}, code: ${e.code}`);
}
```
# 公共基础类库子系统JS API变更Changelog
OpenHarmony 3.2.10.1(Mr)版本相较于OpenHarmony 3.2.beta4版本,url子系统的API变更如下
## cl.commonlibrary.1.URLParams类接口变更
公共基础类库子系统url模块URLParams类构造函数存在变更:
constructor(init?: string[][] | Record<string, string> | string | URLSearchParams) 改为 constructor(init?: string[][] | Record<string, string> | string | URLParams);参数类型为原来的URLSearchParams类改为URLParams类。
开发者需要根据以下说明对应用进行适配。
**变更影响**
影响API9版本的JS接口,应用需要进行适配才可以在新版本SDK环境正常实现功能。
**关键的接口/组件变更**
| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
| :------------------------ | ------------------- | ------------------------------------------------------------ | -------- |
| @ohos.url | URLParams | constructor(string[][] \| Record&lt;string, string&gt; \| string \| URLSearchParams) | 删除 |
| @ohos.url | URLParams | constructor(string[][] \| Record&lt;string, string&gt; \| string \| URLParams)| 变更
**适配指导**
应用中创建URLParams对象实例可参考下列代码
示例:
```ts
import url from '@ohos.url'
try {
let params1 = new Url.URLParams('?user=abc&query=xyz')
let params2 = new Url.URLParams(params1)
var result= params2.toString()
console.log(result) //"user=abc&query=xyz"
} catch (err) {
console.error(`Fail to ceate URLParams.codeis${err.code},message is ${err.message}`);
}
```
## cl.commonlibrary.2.URL类属性变更url子系统URLParams类构造函数存在变更:
公共基础类库子系统url模块URL类属性存在变更:
废弃searchParams: URLSearchParams属性,新增params: URLParams属性
开发者需要根据以下说明对应用进行适配。
**变更影响**
影响API9版本的JS接口,应用需要进行适配才可以在新版本SDK环境正常实现功能。
**关键的接口/组件变更**
| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
| :------------------------ | ------------------- | ------------------------------------------------------------ | -------- |
| @ohos.url | URL | searchParams: URLSearchParams; |废弃版本:9<br> |
| @ohos.url | URL | params: URLParams; | 新增 |
**适配指导**
应用中创建URLParams对象实例可参考下列代码
示例:
```ts
import url from '@ohos.url'
let that = new Url.URL('http://username:password@host:8080/directory/file?你好=china#qwer=da')
let params = that.URLParams
var result = params.toString()
console.log(result) //%E4%BD%A0%E5%A5%BD=china
```
\ No newline at end of file
# 包管理子系统ChangeLog
## cl.bundlemanager.1 app.json配置文件删除atomicService标签
删除配置文件app.json中atomicService标签
**变更影响**<br>
删除配置文件app.json中atomicService标签,IDE中不再支持配置该标签,使用该标签会导致IDE编译报错
**适配指导**<br>
删除atomicService标签
## cl.bundlemanager.2 app.json配置文件新增bundleType标签
配置文件app.json中新增bundleType标签
**变更影响**<br>
现存的元服务([installationFree](../../../application-dev/quick-start/module-configuration-file.md)为true),必须在app.json中指定bundleType为atomicService,否则打包失败。
**适配指导**<br>
新增[bundleType](../../../application-dev/quick-start/app-configuration-file.md)标签。该标签为可缺省(缺省值为app)。该标签需要和module.json中[installationFree](../../../application-dev/quick-start/module-configuration-file.md)字段保持一一对应,其相应规则为:
- 当bundleType为app时,installationFree必须为false。
- 当bundleType为atomicService时,installationFree必须为true。
## cl.bundlemanager.3 包管理ApplicationInfo结构体中删除split字段。
包管理[ApplicationInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/ApplicationInfo.d.ts)结构体中删除split字段。
**变更影响**<br>
使用之前已发布的API 9各beta版本且使用到了split的,会编译失败。
**关键的接口/组件变更**<br>
包管理[ApplicationInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/ApplicationInfo.d.ts)结构体中删除split字段。
**适配指导**<br>
删除ApplicationInfo结构体中的split字段。目前元服务中stage模型强制分包,不支持不分包。
## cl.bundlemanager.4 包管理HapModuleInfo结构体中删除atomicServiceModuleType字段。
包管理[HapModuleInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/HapModuleInfo.d.ts)结构体中删除atomicServiceModuleType字段。
**变更影响**<br>
使用之前已发布的API 9各beta版本且使用到了atomicServiceModuleType的,会编译失败。
**关键的接口/组件变更**<br>
包管理[HapModuleInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/HapModuleInfo.d.ts)结构体中删除atomicServiceModuleType字段。
**适配指导**<br>
删除[HapModuleInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/HapModuleInfo.d.ts)结构体中的atomicServiceModuleType字段。判断atomicServiceModuleType字段的部分,用[HapModuleInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/HapModuleInfo.d.ts)结构体中的moduleType代替。
## cl.bundlemanager.5 包管理删除AtomicServiceModuleType枚举值。
包管理[HapModuleInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/HapModuleInfo.d.ts)结构体中删除atomicServiceModuleType字段。
**变更影响**<br>
使用之前已发布的API 9各beta版本且使用到了atomicServiceModuleType的,会编译失败。
**关键的接口/组件变更**<br>
包管理[HapModuleInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/HapModuleInfo.d.ts)结构体中删除atomicServiceModuleType字段。
**适配指导**<br>
删除[HapModuleInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/HapModuleInfo.d.ts)结构体中的atomicServiceModuleType字段。判断atomicServiceModuleType字段的部分,用[HapModuleInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/HapModuleInfo.d.ts)结构体中的moduleType代替。
\ No newline at end of file
# 输入法框架子系统-输入法框架服务ChangeLog
## @ohos.InputMethodSubtype 中输入法子类型中name、label、id属性值变更
从API9开始,变更如上三个属性值
开发者需要根据以下说明对应用进行适配。
**变更影响**
此三个属性的取值发生变化,需要开发者进行适配更新
| 名称 | 变更前 | 变更后 |
| -------- | -------- | -------- |
| label | (1)取值:输入法子类型的id。| (1)取值:输入法子类型的标签。|
| name | (1)说明:输入法子类型的名字;(2)取值:输入法子类型的标签。| (1)说明:输入法应用的包名;(2)取值:输入法应用的包名。|
| id | (1)取值:输入法应用的包名。| (1)取值:输入法子类型的id。|
**适配指导**
请按上述取值变更结果适配更新。
# 主题框架子系统-锁屏管理服务ChangeLog
## cl.screenlock.1 isLocked、unlock接口使用权限变更
从API9开始,变更为systemapi,停止对三方应用开放。
开发者需要根据以下说明对应用进行适配。
**变更影响**
基于此前版本开发的应用,需适配变更的js接口,变更前的接口已经不能正常使用了,否则会影响原有功能。
- 涉及接口
```js
function isLocked(): boolean;
function unlock(callback: AsyncCallback<boolean>): void;
function unlock():Promise<boolean>;
```
- 变更前:
```js
* Checks whether the screen is currently locked.
*
* @returns Returns {@code true} if the screen is currently locked; returns {@code false} otherwise.
* @syscap SystemCapability.MiscServices.ScreenLock
* @since 9
*/
function isLocked(): boolean;
/**
* Unlock the screen.
*
* @returns Returns {@code true} if the screen is unlocked successfully; returns {@code false} otherwise.
* @throws {BusinessError} 401 - parameter error.
* @throws {BusinessError} 202 - permission verification failed, application which is not a system application uses system API.
* @throws {BusinessError} 13200002 - the screenlock management service is abnormal.
* @syscap SystemCapability.MiscServices.ScreenLock
* @systemapi Hide this for inner system use.
* @since 9
*/
function unlock(callback: AsyncCallback<boolean>): void;
/**
* Unlock the screen.
*
* @returns Returns {@code true} if the screen is unlocked successfully; returns {@code false} otherwise.
* @throws {BusinessError} 401 - parameter error.
* @throws {BusinessError} 202 - permission verification failed, application which is not a system application uses system API.
* @throws {BusinessError} 13200002 - the screenlock management service is abnormal.
* @syscap SystemCapability.MiscServices.ScreenLock
* @systemapi Hide this for inner system use.
* @since 9
*/
function unlock():Promise<boolean>;
```
- 变更后:
```js
* Checks whether the screen is currently locked.
*
* @returns Returns {@code true} if the screen is currently locked; returns {@code false} otherwise.
* @throws {BusinessError} 202 - permission verification failed, application which is not a system application uses system API.
* @syscap SystemCapability.MiscServices.ScreenLock
* @systemapi Hide this for inner system use.
* @since 9
*/
function isLocked(): boolean;
/**
* Unlock the screen.
*
* @returns Returns {@code true} if the screen is unlocked successfully; returns {@code false} otherwise.
* @throws {BusinessError} 401 - parameter error.
* @throws {BusinessError} 13200002 - the screenlock management service is abnormal.
* @syscap SystemCapability.MiscServices.ScreenLock
* @since 9
*/
function unlock(callback: AsyncCallback<boolean>): void;
/**
* Unlock the screen.
*
* @returns Returns {@code true} if the screen is unlocked successfully; returns {@code false} otherwise.
* @throws {BusinessError} 13200002 - the screenlock management service is abnormal.
* @syscap SystemCapability.MiscServices.ScreenLock
* @since 9
*/
function unlock():Promise<boolean>;
```
**适配指导**
该接口变更为系统应用后,三方应用已无法使用。
系统应用可正常使用。
示例代码如下:
```js
try {
let ret = screenLock.isLocked();
console.error(`Obtain whether the screen is locked successfully , ret is: ${ret}`);
} catch (error) {
console.error(`Failed to obtain whether the screen is locked, error is : ${error.code}, ${error.message}`);
}
```
```js
screenlock.unlock((err, data) => {
if (err) {
console.error(`Failed to unlock the screen, because: ${err.message}`);
return;
}
console.info(`unlock the screen successfully. result: ${data}`);
});
```
```js
screenlock.unlock().then((data) => {
console.info(`unlock the screen successfully. result: ${data}`);
}).catch((err) => {
console.error(`Failed to unlock the screen, because: ${err.message}`);
});
```
## cl.screenlock.2 isSecure接口废弃变更
从API9开始,废弃此接口。
开发者需要根据以下说明对应用进行适配。
**变更影响**
该接口删除无法再使用,请使用进行更新使用,否则会影响原有功能。
- 涉及接口
```js
function isSecure(): boolean;
```
- 变更前:
```js
function isSecure(): boolean;
```
- 变更后:删除接口,停止对外开放。
**适配指导**
该接口删除后无法再使用,请适配更新。
# 主题框架子系统-壁纸管理服务ChangeLog
## cl.wallpaper.1 getColorsSync、getMinHeightSync、getMinWidthSync、restore、setImage接口使用权限变更
从API9开始,变更为systemapi,停止对三方应用开放。
开发者需要根据以下说明对应用进行适配。
**变更影响**
基于此前版本开发的应用,需适配变更的js接口,变更前的接口已经不能正常使用了,否则会影响原有功能。
- 涉及接口
```js
function getColorsSync(wallpaperType: WallpaperType): Array<RgbaColor>;
function getMinHeightSync(): number;
function getMinWidthSync(): number;
function restore(wallpaperType: WallpaperType, callback: AsyncCallback<void>): void;
function restore(wallpaperType: WallpaperType): Promise<void>;
function setImage(source: string | image.PixelMap, wallpaperType: WallpaperType, callback: AsyncCallback<void>): void;
function setImage(source: string | image.PixelMap, wallpaperType: WallpaperType): Promise<void>;
```
- 变更前:
```js
/**
* Obtains the wallpaper colors for the wallpaper of the specified type. Returns rgbaColor type of array callback function.
* @param wallpaperType Indicates the wallpaper type.
* @returns { Array<RgbaColor> } the Array<RgbaColor> returned by the function.
* @throws {BusinessError} 401 - parameter error.
* @throws {BusinessError} 202 - permission verification failed, application which is not a system application uses system API.
* @syscap SystemCapability.MiscServices.Wallpaper
* @systemapi Hide this for inner system use.
* @since 9
*/
function getColorsSync(wallpaperType: WallpaperType): Array<RgbaColor>;
/**
* Obtains the minimum height of the wallpaper. in pixels. returns 0 if no wallpaper has been set.
* @returns { number } the number returned by the function.
* @throws {BusinessError} 202 - permission verification failed, application which is not a system application uses system API.
* @syscap SystemCapability.MiscServices.Wallpaper
* @systemapi Hide this for inner system use.
* @since 9
*/
function getMinHeightSync(): number;
/**
* Obtains the minimum width of the wallpaper. in pixels. returns 0 if no wallpaper has been set.
* @returns { number } the number returned by the function.
* @throws {BusinessError} 202 - permission verification failed, application which is not a system application uses system API.
* @syscap SystemCapability.MiscServices.Wallpaper
* @systemapi Hide this for inner system use.
* @since 9
*/
function getMinWidthSync(): number;
/**
* Removes a wallpaper of the specified type and restores the default one.
* @param wallpaperType Indicates the wallpaper type.
* @throws {BusinessError} 401 - parameter error.
* @throws {BusinessError} 201 - permission denied.
* @throws {BusinessError} 202 - permission verification failed, application which is not a system application uses system API.
* @permission ohos.permission.SET_WALLPAPER
* @syscap SystemCapability.MiscServices.Wallpaper
* @systemapi Hide this for inner system use.
* @since 9
*/
function restore(wallpaperType: WallpaperType, callback: AsyncCallback<void>): void;
/**
* Removes a wallpaper of the specified type and restores the default one.
* @param wallpaperType Indicates the wallpaper type.
* @throws {BusinessError} 401 - parameter error.
* @throws {BusinessError} 201 - permission denied.
* @throws {BusinessError} 202 - permission verification failed, application which is not a system application uses system API.
* @permission ohos.permission.SET_WALLPAPER
* @syscap SystemCapability.MiscServices.Wallpaper
* @systemapi Hide this for inner system use.
* @since 9
*/
function restore(wallpaperType: WallpaperType): Promise<void>;
/**
* Sets a wallpaper of the specified type based on the uri path from a JPEG or PNG file or the pixel map of a PNG file.
* @param source Indicates the uri path from a JPEG or PNG file or the pixel map of the PNG file.
* @param wallpaperType Indicates the wallpaper type.
* @throws {BusinessError} 401 - parameter error.
* @throws {BusinessError} 201 - permission denied.
* @throws {BusinessError} 202 - permission verification failed, application which is not a system application uses system API.
* @permission ohos.permission.SET_WALLPAPER
* @syscap SystemCapability.MiscServices.Wallpaper
* @systemapi Hide this for inner system use.
* @since 9
*/
function setImage(source: string | image.PixelMap, wallpaperType: WallpaperType, callback: AsyncCallback<void>): void;
/**
* Sets a wallpaper of the specified type based on the uri path from a JPEG or PNG file or the pixel map of a PNG file.
* @param source Indicates the uri path from a JPEG or PNG file or the pixel map of the PNG file.
* @param wallpaperType Indicates the wallpaper type.
* @throws {BusinessError} 401 - parameter error.
* @throws {BusinessError} 201 - permission denied.
* @throws {BusinessError} 202 - permission verification failed, application which is not a system application uses system API.
* @permission ohos.permission.SET_WALLPAPER
* @syscap SystemCapability.MiscServices.Wallpaper
* @systemapi Hide this for inner system use.
* @since 9
*/
function setImage(source: string | image.PixelMap, wallpaperType: WallpaperType): Promise<void>;
```
- 变更后:
```js
/**
* Obtains the wallpaper colors for the wallpaper of the specified type. Returns rgbaColor type of array callback function.
* @param wallpaperType Indicates the wallpaper type.
* @returns { Array<RgbaColor> } the Array<RgbaColor> returned by the function.
* @throws {BusinessError} 401 - parameter error.
* @syscap SystemCapability.MiscServices.Wallpaper
* @since 9
*/
function getColorsSync(wallpaperType: WallpaperType): Array<RgbaColor>;
/**
* Obtains the minimum height of the wallpaper. in pixels. returns 0 if no wallpaper has been set.
* @returns { number } the number returned by the function.
* @syscap SystemCapability.MiscServices.Wallpaper
* @since 9
*/
function getMinHeightSync(): number;
/**
* Obtains the minimum width of the wallpaper. in pixels. returns 0 if no wallpaper has been set.
* @returns { number } the number returned by the function.
* @syscap SystemCapability.MiscServices.Wallpaper
* @since 9
*/
function getMinWidthSync(): number;
/**
* Removes a wallpaper of the specified type and restores the default one.
* @param wallpaperType Indicates the wallpaper type.
* @throws {BusinessError} 401 - parameter error.
* @throws {BusinessError} 201 - permission denied.
* @permission ohos.permission.SET_WALLPAPER
* @syscap SystemCapability.MiscServices.Wallpaper
* @since 9
*/
function restore(wallpaperType: WallpaperType, callback: AsyncCallback<void>): void;
/**
* Removes a wallpaper of the specified type and restores the default one.
* @param wallpaperType Indicates the wallpaper type.
* @throws {BusinessError} 401 - parameter error.
* @throws {BusinessError} 201 - permission denied.
* @permission ohos.permission.SET_WALLPAPER
* @syscap SystemCapability.MiscServices.Wallpaper
* @since 9
*/
function restore(wallpaperType: WallpaperType): Promise<void>;
/**
* Sets a wallpaper of the specified type based on the uri path from a JPEG or PNG file or the pixel map of a PNG file.
* @param source Indicates the uri path from a JPEG or PNG file or the pixel map of the PNG file.
* @param wallpaperType Indicates the wallpaper type.
* @throws {BusinessError} 401 - parameter error.
* @throws {BusinessError} 201 - permission denied.
* @permission ohos.permission.SET_WALLPAPER
* @syscap SystemCapability.MiscServices.Wallpaper
* @since 9
*/
function setImage(source: string | image.PixelMap, wallpaperType: WallpaperType, callback: AsyncCallback<void>): void;
/**
* Sets a wallpaper of the specified type based on the uri path from a JPEG or PNG file or the pixel map of a PNG file.
* @param source Indicates the uri path from a JPEG or PNG file or the pixel map of the PNG file.
* @param wallpaperType Indicates the wallpaper type.
* @throws {BusinessError} 401 - parameter error.
* @throws {BusinessError} 201 - permission denied.
* @permission ohos.permission.SET_WALLPAPER
* @syscap SystemCapability.MiscServices.Wallpaper
* @since 9
*/
function setImage(source: string | image.PixelMap, wallpaperType: WallpaperType): Promise<void>;
```
**适配指导**
该接口变更为系统应用后,三方应用已无法使用。
系统应用可正常使用。
示例代码如下:
```js
try {
let colors = wallpaper.getColorsSync(wallpaper.WallpaperType.WALLPAPER_SYSTEM);
console.log(`success to getColorsSync: ${JSON.stringify(colors)}`);
} catch (error) {
console.error(`failed to getColorsSync because: ${JSON.stringify(error)}`);
}
```
```js
let minHeight = wallpaper.getMinHeightSync();
```
```js
let minWidth = wallpaper.getMinWidthSync();
```
```js
wallpaper.restore(wallpaper.WallpaperType.WALLPAPER_SYSTEM, (error) => {
if (error) {
console.error(`failed to restore because: ${JSON.stringify(error)}`);
return;
}
console.log(`success to restore.`);
});
```
```js
wallpaper.restore(wallpaper.WallpaperType.WALLPAPER_SYSTEM).then(() => {
console.log(`success to restore.`);
}).catch((error) => {
console.error(`failed to restore because: ${JSON.stringify(error)}`);
});
```
```js
// source类型为string
let wallpaperPath = "/data/data/ohos.acts.aafwk.plrdtest.form/files/Cup_ic.jpg";
wallpaper.setImage(wallpaperPath, wallpaper.WallpaperType.WALLPAPER_SYSTEM, (error) => {
if (error) {
console.error(`failed to setImage because: ${JSON.stringify(error)}`);
return;
}
console.log(`success to setImage.`);
});
```
```js
// source类型为string
let wallpaperPath = "/data/data/ohos.acts.aafwk.plrdtest.form/files/Cup_ic.jpg";
wallpaper.setImage(wallpaperPath, wallpaper.WallpaperType.WALLPAPER_SYSTEM).then(() => {
console.log(`success to setImage.`);
}).catch((error) => {
console.error(`failed to setImage because: ${JSON.stringify(error)}`);
});
```
## cl.wallpaper.2 getIdSync、getFileSync、isChangeAllowed、isUserChangeAllowed、on、off、RgbaColor接口废弃变更
从API9开始,废弃此接口。
开发者需要根据以下说明对应用进行适配。
**变更影响**
该接口删除无法再使用,请使用进行更新使用,否则会影响原有功能。
- 涉及接口
```js
function getIdSync(wallpaperType: WallpaperType): number;
function getFileSync(wallpaperType: WallpaperType): number;
function isChangeAllowed(): boolean;
function isUserChangeAllowed(): boolean;
function on(type: 'colorChange', callback: (colors: Array<RgbaColor>, wallpaperType: WallpaperType) => void): void;
function off(type: 'colorChange', callback?: (colors: Array<RgbaColor>, wallpaperType: WallpaperType) => void): void;
interface RgbaColor {
red: number;
green: number;
blue: number;
alpha: number;
}
```
- 变更前:
```js
function getIdSync(wallpaperType: WallpaperType): number;
function getFileSync(wallpaperType: WallpaperType): number;
function isChangeAllowed(): boolean;
function isUserChangeAllowed(): boolean;
function on(type: 'colorChange', callback: (colors: Array<RgbaColor>, wallpaperType: WallpaperType) => void): void;
function off(type: 'colorChange', callback?: (colors: Array<RgbaColor>, wallpaperType: WallpaperType) => void): void;
interface RgbaColor {
red: number;
green: number;
blue: number;
alpha: number;
}
```
- 变更后:删除接口,停止对外开放。
**适配指导**
该接口删除后无法再使用,请适配更新。
# 包管理子系统ChangeLog
## cl.bundlemanager.1 API9的ApplicationInfo结构体字段变更,新增systemApp字段,删除entryDir字段。
API9的ApplicationInfo结构体[bundleManager/applicationInfo.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/ApplicationInfo.d.ts)字段变更,新增systemApp字段,删除entryDir字段。
**变更影响**<br>
对原有使用API version 9之前的应用无影响,使用API version 9的应用需要适配新模块和新接口。
**关键的接口/组件变更**<br>
ApplicationInfo结构体发生变化的字段内容如下表所示。
| 删除 | API9新增或变更 | 类型 |
| --- | --- | --- |
| 无 | systemApp | boolean |
| entryDir | 无 | string |
**适配指导**<br>
导入包管理查询的模块,在API9 version的ApplicationInfo结构体时,可以使用systemApp字段。使用了entryDir需要进行修改,该字段在HAP不解压特性中属于多余字段。
## cl.bundlemanager.2 API9的HapModuleInfo结构体字段变更,删除moduleSourceDir字段。
API9的HapModuleInfo结构体[bundleManager/hapModuleInfo.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/HapModuleInfo.d.ts)字段变更,删除moduleSourceDir字段。
**变更影响**<br>
对原有使用API version 9之前的应用无影响,使用API version 9的应用需要适配新模块和新接口。
**关键的接口/组件变更**<br>
HapModuleInfo结构体发生变化的字段内容如下表所示。
| 删除 | API9新增或变更 | 类型 |
| --- | --- | --- |
| moduleSourceDir | 无 | string |
**适配指导**<br>
导入包管理查询的模块,在API9 version的HapModuleInfo结构体时不能使用moduleSourceDir字段。使用了moduleSourceDir需要进行修改,该字段在HAP不解压特性中属于多余字段。
# 帐号子系统changeLog
## cl.account_os_account.1 createOsAccountForDomain错误码变更
使用createOsAccountForDomain重复创建域帐号时,变更前返回的错误码为12300001,变更后返回的错误码为12300004。
错误信息由通用系统报错细化为帐号已存在报错。
**变更影响**
基于此前版本开发的应用,需适配变更后的错误码,否则会影响原有业务逻辑。
**关键接口/组件变更**
- AccountManager
- createOsAccountForDomain(type: OsAccountType, domainInfo: DomainAccountInfo, callback: AsyncCallback&lt;OsAccountInfo&gt;);
- createOsAccountForDomain(type: OsAccountType, domainInfo: DomainAccountInfo): Promise&lt;OsAccountInfo&gt;;
**适配指导**
重复创建域帐号的示例代码如下:
```ts
import account_osAccount from "@ohos.account.osAccount"
let accountMgr = account_osAccount.getAccountManager();
let domainInfo = {
accountName: "zhangsan",
domain: "china.example.com"
};
try {
await accountMgr.createOsAccountForDomain(account_osAccount.OsAccountType.NORMAL, domainInfo);
await accountMgr.createOsAccountForDomain(account_osAccount.OsAccountType.NORMAL, domainInfo);
} catch (err) {
console.log("activateOsAccount err: " + JSON.stringify(err)); // error.code = 12300004;
}
```
## cl.account_os_account.2 应用帐号getAllAccounts接口权限场景变更
应用使用getAllAccounts接口查询自己可访问的帐号列表时,不需要申请权限ohos.permission.GET_ALL_APP_ACCOUNTS。
**变更影响**
基于此后版本开发的应用,查询自己可访问的帐号列表时,无需申请权限。
**关键接口/组件变更**
- AccountManager
- getAllAccounts(callback: AsyncCallback&lt;Array&lt;AppAccountInfo&gt;&gt;): void;
- getAllAccounts(): Promise&lt;Array&lt;AppAccountInfo&gt;&gt;;
**适配指导**
应用未申请ohos.permission.GET_ALL_APP_ACCOUNTS,查询自己可访问的帐号列表示例代码如下:
```ts
import account_appAccount from "@ohos.account.appAccount"
let accountMgr = account_appAccount.createAppAccountManager();
try {
await accountMgr.addAccount("accessibleAccount_promise_nopermission");
var data = await accountMgr.getAllAccounts();
if (data[0].name == "accessibleAccount_promise_nopermission") {
console.log("getAllAccounts successfully");
}
} catch (err) {
console.log("getAllAccounts err: " + JSON.stringify(err));
}
```
## cl.account_os_account.3 应用帐号getAccountsByOwner接口权限场景变更
应用使用getAccountsByOwner接口查询可访问的指定应用的帐号列表时,不需要申请权限ohos.permission.GET_ALL_APP_ACCOUNTS。
**变更影响**
基于此后版本开发的应用,查询指定应用可访问的帐号列表时,无需申请权限。
**关键接口/组件变更**
- AccountManager
- getAccountsByOwner(owner: string, callback: AsyncCallback&lt;Array&lt;AppAccountInfo&gt;&gt;): void;
- getAccountsByOwner(owner: string): Promise&lt;Array&lt;AppAccountInfo&gt;&gt;;
**适配指导**
应用未申请ohos.permission.GET_ALL_APP_ACCOUNTS,查询指定应用可访问的帐号列表示例代码如下:
```ts
import account_appAccount from "@ohos.account.appAccount"
let accountMgr = account_appAccount.createAppAccountManager();
try {
var ownerName = "com.example.owner";
var data = await accountMgr.getAllAccounts(ownerName);
} catch (err) {
console.log("getAllAccounts err: " + JSON.stringify(err));
}
```
\ No newline at end of file
# 包管理子系统ChangeLog
## cl.bundlemanager.1 包管理分布式查询模块名称变更,由ohos.bundle.distributedBundle变更为ohos.bundle.distributedBundleManager,接口未发生变更。
API9的包管理分布式查询模块名称变更,由ohos.bundle.distributedBundle变更为[ohos.bundle.distributedBundleManager](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.bundle.distributedBundleManager.d.ts),接口未发生变更。
**变更影响**<br>
对原有使用API version 9之前的应用无影响,使用API version 9的应用需要适配新模块。
**关键的接口/组件变更**<br>
包管理分布式查询模块名称由ohos.bundle.distributedBundle修改为ohos.bundle.distributedBundleManager,接口未发生变更。
**适配指导**<br>
原有导入模块@ohos.bundle.distributedBundle代码需要修改为@ohos.bundle.distributedBundleManager。
```ts
import distributedBundle form '@ohos.bundle.distributedBundleManager';
```
# 媒体子系统 JS API 变更 Changelog
OpenHarmony3.2.10.3 相对 OpenHarmony3.2 Beta4 版本,媒体子系统 camera 部件 API 变更如下
## cl.subsystemname.1 camera 接口变更
1. camera 部件在 API9 版本全量改为 SystemAPI
2. 基于以下原因新增部分功能接口以及废弃部分接口:
提升开发者使用相机接口的便利。
帮助开发者快速掌握相机开发接口,快速投入到开发当中。
易于后续版本中框架功能的扩展,降低框架模块之间的耦合度。
具体参考下方变更内容,开发者需要根据以下说明对应用进行适配。
**变更影响**
影响 API9 版本的 JS 接口,应用需要进行适配才可以在新版本 SDK 环境正常实现功能。
**关键的接口/组件变更**
| 模块名 | 类名 | 方法/属性/枚举/常量 | 是否为 SystemApi | 变更类型 |
| ---------------------- | ----------------------- | ------------------------------------------------------------ | --------------- | -------- |
| ohos.multimedia.camera | camera | function getCameraManager(context: Context): CameraManager; | 是 | 新增 |
| ohos.multimedia.camera | camera | function getCameraManager(context: Context, callback: AsyncCallback<CameraManager>): void;<br/>function getCameraManager(context: Context): Promise<CameraManager>; | 是 | 废弃 |
| ohos.multimedia.camera | CameraErrorCode | INVALID_ARGUMENT = 7400101,<br/>OPERATION_NOT_ALLOWED = 7400102,<br/>SESSION_NOT_CONFIG = 7400103,<br/>SESSION_NOT_RUNNING = 7400104,<br/>SESSION_CONFIG_LOCKED = 7400105,<br/>DEVICE_SETTING_LOCKED = 7400106,<br/>CONFILICT_CAMERA = 7400107,<br/>DEVICE_DISABLED = 7400108,<br/>SERVICE_FATAL_ERROR = 7400201 | 是 | 新增 |
| ohos.multimedia.camera | CameraManager | getSupportedCameras(): Array<CameraDevice>;<br/>getSupportedOutputCapability(camera: CameraDevice): CameraOutputCapability;<br/>createCameraInput(camera: CameraDevice): CameraInput;<br/>createCameraInput(position: CameraPosition, type: CameraType): CameraInput;<br/>createPreviewOutput(profile: Profile, surfaceId: string): PreviewOutput;<br/>createPhotoOutput(profile: Profile, surfaceId: string): PhotoOutput;<br/>createVideoOutput(profile: VideoProfile, surfaceId: string): VideoOutput;<br/>createMetadataOutput(metadataObjectTypes: Array<MetadataObjectType>): MetadataOutput;<br/>createCaptureSession(): CaptureSession; | 是 | 新增 |
| ohos.multimedia.camera | CameraManager | getSupportedCameras(callback: AsyncCallback<Array<CameraDevice>>): void;<br/>getSupportedCameras(): Promise<Array<CameraDevice>>;<br/>getSupportedOutputCapability(camera: CameraDevice, callback: AsyncCallback<CameraOutputCapability>): void;<br/>getSupportedOutputCapability(camera: CameraDevice): Promise<CameraOutputCapability>;<br/>createCameraInput(camera: CameraDevice, callback: AsyncCallback<CameraInput>): void;<br/>createCameraInput(camera: CameraDevice): Promise<CameraInput>;<br/>createCameraInput(position: CameraPosition, type: CameraType, callback: AsyncCallback<CameraInput>): void;<br/>createCameraInput(position: CameraPosition, type: CameraType): Promise<CameraInput>;<br/>createPreviewOutput(profile: Profile, surfaceId: string, callback: AsyncCallback<PreviewOutput>): void;<br/>createPreviewOutput(profile: Profile, surfaceId: string): Promise<PreviewOutput>;<br/>createPhotoOutput(profile: Profile, surfaceId: string, callback: AsyncCallback<PhotoOutput>): void;<br/>createPhotoOutput(profile: Profile, surfaceId: string): Promise<PhotoOutput>;<br/>createVideoOutput(profile: VideoProfile, surfaceId: string, callback: AsyncCallback<VideoOutput>): void;<br/>createVideoOutput(profile: VideoProfile, surfaceId: string): Promise<VideoOutput>;<br/>createMetadataOutput(metadataObjectTypes: Array<MetadataObjectType>, callback: AsyncCallback<MetadataOutput>): void;<br/>createMetadataOutput(metadataObjectTypes: Array<MetadataObjectType>): Promise<MetadataOutput>;<br/>createCaptureSession(callback: AsyncCallback<CaptureSession>): void;<br/>createCaptureSession(): Promise<CaptureSession>; | 是 | 废弃 |
| ohos.multimedia.camera | CameraType | CAMERA_TYPE_DEFAULT = 0 | 是 | 新增 |
| ohos.multimedia.camera | CameraType | CAMERA_TYPE_UNSPECIFIED = 0 | 是 | 废弃 |
| ohos.multimedia.camera | CameraInput | on(type: 'error', camera: CameraDevice, callback: ErrorCallback<BusinessError>): void; | 是 | 新增 |
| ohos.multimedia.camera | CameraInput | release(callback: AsyncCallback<void>): void;<br/>release(): Promise<void>;<br/>on(type: 'error', camera: CameraDevice, callback: ErrorCallback<CameraInputError>): void; | 是 | 废弃 |
| ohos.multimedia.camera | CameraInputErrorCode | ERROR_UNKNOWN = -1<br/>ERROR_NO_PERMISSION = 0<br/>ERROR_DEVICE_PREEMPTED = 1<br/>ERROR_DEVICE_DISCONNECTED = 2<br/>ERROR_DEVICE_IN_USE = 3<br/>ERROR_DRIVER_ERROR = 4 | 是 | 废弃 |
| ohos.multimedia.camera | CameraInputError | code: CameraInputErrorCode | 是 | 废弃 |
| ohos.multimedia.camera | CaptureSession | beginConfig(): void;<br/>addInput(cameraInput: CameraInput): void;<br/>removeInput(cameraInput: CameraInput): void;<br/>addOutput(cameraOutput: CameraOutput): void;<br/>removeOutput(cameraOutput: CameraOutput): void;<br/>hasFlash(): boolean;<br/>isFlashModeSupported(flashMode: FlashMode): boolean;<br/>getFlashMode(): FlashMode;<br/>setFlashMode(flashMode: FlashMode): void;<br/>isExposureModeSupported(aeMode: ExposureMode): boolean;<br/>getExposureMode(): ExposureMode;<br/>setExposureMode(aeMode: ExposureMode): void;<br/>getMeteringPoint(): Point;<br/>setMeteringPoint(point: Point): void;<br/>getExposureBiasRange(): Array<number>;<br/>setExposureBias(exposureBias: number): void;<br/>getExposureValue(): number;<br/>isFocusModeSupported(afMode: FocusMode): boolean;<br/>getFocusMode(): FocusMode;<br/>setFocusMode(afMode: FocusMode): void;<br/>setFocusPoint(point: Point): void;<br/>getFocusPoint(): Point;<br/>getFocalLength(): number;<br/>getZoomRatioRange(): Array<number>;<br/>getZoomRatio(): number;<br/>setZoomRatio(zoomRatio: number): void;<br/>isVideoStabilizationModeSupported(vsMode: VideoStabilizationMode): boolean;<br/>getActiveVideoStabilizationMode(): VideoStabilizationMode;<br/>setVideoStabilizationMode(mode: VideoStabilizationMode): void;<br/>on(type: 'error', callback: ErrorCallback<BusinessError>): void; | 是 | 新增 |
| ohos.multimedia.camera | CaptureSession | beginConfig(callback: AsyncCallback<void>): void;<br/>beginConfig(): Promise<void>;<br/>addInput(cameraInput: CameraInput, callback: AsyncCallback<void>): void;<br/>addInput(cameraInput: CameraInput): Promise<void>;<br/>removeInput(cameraInput: CameraInput, callback: AsyncCallback<void>): void;<br/>removeInput(cameraInput: CameraInput): Promise<void>;<br/>addOutput(cameraOutput: CameraOutput, callback: AsyncCallback<void>): void;<br/>addOutput(cameraOutput: CameraOutput): Promise<void>;<br/>removeOutput(cameraOutput: CameraOutput, callback: AsyncCallback<void>): void;<br/>removeOutput(cameraOutput: CameraOutput): Promise<void>;<br/>hasFlash(callback: AsyncCallback<boolean>): void;<br/>hasFlash(): Promise<boolean>;<br/>isFlashModeSupported(flashMode: FlashMode, callback: AsyncCallback<boolean>): void;<br/>isFlashModeSupported(flashMode: FlashMode): Promise<boolean>;<br/>getFlashMode(callback: AsyncCallback<FlashMode>): void;<br/>getFlashMode(): Promise<FlashMode>;<br/>setFlashMode(flashMode: FlashMode, callback: AsyncCallback<void>): void;<br/>setFlashMode(flashMode: FlashMode): Promise<void>;<br/>isExposureModeSupported(aeMode: ExposureMode, callback: AsyncCallback<boolean>): void;<br/>isExposureModeSupported(aeMode: ExposureMode): Promise<boolean>;<br/>getExposureMode(callback: AsyncCallback<ExposureMode>): void;<br/>getExposureMode(): Promise<ExposureMode>;<br/>setExposureMode(aeMode: ExposureMode, callback: AsyncCallback<void>): void;<br/>setExposureMode(aeMode: ExposureMode): Promise<void>;<br/>getMeteringPoint(callback: AsyncCallback<Point>): void;<br/>getMeteringPoint(): Promise<Point>;<br/>setMeteringPoint(point: Point, callback: AsyncCallback<void>): void;<br/>setMeteringPoint(point: Point): Promise<void>;<br/>getExposureBiasRange(callback: AsyncCallback<Array<number>>): void;<br/>getExposureBiasRange(): Promise<Array<number>>;<br/>setExposureBias(exposureBias: number, callback: AsyncCallback<void>): void;<br/>setExposureBias(exposureBias: number): Promise<void>;<br/>getExposureValue(callback: AsyncCallback<number>): void;<br/>getExposureValue(): Promise<number>;<br/>isFocusModeSupported(afMode: FocusMode, callback: AsyncCallback<boolean>): void;<br/>isFocusModeSupported(afMode: FocusMode): Promise<boolean>;<br/>getFocusMode(callback: AsyncCallback<FocusMode>): void;<br/>getFocusMode(): Promise<FocusMode>;<br/>setFocusMode(afMode: FocusMode, callback: AsyncCallback<void>): void;<br/>setFocusMode(afMode: FocusMode): Promise<void>;<br/>setFocusPoint(point: Point, callback: AsyncCallback<void>): void;<br/>setFocusPoint(point: Point): Promise<void>;<br/>getFocusPoint(callback: AsyncCallback<Point>): void;<br/>getFocusPoint(): Promise<Point>;<br/>getFocalLength(callback: AsyncCallback<number>): void;<br/>getFocalLength(): Promise<number>;<br/>getZoomRatioRange(callback: AsyncCallback<Array<number>>): void;<br/>getZoomRatioRange(): Promise<Array<number>>;<br/>getZoomRatio(callback: AsyncCallback<number>): void;<br/>getZoomRatio(): Promise<number>;<br/>setZoomRatio(zoomRatio: number, callback: AsyncCallback<void>): void;<br/>setZoomRatio(zoomRatio: number): Promise<void>;<br/>isVideoStabilizationModeSupported(vsMode: VideoStabilizationMode, callback: AsyncCallback<boolean>): void;<br/>isVideoStabilizationModeSupported(vsMode: VideoStabilizationMode): Promise<boolean>;<br/>getActiveVideoStabilizationMode(callback: AsyncCallback<VideoStabilizationMode>): void;<br/>getActiveVideoStabilizationMode(): Promise<VideoStabilizationMode>;<br/>setVideoStabilizationMode(mode: VideoStabilizationMode, callback: AsyncCallback<void>): void;<br/>setVideoStabilizationMode(mode: VideoStabilizationMode): Promise<void>;<br/>on(type: 'error', callback: ErrorCallback<CaptureSessionError>): void; | 是 | 废弃 |
| ohos.multimedia.camera | CaptureSessionErrorCode | ERROR_UNKNOWN = -1<br/>ERROR_INSUFFICIENT_RESOURCES = 0<br/>ERROR_TIMEOUT = 1 | 是 | 废弃 |
| ohos.multimedia.camera | CaptureSessionError | code: CaptureSessionErrorCode | 是 | 废弃 |
| ohos.multimedia.camera | PreviewOutput | on(type: 'error', callback: ErrorCallback<BusinessError>): void; | 是 | 新增 |
| ohos.multimedia.camera | PreviewOutput | on(type: 'error', callback: ErrorCallback<PreviewOutputError>): void; | 是 | 废弃 |
| ohos.multimedia.camera | PreviewOutputErrorCode | ERROR_UNKNOWN = -1 | 是 | 废弃 |
| ohos.multimedia.camera | PreviewOutputError | code: PreviewOutputErrorCode | 是 | 废弃 |
| ohos.multimedia.camera | PhotoOutput | capture(): Promise<void>;<br/>isMirrorSupported(): boolean;<br/>on(type: 'error', callback: ErrorCallback<BusinessError>): void; | 是 | 新增 |
| ohos.multimedia.camera | PhotoOutput | isMirrorSupported(callback: AsyncCallback<boolean>): void;<br/>isMirrorSupported(): Promise<boolean>;<br/>on(type: 'error', callback: ErrorCallback<PhotoOutputError>): void; | 是 | 废弃 |
| ohos.multimedia.camera | PhotoOutputErrorCode | ERROR_UNKNOWN = -1<br/>ERROR_DRIVER_ERROR = 0<br/>ERROR_INSUFFICIENT_RESOURCES = 1<br/>ERROR_TIMEOUT = 2 | 是 | 废弃 |
| ohos.multimedia.camera | PhotoOutputError | code: PhotoOutputErrorCode | 是 | 废弃 |
| ohos.multimedia.camera | VideoOutput | on(type: 'error', callback: ErrorCallback<BusinessError>): void; | 是 | 新增 |
| ohos.multimedia.camera | VideoOutput | on(type: 'error', callback: ErrorCallback<VideoOutputError>): void; | 是 | 废弃 |
| ohos.multimedia.camera | VideoOutputErrorCode | ERROR_UNKNOWN = -1<br/>ERROR_DRIVER_ERROR = 0 | 是 | 废弃 |
| ohos.multimedia.camera | VideoOutputError | code: VideoOutputErrorCode | 是 | 废弃 |
| ohos.multimedia.camera | MetadataObject | readonly type: MetadataObjectType;<br/>readonly timestamp: number; | 是 | 新增 |
| ohos.multimedia.camera | MetadataObject | getType(callback: AsyncCallback<MetadataObjectType>): void;<br/>getType(): Promise<MetadataObjectType>;<br/>getTimestamp(callback: AsyncCallback<number>): void;<br/>getTimestamp(): Promise<number>;<br/>getBoundingBox(callback: AsyncCallback<Rect>): void;<br/>getBoundingBox(): Promise<Rect>; | 是 | 废弃 |
| ohos.multimedia.camera | MetadataFaceObject | readonly boundingBox: Rect | 是 | 新增 |
| ohos.multimedia.camera | MetadataOutput | on(type: 'error', callback: ErrorCallback<BusinessError>): void; | 是 | 新增 |
| ohos.multimedia.camera | MetadataOutput | on(type: 'error', callback: ErrorCallback<BusinessError>): void; | 是 | 废弃 |
| ohos.multimedia.camera | MetadataOutputErrorCode | ERROR_UNKNOWN = -1<br/>ERROR_INSUFFICIENT_RESOURCES = 0 | 是 | 废弃 |
| ohos.multimedia.camera | MetadataOutputError | code: MetadataOutputErrorCode | 是 | 废弃 |
**适配指导**
除新增接口,和废弃接口之外,开发者需要关注变更的接口的适配:
从 Beta4 版本开始,对以下接口进行调整:
**新增接口**
1. CameraErrorCode 枚举
枚举值名称:INVALID_ARGUMENT, 值:7400101;
枚举值名称:OPERATION_NOT_ALLOWED, 值:7400102;
枚举值名称:SESSION_NOT_CONFIG, 值:7400103;
枚举值名称:SESSION_NOT_RUNNING, 值:7400104;
枚举值名称:SESSION_CONFIG_LOCKED, 值:7400105;
枚举值名称:DEVICE_SETTING_LOCKED, 值:7400106;
枚举值名称:CONFILICT_CAMERA, 值:7400107;
枚举值名称:DEVICE_DISABLED, 值:7400108;
枚举值名称:SERVICE_FATAL_ERROR, 值:7400201;
2. PhotoOutput 接口新增 capture(): Promise<void>;
3. MetadataObject 接口中新增 readonly type: MetadataObjectType;
4. MetadataObject 接口中新增 readonly timestamp: number;
5. MetadataObject 接口中新增 readonly boundingBox: Rect;
**废弃接口**
1. CameraInput 中废弃接口 release(callback: AsyncCallback<void>): void; 以及 release(): Promise<void>;
2. 废弃枚举 CameraInputErrorCode 以及所有它里边的枚举值(ERROR_UNKNOWN = -1,ERROR_NO_PERMISSION = 0,ERROR_DEVICE_PREEMPTED = 1,ERROR_DEVICE_DISCONNECTED = 2,ERROR_DEVICE_IN_USE = 3,ERROR_DRIVER_ERROR = 4);
3. 废弃接口 CameraInputError 以及接口属性 code:CameraInputErrorCode;
4. 废弃枚举 CaptureSessionErrorCode 以及所有它里边的枚举值(ERROR_UNKNOWN = -1,ERROR_INSUFFICIENT_RESOURCES = 0,ERROR_TIMEOUT = 1);
5. 废弃接口 CaptureSessionError 以及接口属性 code: CaptureSessionErrorCode;
6. 废弃枚举 PreviewOutputErrorCode 以及所有它里边的枚举值(ERROR_UNKNOWN = -1);
7. 废弃接口 PreviewOutputError 以及接口属性 code: PreviewOutputErrorCode;
8. 废弃枚举 PhotoOutputErrorCode 以及所有它里边的枚举值(ERROR_UNKNOWN = -1,ERROR_DRIVER_ERROR = 0,ERROR_INSUFFICIENT_RESOURCES = 1,ERROR_TIMEOUT = 2);
9. 废弃接口 PhotoOutputError 以及接口属性 code:PhotoOutputErrorCode;
10. 废弃枚举 VideoOutputErrorCode 以及所有它里边的枚举值(ERROR_UNKNOWN = -1,ERROR_DRIVER_ERROR = 0);
11. 废弃接口 VideoOutputError 以及接口属性 code:VideoOutputErrorCode;
12. 废弃接口 MetadataObject 中 getType(callback: AsyncCallback<MetadataObjectType>): void;
13. 废弃接口 MetadataObject 中 getType(): Promise<MetadataObjectType>;
14. 废弃接口 MetadataObject 中 getTimestamp(callback: AsyncCallback<number>): void;
15. 废弃接口 MetadataObject 中 getTimestamp(): Promise<number>;
16. 废弃接口 MetadataObject 中 getBoundingBox(callback: AsyncCallback<Rect>): void;
17. 废弃接口 MetadataObject 中 getBoundingBox(): Promise<Rect>;
18. 废弃枚举 MetadataOutputErrorCode 以及所有它里边的枚举值(ERROR_UNKNOWN = -1,ERROR_INSUFFICIENT_RESOURCES = 0);
19. 废弃接口 MetadataOutputError 以及接口属性 code:MetadataOutputErrorCode;
**接口变更**
1. camera 模块中接口 getCameraManager 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 getCameraManager(context: Context, callback: AsyncCallback<CameraManager>): void; 以及 getCameraManager(context: Context): Promise<CameraManager>; 变更为 getCameraManager(context: Context): CameraManager;
参考代码如下:
```
let cameraManager = camera.getCameraManager(context);
```
2. CameraManager 中接口 getSupportedCameras 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 getSupportedCameras(callback: AsyncCallback<Array<CameraDevice>>): void; 以及 getSupportedCameras(): Promise<Array<CameraDevice>>; 变更为 getSupportedCameras(): Array<CameraDevice>;
参考代码如下:
```
let cameras = cameraManager.getSupportedCameras();
```
3. CameraManager 中接口 getSupportedOutputCapability 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 getSupportedOutputCapability(camera: CameraDevice, callback: AsyncCallback<CameraOutputCapability>): void; 以及 getSupportedOutputCapability(camera: CameraDevice): Promise<CameraOutputCapability>; 变更为 getSupportedOutputCapability(camera: CameraDevice): CameraOutputCapability;
参考代码如下:
```
let cameraDevice = cameras[0];
let CameraOutputCapability = cameraManager.getSupportedOutputCapability(cameraDevice);
```
4. CameraManager 中接口 createCameraInput(camera: CameraDevice) 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 createCameraInput(camera: CameraDevice, callback: AsyncCallback<CameraInput>): void; 以及 createCameraInput(camera: CameraDevice): Promise<CameraInput>; 变更为 createCameraInput(camera: CameraDevice): CameraInput;
参考代码如下:
```
let cameraDevice = cameras[0];
let cameraInput = cameraManager.createCameraInput(cameraDevice);
```
5. CameraManager 中接口 createCameraInput(position: CameraPosition, type: CameraType) 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 createCameraInput(position: CameraPosition, type: CameraType, callback: AsyncCallback<CameraInput>): void; 以及 createCameraInput(position: CameraPosition, type: CameraType): Promise<CameraInput>; 变更为 createCameraInput(position: CameraPosition, type: CameraType): CameraInput;
参考代码如下:
```
let cameraDevice = cameras[0];
let position = cameraDevice.cameraPosition;
let type = cameraDevice.cameraType;
let cameraInput = cameraManager.createCameraInput(position, type);
```
6. CameraManager 中接口 createPreviewOutput 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 createPreviewOutput(profile: Profile, surfaceId: string, callback: AsyncCallback<PreviewOutput>): void; 以及 createPreviewOutput(profile: Profile, surfaceId: string): Promise<PreviewOutput>; 变更为 createPreviewOutput(profile: Profile, surfaceId: string): PreviewOutput;
参考代码如下:
```
let profile = cameraoutputcapability.previewProfiles[0];
let previewOutput = cameraManager.createPreviewOutput(profile, surfaceId);
```
7. CameraManager 中接口 createPhotoOutput 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 createPhotoOutput(profile: Profile, surfaceId: string, callback: AsyncCallback<PhotoOutput>): void; 以及 createPhotoOutput(profile: Profile, surfaceId: string): Promise<PhotoOutput>; 变更为 createPhotoOutput(profile: Profile, surfaceId: string): PhotoOutput;
参考代码如下:
```
let profile = cameraoutputcapability.photoProfiles[0];
let photoOutput = cameraManager.createPhotoOutput(profile, surfaceId);
```
8. CameraManager 中接口 createVideoOutput 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 createVideoOutput(profile: VideoProfile, surfaceId: string, callback: AsyncCallback<VideoOutput>): void; 以及 createVideoOutput(profile: VideoProfile, surfaceId: string): Promise<VideoOutput>; 变更为 createVideoOutput(profile: VideoProfile, surfaceId: string): VideoOutput;
参考代码如下:
```
let profile = cameraoutputcapability.videoProfiles[0];
let videoOutput = cameraManager.createVideoOutput(profile, surfaceId);
```
9. CameraManager 中接口 createMetadataOutput 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 createMetadataOutput(metadataObjectTypes: Array<MetadataObjectType>, callback: AsyncCallback<MetadataOutput>): void; 以及 createMetadataOutput(metadataObjectTypes: Array<MetadataObjectType>): Promise<MetadataOutput>; 变更为 createMetadataOutput(metadataObjectTypes: Array<MetadataObjectType>): MetadataOutput;
参考代码如下:
```
let metadataObjectTypes = cameraoutputcapability.supportedMetadataObjectTypes;
let metadataOutput = cameraManager.createMetadataOutput(metadataObjectTypes);
```
10. CameraManager 中接口 createCaptureSession 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 createCaptureSession(callback: AsyncCallback<CaptureSession>): void; 以及 createCaptureSession(): Promise<CaptureSession>; 变更为 createCaptureSession(): CaptureSession;
参考代码如下:
```
let captureSession = cameraManager.createCaptureSession();
```
11. 枚举 CameraType 中,枚举值名称 CAMERA_TYPE_UNSPECIFIED 变更为 CAMERA_TYPE_DEFAULT。
12. CameraInput 中,on 接口返回值类型由 CameraInputError 变更为 BusinessError,因此旧接口 on(type: 'error', camera: CameraDevice, callback: ErrorCallback<CameraInputError>): void; 变更为 on(type: 'error', camera: CameraDevice, callback: ErrorCallback<BusinessError>): void;
参考代码如下:
```
let cameraDevice = cameras[0];
cameraInput.on('error', cameraDevice, (BusinessError) => {
})
```
13. CaptureSession 中接口 beginConfig 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 beginConfig(callback: AsyncCallback<void>): void; 以及 beginConfig(): Promise<void>; 变更为 beginConfig(): void;
参考代码如下:
```
captureSession.beginConfig();
```
14. CaptureSession 中接口 addInput 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 addInput(cameraInput: CameraInput, callback: AsyncCallback<void>): void; 以及 addInput(cameraInput: CameraInput): Promise<void>; 变更为 addInput(cameraInput: CameraInput): void;
参考代码如下:
```
captureSession.addInput(cameraInput);
```
15. CaptureSession 中接口 removeInput 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 removeInput(cameraInput: CameraInput, callback: AsyncCallback<void>): void; 以及 removeInput(cameraInput: CameraInput): Promise<void>; 变更为 removeInput(cameraInput: CameraInput): void;
参考代码如下:
```
captureSession.removeInput(cameraInput);
```
16. CaptureSession 中接口 addOutput 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 addOutput(cameraOutput: CameraOutput, callback: AsyncCallback<void>): void; 以及 addOutput(cameraOutput: CameraOutput): Promise<void>; 变更为 addOutput(cameraOutput: CameraOutput): void;
参考代码如下:
```
captureSession.addOutput(previewOutput);
```
17. CaptureSession 中接口 removeOutput 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 removeOutput(cameraOutput: CameraOutput, callback: AsyncCallback<void>): void; 以及 removeOutput(cameraOutput: CameraOutput): Promise<void>; 变更为 removeOutput(cameraOutput: CameraOutput): void;
参考代码如下:
```
captureSession.removeOutput(previewOutput);
```
18. CaptureSession 中接口 hasFlash 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 hasFlash(callback: AsyncCallback<boolean>): void; 以及 hasFlash(): Promise<boolean>; 变更为 hasFlash(): boolean;
参考代码如下:
```
let status = captureSession.hasFlash();
```
19. CaptureSession 中接口 isFlashModeSupported 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 isFlashModeSupported(flashMode: FlashMode, callback: AsyncCallback<boolean>): void; 以及 isFlashModeSupported(flashMode: FlashMode): Promise<boolean>; 变更为 isFlashModeSupported(flashMode: FlashMode): boolean;
参考代码如下:
```
let status = captureSession.isFlashModeSupported(camera.FlashMode.FLASH_MODE_AUTO);
```
20. CaptureSession 中接口 getFlashMode 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 getFlashMode(callback: AsyncCallback<FlashMode>): void; 以及 getFlashMode(): Promise<FlashMode>; 变更为 getFlashMode(): FlashMode;
参考代码如下:
```
let flashMode = captureSession.getFlashMode();
```
21. CaptureSession 中接口 isExposureModeSupported 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 isExposureModeSupported(aeMode: ExposureMode, callback: AsyncCallback<boolean>): void; 以及 isExposureModeSupported(aeMode: ExposureMode): Promise<boolean>; 变更为 isExposureModeSupported(aeMode: ExposureMode): boolean;
参考代码如下:
```
let isSupported = captureSession.isExposureModeSupported(camera.ExposureMode.EXPOSURE_MODE_LOCKED);
```
22. CaptureSession 中接口 getExposureMode 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 getExposureMode(callback: AsyncCallback<ExposureMode>): void; 以及 getExposureMode(): Promise<ExposureMode>; 变更为 getExposureMode(): ExposureMode;
参考代码如下:
```
let exposureMode = captureSession.getExposureMode();
```
23. CaptureSession 中接口 setExposureMode 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 setExposureMode(aeMode: ExposureMode, callback: AsyncCallback<void>): void; 以及 setExposureMode(aeMode: ExposureMode): Promise<void>; 变更为 setExposureMode(aeMode: ExposureMode): void;
参考代码如下:
```
captureSession.setExposureMode(camera.ExposureMode.EXPOSURE_MODE_LOCKED);
```
24. CaptureSession 中接口 getMeteringPoint 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 getMeteringPoint(callback: AsyncCallback<Point>): void; 以及 getMeteringPoint(): Promise<Point>; 变更为 getMeteringPoint(): Point;
参考代码如下:
```
let exposurePoint = captureSession.getMeteringPoint();
```
25. CaptureSession 中接口 setMeteringPoint 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 setMeteringPoint(point: Point, callback: AsyncCallback<void>): void; 以及 setMeteringPoint(point: Point): Promise<void>; 变更为 setMeteringPoint(point: Point): void;
参考代码如下:
```
let Point2 = {x: 2, y: 2};
captureSession.setMeteringPoint(Point2);
```
26. CaptureSession 中接口 getExposureBiasRange 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 getExposureBiasRange(callback: AsyncCallback<Array<number>>): void; 以及 getExposureBiasRange(): Promise<Array<number>>; 变更为 getExposureBiasRange(): Array<number>;
参考代码如下:
```
let biasRangeArray = captureSession.getExposureBiasRange();
```
27. CaptureSession 中接口 setExposureBias 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 setExposureBias(exposureBias: number, callback: AsyncCallback<void>): void; 以及 setExposureBias(exposureBias: number): Promise<void>; 变更为 setExposureBias(exposureBias: number): void;
参考代码如下:
```
let exposureBias = biasRangeArray[0];
captureSession.setExposureBias(exposureBias);
```
28. CaptureSession 中接口 getExposureValue 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 getExposureValue(callback: AsyncCallback<number>): void; 以及 getExposureValue(): Promise<number>; 变更为 getExposureValue(): number;
参考代码如下:
```
let exposureValue = captureSession.getExposureValue();
```
29. CaptureSession 中接口 isFocusModeSupported 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 isFocusModeSupported(afMode: FocusMode, callback: AsyncCallback<boolean>): void; 以及 isFocusModeSupported(afMode: FocusMode): Promise<boolean>; 变更为 isFocusModeSupported(afMode: FocusMode): boolean;
参考代码如下:
```
let status = captureSession.isFocusModeSupported(camera.FocusMode.FOCUS_MODE_AUTO);
```
30. CaptureSession 中接口 getFocusMode 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 getFocusMode(callback: AsyncCallback<FocusMode>): void; 以及 getFocusMode(): Promise<FocusMode>; 变更为 getFocusMode(): FocusMode;
参考代码如下:
```
let afMode = captureSession.getFocusMode();
```
31. CaptureSession 中接口 setFocusMode 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 setFocusMode(afMode: FocusMode, callback: AsyncCallback<void>): void; 以及 setFocusMode(afMode: FocusMode): Promise<void>; 变更为 setFocusMode(afMode: FocusMode): void;
参考代码如下:
```
captureSession.setFocusMode(camera.FocusMode.FOCUS_MODE_AUTO);
```
32. CaptureSession 中接口 setFocusPoint 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 setFocusPoint(point: Point, callback: AsyncCallback<void>): void; 以及 setFocusPoint(point: Point): Promise<void>; 变更为 setFocusPoint(point: Point): void;
参考代码如下:
```
let Point2 = {x: 2, y: 2};
captureSession.setFocusPoint(Point2);
```
33. CaptureSession 中接口 getFocusPoint 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 getFocusPoint(callback: AsyncCallback<Point>): void; 以及 getFocusPoint(): Promise<Point>; 变更为 getFocusPoint(): Point;
参考代码如下:
```
let point = captureSession.getFocusPoint();
```
34. CaptureSession 中接口 getFocalLength 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 getFocalLength(callback: AsyncCallback<number>): void; 以及 getFocalLength(): Promise<number>; 变更为 getFocalLength(): number;
参考代码如下:
```
let focalLength = captureSession.getFocalLength();
```
35. CaptureSession 中接口 getZoomRatioRange 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 getZoomRatioRange(callback: AsyncCallback<Array<number>>): void; 以及 getZoomRatioRange(): Promise<Array<number>>; 变更为 getZoomRatioRange(): Array<number>;
参考代码如下:
```
let zoomRatioRange = captureSession.getZoomRatioRange();
```
36. CaptureSession 中接口 getZoomRatio 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 getZoomRatio(callback: AsyncCallback<number>): void; 以及 getZoomRatio(): Promise<number>; 变更为 getZoomRatio(): number;
参考代码如下:
```
let zoomRatio = captureSession.getZoomRatio();
```
37. CaptureSession 中接口 setZoomRatio 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 setZoomRatio(zoomRatio: number, callback: AsyncCallback<void>): void; 以及 setZoomRatio(zoomRatio: number): Promise<void>; 变更为 setZoomRatio(zoomRatio: number): void;
参考代码如下:
```
let zoomRatio = zoomRatioRange[0];
captureSession.setZoomRatio(zoomRatio);
```
38. CaptureSession 中接口 isVideoStabilizationModeSupported 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 isVideoStabilizationModeSupported(vsMode: VideoStabilizationMode, callback: AsyncCallback<boolean>): void; 以及 isVideoStabilizationModeSupported(vsMode: VideoStabilizationMode): Promise<boolean>; 变更为 isVideoStabilizationModeSupported(vsMode: VideoStabilizationMode): boolean;
参考代码如下:
```
let isSupported = captureSession.isVideoStabilizationModeSupported(camera.VideoStabilizationMode.OFF);
```
39. CaptureSession 中接口 getActiveVideoStabilizationMode 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 getActiveVideoStabilizationMode(callback: AsyncCallback<VideoStabilizationMode>): void; 以及 getActiveVideoStabilizationMode(): Promise<VideoStabilizationMode>; 变更为 getActiveVideoStabilizationMode(): VideoStabilizationMode;
参考代码如下:
```
let vsMode = captureSession.getActiveVideoStabilizationMode();
```
40. CaptureSession 中接口 setVideoStabilizationMode 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 setVideoStabilizationMode(mode: VideoStabilizationMode, callback: AsyncCallback<void>): void; 以及 setVideoStabilizationMode(mode: VideoStabilizationMode): Promise<void>; 变更为 setVideoStabilizationMode(mode: VideoStabilizationMode): void;
参考代码如下:
```
captureSession.setVideoStabilizationMode(camera.VideoStabilizationMode.OFF);
```
41. CaptureSession 中,on(type: 'error') callback 类型由 ErrorCallback<CaptureSessionError> 变更为 ErrorCallback<BusinessError>,因此旧接口 on(type: 'error', callback: ErrorCallback<CaptureSessionError>): void; 变更为 on(type: 'error', callback: ErrorCallback<BusinessError>): void;
参考代码如下:
```
captureSession.on('error', (BusinessError) => {
})
```
42. PreviewOutput 中,on(type: 'error') callback 类型由 ErrorCallback<PreviewOutputError> 变更为 ErrorCallback<BusinessError>,因此旧接口 on(type: 'error', callback: ErrorCallback<PreviewOutputError>): void; 变更为 on(type: 'error', callback: ErrorCallback<BusinessError>): void;
参考代码如下:
```
previewOutput.on('error', (BusinessError) => {
})
```
43. PhotoOutput 中接口 isMirrorSupported 返回方式由异步 callback 跟异步 promise 变更为同步返回,因此旧接口 isMirrorSupported(callback: AsyncCallback<boolean>): void; 以及 isMirrorSupported(): Promise<boolean>; 变更为 isMirrorSupported(): boolean;
参考代码如下:
```
let isSupported = photoOutput.isMirrorSupported();
```
44. PhotoOutput 中,on(type: 'error') callback 类型由 ErrorCallback<PhotoOutputError> 变更为 ErrorCallback<BusinessError>,因此旧接口 on(type: 'error', callback: ErrorCallback<PhotoOutputError>): void; 变更为 on(type: 'error', callback: ErrorCallback<BusinessError>): void;
参考代码如下:
```
PhotoOutput.on('error', (BusinessError) => {
})
```
45. VideoOutput 中,on(type: 'error') callback 类型由 ErrorCallback<VideoOutputError> 变更为 ErrorCallback<BusinessError>,因此旧接口 on(type: 'error', callback: ErrorCallback<VideoOutputError>): void; 变更为 on(type: 'error', callback: ErrorCallback<BusinessError>): void;
参考代码如下:
```
VideoOutput.on('error', (BusinessError) => {
})
```
46. MetadataOutput 中,on(type: 'error') callback 类型由 ErrorCallback<MetadataOutputError> 变更为 ErrorCallback<BusinessError>,因此旧接口 on(type: 'error', callback: ErrorCallback<MetadataOutputError>): void; 变更为 on(type: 'error', callback: ErrorCallback<BusinessError>): void;
参考代码如下:
```
MetadataOutput.on('error', (BusinessError) => {
})
```
\ No newline at end of file
# 公共通信子系统NFC JS API变更Changelog
OpenHarmony 3.2.10.2(Mr)版本相较于OpenHarmony 3.2.beta4版本,分布式数据管理子系统的API变更如下
## cl.nfc.1 接口变更
NFC部分API6到API8部分JS接口不支持抛出错误码,需要删除废弃,然后使用新的API9替换。
开发者需要根据以下说明对应用进行适配。
**变更影响**
影响部分API6到API8部分JS接口,应用需要进行适配才可以在新版本SDK环境正常实现功能。
**关键的接口/组件变更**
| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
| ------------------------- | ------------------- | ------------------------------------------------------------ | -------- |
| api/@ohos.nfc.cardEmulation.d.ts | cardEmulation | FeatureType | 废弃 |
| api/@ohos.nfc.cardEmulation.d.ts | cardEmulation | isSupported | 废弃 |
| api/@ohos.nfc.cardEmulation.d.ts | cardEmulation | hasHceCapability | 新增 |
| api/@ohos.nfc.controller.d.ts | nfcController | isNfcAvailable | 废弃 |
| api/@ohos.nfc.controller.d.ts | nfcController | openNfc | 废弃 |
| api/@ohos.nfc.controller.d.ts | nfcController | closeNfc | 废弃 |
| api/@ohos.nfc.controller.d.ts | nfcController | enableNfc | 新增 |
| api/@ohos.nfc.controller.d.ts | nfcController | disableNfc | 新增 |
| api/@ohos.nfc.tag.d.ts | tag | getNfcATag | 废弃 |
| api/@ohos.nfc.tag.d.ts | tag | getNfcBTag | 废弃 |
| api/@ohos.nfc.tag.d.ts | tag | getNfcFTag | 废弃 |
| api/@ohos.nfc.tag.d.ts | tag | getNfcVTag | 废弃 |
| api/@ohos.nfc.tag.d.ts | tag | getNfcA | 新增 |
| api/@ohos.nfc.tag.d.ts | tag | getNfcB | 新增 |
| api/@ohos.nfc.tag.d.ts | tag | getNfcF | 新增 |
| api/@ohos.nfc.tag.d.ts | tag | getNfcV | 新增 |
| api/tag/tagSession.d.ts | TagSession | getTagInfo | 废弃 |
| api/tag/tagSession.d.ts | TagSession | connectTag | 废弃 |
| api/tag/tagSession.d.ts | TagSession | reset | 废弃 |
| api/tag/tagSession.d.ts | TagSession | isTagConnected | 废弃 |
| api/tag/tagSession.d.ts | TagSession | setSendDataTimeout | 废弃 |
| api/tag/tagSession.d.ts | TagSession | getSendDataTimeout | 废弃 |
| api/tag/tagSession.d.ts | TagSession | sendData | 废弃 |
| api/tag/tagSession.d.ts | TagSession | getMaxSendLength | 废弃 |
| api/tag/tagSession.d.ts | TagSession | connect | 新增 |
| api/tag/tagSession.d.ts | TagSession | resetConnection | 新增 |
| api/tag/tagSession.d.ts | TagSession | isConnected | 新增 |
| api/tag/tagSession.d.ts | TagSession | setTimeout | 新增 |
| api/tag/tagSession.d.ts | TagSession | getTimeout | 新增 |
| api/tag/tagSession.d.ts | TagSession | transmit | 新增 |
| api/tag/tagSession.d.ts | TagSession | getMaxTransmitSize | 新增 |
**适配指导**
查看API开发指南:
[cardEmulation-API参考](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-cardEmulation.md)
[nfcController-API参考](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-nfcController.md)
[tag-API参考](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-nfcTag.md)
[TagSession-API参考](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-tagSession.md)
```
# 资源调度子系统ChangeLog
## cl.resourceschedule.backgroundTaskManager
对资源调度子系统backgroundTaskManager仓原有接口进行整改,原有@ohos.backgroundTaskManager.d.ts中的API9接口删除,需要使用@ohos.resourceschedule.backgroundTaskManager.d.ts中的API9新接口。新的API9接口符合错误码规范。
**变更影响**
基于OpenHarmony3.2.10.5及之后的SDK版本开发的应用,需适配API9的模块和接口,以及的API异常处理返回方式,否则会影响原有业务逻辑。
**关键接口/组件变更**
以下方法、属性、枚举和常量均从API9变更。@ohos.backgroundTaskManager.d.ts文件中的接口移植到@ohos.resourceschedule.backgroundTaskManager.d.ts文件。
| 类名 | 接口类型 | 接口声明 | 说明 |
| -- | -- | -- | -- |
| backgroundTaskManager | method | function resetAllEfficiencyResources(): void; | 接口API9删除,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager | method | function applyEfficiencyResources(request: EfficiencyResourcesRequest): bool; | 接口API9删除,移植到ohos.resourceschedule.backgroundTaskManager.d.ts,修改为function applyEfficiencyResources(request: EfficiencyResourcesRequest): void; |
| backgroundTaskManager.ResourceType | enum | export enum ResourceType | 接口API9删除,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.ResourceType | enum | CPU = 1 | 接口API9删除,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.ResourceType | enum | COMMON_EVENT = 1 << 1 | 接口API9删除,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.ResourceType | enum | TIMER = 1 << 2 | 接口API9删除,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.ResourceType | enum | WORK_SCHEDULER = 1 << 3 | 接口API9删除,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.ResourceType | enum | BLUETOOTH = 1 << 4 | 接口API9删除,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.ResourceType | enum | GPS = 1 << 5 | 接口API9删除,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.ResourceType | enum | AUDIO = 1 << 6 | 接口API9删除,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.EfficiencyResourcesRequest | interface | export interface EfficiencyResourcesRequest | 接口API9删除,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.EfficiencyResourcesRequest | field | reason: string | 接口API9删除,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.EfficiencyResourcesRequest | field | isProcess?: bool | 接口API9删除,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.EfficiencyResourcesRequest | field | isPersist?: bool | 接口API9删除,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.EfficiencyResourcesRequest | field | timeOut: number | 接口API9删除,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.EfficiencyResourcesRequest | field | isApply: bool | 接口API9删除,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.EfficiencyResourcesRequest | field | resourceTypes: number | 接口API9删除,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
**适配指导**<br>
导入backgroundTaskManager模块。
```
import bundle form '@ohos.resourceschedule.backgroundTaskManager'
```
此外还需要适配异常处理,具体参考[backgroundTaskManager接口文档](../../../application-dev/reference/apis/js-apis-resourceschedule-backgroundTaskManager.md)
## c2.resourceschedule.workScheduler
对资源调度子系统workScheduler仓原有接口进行整改,原有@ohos.workScheduler.d.ts中的API9接口删除,需要使用@ohos.resourceschedule.workScheduler.d.ts中的API9新接口。新的API9接口符合错误码规范。
**变更影响**
基于OpenHarmony3.2.10.5及之后的SDK版本开发的应用,需适配API9的模块和接口,以及的API异常处理返回方式,否则会影响原有业务逻辑。
**关键接口/组件变更**
以下方法、属性、枚举和常量均从API9变更。删除@ohos.workScheduler.d.ts文件,相关接口变更至@ohos.resourceschedule.workScheduler.d.ts文件中。
| 类名 | 接口类型 | 接口声明 | 变更类型 |
| -- | -- | -- | -- |
| workScheduler | namespace | declare namespace workScheduler | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | interface | export interface WorkInfo | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | parameters?: {[key: string]: any} | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | idleWaitTime?: number | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | isDeepIdle?: boolean | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | repeatCount?: number | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | isRepeat?: boolean | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | repeatCycleTime?: number | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | storageRequest?: StorageRequest | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | batteryStatus?: BatteryStatus | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | batteryLevel?: number | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | chargerType?: ChargingType | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | isCharging?: boolean | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | networkType?: NetworkType | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | isPersisted?: boolean | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | abilityName: string | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | bundleName: string | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | workId: number | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler | method | function isLastWorkTimeOut(workId: number): Promise; | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler | method | function isLastWorkTimeOut(workId: number, callback: AsyncCallback<void>): boolean; | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler | method | function stopAndClearWorks(): boolean; | 接口API8变更,移植到ohos.resourceschedule.workScheduler.d.ts,修改为function stopAndClearWorks(): boolean; |
| workScheduler | method | function obtainAllWorks(): Promise<Array<WorkInfo>>; | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler | method | function obtainAllWorks(callback: AsyncCallback<void>): Array<WorkInfo>; | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler | method | function getWorkStatus(workId: number): Promise<WorkInfo>; | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler | method | function getWorkStatus(workId: number, callback: AsyncCallback<WorkInfo>): void; | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler | method | function stopWork(work: WorkInfo, needCancel?: boolean): boolean; | 接口API8变更,移植到ohos.resourceschedule.workScheduler.d.ts,修改为function stopWork(work: WorkInfo, needCancel?: boolean): void; |
| workScheduler | method | function startWork(work: WorkInfo): boolean; | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts,修改为function startWork(work: WorkInfo): void; |
| workScheduler.NetworkType | enum | export enum NetworkType | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.NetworkType | enum | NETWORK_TYPE_ANY = 0 | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.NetworkType | enum | NETWORK_TYPE_MOBILE | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.NetworkType | enum | NETWORK_TYPE_WIFI | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.NetworkType | enum | NETWORK_TYPE_BLUETOOTH | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.NetworkType | enum | NETWORK_TYPE_WIFI_P2P | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.NetworkType | enum | NETWORK_TYPE_ETHERNET | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.ChargingType | enum | export enum ChargingType | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.ChargingType | enum | CHARGING_PLUGGED_ANY = 0 | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.ChargingType | enum | CHARGING_PLUGGED_AC | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.ChargingType | enum | CHARGING_PLUGGED_USB | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.ChargingType | enum | CHARGING_PLUGGED_WIRELESS | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.BatteryStatus | enum | export enum BatteryStatus | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.BatteryStatus | enum | BATTERY_STATUS_LOW = 0 | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.BatteryStatus | enum | BATTERY_STATUS_OKAY | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.BatteryStatus | enum | BATTERY_STATUS_LOW_OR_OKAY | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.StorageRequest | enum | export enum StorageRequest | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.BatteryStatus | enum | STORAGE_LEVEL_LOW = 0 | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.BatteryStatus | enum | STORAGE_LEVEL_OKAY | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.BatteryStatus | enum | STORAGE_LEVEL_LOW_OR_OKAY | 接口API9删除,移植到ohos.resourceschedule.workScheduler.d.ts |
**适配指导**<br>
导入workScheduler模块。
```
import bundle form '@ohos.resourceschedule.workScheduler'
```
此外还需要适配异常处理,具体参考[workScheduler接口文档](../../../application-dev/reference/apis/js-apis-resourceschedule-workScheduler.md)
# arkui子系统ChangeLog
## cl.arkui.1 状态变量数据类型声明使用限制。
1. 所有的状态装饰器变量需要显式声明变量类型,不允许声明any,不支持Date数据类型。
示例:
```ts
// xxx.ets
@Entry
@Component
struct DatePickerExample {
// 错误写法: @State isLunar: any = false
@State isLunar: boolean = false
// 错误写法: @State selectedDate: Date = new Date('2021-08-08')
private selectedDate: Date = new Date('2021-08-08')
build() {
Column() {
Button('切换公历农历')
.margin({ top: 30 })
.onClick(() => {
this.isLunar = !this.isLunar
})
DatePicker({
start: new Date('1970-1-1'),
end: new Date('2100-1-1'),
selected: this.selectedDate
})
.lunar(this.isLunar)
.onChange((value: DatePickerResult) => {
this.selectedDate.setFullYear(value.year, value.month, value.day)
console.info('select current date is: ' + JSON.stringify(value))
})
}.width('100%')
}
}
```
![datePicker](../../../application-dev/reference/arkui-ts/figures/datePicker.gif)
2. @State、@Provide、 @Link和@Consume四种状态变量的数据类型声明只能由简单数据类型或引用数据类型的其中一种构成。
类型定义中的Length、ResourceStr、ResourceColor三个类型是简单数据类型或引用数据类型的组合,所以不能被以上四种状态装饰器变量使用。
Length、ResourceStr、ResourceColor的定义请看文档[arkui-ts类型定义](../../../application-dev/reference/arkui-ts/ts-types.md)。
示例:
```ts
// xxx.ets
@Entry
@Component
struct IndexPage {
// 错误写法: @State message: string | Resource = 'Hello World'
@State message: string = 'Hello World'
// 错误写法: @State message: ResourceStr = $r('app.string.hello')
@State resourceStr: Resource = $r('app.string.hello')
build() {
Row() {
Column() {
Text(`${this.message}`)
.fontSize(50)
.fontWeight(FontWeight.Bold)
}
.width('100%')
}
.height('100%')
}
}
```
![hello](../../../application-dev/quick-start/figures/hello.PNG)
**变更影响**
1. 如果状态装饰器变量没有显式声明变量类型,声明any,编译拦截报错;
```ts
// ArkTS:ERROR Please define an explicit type, not any.
@State isLunar: any = false
```
2. 状态装饰器变量声明变量类型为Date,编译拦截报错;
```ts
// ArkTS:ERROR The @State property 'selectedDate' cannot be a 'Date' object.
@State selectedDate: Date = new Date('2021-08-08')
```
3. @State、@Provide、 @Link和@Consume四种状态变量使用框架提供的Length、ResourceStr、ResourceColor,
编译拦截报错。
```ts
/* ArkTS:ERROR The state variable type here is 'ResourceStr', it contains both a simple type and an object type,
which are not allowed to be defined for state variable of a struct.*/
@State message: ResourceStr = $r('app.string.hello')
```
**关键的接口/组件变更**
不涉及。
**适配指导**
1. 状态装饰器变量声明具体的变量类型替代any;
2. 使用Date对象的状态装饰器变量,修改为不加状态装饰器修饰的常规变量;
3. 因为Length(string|number|Resource), ResourceStr(string|Resource), ResourceColor(string|number|Color|Resource)
的三个类型是简单数据类型或引用数据类型的组合,使用@State、@Provide、 @Link和@Consume四种状态变量场景参考以下修改:
```ts
// 错误写法:
@State message: ResourceStr = $r('app.string.hello')
// 修正后的写法:
@State resourceStr: Resource = $r('app.string.hello')
```
## cl.arkui.2 自定义组件成员变量初始化的规则与约束。
通过构造函数方法初始化成员变量,需要遵循如下规则:
| **从父组件中的变量(右)到子组件中的变量(下)** | **regular** | **@State** | **@Link** | **@Prop** | **@Provide** | **@Consume** | **@ObjectLink** |
| -------------------------- | ----------- | ---------- | --------- | --------- | ------------ | ------------ | --------------- |
| **regular** | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | 支持 |
| **@State** | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
| **@Link** | 不支持 | 支持(1) | 支持(1) | 支持(1) | 支持(1) | 支持(1) | 支持(1) |
| **@Prop** | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
| **@Provide** | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
| **@Consume** | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 |
| **@ObjectLink** | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 |
| **从父组件中的变量(右)到子组件中的变量(下)** | **@StorageLink** | **@StorageProp** | **@LocalStorageLink** | **@LocalStorageProp** |
| -------------------------- | ---------------- | ---------------- | --------------------- | --------------------- |
| **regular** | 支持 | 不支持 | 不支持 | 不支持 |
| **@State** | 支持 | 支持 | 支持 | 支持 |
| **@Link** | 支持(1) | 支持(1) | 支持(1) | 支持(1) |
| **@Prop** | 支持 | 支持 | 支持 | 支持 |
| **@Provide** | 支持 | 支持 | 支持 | 支持 |
| **@Consume** | 不支持 | 不支持 | 不支持 | 不支持 |
| **@ObjectLink** | 不支持 | 不支持 | 不支持 | 不支持 |
> **说明**
>
> **支持(1)**:必须使用`$`, 例如 `this.$varA`。
> **regular**:未加修饰的常规变量。
不允许从父组件初始化`@StorageLink`, `@StorageProp`, `@LocalStorageLink`, `@LocalStorageProp`修饰的变量。
**变更影响**
1. 不允许从父组件初始化`@LocalStorageLink`, `@LocalStorageProp`修饰的变量。
```ts
@Entry
@Component
struct LocalStorageComponent {
build() {
Column() {
Child({
/* ArkTS:ERROR Property 'simpleVarName' in the custom component 'Child' cannot
initialize here (forbidden to specify). */
simpleVarName: 1,
/* ArkTS:ERROR Property 'objectName' in the custom component 'Child' cannot
initialize here (forbidden to specify). */
objectName: new ClassA("x")
})
}
}
}
@Component
struct Child {
@LocalStorageLink("storageSimpleProp") simpleVarName: number = 0;
@LocalStorageProp("storageObjectProp") objectName: ClassA = new ClassA("x");
build() {}
}
```
2. 子组件的@ObjectLink变量不支持父组件装饰器变量的直接赋值,其父组件的源必须是数组的项或对象的属性,该数组或对象必现用`@State``@Link``@Provide``@Consume``@ObjectLink`装饰器修饰。
```ts
let NextID : number = 0;
@Observed class ClassA {
public id : number;
public c: number;
constructor(c: number) {
this.id = NextID++;
this.c = c;
}
}
@Component
struct Child {
@ObjectLink varA : ClassA;
build() {
Row() {
Text('ViewA-' + this.varA.id)
}
}
}
@Component
struct Parent {
@Link linkValue: ClassA
build() {
Column() {
/* ArkTS:ERROR The @Link property 'linkValue' cannot be assigned to
the @ObjectLink property 'varA'.*/
Child({ varA: this.linkValue })
}
}
}
```
**关键的接口/组件变更**
不涉及。
**适配指导**
1. 构造子组件时,不对子组件的`@LocalStorageLink`, `@LocalStorageProp`修饰的变量进行。
如果需要在父组件中修改子组件的`@LocalStorageLink`, `@LocalStorageProp`修饰的变量,则使用LocalStorage提供的API接口方法(比如set方法)赋值。
2. @ObjectLink的使用指导请参考文档[@ObjectLink使用指导](../../../application-dev/quick-start/arkts-observed-and-objectlink.md)
# 包管理子系统ChangeLog
## cl.bundlemanager.1 底层能力变更,安装应用时增加签名证书中bundle-name的校验,需要与应用的bundleName相同,否则会安装失败。
安装应用时增加了对[签名证书profile文件](../../../application-dev/security/app-provision-structure.md)中bundle-name字段的校验,该字段内容需要配置为对应应用的bundleName。
如果bundle-name的内容与应用配置文件中的bundleName不一致,会出现安装失败。具体报错为:
```
error: verify signature failed.
```
**变更影响**<br>
对之前的版本镜像无影响,对使用3.2.10.5版本及之后的系统镜像,如果未修改签名证书中的bundle-name字段,会出现应用安装失败问题。
**关键的接口/组件变更**<br>
不涉及接口及组件变更
**适配指导**<br>
原有应用在新的系统镜像上出现'error: verify signature failed',可以修改签名证书profile文件中的bundle-name为对应应用的bundleName,生成新的签名证书(后缀为.p7b),重新给应用签名即可。
签名工具及签名证书的生成方式可以参考:[签名工具指导](../../../application-dev/security/hapsigntool-guidelines.md)
## cl.bundlemanager.2 底层能力变更,增加对无图标应用的管控,如果应用未配置入口图标,则会在桌面上显示一个默认图标,点击后跳转至应用详情页。
增加对无图标应用的管控,如果应用未配置入口图标且未申请隐藏图标特权(AllowHideDesktopIcon),则会在桌面上显示一个默认图标,点击后跳转至应用详情页。此处的未配置入口图标规则如下:
1. 应用中未配置abilities字段
2. 应用中配置了abilities字段,但是没有任何一个page类型的ability中skills如下,即同时包含"ohos.want.action.home"和"entity.system.home":
```json
"skills": [
{
"actions": [
"ohos.want.action.home"
],
"entities": [
"entity.system.home"
]
}
]
```
对于符合上面规则的应用,均属于无图标应用,通过hdc_std install 或者 bm install的方式安装,均会在桌面上显示一个默认图标。
如果应用不需要再桌面显示图标,需要申请相应的隐藏图标特权AllowHideDesktopIcon,并在签名证书文件中或者白名单(install_list_capability.json)配置,可以参考:[应用特权配置指南](../../../device-dev/subsystems/subsys-app-privilege-config-guide.md)
如果应该需要在桌面显示图标,则需要在abilities中选择一个ability配置skills,同时包含"ohos.want.action.home"和"entity.system.home"。
**变更影响**<br>
对之前的版本镜像无影响,对使用3.2.10.5版本及之后的系统镜像,如果应用未配置图标,通过命令行的安装方式会在桌面显示默认图标。
**关键的接口/组件变更**<br>
不涉及接口及组件变更
**适配指导**<br>
如果应用不需要再桌面显示图标,需要申请相应的隐藏图标特权AllowHideDesktopIcon,并在签名证书文件中或者白名单(install_list_capability.json)配置,可以参考:[应用特权配置指南](../../../device-dev/subsystems/subsys-app-privilege-config-guide.md)
如果应该需要在桌面显示图标,则需要在abilities中选择一个ability配置skills,同时包含"ohos.want.action.home"和"entity.system.home"。
## cl.bundlemanager.3 底层能力变更,特权AllowAppUsePrivilegeExtension、AllowAppMultiProcess和AllowFormVisibleNotify不支持通过签名证书配置,仅支持通过白名单install_list_capability.json申请这三个特权。
特权AllowAppUsePrivilegeExtension、AllowAppMultiProcess和AllowFormVisibleNotify不支持通过签名证书配置,仅支持通过白名单install_list_capability.json申请这三个特权。对于在签名证书中申请使用上面三个特权的应用,在新版本上可能出现安装失败或者配置特权无效的问题。
如果出现了下面的报错,可能是因为特权整改导致的,应用需要适配新的规则,可以参考:[应用特权配置指南](../../../device-dev/subsystems/subsys-app-privilege-config-guide.md)
```
error: install parse profile prop check error.
```
对于xts或者本地调试的demo,无法修改板子上install_list_capability.json的,可以修改应用的bundleName,需要以"com.acts."为开头,同时在签名证书中申请对应的特权。
申请特权AllowAppUsePrivilegeExtension,通常是在应用的配置文件中使用了extensionAbilities字段,且其中的type属性为dataShare或者service。如果未配置特权,就会出现安装失败问题。
**变更影响**<br>
对之前的版本镜像无影响,对使用3.2.10.5版本及之后的系统镜像,如果未在白名单install_list_capability.json中申请所需的特权,可能会出现应用安装失败问题。
**关键的接口/组件变更**<br>
不涉及接口及组件变更
**适配指导**<br>
如果出现了下面的报错,可能是因为特权整改导致的,应用需要适配新的规则,可以参考:[应用特权配置指南](../../../device-dev/subsystems/subsys-app-privilege-config-guide.md)
```
error: install parse profile prop check error.
```
对于xts或者本地调试的demo,无法修改开发板上install_list_capability.json的,可以修改应用的bundleName,需要以"com.acts."为开头,同时在签名证书中申请对应的特权。
## cl.bundlemanager.4 底层能力变更,安装hap时,hap中的文件不再解压到安装目录。
安装hap后,安装目录下只会存在hap文件,应用不能再使用拼接路径访问解压后的资源文件,应用想要访问资源文件,需要使用标准的资源管理接口。
**变更影响**<br>
如果应用使用拼接路径的形式访问资源文件,会访问失败。需要修改成使用资源管理接口访问资源文件。
**关键的接口/组件变更**<br>
不涉及接口及组件变更
**适配指导**<br>
资源管理子系统提供Js接口访问资源文件。参考[访问资源文件](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-resource-manager.md#getrawfilecontent9)
# 文件管理子系统ChangeLog
## cl.filemanagement.1 environment模块变更
文件管理子系统d.ts归档整改,现统一整改到file一层目录下。environment模块支持错误码处理。
**变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现environment模块支持错误码处理,需注意错误码处理的使用。[相关适配指导参考](../OpenHarmony_3.2.8.1/changelogs-filemanagement.md)
**关键接口/组件变更**
原environment使用的是@ohos.environment,以以下方式import:
```js
import environment from '@ohos.environment';
```
现environment使用的是@ohos.file.environment,以以下方式import:
```js
import environment from '@ohos.file.environment';
```
## cl.filemanagement.2 securityLabel模块变更
文件管理子系统d.ts归档整改,现统一整改到file一层目录下。securityLabel模块支持错误码处理。
**变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现securityLabel模块支持错误码处理,需注意错误码处理的使用。[相关适配指导参考](../OpenHarmony_3.2.8.1/changelogs-filemanagement.md)
**关键接口/组件变更**
原securityLabel使用的是@ohos.securityLabel,以以下方式import:
```js
import securityLabel from '@ohos.securityLabel';
```
现securityLabel使用的是@ohos.file.securityLabel,以以下方式import:
```js
import securityLabel from '@ohos.file.securityLabel';
```
## cl.filemanagement.3 fs模块变更
fs模块下Stat接口ino属性类型变更。
**变更影响**
fs模块下Stat接口ino属性类型变更,由number变更为bigint,以适配文件系统下所有类型文件的inode范围。
**关键接口/组件变更**
原Stat接口ino属性类型为number,现变更为bigint。
## cl.filemanagement.4 fileAccess模块变更
文件管理子系统d.ts归档整改,现统一整改到file一层目录下。fileAccess模块支持错误码处理。
**变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现fileAccess模块支持错误码处理,需注意错误码处理的使用。[相关适配指导参考](../OpenHarmony_3.2.8.1/changelogs-filemanagement.md)
**关键接口/组件变更**
原fileAccess使用的是@ohos.data.fileAccess,以以下方式import:
```js
import fileAccess from '@ohos.data.fileAccess';
```
现fileAccess使用的是@ohos.file.fileAccess,以以下方式import:
```js
import fileAccess from '@ohos.file.fileAccess';
```
## cl.filemanagement.5 fileExtensionInfo模块变更
文件管理子系统d.ts归档整改,现统一整改到file一层目录下。fileExtensionInfo模块支持错误码处理。
**变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现fileExtensionInfo模块支持错误码处理,需注意错误码处理的使用。[相关适配指导参考](../OpenHarmony_3.2.8.1/changelogs-filemanagement.md)
**关键接口/组件变更**
原fileExtensionInfo使用的是@ohos.fileExtensionInfo,以以下方式import:
```js
import fileExtensionInfo from '@ohos.fileExtensionInfo';
```
现fileExtensionInfo使用的是@ohos.file.fileExtensionInfo,以以下方式import:
```js
import fileExtensionInfo from '@ohos.file.fileExtensionInfo';
```
## cl.filemanagement.6 storageStatistics模块变更
文件管理子系统d.ts归档整改,现统一整改到file一层目录下。fileExtensionInfo模块支持错误码处理。
**变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现storageStatistics模块支持错误码处理,需注意错误码处理的使用。[相关适配指导参考](../OpenHarmony_3.2.8.1/changelogs-filemanagement.md)
**关键接口/组件变更**
原storageStatistics使用的是@ohos.storageStatistics,以以下方式import:
```js
import storageStatistics from '@ohos.storageStatistics';
```
现storageStatistics使用的是@ohos.file.storageStatistics,以以下方式import:
```js
import storageStatistics from '@ohos.file.storageStatistics';
```
## cl.filemanagement.7 volumeManager模块变更
文件管理子系统d.ts归档整改,现统一整改到file一层目录下。fileExtensionInfo模块支持错误码处理。
**变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现volumeManager模块支持错误码处理,需注意错误码处理的使用。[相关适配指导参考](../OpenHarmony_3.2.8.1/changelogs-filemanagement.md)
**关键接口/组件变更**
原volumeManager使用的是@ohos.volumeManager,以以下方式import:
```js
import volumeManager from '@ohos.volumeManager';
```
现volumeManager使用的是@ohos.file.volumeManager,以以下方式import:
```js
import volumeManager from '@ohos.file.volumeManager';
```
## cl.filemanagement.8 fileio相关接口异常处理方式变更
file_api部件fileio接口返回值不包含错误码error.code,现进行错误码整改,废弃原有相关接口,新增相关接口。
**变更影响**
基于此前版本开发的应用,需注意废弃接口的迭代更新。新接口在接口规格上进行了微调,需注意新接口使用方法。
**关键接口/组件变更**
为适配统一的API异常处理方式,对fileio相关接口进行废弃,并新增对应接口,原接口位于@ohos.fileio,新接口位于@ohos.file.fs。新增接口支持统一的错误码异常处理规范,功能上与原接口保持一致,参数上有微调,以下为规格调整的接口列表。
废弃与新增方法同名,请在列表中对应查看。
| 模块名 | 方法/属性/枚举/常量 | 变更类型 |
| ------------------------- | ------------------------------------------------------------ | -------- |
| @ohos.fileio | **function** access(path: string, mode?: number, callback?: AsyncCallback\<void>): void \| Promise\<void> | 废弃 |
| @ohos.fileio | **function** accessSync(path: string, mode?: number): void | 废弃 |
| @ohos.file.fs | **function** access(path: string, callback?: AsyncCallback\<boolean>): void \| Promise\<boolean> | 新增 |
| @ohos.file.fs | **function** accessSync(path: string): boolean | 新增 |
| @ohos.fileio | **function** close(fd: number, callback?: AsyncCallback\<void>): void \| Promise\<void> | 废弃 |
| @ohos.fileio | **function** closeSync(fd: number): void | 废弃 |
| @ohos.file.fs | **function** close(file: File \| number, callback?: AsyncCallback\<void>): void \| Promise\<void> | 新增 |
| @ohos.file.fs | **function** closeSync(file: File \| number): void | 新增 |
| @ohos.fileio | **function** mkdir(path: string, mode?: number, callback?: AsyncCallback\<void>): void \| Promise\<void> | 废弃 |
| @ohos.fileio | **function** mkdirSync(path: string, mode?: number): void | 废弃 |
| @ohos.file.fs | **function** mkdir(path: string, callback?: AsyncCallback\<void>): void \| Promise\<void> | 新增 |
| @ohos.file.fs | **function** mkdirSync(path: string): void | 新增 |
| @ohos.fileio | **function** readText(filePath: string, options?: { position?: number; length?: number; encoding?: string; }, callback?: AsyncCallback\<string>): void \| Promise\<string> | 废弃 |
| @ohos.fileio | **function** readTextSync(filePath: string, options?: { position?: number; length?: number; encoding?: string; }): string | 废弃 |
| @ohos.file.fs | **function** readText(filePath: string, options?: { offset?: number; length?: number; encoding?: string; }, callback?: AsyncCallback\<string>): void \| Promise\<string> | 新增 |
| @ohos.file.fs | **function** readTextSync(filePath: string, options?: { offset?: number; length?: number; encoding?: string; }): string | 新增 |
| @ohos.fileio | **function** Stream.read(buffer: ArrayBuffer, options?: { offset?: number; length?: number; position?: number; }, callback?: AsyncCallback\<ReadOut>): void \| Promise\<ReadOut> | 废弃 |
| @ohos.fileio | **function** Stream.readSync(buffer: ArrayBuffer, options?: { offset?: number; length?: number; position?: number; }): number | 废弃 |
| @ohos.file.fs | **function** Stream.read(fd: number, buffer: ArrayBuffer, options?: { offset?: number; length?: number; }, callback?: AsyncCallback\<number>): void \| Promise\<number> | 新增 |
| @ohos.file.fs | **function** Stream.readSync(fd: number, buffer: ArrayBuffer, options?: { offset?: number; length?: number; }): number | 新增 |
| @ohos.fileio | **function** Stream.write(buffer: ArrayBuffer \| string, options?: { offset?: number; length?: number; position?: number; encoding?: string; }, callback?: AsyncCallback\<number>): void \| Promise\<void> | 废弃 |
| @ohos.fileio | **function** Stream.writeSync(buffer: ArrayBuffer \| string, options?: { offset?: number; length?: number; position?: number; encoding?: string; }): number | 废弃 |
| @ohos.file.fs | **function** Stream.write(buffer: ArrayBuffer \| string, options?: { offset?: number; length?: number; encoding?: string; }, callback?: AsyncCallback\<number>): void \| Promise\<void> | 新增 |
| @ohos.file.fs | **function** Stream.writeSync(buffer: ArrayBuffer \| string, options?: { offset?: number; length?: number; encoding?: string; }): number | 新增 |
**适配指导**
@ohos.file.fs新增统一的API异常处理方式,具体示例代码请参考[接口文档](../../../application-dev/reference/apis/js-apis-file-fs.md)
# 输入法框架changeLog
## cl.inputmethod_frameworks.1 API文件名变更
下列模块不符合OpenHarmony接口文件名命名规范。在API9进行变更。
**变更影响**
修改后的SDK与先前已发布版本不兼容,影响在此前版本已开发的应用,应用需要进行适配改动才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
| 模块 | 变更前文件名 | 变更后文件名 |
|------|--------------|--------------|
| 输入法框架模块 | @ohos.inputmethod.d.ts |@ohos.inputMethod.d.ts |
| 输入法服务模块 |@ohos.inputmethodengine.d.ts | @ohos.inputMethodEngine.d.ts |
| 输入法ExtentionAbility模块 | @ohos.inputmethodextensionability.d.ts | @ohos.InputMethodExtensionAbility.d.ts |
| 输入法ExtentionContext模块 |@ohos.inputmethodextensioncontext.d.ts | @ohos.InputMethodExtensionContext.d.ts |
| 输入法子类型模块 | @ohos.inputMethodSubtype.d.ts | @ohos.InputMethodSubtype.d.ts |
**适配指导**
应用中对输入法框架d.ts文件的import后的文件名要写为变更后文件名,即小驼峰/大驼峰命名格式。
如:
```js
import inputMethodEngine from '@ohos.inputMethodEngine';
```
\ No newline at end of file
# 位置服务子系统ChangeLog
## cl.location.1 @ohos.geolocation.d.ts接口迁移到新增的@ohos.geoLocationManager.d.ts
@ohos.geolocation.d.ts接口不支持抛出错误码,为了支持错误码功能,把@ohos.geolocation.d.ts中所有接口,迁移到新增的@ohos.geoLocationManager.d.ts中,并增加错误码描述。
后续需要import @ohos.geoLocationManager才能使用位置服务的接口:
import geoLocationManager from '@ohos.geoLocationManager';
**变更影响**
对位置服务所有接口的使用有影响,需要import @ohos.geoLocationManager才能使用位置服务接口:
import geoLocationManager from '@ohos.geoLocationManager';
**关键的接口/组件变更**
| 类名 | 接口类型 | 接口声明 | 变更类型 |
| -- | -- | -- | -- |
|geolocation| method | function on(type: 'locationChange', request: LocationRequest, callback: Callback<Location>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function off(type: 'locationChange', callback?: Callback<Location>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function on(type: 'locationServiceState', callback: Callback<boolean>): void; | 接口迁移到@ohos.geoLocationManager.d.ts,type: 'locationServiceState'更改为type: 'locationEnabledChange' |
|geolocation| method | function off(type: 'locationServiceState', callback?: Callback<boolean>): void; | 接口迁移到@ohos.geoLocationManager.d.ts,type: 'locationServiceState'更改为type: 'locationEnabledChange' |
|geolocation| method | function on(type: 'cachedGnssLocationsReporting', request: CachedGnssLocationsRequest, callback: Callback<Array<Location>>): void; | 接口迁移到@ohos.geoLocationManager.d.ts,type: 'cachedGnssLocationsReporting'更改为type: 'cachedGnssLocationsChange' |
|geolocation| method | function off(type: 'cachedGnssLocationsReporting', callback?: Callback<Array<Location>>): void; | 接口迁移到@ohos.geoLocationManager.d.ts,type: 'cachedGnssLocationsReporting'更改为type: 'cachedGnssLocationsChange' |
|geolocation| method | function on(type: 'gnssStatusChange', callback: Callback<SatelliteStatusInfo>): void; | 接口迁移到@ohos.geoLocationManager.d.ts,type: 'gnssStatusChange'更改为type: 'satelliteStatusChange' |
|geolocation| method | function off(type: 'gnssStatusChange', callback?: Callback<SatelliteStatusInfo>): void; | 接口迁移到@ohos.geoLocationManager.d.ts,type: 'gnssStatusChange'更改为type: 'satelliteStatusChange' |
|geolocation| method | function on(type: 'nmeaMessageChange', callback: Callback<string>): void; | 接口迁移到@ohos.geoLocationManager.d.ts,type: 'nmeaMessageChange'更改为type: 'nmeaMessage' |
|geolocation| method | function off(type: 'nmeaMessageChange', callback?: Callback<string>): void; | 接口迁移到@ohos.geoLocationManager.d.ts,type: 'nmeaMessageChange'更改为type: 'nmeaMessage' |
|geolocation| method | function on(type: 'fenceStatusChange', request: GeofenceRequest, want: WantAgent): void; | 接口迁移到@ohos.geoLocationManager.d.ts,type: 'fenceStatusChange'更改为type: 'gnssFenceStatusChange' |
|geolocation| method | function off(type: 'fenceStatusChange', request: GeofenceRequest, want: WantAgent): void; | 接口迁移到@ohos.geoLocationManager.d.ts,type: 'fenceStatusChange'更改为type: 'gnssFenceStatusChange' |
|geolocation| method | function getCurrentLocation(request: CurrentLocationRequest, callback: AsyncCallback<Location>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function getCurrentLocation(callback: AsyncCallback<Location>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function getCurrentLocation(request?: CurrentLocationRequest): Promise<Location>; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function getLastLocation(callback: AsyncCallback<Location>): void; | 接口迁移到@ohos.geoLocationManager.d.ts,更改为function getLastLocation(): Location; |
|geolocation| method | function getLastLocation(): Promise<Location>; | 接口迁移到@ohos.geoLocationManager.d.ts,更改为function getLastLocation(): Location; |
|geolocation| method | function isLocationEnabled(callback: AsyncCallback<boolean>): void; | 接口迁移到@ohos.geoLocationManager.d.ts,更改为function isLocationEnabled(): boolean; |
|geolocation| method | function isLocationEnabled(): Promise<boolean>; | 接口迁移到@ohos.geoLocationManager.d.ts,更改为function isLocationEnabled(): boolean; |
|geolocation| method | function requestEnableLocation(callback: AsyncCallback<boolean>): void; | 接口删除 |
|geolocation| method | function requestEnableLocation(): Promise<boolean>; | 接口删除 |
|geolocation| method | function enableLocation(callback: AsyncCallback<boolean>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function enableLocation(): Promise<boolean>; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function disableLocation(callback: AsyncCallback<boolean>): void; | 接口迁移到@ohos.geoLocationManager.d.ts,更改为function disableLocation(): void; |
|geolocation| method | function disableLocation(): Promise<boolean>; | 接口迁移到@ohos.geoLocationManager.d.ts,更改为function disableLocation(): void; |
|geolocation| method | function getAddressesFromLocation(request: ReverseGeoCodeRequest, callback: AsyncCallback<Array<GeoAddress>>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function getAddressesFromLocation(request: ReverseGeoCodeRequest): Promise<Array<GeoAddress>>; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function getAddressesFromLocationName(request: GeoCodeRequest, callback: AsyncCallback<Array<GeoAddress>>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function getAddressesFromLocationName(request: GeoCodeRequest): Promise<Array<GeoAddress>>; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function isGeoServiceAvailable(callback: AsyncCallback<boolean>): void; | 接口迁移到@ohos.geoLocationManager.d.ts,更改为function isGeocoderAvailable(): boolean; |
|geolocation| method | function isGeoServiceAvailable(): Promise<boolean>; | 接口迁移到@ohos.geoLocationManager.d.ts,更改为function isGeocoderAvailable(): boolean; |
|geolocation| method | function getCachedGnssLocationsSize(callback: AsyncCallback<number>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function getCachedGnssLocationsSize(): Promise<number>; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function flushCachedGnssLocations(callback: AsyncCallback<boolean>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function flushCachedGnssLocations(): Promise<boolean>; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function sendCommand(command: LocationCommand, callback: AsyncCallback<boolean>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function sendCommand(command: LocationCommand): Promise<boolean>; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function enableLocationMock(callback: AsyncCallback<void>): void; | 接口迁移到@ohos.geoLocationManager.d.ts,更改为function enableLocationMock(): void; |
|geolocation| method | function enableLocationMock(): Promise<void>; | 接口迁移到@ohos.geoLocationManager.d.ts,更改为function enableLocationMock(): void; |
|geolocation| method | function disableLocationMock(callback: AsyncCallback<void>): void; | 接口迁移到@ohos.geoLocationManager.d.ts,更改为function disableLocationMock(): void; |
|geolocation| method | function disableLocationMock(): Promise<void>; | 接口迁移到@ohos.geoLocationManager.d.ts,更改为function disableLocationMock(): void; |
|geolocation| method | function setMockedLocations(config: LocationMockConfig, callback: AsyncCallback<void>): void; | 接口迁移到@ohos.geoLocationManager.d.ts,更改为function setMockedLocations(config: LocationMockConfig): void; |
|geolocation| method | function setMockedLocations(config: LocationMockConfig): Promise<void>; | 接口迁移到@ohos.geoLocationManager.d.ts,更改为function setMockedLocations(config: LocationMockConfig): void; |
|geolocation| method | function enableReverseGeocodingMock(callback: AsyncCallback<void>): void; | 接口迁移到@ohos.geoLocationManager.d.ts,更改为function enableReverseGeocodingMock(): void; |
|geolocation| method | function enableReverseGeocodingMock(): Promise<void>; | 接口迁移到@ohos.geoLocationManager.d.ts,更改为function enableReverseGeocodingMock(): void; |
|geolocation| method | function disableReverseGeocodingMock(callback: AsyncCallback<void>): void; | 接口迁移到@ohos.geoLocationManager.d.ts,更改为function disableReverseGeocodingMock(): void; |
|geolocation| method | function disableReverseGeocodingMock(): Promise<void>; | 接口迁移到@ohos.geoLocationManager.d.ts,更改为function disableReverseGeocodingMock(): void; |
|geolocation| method | function setReverseGeocodingMockInfo(mockInfos: Array<ReverseGeocodingMockInfo>, callback: AsyncCallback<void>): void; | 接口迁移到@ohos.geoLocationManager.d.ts,更改为function setReverseGeocodingMockInfo(mockInfos: Array<ReverseGeocodingMockInfo>): void; |
|geolocation| method | function setReverseGeocodingMockInfo(mockInfos: Array<ReverseGeocodingMockInfo>): Promise<void>; | 接口迁移到@ohos.geoLocationManager.d.ts,更改为function setReverseGeocodingMockInfo(mockInfos: Array<ReverseGeocodingMockInfo>): void; |
|geolocation| method | function isLocationPrivacyConfirmed(type: LocationPrivacyType, callback: AsyncCallback<boolean>): void; | 接口迁移到@ohos.geoLocationManager.d.ts,更改为function isLocationPrivacyConfirmed(type: LocationPrivacyType): boolean; |
|geolocation| method | function isLocationPrivacyConfirmed(type: LocationPrivacyType,): Promise<boolean>; | 接口迁移到@ohos.geoLocationManager.d.ts,更改为function isLocationPrivacyConfirmed(type: LocationPrivacyType): boolean; |
|geolocation| method | function setLocationPrivacyConfirmStatus(type: LocationPrivacyType, isConfirmed: boolean, callback: AsyncCallback<void>): void; | 接口迁移到@ohos.geoLocationManager.d.ts,更改为function setLocationPrivacyConfirmStatus(type: LocationPrivacyType, isConfirmed: boolean): void; |
|geolocation| method | function setLocationPrivacyConfirmStatus(type: LocationPrivacyType, isConfirmed: boolean): Promise<void>; | 接口迁移到@ohos.geoLocationManager.d.ts,更改为function setLocationPrivacyConfirmStatus(type: LocationPrivacyType, isConfirmed: boolean): void; |
|geolocation| interface | SatelliteStatusInfo | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| interface | CachedGnssLocationsRequest | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| interface | GeofenceRequest | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| interface | Geofence | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| interface | ReverseGeoCodeRequest | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| interface | GeoCodeRequest | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| interface | GeoAddress | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| interface | LocationRequest | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| interface | CurrentLocationRequest | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| interface | Location | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| enum | LocationRequestPriority | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| enum | LocationRequestScenario | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| enum | GeoLocationErrorCode | 接口废弃 |
|geolocation| enum | LocationPrivacyType | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| enum | LocationCommand | 接口迁移到@ohos.geoLocationManager.d.ts |
**适配指导(可选,不涉及则可以删除)**
以enableLocation为例,在新版本上需要使用如下方式进行调用:
```ts
import geoLocationManager from '@ohos.geoLocationManager';
try {
geoLocationManager.enableLocation((err, data) => {
if (err) {
console.log('enableLocation: err=' + JSON.stringify(err));
}
});
} catch (err) {
console.error("errCode:" + err.code + ",errMessage:" + err.message);
}
```
\ No newline at end of file
# 位置服务子系统ChangeLog
## cl.location.1 @ohos.geolocation.d.ts接口迁移到新增的@ohos.geoLocationManager.d.ts
@ohos.geolocation.d.ts接口不支持抛出错误码,为了支持错误码功能,把@ohos.geolocation.d.ts中所有接口,迁移到新增的@ohos.geoLocationManager.d.ts中,并增加错误码描述。
后续需要import @ohos.geoLocationManager才能使用位置服务的接口:
import geoLocationManager from '@ohos.geoLocationManager';
**变更影响**
对位置服务所有接口的使用有影响,需要import @ohos.geoLocationManager才能使用位置服务接口:
import geoLocationManager from '@ohos.geoLocationManager';
**关键的接口/组件变更**
| 类名 | 接口类型 | 接口声明 | 变更类型 |
| -- | -- | -- | -- |
|geolocation| namespace | declare namespace geolocation| 迁移到@ohos.geoLocationManager.d.ts,使用namespace geoLocationManager代替 |
|geolocation| method | function on(type: 'locationChange', request: LocationRequest, callback: Callback<Location>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function off(type: 'locationChange', callback?: Callback<Location>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function on(type: 'locationServiceState', callback: Callback<boolean>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function off(type: 'locationServiceState', callback?: Callback<boolean>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function on(type: 'cachedGnssLocationsReporting', request: CachedGnssLocationsRequest, callback: Callback<Array<Location>>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function off(type: 'cachedGnssLocationsReporting', callback?: Callback<Array<Location>>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function on(type: 'gnssStatusChange', callback: Callback<SatelliteStatusInfo>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function off(type: 'gnssStatusChange', callback?: Callback<SatelliteStatusInfo>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function on(type: 'nmeaMessageChange', callback: Callback<string>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function off(type: 'nmeaMessageChange', callback?: Callback<string>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function on(type: 'fenceStatusChange', request: GeofenceRequest, want: WantAgent): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function off(type: 'fenceStatusChange', request: GeofenceRequest, want: WantAgent): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function getCurrentLocation(request: CurrentLocationRequest, callback: AsyncCallback<Location>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function getCurrentLocation(callback: AsyncCallback<Location>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function getCurrentLocation(request?: CurrentLocationRequest): Promise<Location>; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function getLastLocation(callback: AsyncCallback<Location>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function getLastLocation(): Promise<Location>; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function isLocationEnabled(callback: AsyncCallback<boolean>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function isLocationEnabled(): Promise<boolean>; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function requestEnableLocation(callback: AsyncCallback<boolean>): void; | 接口删除 |
|geolocation| method | function requestEnableLocation(): Promise<boolean>; | 接口删除 |
|geolocation| method | function enableLocation(callback: AsyncCallback<boolean>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function enableLocation(): Promise<boolean>; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function disableLocation(callback: AsyncCallback<boolean>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function disableLocation(): Promise<boolean>; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function getAddressesFromLocation(request: ReverseGeoCodeRequest, callback: AsyncCallback<Array<GeoAddress>>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function getAddressesFromLocation(request: ReverseGeoCodeRequest): Promise<Array<GeoAddress>>; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function getAddressesFromLocationName(request: GeoCodeRequest, callback: AsyncCallback<Array<GeoAddress>>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function getAddressesFromLocationName(request: GeoCodeRequest): Promise<Array<GeoAddress>>; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function isGeoServiceAvailable(callback: AsyncCallback<boolean>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function isGeoServiceAvailable(): Promise<boolean>; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function getCachedGnssLocationsSize(callback: AsyncCallback<number>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function getCachedGnssLocationsSize(): Promise<number>; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function flushCachedGnssLocations(callback: AsyncCallback<boolean>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function flushCachedGnssLocations(): Promise<boolean>; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function sendCommand(command: LocationCommand, callback: AsyncCallback<boolean>): void; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| method | function sendCommand(command: LocationCommand): Promise<boolean>; | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| interface | SatelliteStatusInfo | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| interface | CachedGnssLocationsRequest | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| interface | GeofenceRequest | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| interface | Geofence | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| interface | ReverseGeoCodeRequest | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| interface | GeoCodeRequest | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| interface | GeoAddress | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| interface | LocationRequest | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| interface | CurrentLocationRequest | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| interface | Location | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| enum | LocationRequestPriority | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| enum | LocationRequestScenario | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| enum | GeoLocationErrorCode | 接口废弃 |
|geolocation| enum | LocationPrivacyType | 接口迁移到@ohos.geoLocationManager.d.ts |
|geolocation| enum | LocationCommand | 接口迁移到@ohos.geoLocationManager.d.ts |
**适配指导(可选,不涉及则可以删除)**
以enableLocation为例,在新版本上需要使用如下方式进行调用:
```ts
import geoLocationManager from '@ohos.geoLocationManager';
try {
geoLocationManager.enableLocation((err, data) => {
if (err) {
console.log('enableLocation: err=' + JSON.stringify(err));
}
});
} catch (err) {
console.error("errCode:" + err.code + ",errMessage:" + err.message);
}
```
\ No newline at end of file
# 位置服务子系统ChangeLog
## cl.location.1 @system.geolocation.d.ts接口迁移到新增的@ohos.geoLocationManager.d.ts
@system.geolocation.d.ts接口不支持抛出错误码,为了支持错误码功能,把@system.geolocation.d.ts中所有接口,迁移到新增的@ohos.geoLocationManager.d.ts中,并增加错误码描述。
后续需要import @ohos.geoLocationManager才能使用位置服务的接口:
import geoLocationManager from '@ohos.geoLocationManager';
**变更影响**
对位置服务所有接口的使用有影响,需要import @ohos.geoLocationManager才能使用位置服务接口:
import geoLocationManager from '@ohos.geoLocationManager';
**关键的接口/组件变更**
| 类名 | 接口类型 | 接口声明 | 变更类型 |
| -- | -- | -- | -- |
|Geolocation| class | Geolocation | 接口迁移到@ohos.geoLocationManager.d.ts,使用ohos.geoLocationManager/geoLocationManager代替 |
|Geolocation| interface | static getLocation(options?: GetLocationOption): void; | 接口迁移到@ohos.geoLocationManager.d.ts,使用ohos.geoLocationManager/geoLocationManager.getCurrentLocation代替 |
|Geolocation| interface | static getLocationType(options?: GetLocationTypeOption): void; | 接口废弃 |
|Geolocation| interface | static subscribe(options: SubscribeLocationOption): void; | 接口迁移到@ohos.geoLocationManager.d.ts,使用ohos.geoLocationManager/geoLocationManager.on#event:locationChange代替 |
|Geolocation| interface | static unsubscribe(): void; | 接口迁移到@ohos.geoLocationManager.d.ts,使用ohos.geoLocationManager/geoLocationManager.off#event:locationChange代替 |
|Geolocation| interface | static getSupportedCoordTypes(): Array<string>; | 接口废弃 |
|| interface | GeolocationResponse| 迁移到@ohos.geoLocationManager.d.ts,使用ohos.geoLocationManager/geoLocationManager.Location代替 |
|| interface | GetLocationOption | 接口迁移到@ohos.geoLocationManager.d.ts,使用ohos.geoLocationManager/geoLocationManager.CurrentLocationRequest代替 |
|| interface | GetLocationTypeResponse | 接口废弃 |
|| interface | GetLocationTypeOption | 接口废弃 |
|| interface | SubscribeLocationOption | 接口迁移到@ohos.geoLocationManager.d.ts,使用ohos.geoLocationManager/geoLocationManager.LocationRequest代替 |
**适配指导(可选,不涉及则可以删除)**
以enableLocation为例,在新版本上需要使用如下方式进行调用:
```ts
import geoLocationManager from '@ohos.geoLocationManager';
try {
geoLocationManager.enableLocation((err, data) => {
if (err) {
console.log('enableLocation: err=' + JSON.stringify(err));
}
});
} catch (err) {
console.error("errCode:" + err.code + ",errMessage:" + err.message);
}
```
\ No newline at end of file
# 用户IAM子系统Changelog
## cl.useriam.1 API9返回值命名变更
用户IAM API9的返回值枚举类类名发生变更,从 ResultCodeV9 更名为 UserAuthResultCode
**变更影响**
基于此版本以前开发的应用不受影响,以后的需适配错误码的类名,否则会影响业务逻辑。
**关键接口/组件变更**
无接口/组件变更
**适配指导**
需要修改返回值调用类名从 ResultCodeV9 改为 UserAuthResultCode
\ No newline at end of file
# 窗口子系统ChangeLog
## cl.window.1 WindowStage生命周期监听类型名称变更
WindowStage生命周期的监听类型枚举定义自3.2.10.5版本起进行了变更。
**变更影响**
3.2.10.5版本之前使用FOREGROUND/BACKGROUND类型开发的应用生命周期监听,在3.2.10.5版本之后失效。
**关键接口/组件变更**
## WindowStageEventType<sup>9+</sup>
变更前:
| 名称 | 值 | 说明 |
| ---------- | ---- | ---------- |
| FOREGROUND | 1 | 切到前台。 |
| BACKGROUND | 4 | 切到后台。 |
变更后:
| 名称 | 值 | 说明 |
| ------ | ---- | ---------- |
| SHOWN | 1 | 切到前台。 |
| HIDDEN | 4 | 切到后台。 |
**适配指导**
在注册生命周期监听回调时,将前后台事件类型改为SHOWN/HIDDEN:
```
import Ability from '@ohos.application.Ability';
class myAbility extends Ability {
onWindowStageCreate(windowStage) {
console.log('onWindowStageCreate');
try {
windowStage.on('windowStageEvent', (stageEventType) => {
switch (stageEventType) {
case window.WindowStageEventType.SHOWN:
console.log("windowStage shown");
break;
case window.WindowStageEventType.ACTIVE:
console.log("windowStage active");
break;
case window.WindowStageEventType.INACTIVE:
console.log("windowStage inActive");
break;
case window.WindowStageEventType.HIDDEN:
console.log("windowStage hidden");
break;
default:
break;
}
} )
} catch (exception) {
console.error('Failed to enable the listener for window stage event changes. Cause:' +
JSON.stringify(exception));
};
}
};
```
# 元能力子系统ChangeLog
## cl.ability.1 appRecovery接口中RestartFlag属性名称变更,删除了未支持的属性
appRecovery接口中RestartFlag枚举命名从特定故障发生后**不重启**改成了特定故障发生后**重启**
删除了CPP_CRASH_NO_RESTART。
**变更影响**
3.2.10.6版本之前使用CPP_CRASH_NO_RESTART/JS_CRASH_NO_RESTART/APP_FREEZE_NO_RESTART类型开发的应用,在3.2.10.6版本之后行为会发生变化。
**关键接口/组件变更**
**RestartFlag** <sup>9+</sup>
变更前:
| 名称 | 值 | 说明 |
| ----------------------------- | ---- | ------------------------------------------------------------ |
| ALWAYS_RESTART | 0 | 总是重启应用。 |
| CPP_CRASH_NO_RESTART | 0x0001 | 发生CPP_CRASH时**不重启**应用。 |
| JS_CRASH_NO_RESTART | 0x0002 | 发生JS_CRASH时**不重启**应用。 |
| APP_FREEZE_NO_RESTART | 0x0004 | 发生APP_FREEZE时**不重启**应用。 |
| NO_RESTART | 0xFFFF | 总是不重启应用。 |
变更后:
| 名称 | 值 | 说明 |
| ---------- | ---- | ---------- |
| ALWAYS_RESTART | 0 | 总是重启应用。 |
| CPP_CRASH_NO_RESTART | NA | **删除**,不支持该场景的重启。 |
| RESTART_WHEN_JS_CRASH | 0x0001 | 发生JS_CRASH时**重启**应用。 |
| RESTART_WHEN_APP_FREEZE | 0x0002 | 发生APP_FREEZE时**重启**应用。 |
| NO_RESTART | 0xFFFF | 总是不重启应用。 |
**适配指导**
按新的语义进行适配。
\ No newline at end of file
# 文件子系统ChangeLog
## cl.file.1 mediaLibrary相关接口变更
multimedia 部件 mediaLibrary所有接口废弃。
**变更影响**
[mediaLibrary](../../../application-dev/reference/apis/js-apis-medialibrary.md)所有接口废弃。系统只对三方应用开放公共目录下文件资源选择和保存功能,由[FilePicker](../../../application-dev/reference/apis/js-apis-file-picker.md)提供能力。
基于此前版本开发的应用,需注意废弃接口的迭代更新。
**关键接口/组件变更**
以下为可以使用FilePicker替代的接口。
| 模块名 | 方法/属性/枚举/常量 | 变更类型 |
| ------------------------- | ------------------------------------------------------------ | -------- |
| medialibrary | **function** getMediaLibrary(context: Context): MediaLibrary; | 废弃 |
| medialibrary | **function** getFileAssets(options: MediaFetchOptions, callback: AsyncCallback\<FetchFileResult\>): void | 废弃 |
| medialibrary | **function** getFileAssets(options: MediaFetchOptions): Promise\<FetchFileResult\> | 废弃 |
| medialibrary | **function** createAsset(mediaType: MediaType, displayName: string, relativePath: string, callback: AsyncCallback\<FileAsset\>): void | 废弃 |
| medialibrary | **function** createAsset(mediaType: MediaType, displayName: string, relativePath: string): Promise\<FileAsset\> | 废弃 |
| medialibrary | **function** getPublicDirectory(type: DirectoryType, callback: AsyncCallback\<string\>): void | 废弃 |
| medialibrary | **function** getPublicDirectory(type: DirectoryType): Promise\<string\> | 废弃 |
| medialibrary | **function** release(callback: AsyncCallback\<void\>): void | 废弃 |
| medialibrary | **function** release(): Promise\<void\> | 废弃 |
| medialibrary | **function** FileAsset.open(mode: string, callback: AsyncCallback\<number\>): void | 废弃 |
| medialibrary | **function** FileAsset.open(mode: string): Promise\<number\> | 废弃 |
| medialibrary | **function** FileAsset.close(fd: number, callback: AsyncCallback\<void\>): void | 废弃 |
| medialibrary | **function** FileAsset.close(fd: number): Promise\<void\> | 废弃 |
| medialibrary | **function** FetchFileResult.getCount(): number | 废弃 |
| medialibrary | **function** FetchFileResult.isAfterLast(): boolean | 废弃 |
| medialibrary | **function** FetchFileResult.close(): void | 废弃 |
| medialibrary | **function** FetchFileResult.getFirstObject(callback: AsyncCallback\<FileAsset\>): void | 废弃 |
| medialibrary | **function** FetchFileResult.getFirstObject(): Promise\<FileAsset\> | 废弃 |
| medialibrary | **function** FetchFileResult.getNextObject(callback: AsyncCallback\<FileAsset\>): void | 废弃 |
| medialibrary | **function** FetchFileResult.getNextObject(): Promise\<FileAsset\> | 废弃 |
| medialibrary | **function** FetchFileResult.getLastObject(callback: AsyncCallback\<FileAsset\>): void | 废弃 |
| medialibrary | **function** FetchFileResult.getLastObject(): Promise\<FileAsset\> | 废弃 |
| medialibrary | **function** FetchFileResult.getPositionObject(index: number, callback: AsyncCallback\<FileAsset\>): void | 废弃 |
| medialibrary | **function** FetchFileResult.getPositionObject(index: number): Promise\<FileAsset\> | 废弃 |
| medialibrary | **function** FetchFileResult.getAllObject(callback: AsyncCallback\<Array\<FileAsset\>\>): void | 废弃 |
| medialibrary | **function** FetchFileResult.getAllObject(): Promise\<Array\<FileAsset\>\> | 废弃 |
| medialibrary | **function** Album.getFileAssets(options: MediaFetchOptions, callback: AsyncCallback\<FetchFileResult\>): void | 废弃 |
| medialibrary | **function** Album.getFileAssets(options?: MediaFetchOptions): Promise\<FetchFileResult\> | 废弃 |
| medialibrary | **enum** FileKey | 废弃 |
| medialibrary | **enum** DirectoryType | 废弃 |
| medialibrary | **enum** MediaType | 废弃 |
| medialibrary | **interface** MediaFetchOptions | 废弃 |
| medialibrary | **interface** FileAsset | 废弃 |
**适配指导**
**使用mediaLibrary接口编辑公共目录下的文件示例:**
1. 使用getMediaLibrary接口获取媒体库实例。
2. 创建MediaFetchOptions检索条件使用mediaLibrary实例调用getFileAssets接口获取公共目录下的文件。
3. 使用FetchFileResult相应接口获取目的文件的fileAsset。
4. 使用fileAsset.open接口打开这个文件得到fd。
5. 通过fd使用[fs.writeSync](../../../application-dev/reference/apis/js-apis-file-fs.md#writesync)接口对这个文件进行编辑修改。
6. 修改完成后使用fileAsset.close接口关闭这个文件的fd。
7. 使用fetchFileResult.close接口释放getFileAssets时占用的资源。
8. 使用release接口释放媒体库实例。
**示例:**
```js
import mediaLibrary from '@ohos.multimedia.mediaLibrary';
import fs from '@ohos.file.fs';
async function example() {
try {
let context = getContext(this);
let media = mediaLibrary.getMediaLibrary(context);
let fileKeyObj = mediaLibrary.FileKey;
let imageType = mediaLibrary.MediaType.IMAGE;
let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + ' DESC',
};
const fetchFileResult = await media.getFileAssets(getImageOp);
const fileAsset = await fetchFileResult.getFirstObject();
console.info('mediaLibrary fileAsset displayName: ' + fileAsset.displayName);
let fd = await fileAsset.open('rw');
console.info('mediaLibrary fileAsset open fd: ' + fd);
let writeLen = fs.writeSync(fd, 'hello, world');
console.info('write data to file succeed and size is: ' + writeLen);
fileAsset.close(fd);
fetchFileResult.close();
media.release();
} catch (err) {
console.error('mediaLibrary fail, err: ' + err);
}
}
```
**使用FilePicker编辑公共目录下的文件示例:**
1. 获取DocumentViewPicker文件选择器对象。
2. 拉起DocumentViewPicker.select接口选择目的文件。
3. 用户选择完后返回目的文件的uri。
4. 待界面从DocumentViewPicker返回后在其他函数中使用[fs.openSync](../../../application-dev/reference/apis/js-apis-file-fs.md#fsopensync)接口通过uri打开这个文件得到fd。
5. 通过fd使用[fs.writeSync](../../../application-dev/reference/apis/js-apis-file-fs.md#writesync)接口对这个文件进行编辑修改。
6. 编辑修改完毕后使用[fs.closeSync](../../../application-dev/reference/apis/js-apis-file-fs.md#closesync)接口关闭这个fd。
**示例:**
```js
import mediaLibrary from '@ohos.multimedia.mediaLibrary';
import picker from '@ohos.file.picker';
import fs from '@ohos.file.fs';
let uri;
async function example() {
try {
let DocumentSelectOptions = new picker.DocumentSelectOptions();
let documentPicker = new picker.DocumentViewPicker();
documentPicker.select(DocumentSelectOptions).then((DocumentSelectResult) => {
console.info('DocumentViewPicker.select successfully, DocumentSelectResult uri: ' + JSON.stringify(DocumentSelectResult));
uri = DocumentSelectResult[0];
}).catch((err) => {
console.error('DocumentViewPicker.select failed with err: ' + err);
});
} catch (err) {
console.error('DocumentViewPicker failed with err: ' + err);
}
}
async function writeFile() {
try {
let file = fs.openSync(uri, fs.OpenMode.READ_WRITE);
console.info('DocumentViewPicker file fd: ' + file.fd);
let writeLen = fs.writeSync(file.fd, 'hello, world');
console.info('write data to file succeed and size is: ' + writeLen);
fs.closeSync(file);
} catch (err) {
console.error('DocumentViewPicker fail, err: ' + err);
}
}
```
**使用mediaLibrary接口在公共目录下创建文件示例:**
1. 使用getMediaLibrary接口获取媒体库实例。
2. 使用getPublicDirectory接口获取公共目录路径。
3. 使用createAsset接口创建文件得到这个文件的fileAsset。
4. 使用fileAsset.open接口打开这个文件得到fd。
5. 通过fd使用fs.write接口对这个文件进行编辑修改。
6. 修改完成后使用fileAsset.close接口关闭这个文件的fd。
7. 使用release接口释放媒体库实例。
**示例:**
```js
import mediaLibrary from '@ohos.multimedia.mediaLibrary';
import fs from '@ohos.file.fs';
async function example() {
try {
let context = getContext(this);
let media = mediaLibrary.getMediaLibrary(context);
let mediaType = mediaLibrary.MediaType.FILE;
let DIR_DOWNLOAD = mediaLibrary.DirectoryType.DIR_DOWNLOAD;
const path = await media.getPublicDirectory(DIR_DOWNLOAD);
const fileAsset = await media.createAsset(mediaType, 'test.txt', path);
console.info('mediaLibrary fileAsset displayName: ' + fileAsset.displayName);
let fd = await fileAsset.open('rw');
console.info('mediaLibrary fileAsset open fd: ' + fd);
let writeLen = fs.writeSync(fd, 'hello, world');
console.info('write data to file succeed and size is: ' + writeLen);
fileAsset.close(fd);
media.release();
} catch (err) {
console.error('mediaLibrary fail, err: ' + err);
}
}
```
**使用FilePicker在公共目录下创建文件示例:**
1. 获取DocumentViewPicker文件选择器对象。
2. 拉起DocumentViewPicker.save接口创建保存一个空的文件。
3. 用户保存完后返回目的文件的uri。
4. 待界面从DocumentViewPicker返回后在其他函数中使用[fs.openSync](../../../application-dev/reference/apis/js-apis-file-fs.md#fsopensync)接口通过uri打开这个文件得到fd。
5. 通过fd使用[fs.writeSync](../../../application-dev/reference/apis/js-apis-file-fs.md#writesync)接口对这个文件进行编辑修改。
6. 编辑修改完毕后使用[fs.closeSync](../../../application-dev/reference/apis/js-apis-file-fs.md#closesync)接口关闭这个fd。
**示例:**
```js
import mediaLibrary from '@ohos.multimedia.mediaLibrary';
import picker from '@ohos.file.picker';
import fs from '@ohos.file.fs';
let uri;
async function example() {
try {
let DocumentSaveOptions = new picker.DocumentSaveOptions();
DocumentSaveOptions.newFileNames = ['DocumentViewPicker01.txt'];
let documentPicker = new picker.DocumentViewPicker();
documentPicker.save(DocumentSaveOptions).then((DocumentSaveResult) => {
console.info('DocumentViewPicker.save successfully, DocumentSaveResult uri: ' + JSON.stringify(DocumentSaveResult));
uri = DocumentSaveResult[0];
}).catch((err) => {
console.error('DocumentViewPicker.save failed with err: ' + err);
});
} catch (err) {
console.error('DocumentViewPicker failed with err: ' + err);
}
}
async function writeFile() {
try {
let file = fs.openSync(uri, fs.OpenMode.READ_WRITE);
console.info('DocumentViewPicker file fd: ' + file.fd);
let writeLen = fs.writeSync(file.fd, 'hello, world');
console.info('write data to file succeed and size is: ' + writeLen);
fs.closeSync(file);
} catch (err) {
console.error('DocumentViewPicker fail, err: ' + err);
}
}
```
**关键接口/组件变更**
medialibrary以下废弃接口由于功能管控,不对三方应用开放,无替代接口。
| 模块名 | 方法/属性/枚举/常量 | 变更类型 |
| ------------------------- | ------------------------------------------------------------ | -------- |
| medialibrary | **function** getMediaLibrary(): MediaLibrary; | 废弃 |
| medialibrary | **function** on(type: 'deviceChange'\|'albumChange'\|'imageChange'\|'audioChange'\|'videoChange'\|'fileChange'\|'remoteFileChange', callback: Callback\<void\>): void | 废弃 |
| medialibrary | **function** off(type: 'deviceChange'\|'albumChange'\|'imageChange'\|'audioChange'\|'videoChange'\|'fileChange'\|'remoteFileChange', callback?: Callback\<void\>): void | 废弃 |
| medialibrary | **function** deleteAsset(uri: string): Promise\<void\> | 废弃 |
| medialibrary | **function** deleteAsset(uri: string, callback: AsyncCallback\<void\>): void | 废弃 |
| medialibrary | **function** storeMediaAsset(option: MediaAssetOption, callback: AsyncCallback\<string\>): void | 废弃 |
| medialibrary | **function** storeMediaAsset(option: MediaAssetOption): Promise\<string\> | 废弃 |
| medialibrary | **function** startImagePreview(images: Array\<string\>, index: number, callback: AsyncCallback\<void\>): void | 废弃 |
| medialibrary | **function** startImagePreview(images: Array\<string\>, callback: AsyncCallback\<void\>): void | 废弃 |
| medialibrary | **function** startImagePreview(images: Array\<string\>, index?: number): Promise\<void\> | 废弃 |
| medialibrary | **function** startMediaSelect(option: MediaSelectOption, callback: AsyncCallback\<Array\<string\>\>): void | 废弃 |
| medialibrary | **function** startMediaSelect(option: MediaSelectOption): Promise\<Array\<string\>\> | 废弃 |
| medialibrary | **function** getActivePeers(): Promise\<Array\<PeerInfo\>\>; | 废弃 |
| medialibrary | **function** getActivePeers(callback: AsyncCallback\<Array\<PeerInfo\>\>): void; | 废弃 |
| medialibrary | **function** getAllPeers(): Promise\<Array\<PeerInfo\>\>; | 废弃 |
| medialibrary | **function** FileAsset.isDirectory(callback: AsyncCallback\<boolean\>): void | 废弃 |
| medialibrary | **function** FileAsset.isDirectory():Promise\<boolean\> | 废弃 |
| medialibrary | **function** FileAsset.commitModify(callback: AsyncCallback\<void\>): void | 废弃 |
| medialibrary | **function** FileAsset.commitModify(): Promise\<void\> | 废弃 |
| medialibrary | **function** FileAsset.getThumbnail(callback: AsyncCallback\<image.PixelMap\>): void | 废弃 |
| medialibrary | **function** FileAsset.getThumbnail(size: Size, callback: AsyncCallback\<image.PixelMap\>): void | 废弃 |
| medialibrary | **function** FileAsset.getThumbnail(size?: Size): Promise\<image.PixelMap\> | 废弃 |
| medialibrary | **function** FileAsset.favorite(isFavorite: boolean, callback: AsyncCallback\<void\>): void | 废弃 |
| medialibrary | **function** FileAsset.favorite(isFavorite: boolean): Promise\<void\> | 废弃 |
| medialibrary | **function** FileAsset.isFavorite(callback: AsyncCallback\<boolean\>): void | 废弃 |
| medialibrary | **function** FileAsset.isFavorite():Promise\<boolean\> | 废弃 |
| medialibrary | **function** FileAsset.trash(isTrash: boolean, callback: AsyncCallback\<void\>): void | 废弃 |
| medialibrary | **function** FileAsset.trash(isTrash: boolean): Promise\<void\> | 废弃 |
| medialibrary | **function** FileAsset.isTrash(callback: AsyncCallback\<boolean\>): void | 废弃 |
| medialibrary | **function** FileAsset.isTrash():Promise\<boolean\> | 废弃 |
| medialibrary | **function** getAlbums(options: MediaFetchOptions, callback: AsyncCallback\<Array\<Album\>\>): void | 废弃 |
| medialibrary | **function** getAlbums(options: MediaFetchOptions): Promise\<Array\<Album\>\> | 废弃 |
| medialibrary | **function** Album.commitModify(callback: AsyncCallback\<void\>): void | 废弃 |
| medialibrary | **function** Album.commitModify(): Promise\<void\> | 废弃 |
| medialibrary | **enum** DeviceType | 废弃 |
| medialibrary | **interface** PeerInfo | 废弃 |
| medialibrary | **interface** Size | 废弃 |
| medialibrary | **interface** MediaAssetOption | 废弃 |
| medialibrary | **interface** MediaSelectOption | 废弃 |
\ No newline at end of file
# 上传下载子系统ChangeLog
## cl.request.2 request上传下载接口变更
- 删除API9-beta接口:
1. function download(context: BaseContext, config: DownloadConfig, callback: AsyncCallback<DownloadTask>): void;
2. function download(context: BaseContext, config: DownloadConfig): Promise<DownloadTask>;
3. function upload(context: BaseContext, config: UploadConfig, callback: AsyncCallback<UploadTask>): void;
4. function upload(context: BaseContext, config: UploadConfig): Promise<UploadTask>;
**变更影响**
基于此前版本使用Stage模式开发的应用,需适配变更后的接口,否则会影响原有业务逻辑。
**关键的接口/组件变更**
| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
|--------------|--------------|-------------------------------------------------------------------------------------------------------------------|------|
| ohos.request | request | function download(context: BaseContext, config: DownloadConfig, callback: AsyncCallback<DownloadTask>): void; | 删除 |
| ohos.request | request | function download(context: BaseContext, config: DownloadConfig): Promise<DownloadTask>; | 删除 |
| ohos.request | request | function upload(context: BaseContext, config: UploadConfig, callback: AsyncCallback<UploadTask>): void; | 删除 |
| ohos.request | request | function upload(context: BaseContext, config: UploadConfig): Promise<UploadTask>; | 删除 |
**适配指导**
以download为例,在新版本上需要使用downloadFile, 如下方式进行调用:
```ts
try {
request.downloadFile(globalThis.abilityContext, { url: 'https://xxxx/xxxxx.hap',
filePath: 'xxx/xxxxx.hap'}, (err, data) => {
if (err) {
console.error('Failed to request the download. Cause: ' + JSON.stringify(err));
return;
}
});
} catch (err) {
console.log("downloadFile callback fail." + "errCode:" + err.code + ",errMessage:" + err.message);
}
```
\ No newline at end of file
# 电话子系统ChangeLog
## cl.telephony.1 radio模块接口变更
### 电话子系统radio模块 `isNrSupported` 接口存在变更:
NR是专有名词,需要全部大写。
开发者需要根据以下说明对应用进行适配。
**变更影响**
基于此前版本开发的应用,需适配变更的js接口,变更前的接口已经不能正常使用了,否则会影响原有功能。
**关键的接口/组件变更**
- 涉及接口
isNrSupported(): boolean;
isNrSupported(slotId: number): boolean;
- 变更前:
```js
function isNrSupported(): boolean;
function isNrSupported(slotId: number): boolean;
```
- 变更后:
```js
function isNRSupported(): boolean;
function isNRSupported(slotId: number): boolean;
```
**适配指导**
使用变更后的接口,示例代码如下:
```js
let result = radio.isNrSupported();
console.log("Result: "+ result);
```
```js
let slotId = 0;
let result = radio.isNRSupported(slotId);
console.log("Result: "+ result);
```
# 资源调度子系统ChangeLog
## cl.resourceschedule.workScheduler
修改parameters属性值的数据类型,不允许使用any类型,支持number、string、boolean三种类型。
**变更影响**
基于OpenHarmony3.2.10.7及之后的SDK版本开发的应用,parameters属性值的数据类型不允许使用any类型,仅支持number、string、boolean三种类型,否则将编译报错。
**关键接口/组件变更**
@ohos.resourceschedule.workScheduler.d.ts中的parameters属性变更。
| 类名 | 接口类型 | 变更前声明 | 变更后声明 |
| -- | -- | -- | -- |
| workScheduler.WorkInfo | field | parameters?: {[key: string]: any} | parameters?: {[key: string]: number | string | boolean} |
**适配指导**<br>
parameters属性使用{[key: string]: number | string | boolean}数据类型。
\ No newline at end of file
# 电话子系统ChangeLog
## cl.telephony.1 call模块reject接口变更
从API9开始,废弃此接口,改为使用rejectCall接口。
开发者需要根据以下说明对应用进行适配。
**变更影响**
该接口删除无法再使用,请使用新增的接口rejectCall替换,否则会影响原有功能。
- 涉及接口
```js
function reject(callId: number, callback: AsyncCallback<void>): void;
function reject(callId: number, options: RejectMessageOptions, callback: AsyncCallback<void>): void;
function reject(callId?: number, options?: RejectMessageOptions): Promise<void>;
function reject(callback: AsyncCallback<void>): void;
function reject(options: RejectMessageOptions, callback: AsyncCallback<void>): void;
```
- 变更前:
```js
function reject(callId: number, callback: AsyncCallback<void>): void;
function reject(callId: number, options: RejectMessageOptions, callback: AsyncCallback<void>): void;
function reject(callId?: number, options?: RejectMessageOptions): Promise<void>;
function reject(callback: AsyncCallback<void>): void;
function reject(options: RejectMessageOptions, callback: AsyncCallback<void>): void;
```
- 变更后:
```js
function rejectCall(callId: number, callback: AsyncCallback<void>): void;
function rejectCall(callId: number, options: RejectMessageOptions, callback: AsyncCallback<void>): void;
function rejectCall(callId?: number, options?: RejectMessageOptions): Promise<void>;
function rejectCall(callback: AsyncCallback<void>): void;
function rejectCall(options: RejectMessageOptions, callback: AsyncCallback<void>): void;
```
**适配指导**
该接口删除无法再使用,请使用新增的接口rejectCall替换。
使用变更后的接口,示例代码如下:
```js
call.rejectCall("138xxxxxxxx", (err, data) => {
console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});
```
```js
let rejectMessageOptions={
messageContent: "拦截陌生号码"
}
let promise = call.rejectCall(1, rejectMessageOptions);
promise.then(data => {
console.log(`rejectCall success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
console.error(`rejectCall fail, promise: err->${JSON.stringify(err)}`);
});
```
```js
let rejectMessageOptions={
messageContent: "拦截陌生号码"
}
let promise = call.rejectCall(1, rejectMessageOptions);
promise.then(data => {
console.log(`rejectCall success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
console.error(`rejectCall fail, promise: err->${JSON.stringify(err)}`);
});
```
```js
call.rejectCall((err, data) => {
console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});
```
```js
let rejectMessageOptions={
messageContent: "拦截陌生号码"
}
call.rejectCall(rejectMessageOptions, (err, data) => {
console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});
```
## cl.telephony.2 call模块answer接口变更
从API9开始,废弃此接口,改为使answerCall接口。
开发者需要根据以下说明对应用进行适配。
**变更影响**
该接口删除无法再使用,请使用新增的接口answerCall替换,否则会影响原有功能。
- 涉及接口
```js
function answer(callId: number, callback: AsyncCallback<void>): void;
function answer(callId?: number): Promise<void>;
function answer(callback: AsyncCallback<void>): void;
```
- 变更前:
```js
function answer(callId: number, callback: AsyncCallback<void>): void;
function answer(callId?: number): Promise<void>;
function answer(callback: AsyncCallback<void>): void;
```
- 变更后:
```js
function answerCall(callId: number, callback: AsyncCallback<void>): void;
function answerCall(callId?: number): Promise<void>;
function answerCall(callback: AsyncCallback<void>): void;
```
**适配指导**
该接口删除无法再使用,请使用新增的接口answerCall替换。
使用变更后的接口,示例代码如下:
```js
call.answerCall(1, (err, data) => {
console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});
```
```js
let promise = call.answerCall(1);
promise.then(data => {
console.log(`answerCall success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
console.error(`answerCall fail, promise: err->${JSON.stringify(err)}`);
});
```
```js
call.answerCall((err, data) => {
console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});
```
## cl.telephony.1 call模块hangup接口变更
从API9开始,废弃此接口,改为使用hangUpCall接口。
开发者需要根据以下说明对应用进行适配。
**变更影响**
该接口删除无法再使用,请使用新增的接口hangUpCall替换,否则会影响原有功能。
- 涉及接口
```js
function hangup(callId: number, callback: AsyncCallback<void>): void;
function hangup(callId?: number): Promise<void>;
function hangup(callback: AsyncCallback<void>): void;
```
- 变更前:
```js
function hangup(callId: number, callback: AsyncCallback<void>): void;
function hangup(callId?: number): Promise<void>;
function hangup(callback: AsyncCallback<void>): void;
```
- 变更后:
```js
function hangUpCall(callId: number, callback: AsyncCallback<void>): void;
function hangUpCall(callId?: number): Promise<void>;
function hangUpCall(callback: AsyncCallback<void>): void;
```
**适配指导**
该接口删除无法再使用,请使用新增的接口hangUpCall替换。
使用变更后的接口,示例代码如下:
```js
call.hangUpCall(1, (err, data) => {
console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});
```
```js
let promise = call.hangUpCall(1);
promise.then(data => {
console.log(`hangUpCall success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
console.error(`hangUpCall fail, promise: err->${JSON.stringify(err)}`);
});
```
```js
call.hangUpCall((err, data) => {
console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});
```
\ No newline at end of file
# web子系统ChangeLog
OpenHarmony 3.2.10.7 版本相较于OpenHarmony 之前的版本,web的API变更如下。
## cl.web.1 HitTestTypeV9命名变更
枚举类HitTestTypeV9由于命名规范问题,名称变更为WebHitTestType。
**变更影响**
枚举类HitTestTypeV9,以及使用HitTestTypeV9作为参数或返回值的接口,在3.2.10.7版本及后续版本中无法继续正常使用。
**关键的接口/组件变更**
- 涉及接口
enum HitTestTypeV9
- 变更前:
```ts
enum HitTestTypeV9
```
- 变更后:
```ts
enum WebHitTestType
```
**适配指导**
请使用WebHitTestType替换HitTestTypeV9。
## cl.web.2 HeaderV9命名变更
结构体HeaderV9由于命名规范问题,名称变更为WebHeader。
**变更影响**
结构体HeaderV9,以及使用HeaderV9作为参数或返回值的接口,在3.2.10.7版本及后续版本中无法继续正常使用。
**关键的接口/组件变更**
- 涉及接口
interface HeaderV9
- 变更前:
```ts
interface HeaderV9
```
- 变更后:
```ts
interface WebHeader
```
**适配指导**
请使用WebHeader替换HeaderV9。
## cl.web.3 HitTestValue结构体成员类型变更
结构体HitTestValue中的成员变量HitTestTypeV9由于命名规范问题,名称变更为WebHitTestType。
**变更影响**
结构体HitTestValue,以及使用HitTestValue作为参数或返回值的接口,在3.2.10.7版本及后续版本中无法继续正常使用。
**关键的接口/组件变更**
- 涉及接口
interface HitTestValue
- 变更前:
```ts
interface HitTestValue {
/**
* Get the hit test type.
*
* @since 9
*/
type: HitTestTypeV9;
/**
* Get the hit test extra data.
*
* @since 9
*/
extra: string;
}
```
- 变更后:
```ts
interface HitTestValue {
/**
* Get the hit test type.
*
* @since 9
*/
type: WebHitTestType;
/**
* Get the hit test extra data.
*
* @since 9
*/
extra: string;
}
```
**适配指导**
请使用WebHitTestType替换HitTestTypeV9。
## cl.web.4 loadUrl参数类型变更
loadUrl接口中的参数headers,由于其类型的命名规范问题,类型变更为WebHeader。
**变更影响**
loadUrl接口若使用了headers参数,则在3.2.10.7版本及后续版本中无法继续正常使用。
**关键的接口/组件变更**
- 涉及接口
loadUrl(url: string | Resource, headers?: Array<HeaderV9>): void
- 变更前:
```ts
loadUrl(url: string | Resource, headers?: Array<HeaderV9>): void
```
- 变更后:
```ts
loadUrl(url: string | Resource, headers?: Array<WebHeader>): void
```
**适配指导**
在loadUrl中设置headers参数时,请使用WebHeader类型替换HeaderV9类型。
## cl.web.5 getHitTest返回值类型变更
getHitTest接口中的返回值,由于其类型的命名规范问题,变更为WebHitTest。
**变更影响**
getHitTest接口,在3.2.10.7版本及后续版本中无法继续正常使用。
**关键的接口/组件变更**
- 涉及接口
getHitTest(): HitTestTypeV9
- 变更前:
```ts
getHitTest(): HitTestTypeV9
```
- 变更后:
```ts
getHitTest(): WebHitTestType
```
**适配指导**
在使用getHitTest接口的返回值时,请使用WebHitTestType类型替换HitTestTypeV9类型。
## cl.web.6 WebMessagePort类迁移
WebMessagePort类迁移至@ohos.web.webview.d.ts,并新增错误码抛出。
**变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现该类下接口支持错误码处理,需注意错误码处理的使用。
**关键的接口/组件变更**
- 涉及接口
postMessageEvent(message: WebMessageEvent): void;
onMessageEvent(callback: (result: string) => void): void;
- 变更前:
```ts
postMessageEvent(message: WebMessageEvent): void;
onMessageEvent(callback: (result: string) => void): void;
```
- 变更后:
```ts
postMessageEvent(message: WebMessage): void;
onMessageEvent(callback: (result: WebMessage) => void): void;
```
**适配指导**
原WebMessagePort类不需要import,现WebMessagePort类使用的是@ohos.web.webview,以下方式import:
```ts
import web_webview from '@ohos.web.webview';
```
## cl.web.7 HitTestValue类迁移
HitTestValue类迁移至@ohos.web.webview.d.ts,HitTestValue类变更为接口,getType,getExtra变更为属性。
**变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。
**关键的接口/组件变更**
- 涉及接口
getType(): HitTestType;
getExtra(): string;
- 变更前:
```ts
getType(): HitTestType;
getExtra(): string;
```
- 变更后:
```ts
type: WebHitTestType;
extra: string;
```
**适配指导**
原HitTestValue类不需要import,现HitTestValue类使用的是@ohos.web.webview,以下方式import:
```ts
import web_webview from '@ohos.web.webview';
```
## cl.web.8 WebCookie类下api9接口迁移
WebCookie类下api9接口迁移,WebCookie类下api9接口迁移到web.webview.webview.WebCookieManager。
并新增接口错误码抛出。
**变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现该类下接口支持错误码处理,需注意错误码处理的使用。
该类方法变为静态方法。
**关键的接口/组件变更**
- 涉及接口
isCookieAllowed(): boolean;
isThirdPartyCookieAllowed(): boolean;
putAcceptCookieEnabled(accept: boolean): void;
putAcceptThirdPartyCookieEnabled(accept: boolean): void;
setCookie(url: string, value: string): boolean;
saveCookieSync(): boolean;
getCookie(url: string): string;
existCookie(): boolean;
deleteEntireCookie(): void;
deleteSessionCookie(): void;
- 变更前:
```ts
isCookieAllowed(): boolean;
isThirdPartyCookieAllowed(): boolean;
putAcceptCookieEnabled(accept: boolean): void;
putAcceptThirdPartyCookieEnabled(accept: boolean): void;
setCookie(url: string, value: string): boolean;
saveCookieSync(): boolean;
getCookie(url: string): string;
existCookie(): boolean;
deleteEntireCookie(): void;
deleteSessionCookie(): void;
```
- 变更后:
```ts
static isCookieAllowed(): boolean;
static isThirdPartyCookieAllowed(): boolean;
static putAcceptCookieEnabled(accept: boolean): void;
static putAcceptThirdPartyCookieEnabled(accept: boolean): void;
static setCookie(url: string, value: string): void;
static saveCookieAsync(): Promise<void>;
static saveCookieAsync(callback: AsyncCallback<void>): void;
static getCookie(url: string): string;
static existCookie(): boolean;
static deleteEntireCookie(): void;
static deleteSessionCookie(): void;
```
**适配指导**
原WebCookie类不需要import,现WebCookieManager使用的是@ohos.web.webview,以下方式import:
```ts
import web_webview from '@ohos.web.webview';
```
## cl.web.9 WebController类下api9接口迁移
WebController类下api9接口迁移至web.webview.webview.WebviewController,并新增接口错误码抛出。
**变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现该类下接口支持错误码处理,需注意错误码处理的使用。
getDefaultUserAgent接口更名为getUserAgent。
**关键的接口/组件变更**
- 涉及接口
zoomIn(): boolean;
zoomOut(): boolean;
createWebMessagePorts(): Array<WebMessagePort>;
postMessage(options: { message: WebMessageEvent, uri: string}): void;
getHitTestValue(): HitTestValue;
getWebId(): number;
getDefaultUserAgent(): string;
getTitle(): string;
getPageHeight(): number;
backOrForward(step: number): void;
searchAllAsync(searchString: string): void;
clearMatches(): void;
searchNext(forward: boolean): void;
clearSslCache(): void;
clearClientAuthenticationCache(): void;
getUrl(): string;
- 变更前:
```ts
zoomIn(): boolean;
zoomOut(): boolean;
createWebMessagePorts(): Array<WebMessagePort>;
postMessage(options: { message: WebMessageEvent, uri: string}): void;
getHitTestValue(): HitTestValue;
getWebId(): number;
getDefaultUserAgent(): string;
getTitle(): string;
getPageHeight(): number;
backOrForward(step: number): void;
searchAllAsync(searchString: string): void;
clearMatches(): void;
searchNext(forward: boolean): void;
clearSslCache(): void;
clearClientAuthenticationCache(): void;
getUrl(): string;
```
- 变更后:
```ts
zoomIn(): void;
zoomOut(): void;
createWebMessagePorts(): Array<WebMessagePort>;
postMessage(name: string, ports: Array<WebMessagePort>, uri: string): void;
getHitTestValue(): HitTestValue;
getWebId(): number;
getUserAgent(): string;
getTitle(): string;
getPageHeight(): number;
backOrForward(step: number): void;
searchAllAsync(searchString: string): void;
clearMatches(): void;
searchNext(forward: boolean): void;
clearSslCache(): void;
clearClientAuthenticationCache(): void;
getUrl(): string;
```
**适配指导**
原WebController类不需要import,现WebviewController类使用的是@ohos.web.webview,以下方式import:
```ts
import web_webview from '@ohos.web.webview';
```
## cl.web.10 WebAsyncController类迁移
WebAsyncController类下接口迁移至web.webview.webview.WebviewController,并新增接口错误码抛出。
**变更影响**
基于此前版本开发的应用,需注意错误码处理的使用。
**关键的接口/组件变更**
- 涉及接口
storeWebArchive(baseName: string, autoName: boolean): Promise<string>;
storeWebArchive(baseName: string, autoName: boolean, callback : AsyncCallback<string>): void;
- 变更前:
```ts
storeWebArchive(baseName: string, autoName: boolean): Promise<string>;
storeWebArchive(baseName: string, autoName: boolean, callback : AsyncCallback<string>): void;
```
- 变更后:
```ts
storeWebArchive(baseName: string, autoName: boolean): Promise<string>;
storeWebArchive(baseName: string, autoName: boolean, callback : AsyncCallback<string>): void;
```
**适配指导**
使用示例:
```ts
// xxx.ets
import web_webview from '@ohos.web.webview'
@Entry
@Component
struct WebComponent {
controller: web_webview.WebviewController = new web_webview.WebviewController();
build() {
Column() {
Button('saveWebArchive')
.onClick(() => {
try {
this.controller.storeWebArchive("/data/storage/el2/base/", true, (error, filename) => {
if (error) {
console.info(`save web archive error: ` + JSON.stringify(error))
return;
}
if (filename != null) {
console.info(`save web archive success: ${filename}`)
}
});
} catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`);
}
})
Web({ src: 'www.example.com', controller: this.controller })
}
}
}
```
## cl.web.11 删除webDebuggingAccess接口
该接口定义不合理,该属性对所有web实例生效的,属于全局配置。用本次新增的接口setWebDebuggingAccess替换。
**变更影响**
该接口删除无法再使用,请使用新增的接口setWebDebuggingAccess替换。
**关键的接口/组件变更**
| 类名 | 接口类型 | 接口声明 | 变更类型 |
| -- | -- | -- | -- |
|WebAttribute | method | webDebugggingAccess(webDebugggingAccess: boolean): WebAttribute| 删除 |
**适配指导**
该接口删除无法再使用,请使用新增的接口setWebDebuggingAccess替换。
## cl.web.12 新增setWebDebuggingAccess接口
WebviewController提供静态方法来设置调试模式开关,该设置对所有web实例生效。
**变更影响**
原有webDebugggingAccess属性定义不合理,因此新增该静态接口来设置调试模式开关。应用侧需要使用该接口来打开调试模式开关。
**关键的接口/组件变更**
| 类名 | 接口类型 | 接口声明 | 变更类型 |
| -- | -- | -- | -- |
|webview.WebviewController | method | static setWebDebugggingAccess(webDebugggingAccess: boolean): void| 新增 |
**适配指导**
以打开调试开关为例,示例代码如下:
```ts
// xxx.ets
import web_webview from '@ohos.web.webview';
@Entry
@Component
struct WebComponent {
controller: web_webview.WebviewController = new web_webview.WebviewController();
aboutToAppear():void {
try {
web_webview.WebviewController.setWebDebuggingAccess(true);
} catch(error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`);
}
}
build() {
Column() {
Web({ src: 'www.example.com', controller: this.controller })
}
}
}
```
\ No newline at end of file
# 元能力子系统JS API变更Changelog
## cl.ability.1 AreaMode接口变更
AreaMode接口有多个重复,删除掉重复的AreaMode。
**变更影响**
影响API9版本的JS接口,应用需要进行适配才可以在新版本SDK环境正常实现功能。
**关键的接口/组件变更**
| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
| ------------------------- | ------------------- | ------------------------------------------------------------ | -------- |
| @ohos.app.ability.common.d.ts | common.AreaMode | | 删除 |
| application/Context.d.ts | AreaMode | | 删除 |
**适配指导**
使用@ohos.app.ability.contextConstant.d.ts中的AreaMode
```ts
import contextConstant from '@ohos.app.ability.contextConstant';
let area: contextConstant.AreaMode = contextConstant.AreaMode.EL1;
```
## cl.ability.2 killProcessesBySelf接口变更
killProcessesBySelf接口命名不合理,修改为killAllProcesses。
**变更影响**
影响API9版本的JS接口,应用需要进行适配才可以在新版本SDK环境正常实现功能。
**关键接口/组件变更**
| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
| ------------------------------ | ------------------ | ----------------------------------------------------- | -------- |
| application/ApplicationContext | ApplicationContext | killProcessesBySelf(): Promise\<void\>; | 删除 |
| application/ApplicationContext | ApplicationContext | killProcessesBySelf(callback: AsyncCallback\<void\>); | 删除 |
| application/ApplicationContext | ApplicationContext | killAllProcesses(): Promise\<void\>; | 新增 |
| application/ApplicationContext | ApplicationContext | killAllProcesses(callback: AsyncCallback\<void\>); | 新增 |
**适配指导**
应用中调用killProcessesBySelf可参考下列代码
变更前代码:
```ts
let context: common.UIAbilityContext = globalThis.abilityContext;
let appContext = context.getApplicationContext();
appContext.killProcessesBySelf()
```
变更后代码:
```ts
let context: common.UIAbilityContext = globalThis.abilityContext;
let appContext = context.getApplicationContext();
appContext.killAllProcesses()
```
## cl.ability.3 getProcessRunningInformation接口变更
getProcessRunningInformation接口命名不合理,修改为getRunningProcessInformation。
**变更影响**
影响API9版本的JS接口,应用需要进行适配才可以在新版本SDK环境正常实现功能。
**关键接口/组件变更**
| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
| ----------------------------------- | ------------------ | ------------------------------------------------------------ | -------- |
| @ohos.app.ability.appManager.d.ts | appManager | function getProcessRunningInformation(): Promise\<Array\<ProcessRunningInformation\>\>; | 删除 |
| @ohos.app.ability.appManager.d.ts | appManager | function getProcessRunningInformation(callback: AsyncCallback\<Array\<ProcessRunningInformation\>\>): void; | 删除 |
| @ohos.app.ability.appManager.d.ts | appManager | function getRunningProcessInformation(): Promise\<Array\<ProcessInformation\>\>; | 新增 |
| @ohos.app.ability.appManager.d.ts | appManager | function getRunningProcessInformation(callback: AsyncCallback\<Array\<ProcessInformation\>\>): void; | 新增 |
| application/ApplicationContext.d.ts | ApplicationContext | getProcessRunningInformation(): Promise\<Array\<ProcessRunningInformation\>\>; | 删除 |
| application/ApplicationContext.d.ts | ApplicationContext | getProcessRunningInformation(callback: AsyncCallback\<Array\<ProcessRunningInformation\>\>): void; | 删除 |
| application/ApplicationContext.d.ts | ApplicationContext | getRunningProcessInformation(): Promise\<Array\<ProcessInformation\>\>; | 新增 |
| application/ApplicationContext.d.ts | ApplicationContext | getRunningProcessInformation(callback: AsyncCallback\<Array\<ProcessInformation\>\>): void; | 新增 |
**适配指导**
应用中调用getProcessRunningInformation可参考下列代码
变更前代码:
```ts
let context: common.UIAbilityContext = globalThis.abilityContext;
let appContext = context.getApplicationContext();
appContext.getProcessRunningInformation()
```
变更后代码:
```ts
let context: common.UIAbilityContext = globalThis.abilityContext;
let appContext = context.getApplicationContext();
appContext.getRunningProcessInformation()
```
## cl.ability.4 WantConstant.Flags接口变更
WantConstant.Flags接口有多个无效Flag定义,删除掉无效的Flag。
**变更影响**
影响API9版本的JS接口,应用需要进行适配才可以在新版本SDK环境正常实现功能。
**关键的接口/组件变更**
| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
| ------------------------- | ------------------- | ------------------------------------------------------------ | -------- |
| @ohos.app.ability.wantConstant.d.ts | wantConstant.Flags | FLAG_ABILITY_FORWARD_RESULT | 删除 |
| @ohos.app.ability.wantConstant.d.ts | wantConstant.Flags | FLAG_ABILITY_CONTINUATION | 删除 |
| @ohos.app.ability.wantConstant.d.ts | wantConstant.Flags | FLAG_NOT_OHOS_COMPONENT | 删除 |
| @ohos.app.ability.wantConstant.d.ts | wantConstant.Flags | FLAG_ABILITY_FORM_ENABLED | 删除 |
| @ohos.app.ability.wantConstant.d.ts | wantConstant.Flags | FLAG_AUTH_PERSISTABLE_URI_PERMISSION | 删除 |
| @ohos.app.ability.wantConstant.d.ts | wantConstant.Flags | FLAG_AUTH_PREFIX_URI_PERMISSION | 删除 |
| @ohos.app.ability.wantConstant.d.ts | wantConstant.Flags | FLAG_ABILITYSLICE_MULTI_DEVICE | 删除 |
| @ohos.app.ability.wantConstant.d.ts | wantConstant.Flags | FLAG_START_FOREGROUND_ABILITY | 删除 |
| @ohos.app.ability.wantConstant.d.ts | wantConstant.Flags | FLAG_ABILITY_CONTINUATION_REVERSIBLE | 删除 |
| @ohos.app.ability.wantConstant.d.ts | wantConstant.Flags | FLAG_INSTALL_WITH_BACKGROUND_MODE | 删除 |
| @ohos.app.ability.wantConstant.d.ts | wantConstant.Flags | FLAG_ABILITY_CLEAR_MISSION | 删除 |
| @ohos.app.ability.wantConstant.d.ts | wantConstant.Flags | FLAG_ABILITY_NEW_MISSION | 删除 |
| @ohos.app.ability.wantConstant.d.ts | wantConstant.Flags | FLAG_ABILITY_MISSION_TOP | 删除 |
## cl.ability.5 WantConstant.Action接口变更
WantConstant.Action接口有多个无效Action定义,删除掉无效的Action。
**变更影响**
影响API9版本的JS接口,应用需要进行适配才可以在新版本SDK环境正常实现功能。
**关键的接口/组件变更**
| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
| ------------------------- | ------------------- | ------------------------------------------------------------ | -------- |
| @ohos.app.ability.wantConstant.d.ts | wantConstant.Action | ACTION_APP_ACCOUNT_AUTH | 删除 |
| @ohos.app.ability.wantConstant.d.ts | wantConstant.Action | ACTION_MARKET_DOWNLOAD | 删除 |
| @ohos.app.ability.wantConstant.d.ts | wantConstant.Action | ACTION_MARKET_CROWDTEST | 删除 |
| @ohos.app.ability.wantConstant.d.ts | wantConstant.Action | DLP_PARAMS_SANDBOX | 删除 |
| @ohos.app.ability.wantConstant.d.ts | wantConstant.Action | DLP_PARAMS_BUNDLE_NAME | 删除 |
| @ohos.app.ability.wantConstant.d.ts | wantConstant.Action | DLP_PARAMS_MODULE_NAME | 删除 |
| @ohos.app.ability.wantConstant.d.ts | wantConstant.Action | DLP_PARAMS_ABILITY_NAME | 删除 |
## cl.ability.6 Caller相关接口变更
Caller相关接口使用RPC废弃的Sequenceable和MessageParcel对象,使用RPC在API9提供的Parcelable和MessageSequence对象替代。
**变更影响**
影响API9版本的JS接口,应用需要进行适配才可以在新版本SDK环境正常实现功能。
**关键的接口/组件变更**
| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
| ------------------------- | ------------------- | ------------------------------------------------------------ | -------- |
| api/@ohos.app.ability.UIAbility.d.ts | CalleeCallback | (indata: rpc.MessageParcel): rpc.Sequenceable; | 变更,修改为 (indata: rpc.MessageSequence): rpc.Parcelable; |
| api/@ohos.app.ability.UIAbility.d.ts | Caller | call(method: string, data: rpc.Sequenceable): Promise<void>; | 变更,修改为 call(method: string, data: rpc.Parcelable): Promise<void>; |
| api/@ohos.app.ability.UIAbility.d.ts | Caller | callWithResult(method: string, data: rpc.Sequenceable): Promise<rpc.MessageParcel>; | 变更,修改为 callWithResult(method: string, data: rpc.Parcelable): Promise<rpc.MessageSequence>; |
**适配指导**
应用中调用Caller相关接口可参考下列代码
变更前代码:
```ts
class MyMessageAble{
name:""
str:""
num: 1
constructor(name, str) {
this.name = name;
this.str = str;
}
marshalling(messageParcel) {
messageParcel.writeInt(this.num);
messageParcel.writeString(this.str);
console.log('MyMessageAble marshalling num[' + this.num + '] str[' + this.str + ']');
return true;
}
unmarshalling(messageParcel) {
this.num = messageParcel.readInt();
this.str = messageParcel.readString();
console.log('MyMessageAble unmarshalling num[' + this.num + '] str[' + this.str + ']');
return true;
}
};
let method = 'call_Function';
function funcCallBack(pdata) {
console.log('Callee funcCallBack is called ' + pdata);
let msg = new MyMessageAble("test", "");
pdata.readSequenceable(msg);
return new MyMessageAble("test1", "Callee test");
}
export default class MainUIAbility extends UIAbility {
onCreate(want, launchParam) {
console.log('Callee onCreate is called');
try {
this.callee.on(method, funcCallBack);
} catch (error) {
console.log('Callee.on catch error, error.code: ' + error.code +
' error.message: ' + error.message);
}
}
}
```
变更后代码:
```ts
class MyMessageAble{
name:""
str:""
num: 1
constructor(name, str) {
this.name = name;
this.str = str;
}
marshalling(messageSequence) {
messageSequence.writeInt(this.num);
messageSequence.writeString(this.str);
console.log('MyMessageAble marshalling num[' + this.num + '] str[' + this.str + ']');
return true;
}
unmarshalling(messageSequence) {
this.num = messageSequence.readInt();
this.str = messageSequence.readString();
console.log('MyMessageAble unmarshalling num[' + this.num + '] str[' + this.str + ']');
return true;
}
};
let method = 'call_Function';
function funcCallBack(pdata) {
console.log('Callee funcCallBack is called ' + pdata);
let msg = new MyMessageAble("test", "");
pdata.readParcelable(msg);
return new MyMessageAble("test1", "Callee test");
}
export default class MainUIAbility extends UIAbility {
onCreate(want, launchParam) {
console.log('Callee onCreate is called');
try {
this.callee.on(method, funcCallBack);
} catch (error) {
console.log('Callee.on catch error, error.code: ' + error.code +
' error.message: ' + error.message);
}
}
}
```
## cl.ability.7 WantConstant.Flags接口变更
wantConstant接口有两个类似的枚举,合并成一个。
**变更影响**
影响API9版本的JS接口,应用需要进行适配才可以在新版本SDK环境正常实现功能。
**关键的接口/组件变更**
| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
| ----------------------------------- | ---------------------- | ----------------------------------- | -------- |
| @ohos.app.ability.wantConstant.d.ts | wantConstant.Parameter | ABILITY_BACK_TO_OTHER_MISSION_STACK | 删除 |
| @ohos.app.ability.wantConstant.d.ts | wantConstant.Params | ABILITY_BACK_TO_OTHER_MISSION_STACK | 新增 |
**适配指导**
使用@ohos.app.ability.wantConstant.d.ts中的ABILITY_BACK_TO_OTHER_MISSION_STACK
```ts
import wantConstant from '@ohos.app.ability.wantConstant';
let backToOtherMissionStack: wantConstant.Params = wantParam.Params.ABILITY_BACK_TO_OTHER_MISSION_STACK;
```
\ No newline at end of file
# arkui子系统ChangeLog
## cl.arkui.1 getInspectorTree接口返回值从string修改为Object。
**变更影响**
3.2.10.7之前使用getInspectorTree接口的代码需要适配
**关键的接口/组件变更**
getInspectorTree接口返回值从string修改为Object
**适配指导**
将getInspectorTree返回值作为string使用的代码需要修改,比如以下示例代码:
```typescript
console.info(getInspectorTree())
```
需要修改成
```typescript
console.info(JSON.stringify(getInspectorTree()))
```
## cl.arkui.2 废弃GridItem的forceRebuild属性
**变更影响**
无,该属性无作用
**关键的接口/组件变更**
GridItem的forceRebuild属性废弃
**适配指导**
如有使用可以直接删除,不影响GridItem功能
## cl.arkui.3 Plugin模块接口变更
### 1. arkui子系统Plugin模块 `PluginComponentTemplate` 接口存在变更:
ability命名无法准确表达对应参数的语义,修改为bundleName。
开发者需要根据以下说明对应用进行适配。
**变更影响**
基于此前版本开发的应用,需适配变更接口,变更前的接口已经不能正常使用,会在编译过程中报错。
**关键的接口/组件变更**
- 涉及接口
interface PluginComponentTemplate {
source: string;
bundleName: string;
}
interface PluginComponentInterface {
(value: { template: PluginComponentTemplate; data: any }): PluginComponentAttribute;
}
- 变更前:
```js
interface PluginComponentTemplate { source: string; ability: string; }
interface PluginComponentInterface {
(value: { template: PluginComponentTemplate; data: any }): PluginComponentAttribute;
}
```
- 变更后:
```js
interface PluginComponentTemplate { source: string; bundleName: string; }
interface PluginComponentInterface {
(value: { template: PluginComponentTemplate; data: any }): PluginComponentAttribute;
}
```
**适配指导**
使用变更后的接口,示例代码如下:
- 变更前:
```js
PluginComponent({
template: { source: 'plugincomponent1', ability: 'com.example.plugin' },
data: { 'countDownStartValue': 'new countDownStartValue' }
}).size({ width: 500, height: 100 })
```
- 变更后:
```js
PluginComponent({
template: { source: 'plugincomponent1', bundleName: 'com.example.plugin' },
data: { 'countDownStartValue': 'new countDownStartValue' }
}).size({ width: 500, height: 100 })
```
### 2. arkui子系统Plugin模块 `pluginComponentManager` 接口存在变更:
want命名无法准确表达对应参数的语义,修改为target。
开发者需要根据以下说明对应用进行适配。
**变更影响**
基于此前版本开发的应用,需适配变更接口。变更前的接口会出现告警,虽然可以通过编译,但是已经不能正常使用其功能。
**关键的接口/组件变更**
- 涉及接口
interface PushParameterForStage {
owner: Want;
target: Want;
name: string;
data: KVObject;
extraData: KVObject;
jsonPath?: string;
}
function push(param: PushParameterForStage, callback: AsyncCallback<void>): void;
interface RequestParameterForStage {
owner: Want;
target: Want;
name: string;
data: KVObject;
jsonPath?: string;
}
function request(param: RequestParameterForStage, callback: AsyncCallback<RequestCallbackParameters>): void;
- 变更前:
```js
interface PushParameterForStage {
owner: Want;
want: Want;
name: string;
data: KVObject;
extraData: KVObject;
jsonPath?: string;
}
function push(param: PushParameterForStage, callback: AsyncCallback<void>): void;
interface RequestParameterForStage {
owner: Want;
want: Want;
name: string;
data: KVObject;
jsonPath?: string;
}
function request(param: RequestParameterForStage, callback: AsyncCallback<RequestCallbackParameters>): void;
```
- 变更后:
```js
interface PushParameterForStage {
owner: Want;
target: Want;
name: string;
data: KVObject;
extraData: KVObject;
jsonPath?: string;
}
function push(param: PushParameterForStage, callback: AsyncCallback<void>): void;
interface RequestParameterForStage {
owner: Want;
target: Want;
name: string;
data: KVObject;
jsonPath?: string;
}
function request(param: RequestParameterForStage, callback: AsyncCallback<RequestCallbackParameters>): void;
```
**适配指导**
使用变更后的接口,示例代码如下:
- 变更前:
```js
import pluginComponentManager from '@ohos.pluginComponent'
pluginComponentManager.push({
owner:{
bundleName:"com.example.provider",
abilityName:"com.example.provider.MainAbility"
},
want: {
bundleName: "com.example.provider",
abilityName: "com.example.provider.MainAbility",
},
name: "ets/pages/plugin2.js",
data: {
"js": "ets/pages/plugin.js",
"key_1": 1111,
},
extraData: {
"extra_str": "this is push event"
},
jsonPath: "",
},
(err, data) => {
console.log("push_callback:err: " ,JSON.stringify(err));
console.log("push_callback:data: " , JSON.stringify(data));
console.log("push_callback: push ok!");
}
)
pluginComponentManager.request({
owner:{
bundleName:"com.example.provider",
abilityName:"com.example.provider.MainAbility"
},
want: {
bundleName: "com.example.provider",
abilityName: "ets/pages/plugin2.js",
},
name: "plugintemplate",
data: {
"key_1": " myapplication plugin component test",
"key_2": 123456
},
jsonPath: "",
},
(err, data) => {
console.log("request_callback: componentTemplate.ability=" + data.componentTemplate.ability)
console.log("request_callback: componentTemplate.source=" + data.componentTemplate.source)
}
)
```
- 变更后:
```js
import pluginComponentManager from '@ohos.pluginComponent'
pluginComponentManager.push({
owner:{
bundleName:"com.example.provider",
abilityName:"com.example.provider.MainAbility"
},
target: {
bundleName: "com.example.provider",
abilityName: "com.example.provider.MainAbility",
},
name: "ets/pages/plugin2.js",
data: {
"js": "ets/pages/plugin.js",
"key_1": 1111,
},
extraData: {
"extra_str": "this is push event"
},
jsonPath: "",
},
(err, data) => {
console.log("push_callback:err: " ,JSON.stringify(err));
console.log("push_callback:data: " , JSON.stringify(data));
console.log("push_callback: push ok!");
}
)
pluginComponentManager.request({
owner:{
bundleName:"com.example.provider",
abilityName:"com.example.provider.MainAbility"
},
target: {
bundleName: "com.example.provider",
abilityName: "ets/pages/plugin2.js",
},
name: "plugintemplate",
data: {
"key_1": " myapplication plugin component test",
"key_2": 123456
},
jsonPath: "",
},
(err, data) => {
console.log("request_callback: componentTemplate.ability=" + data.componentTemplate.ability)
console.log("request_callback: componentTemplate.source=" + data.componentTemplate.source)
}
)
```
# 包管理子系统ChangeLog
## cl.bundlemanager.1 包管理删除@ohos.bundle.bundleManager.d.ts中的getAbilityIcon接口,可以使用@ohos.resourceManager.d.ts中的getMediaContent替换。
包管理删除[@ohos.bundle.bundleManager.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.bundle.bundleManager.d.ts)中的getAbilityIcon接口,可以使用[@ohos.resourceManager.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.resourceManager.d.ts)中的getMediaContent替换。
**变更影响**<br>
使用之前已发布的API 9各beta版本且使用到了getAbilityIcon接口的,需要改为使用getMediaContent接口。
**关键的接口/组件变更**<br>
删除@ohos.bundle.bundleManager.d.ts中的getAbilityIcon接口。
**适配指导**<br>
使用@ohos.bundle.bundleManager.d.ts下面的getAbilityIcon,需要修改为@ohos.resourceManager.d.ts中的getMediaContent。需要提前获取到图标的资源ID值,可参考该接口的[使用指导](../../../application-dev/reference/apis/js-apis-resource-manager.md#getmediacontent9)
## cl.bundlemanager.2 包管理底层能力变更,仅支持系统资源HAP自定义权限,其它HAP均不支持自定义权限。
仅支持系统资源HAP自定义权限,其它HAP均不支持自定义权限。包管理在解析HAP时,仅支持解析资源HAP(包名为:ohos.global.systemres)的配置文件中的definePermissions字段,该字段用来定义权限。其它HAP中配置的definePermissions字段将不会解析。
如果有应用需要自定义权限,可以在资源HAP的[配置文件](https://gitee.com/openharmony/utils_system_resources/blob/master/systemres/main/config.json)中definePermissions字段下面新增定义权限。格式可参考[定义权限](../../../application-dev/quick-start/module-structure.md#definepermissions对象内部结构)
**变更影响**<br>
升级新版本镜像后,应用自定义的权限将不会生效,使用方在申请该权限时,会授权失败。
**关键的接口/组件变更**<br>
包管理底层能力变更,仅支持系统资源HAP自定义权限,其它HAP均不支持自定义权限。
**适配指导**<br>
如果有应用需要自定义权限,可以在资源HAP的[配置文件](https://gitee.com/openharmony/utils_system_resources/blob/master/systemres/main/config.json)中definePermissions字段下面新增定义权限。格式可参考[定义权限](../../../application-dev/quick-start/module-structure.md#definepermissions对象内部结构)
## cl.bundlemanager.3 包管理二级模块文件名称变更,修改为文件内对应的接口名称
包管理二级模块文件名称变更,修改为文件内对应的接口名称,变更文件如下:
| 原文件名称 |变更后文件名称 |
|----|----|
| bundleManager/abilityInfo.d.ts | bundleManager/AbilityInfo.d.ts |
| bundleManager/applicationInfo.d.ts | bundleManager/ApplicationInfo.d.ts |
| bundleManager/bundleInfo.d.ts | bundleManager/BundleInfo.d.ts |
| bundleManager/dispatchInfo.d.ts | bundleManager/DispatchInfo.d.ts |
| bundleManager/elementName.d.ts | bundleManager/ElementName.d.ts |
| bundleManager/extensionAbilityInfo.d.ts | bundleManager/ExtensionAbilityInfo.d.ts |
| bundleManager/hapModuleInfo.d.ts | bundleManager/HapModuleInfo.d.ts |
| bundleManager/launcherAbilityInfo.d.ts | bundleManager/LauncherAbilityInfo.d.ts |
| bundleManager/metadata.d.ts | bundleManager/Metadata.d.ts |
| bundleManager/packInfo.d.ts | bundleManager/BundlePackInfo.d.ts |
| bundleManager/permissionDef.d.ts | bundleManager/PermissionDef.d.ts |
| bundleManager/remoteAbilityInfo.d.ts | bundleManager/RemoteAbilityInfo.d.ts |
| bundleManager/shortcutInfo.d.ts | bundleManager/ShortcutInfo.d.ts |
除了免安装相关的BundlePackInfo文件名称增加了Bundle,其余文件名称均是修改为大写开头。
**变更影响**<br>
仅修改二级模块文件名称,不会影响一级模块的使用。在使用之前已发布的API 9各beta版本时,如果在ts文件中直接导入了bundleManager下面二级模块接口的,IDE中编译报错的话,需要修改导入的文件名称。
**关键的接口/组件变更**<br>
变更bundleManager文件夹下面的d.ts名称,修改为文件中的接口名称。
**适配指导**<br>
使用新的sdk后,正常情况下应用无需适配该变更。如果在应用中直接导入了bundleManager文件夹下面的文件,则需要修改导入的文件名称。可以按照如下的修改方式:
**修改前:**
```ts
import {AbilityInfo} from 'bundleManger/abilityInfo';
import {ExtensionAbilityInfo} from 'bundleManger/extensionAbilityInfo';
import {BundlePackInfo} from 'bundleManger/packInfo';
```
**修改后:**
```ts
import {AbilityInfo} from 'bundleManger/AbilityInfo';
import {ExtensionAbilityInfo} from 'bundleManger/ExtensionAbilityInfo';
import {BundlePackInfo} from 'bundleManger/BundlePackInfo';
```
## cl.bundlemanager.4 包管理LaunchType枚举类型名称变更,由STANDARD修改为MULTITON,枚举值不变。
包管理[LaunchType](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.bundle.bundleManager.d.ts)枚举类型变更,由STANDARD修改为MULTITON,枚举值不变,表示多实例类型。
**变更影响**<br>
使用之前已发布的API 9各beta版本且使用到了LaunchType.STANDARD的,需要改为使用LaunchType.MULTITON接口。
**关键的接口/组件变更**<br>
LaunchType枚举类型名称变更,由LaunchType.STANDARD修改为LaunchType.MULTITON。
**适配指导**<br>
由LaunchType.STANDARD修改为LaunchType.MULTITON。
## cl.bundlemanager.5 包管理AbilityInfo结构体中isVisible字段修改为exported,类型不变。
包管理[AbilityInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/AbilityInfo.d.ts)结构体中isVisible字段修改为exported,类型不变,表示当前ability是否支持导出,被其他的ability使用。
**变更影响**<br>
使用之前已发布的API 9各beta版本且使用到了isVisible的,需要改为使用exported。
**关键的接口/组件变更**<br>
包管理[AbilityInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/AbilityInfo.d.ts)结构体中isVisible字段修改为exported,类型不变。
**适配指导**<br>
由isVisible修改为exported。
## cl.bundlemanager.6 包管理ExtensionAbilityInfo结构体中isVisible字段修改为exported,类型不变。
包管理[ExtensionAbilityInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/ExtensionAbilityInfo.d.ts)结构体中isVisible字段修改为exported,类型不变,表示当前ability是否支持导出,被其他的ability使用。
**变更影响**<br>
使用之前已发布的API 9各beta版本且使用到了isVisible的,需要改为使用exported。
**关键的接口/组件变更**<br>
包管理[ExtensionAbilityInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/ExtensionAbilityInfo.d.ts)结构体中isVisible字段修改为exported,类型不变。
**适配指导**<br>
由isVisible修改为exported。
## cl.bundlemanager.7 包管理ModuleAbilityInfo结构体中visible字段修改为exported,类型不变。
包管理[ModuleAbilityInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/BundlePackInfo.d.ts)结构体中visible字段修改为exported,类型不变,表示当前ability是否支持导出,被其他的ability使用。
**变更影响**<br>
使用之前已发布的API 9各beta版本且使用到了visible的,需要改为使用exported。
**关键的接口/组件变更**<br>
包管理[ModuleAbilityInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/BundlePackInfo.d.ts)结构体中visible字段修改为exported,类型不变。
**适配指导**<br>
由visible修改为exported。
## cl.bundlemanager.8 app.json配置文件删除distributedNotificationEnabled标签
删除配置文件app.json中[distributedNotificationEnabled](../../../application-dev/quick-start/app-configuration-file.md)标签
**变更影响**<br>
删除配置文件app.json中[distributedNotificationEnabled](../../../application-dev/quick-start/app-configuration-file.md)标签,IDE中不再支持配置该标签,使用该标签会导致IDE编译报错
**适配指导**<br>
删除[distributedNotificationEnabled](../../../application-dev/quick-start/app-configuration-file.md)标签
## cl.bundlemanager.9 app.json配置文件删除entityType标签
删除配置文件app.json中[entityType](../../../application-dev/quick-start/app-configuration-file.md)标签
**变更影响**<br>
删除配置文件app.json中[entityType](../../../application-dev/quick-start/app-configuration-file.md)标签,IDE中不再支持配置该标签,使用该标签会导致IDE编译报错
**适配指导**<br>
删除[entityType](../../../application-dev/quick-start/app-configuration-file.md)标签
## cl.bundlemanager.10 app.json配置文件删除keepAlive标签
删除配置文件app.json中[keepAlive](../../../application-dev/quick-start/app-configuration-file.md)标签
**变更影响**<br>
删除配置文件app.json中[keepAlive](../../../application-dev/quick-start/app-configuration-file.md)标签,IDE中不再支持配置该标签,使用该标签会导致IDE编译报错
**适配指导**<br>
删除[keepAlive](../../../application-dev/quick-start/app-configuration-file.md)标签
## cl.bundlemanager.11 app.json配置文件删除removable标签
删除配置文件app.json中[removable](../../../application-dev/quick-start/app-configuration-file.md)标签
**变更影响**<br>
删除配置文件app.json中[removable](../../../application-dev/quick-start/app-configuration-file.md)标签,IDE中不再支持配置该标签,使用该标签会导致IDE编译报错
**适配指导**<br>
删除[removable](../../../application-dev/quick-start/app-configuration-file.md)标签
## cl.bundlemanager.12 app.json配置文件删除singleton标签
删除配置文件app.json中[singleton](../../../application-dev/quick-start/app-configuration-file.md)标签
**变更影响**<br>
删除配置文件app.json中[singleton](../../../application-dev/quick-start/app-configuration-file.md)标签,IDE中不再支持配置该标签,使用该标签会导致IDE编译报错
**适配指导**<br>
删除[singleton](../../../application-dev/quick-start/app-configuration-file.md)标签
## cl.bundlemanager.13 app.json配置文件删除userDataClearable标签
删除配置文件app.json中[userDataClearable](../../../application-dev/quick-start/app-configuration-file.md)标签
**变更影响**<br>
删除配置文件app.json中[userDataClearable](../../../application-dev/quick-start/app-configuration-file.md)标签,IDE中不再支持配置该标签,使用该标签会导致IDE编译报错
**适配指导**<br>
删除[userDataClearable](../../../application-dev/quick-start/app-configuration-file.md)标签
## cl.bundlemanager.14 module.json配置文件中module的name标签不再支持配置中文
module.json配置文件中的module的[name](../../../application-dev/quick-start/module-configuration-file.md)不再支持配置中文
**变更影响**<br>
删除配置文件module.json中module的[name](../../../application-dev/quick-start/module-configuration-file.md)标签不再支持配置中文,IDE中配置该标签为中文,会导致IDE编译报错
**适配指导**<br>
使用英文语言配置module.json中module的[name](../../../application-dev/quick-start/module-configuration-file.md)标签
## cl.bundlemanager.15 module.json配置文件中ability的name标签不再支持配置中文
module.json配置文件中的ability的[name](../../../application-dev/quick-start/module-configuration-file.md)不再支持配置中文
**变更影响**<br>
删除配置文件module.json中ability的[name](../../../application-dev/quick-start/module-configuration-file.md)标签不再支持配置中文,IDE中配置该标签为中文,会导致IDE编译报错
**适配指导**<br>
使用英文语言配置module.json中ability的[name](../../../application-dev/quick-start/module-configuration-file.md)标签
## cl.bundlemanager.16 module.json配置文件删除uiSyntax标签
删除配置文件module.json中[uiSyntax](../../../application-dev/quick-start/module-configuration-file.md)标签
**变更影响**<br>
删除配置文件module.json中[uiSyntax](../../../application-dev/quick-start/module-configuration-file.md)标签,IDE中不再支持配置该标签,使用该标签会导致IDE编译报错
**适配指导**<br>
删除module.json中[uiSyntax](../../../application-dev/quick-start/module-configuration-file.md)标签
## cl.bundlemanager.17 module.json配置文件中module及ability中的srcEntrance标签修改为srcEntry
配置文件module.json中[srcEntrance](../../../application-dev/quick-start/module-configuration-file.md)标签修改为srcEntry
**变更影响**<br>
删除配置文件module.json中[srcEntrance](../../../application-dev/quick-start/module-configuration-file.md)标签,IDE中不再支持配置该标签,使用该标签会导致IDE编译报错
**适配指导**<br>
删除module.json中[srcEntrance](../../../application-dev/quick-start/module-configuration-file.md)标签,使用srcEntry替代
## cl.bundlemanager.18 删除module.json配置文件中distroFilter的apiVersion标签
删除配置文件module.json中[distroFilter](../../../application-dev/quick-start/module-configuration-file.md)的apiVersion标签
**变更影响**<br>
删除配置文件module.json[distroFilter](../../../application-dev/quick-start/module-configuration-file.md)的apiVersion标签,IDE中不再支持配置该标签,使用该标签会导致IDE编译报错
**适配指导**<br>
删除module.json中[distroFilter](../../../application-dev/quick-start/module-configuration-file.md)的apiVersion标签
## cl.bundlemanager.19 module.json配置文件中distroFilter修改为distributionFilter
配置文件module.json中[distroFilter](../../../application-dev/quick-start/module-configuration-file.md)标签修改为distributionFilter
**变更影响**<br>
删除配置文件module.json[distroFilter](../../../application-dev/quick-start/module-configuration-file.md)标签,IDE中不再支持配置该标签,使用该标签会导致IDE编译报错
**适配指导**<br>
删除module.json中[distroFilter](../../../application-dev/quick-start/module-configuration-file.md)标签,使用distributionFilter替代
## cl.bundlemanager.20 module.json配置文件中launchType的标签standard模式修改为multiton
删除module.json中[launchType](../../../application-dev/quick-start/module-configuration-file.md)标签的standard模式修改为multiton
**适配指导**<br>
删除module.json中[launchType](../../../application-dev/quick-start/module-configuration-file.md)标签的standard模式,使用multiton替代
## cl.bundlemanager.21 module.json配置文件中abilities的标签visible修改为exported
module.json中[abilities](../../../application-dev/quick-start/module-configuration-file.md)的标签visible修改为exported,表示当前ability是否支持导出,被其他的ability使用。
**适配指导**<br>
删除module.json中[abilities](../../../application-dev/quick-start/module-configuration-file.md)的visible标签,使用exported标签替代
\ No newline at end of file
# util系统JS API变更Changelog
OpenHarmony 3.2.10.7(Mr)版本相较于OpenHarmony 3.2.beta4版本,util子系统的API变更如下
## cl.util.1.randomUUID接口名变更
util子系统randomUUID函数名存在变更:
function randomUUID(entropyCache?: boolean): string 改为 function generateRandomUUID(entropyCache?: boolean): string 函数名由原来的randomUUID改为generateRandomUUID。
开发者需要根据以下说明对应用进行适配。
**变更影响**
影响API9版本的JS接口,应用需要进行适配才可以在新版本SDK环境正常实现功能。
**关键的接口/组件变更**
| 模块名 | 方法/属性/枚举/常量 | 变更类型 |
| :---------- | ------------------- | ------- |
| @ohos.util | function randomUUID(entropyCache?: boolean): string | 删除 |
| @ohos.util | function generateRandomUUID(entropyCache?: boolean): string| 变更 |
**适配指导**
应用中使用generateRandomUUID可参考下列代码
示例:
```ts
import util from '@ohos.util'
let uuid = util.generateRandomUUID(true);
console.log("RFC 4122 Version 4 UUID:" + uuid);
// 输出:
// RFC 4122 Version 4 UUID:88368f2a-d5db-47d8-a05f-534fab0a0045
```
## cl.util.2.randomBinaryUUID接口名变更
util子系统randomBinaryUUID函数名存在变更:
function randomBinaryUUID(entropyCache?: boolean): Uint8Array 改为 function generateRandomBinaryUUID(entropyCache?: boolean): Uint8Array 函数名由原来的randomBinaryUUID改为generateRandomBinaryUUID。
开发者需要根据以下说明对应用进行适配。
**变更影响**
影响API9版本的JS接口,应用需要进行适配才可以在新版本SDK环境正常实现功能。
**关键的接口/组件变更**
| 模块名 | 方法/属性/枚举/常量 | 变更类型 |
| :---------- | ------------------- | ------- |
| @ohos.util | function randomBinaryUUID(entropyCache?: boolean): Uint8Array; | 删除 |
| @ohos.util | function generateRandomBinaryUUID(entropyCache?: boolean): Uint8Array| 变更 |
**适配指导**
应用中使用generateRandomBinaryUUID可参考下列代码
示例:
```ts
import util from '@ohos.util'
let uuid = util.generateRandomBinaryUUID(true);
console.log(JSON.stringify(uuid));
// 输出:
// 138,188,43,243,62,254,70,119,130,20,235,222,199,164,140,150
```
## cl.util.3.LRUCache类contains接口参数类型变更
util子系统LRUCache类contains接口参数类型变更:
contains(key: object): boolean 改为 contains(key: K): boolean 参数类型由原来的object改为K。
开发者需要根据以下说明对应用进行适配。
**变更影响**
影响API9版本的JS接口,应用需要进行适配才可以在新版本SDK环境正常实现功能。
**关键的接口/组件变更**
| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
| :-------- | ---------| -------------------------------- | -------- |
| @ohos.util | LRUCache | contains(key: object): boolean | 删除 |
| @ohos.util | LRUCache | contains(key: K): boolean | 变更 |
**适配指导**
应用中使用contains函数可参考下列代码
示例:
```ts
import util from '@ohos.util'
let pro = new util.LRUCache();
pro.put(2,10);
let obj = {1:"key"};
let result = pro.contains(obj);
```
\ No newline at end of file
# 元能力子系统ChangeLog
OpenHarmony 3.2.12.2版本相较于OpenHarmony3.2release版本,元能力子系统的API新增了更为详细的返回错误码信息,便于开发者更加有效地使用相关API接口。
## cl.ability.1 API错误码新增及优化描述
相较之前版本,对于接口的错误码描述及接口可能返回的所有错误码均进行了注释说明,开发者可以通过相关错误码进行更为准确的错误流程控制。
**变更影响**
影响API9版本的JS接口对外声明,对实际功能无影响,开发者可选择是否适配。
**关键的接口/组件变更**
本次变更主要涉及如下模块的注释更新,详细请参考对应的对外接口声明及API开发指导文档:
| 模块 | 主要变更点说明 |
| ----------------------------------- | ------------------------------------------------------------ |
| @ohos.app.ability.UIAbility | 增加16200001、16200002、16200004、16200005、16000050等错误码返回说明 |
| @ohos.app.ability.abilityManager | 增加201、202、16000050等错误码返回说明,调整401等错误码返回说明 |
| @ohos.app.ability.appManager | 增加201、202、16000050等错误码返回说明,调整401等错误码返回说明 |
| @ohos.app.ability.dataUriUtils | 增加401等错误码返回说明 |
| @ohos.app.ability.errorManager | 增加16000003等错误码返回说明 |
| @ohos.app.ability.missionManager | 增加201、202、16300001、16300002、16000009等错误码返回说明,调整401等错误码返回说明 |
| @ohos.app.ability.quickFixManager | 增加201、202、18500001、18500002、18500008等错误码返回说明 |
| @ohos.app.ability.wantAgent | 增加16000007、16000015、16000151等错误码返回说明 |
| application/AbilityDelegator | 增加16000001、16000002、16000004、16000005、16000006、16000008、16000009、16000010、16000011、16000050、16000053、16000055、16200001、16000100等错误码返回说明 |
| application/ApplicationContext | 增加16000011、16000050等错误码返回说明 |
| application/Context | 增加201、202、401等错误码返回说明 |
| application/ServiceExtensionContext | 增加201、202、16000001、16000002、16000004、16000005、16000006、16000008、16000009、16000010、16000011、16000050、16000053、16000055、16200001等错误码返回说明 |
| application/UIAbilityContext | 增加201、16000001、16000002、16000004、16000005、16000006、16000008、16000009、16000010、16000011、16000050、16000053、16000055、16200001、16000100等错误码返回说明 |
| @ohos.app.form.formHost | 增加201、202、16500050、16500060、16501000、16501001、16501003等错误码返回说明,调整401等错误码返回说明 |
| @ohos.app.form.formProvider | 增加202、16500050、16500060、16500100、16501000、16501001、16501002、16501003,调整401等错误码返回说明 |
| application/FormExtensionContext | 增加202、401、16500050、16500100、16500101、16501000等错误码返回说明 |
# 时间通知子系统ChangeLog
OpenHarmony 3.2.12.2版本相较于OpenHarmony3.2release版本,事件通知子系统的API新增了更为详细的返回错误码信息,便于开发者更加有效地使用相关API接口。
## cl.notification.1 API错误码新增及优化描述
相较之前版本,对于接口的错误码描述及接口可能返回的所有错误码均进行了注释说明,开发者可以通过相关错误码进行更为准确的错误流程控制。
**变更影响**
影响API9版本的JS接口对外声明,对实际功能无影响,开发者可选择是否适配。
**关键的接口/组件变更**
本次变更主要涉及如下模块的注释更新,详细请参考对应的对外接口声明及API开发指导文档:
| 模块 | 主要变更点说明 |
| --------------------------- | ------------------------------------------------------------ |
| @ohos.commonEventManager | 增加801、1500007、1500008等错误码返回说明 |
| @ohos.notificationManager | 增加201、202、1600001、1600002、1600003、1600004、1600005、1600007、1600008、1600009、1600010、17700001等错误码返回说明,调整401等错误码返回说明 |
| @ohos.notificationSubscribe | 增加201、202、1600001、1600002、1600003、1600007、1600008、17700001等错误码返回说明,调整401等错误码返回说明 |
# 包管理子系统ChangeLog
## cl.bundlemanager.1 包管理API异常处理方式变更,原有API8及之前的接口全部废弃,需要使用新的API9接口
包管理接口使用业务逻辑返回值表示错误信息,不符合OpenHarmony接口错误码规范。对原有接口进行整改,原有API8及之前的接口全部废弃,需要使用新的API9接口。
**变更影响**
基于OpenHarmony3.2.8.2及之后的SDK版本开发的应用,需适配API9的模块和接口,以及的API异常处理返回方式,否则会影响原有业务逻辑。
**关键接口/组件变更**
新增接口按照模块进行了划分,将原有的的d.ts分成多个d.ts,可以根据业务需要导入不同的d.ts。新增接口支持统一的错误码异常处理规范,功能上与原接口保持一致。部分功能有变更或者新增的接口会单独列出。
为适配统一的API异常处理方式,对包管理API8及之前的接口进行废弃(下表中**原接口**列内容),并新增对应API9接口(下表中**新接口**列内容)。
| 原接口(废弃) | 新接口(新增) |
| ------ | ------ |
| @ohos.bundle.d.ts | [@ohos.bundle.bundleManager.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.bundle.bundleManager.d.ts) |
| @ohos.bundle.d.ts | [@ohos.bundle.freeInstall.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.bundle.freeInstall.d.ts) |
| @ohos.bundle.d.ts | [@ohos.bundle.installer.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.bundle.installer.d.ts) |
| @ohos.bundle.innerBundleManager.d.ts | [@ohos.bundle.launcherBundleManager.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.bundle.launcherBundleManager.d.ts) |
| @ohos.bundle.innerBundleManager.d.ts | [@ohos.bundle.bundleMonitor.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.bundle.bundleMonitor.d.ts) |
| @ohos.bundle.defaultAppManager.d.ts | [@ohos.bundle.defaultAppManager.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.bundle.defaultAppManager.d.ts) |
| @ohos.distributedBundle.d.ts | [@ohos.bundle.distributedBundleManager.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.bundle.distributedBundleManager.d.ts) |
| 无 | [@ohos.bundle.appControl.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.bundle.appControl.d.ts) |
| @system.package.d.ts | 无 |
**适配指导**<br>
1. 调用包管理查询相关接口。
```
import bundle form '@ohos.bundle.bundleManager'
```
2. 调用包管理安装卸载相关接口
```
import installer form '@ohos.bundle.installer'
```
3. 调用包管理免安装相关接口
```
import freeInstall form '@ohos.bundle.freeInstall'
```
4. 调用包管理launcher相关接口
```
import launcherBundleManager form '@ohos.bundle.launcherBundleManager'
import bundleMonitor form '@ohos.bundle.bundleMonitor'
```
6. 调用包管理默认应用相关接口
```
import defaultAppManager form '@ohos.bundle.defaultAppManager'
```
7. 调用包管理分布式相关接口
```
import distributedBundle form '@ohos.bundle.distributedBundle'
```
此外还需要适配异常处理,具体参考新接口的接口文档。
## cl.bundlemanager.2 包管理API结构体变更,原有API8及之前的结构体全部废弃,需要使用新的API9结构体
包管理接口使用业务逻辑返回值表示错误信息,不符合OpenHarmony接口错误码规范。原有API8及之前的结构体全部废弃,需要使用新的API9结构体。
**变更影响**
基于OpenHarmony3.2.8.2及之后的SDK版本开发的应用,需适配变更结构体,否则会影响原有业务逻辑。原有二级模块的导出功能也会废弃,需要使用新接口的二级模块到处能力,需要导入新的一级d.ts模块。
**关键接口/组件变更**
新增结构体对原有的API8及之前的结构体进行梳理,将原有API8及之前的结构体全部废弃,新增新的API9结构体,变更前后的对比如下表所示,部分结构体进行了合并,例如moduleInfo.d.ts替换为hapModuleInfo.d.ts,customizeData.d.ts替换为metadata.d.ts。结构体功能上与原结构体保持一致。部分功能有变更或者新增的结构体属性会单独列出。
| 原结构体(废弃) | 新结构体(新增) |
| ------ | ------ |
| bundle/abilityInfo.d.ts | [bundleManager/abilityInfo.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/AbilityInfo.d.ts) |
| bundle/applicationInfo.d.ts | [bundleManager/applicationInfo.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/ApplicationInfo.d.ts) |
| bundle/bundleInfo.d.ts | [bundleManager/bundleInfo.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/BundleInfo.d.ts) |
| bundle/bundleInstaller.d.ts | [@ohos.bundle.installer.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.bundle.installer.d.ts) |
| bundle/bundleStatusCallback.d.ts | [@ohos.bundle.bundleMonitor.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.bundle.bundleMonitor.d.ts) |
| bundle/customizeData.d.ts | [bundleManager/metadata.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/Metadata.d.ts) |
| bundle/dispatchInfo.d.ts | [bundleManager/dispatchInfo.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/DispatchInfo.d.ts) |
| bundle/elementName.d.ts | [bundleManager/elementName.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/ElementName.d.ts) |
| bundle/extensionAbilityInfo.d.ts | [bundleManager/extensionAbilityInfo.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/ExtensionAbilityInfo.d.ts) |
| bundle/hapModuleInfo.d.ts | [bundleManager/hapModuleInfo.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/HapModuleInfo.d.ts) |
| bundle/launcherAbilityInfo.d.ts | [bundleManager/launcherAbilityInfo.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/LauncherAbilityInfo.d.ts) |
| bundle/metadata.d.ts | [bundleManager/metadata.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/Metadata.d.ts) |
| bundle/moduleInfo.d.ts | [bundleManager/hapModuleInfo.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/HapModuleInfo.d.ts) |
| bundle/PermissionDef.d.ts | [bundleManager/permissionDef.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/PermissionDef.d.ts) |
| bundle/remoteAbilityInfo.d.ts | [bundleManager/remoteAbilityInfo.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/RemoteAbilityInfo.d.ts) |
| bundle/shortcutInfo.d.ts | [bundleManager/shortcutInfo.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/ShortcutInfo.d.ts) |
**适配指导**<br>
1. 使用原有结构体的代码需要修改为新结构体。
2. 原有二级模块的导出功能也会废弃,可以使用新接口的二级模块到处能力,需要导入新的一级d.ts模块。
## cl.bundlemanager.3 包管理查询模块接口变更,@ohos.bundle.d.ts中接口全部废弃,新增@ohos.bundle.bundleManager.d.ts、@ohos.bundle.freeInstall.d.ts和@ohos.bundle.installer.d.ts模块,将原有接口新增或者变更至新d.ts中
包管理模块查询接口变更,废弃了@ohos.bundle中API8及之前的全部接口,其中的API9接口变更至@ohos.bundle.bundleManager、@ohos.bundle.freeInstall和@ohos.bundle.installer中,@ohos.bundle.bundleManager中新增了之前废弃的大部分接口,修改为systemapi,并增加了异常处理能力。
使用方式的变化:由原来的@ohos.bundle修改为@ohos.bundle.bundleManager、@ohos.bundle.freeInstall和@ohos.bundle.installer模块来使用相关的接口。
@ohos.bundle.bundleManager和@ohos.bundle.installer模块系统能力为SystemCapability.BundleManager.BundleFramework.Core,@ohos.bundle.freeInstall模块系统能力为SystemCapability.BundleManager.BundleFramework.FreeInstall。
**变更影响**<br>
对原有使用API version 9之前的应用无影响,使用API version 9的应用需要适配新模块和新接口。在@ohos.bundle原有的API9接口,变更到新的@ohos.bundle.bundleManager.d.ts、@ohos.bundle.freeInstall和@ohos.bundle.installer文件中。
**关键的接口/组件变更**<br>
@ohos.bundle.d.ts中涉及到的废弃和变更接口如下表所示。未在表格中列出的表明除了增加异常处理和变更导入模块外,接口名称和入参均未发生变化,直接导入新的@ohos.bundle.bundleManager.d.ts、@ohos.bundle.freeInstall和@ohos.bundle.installer就可使用。在表格中列出的均表示在API9接口上发生变更,标记为无的表示在API9上已废弃。
| 原接口(废弃) | 新接口(变更或新增)| systemapi|新文件名|
| ---| ---| --- | --|
| BundleFlag | BundleFlag | 否 | @ohos.bundle.bundleManager.d.ts |
| 无 | ApplicationFlag | 是 | @ohos.bundle.bundleManager.d.ts |
| 无 | AbilityFlag | 是 | @ohos.bundle.bundleManager.d.ts |
| ExtensionFlag | ExtensionAbilityFlag | 是 | @ohos.bundle.bundleManager.d.ts |
| ColorMode | 无 | 否 | 无 |
| GrantStatus | PermissionGrantState | 否 | @ohos.bundle.bundleManager.d.ts |
| AbilityType | AbilityType | 否 | @ohos.bundle.bundleManager.d.ts |
| AbilitySubType | 无 | 否 | 无 |
| DisplayOrientation | DisplayOrientation | 否 | @ohos.bundle.bundleManager.d.ts |
| LaunchMode | LaunchType | 否 | @ohos.bundle.bundleManager.d.ts |
| ExtensionAbilityType | ExtensionAbilityType | 是 | @ohos.bundle.bundleManager.d.ts |
| BundleOptions | 无 | 否 | 无 |
| InstallErrorCode | 无 | 否 | 无 |
| UpgradeFlag | UpgradeFlag | 是 | @ohos.bundle.freeInstall.d.ts |
| SupportWindowMode | SupportWindowMode | 否 | @ohos.bundle.bundleManager.d.ts |
| getBundleInfo | getBundleInfo | 是 | @ohos.bundle.bundleManager.d.ts |
| getBundleInstaller | getBundleInstaller | 是 | @ohos.bundle.installer.d.ts |
| getAbilityInfo | queryAbilityInfo | 是 | @ohos.bundle.bundleManager.d.ts |
| getApplicationInfo | getApplicationInfo | 是 | @ohos.bundle.bundleManager.d.ts |
| queryAbilityByWant | queryAbilityInfo | 是 | @ohos.bundle.bundleManager.d.ts |
| getAllBundleInfo | getAllBundleInfo | 是 | @ohos.bundle.bundleManager.d.ts |
| getAllApplicationInfo | getAllApplicationInfo | 是 | @ohos.bundle.bundleManager.d.ts |
| getNameForUid | getBundleNameByUid | 是 | @ohos.bundle.bundleManager.d.ts |
| getBundleArchiveInfo |getBundleArchiveInfo | 是 | @ohos.bundle.bundleManager.d.ts |
| getLaunchWantForBundle | getLaunchWantForBundle | 是 | @ohos.bundle.bundleManager.d.ts |
| cleanBundleCacheFiles | cleanBundleCacheFiles | 是 | @ohos.bundle.bundleManager.d.ts |
| setApplicationEnabled | setApplicationEnabled | 是 | @ohos.bundle.bundleManager.d.ts |
| setAbilityEnabled | setAbilityEnabled | 是 | @ohos.bundle.bundleManager.d.ts |
| queryExtensionAbilityInfos | queryExtensionAbilityInfo | 是 | @ohos.bundle.bundleManager.d.ts |
| getPermissionDef | getPermissionDef | 是 | @ohos.bundle.bundleManager.d.ts |
| getAbilityLabel | getAbilityLabel | 是 | @ohos.bundle.bundleManager.d.ts |
| getAbilityIcon | getAbilityIcon | 是 | @ohos.bundle.bundleManager.d.ts |
| isAbilityEnabled | isAbilityEnabled | 是 | @ohos.bundle.bundleManager.d.ts |
| isApplicationEnabled | isApplicationEnabled | 是 | @ohos.bundle.bundleManager.d.ts |
| setModuleUpgradeFlag | setHapModuleUpgradeFlag | 是 | @ohos.bundle.freeInstall.d.ts |
| isModuleRemovable | isHapModuleRemovable | 是 | @ohos.bundle.freeInstall.d.ts |
| getBundlePackInfo | getBundlePackInfo | 是 | @ohos.bundle.freeInstall.d.ts |
| getDispatcherVersion | getDispatchInfo | 是 | @ohos.bundle.freeInstall.d.ts |
| getProfileByAbility | getProfileByAbility | 否 | @ohos.bundle.bundleManager.d.ts |
| getProfileByExtensionAbility | getProfileByExtensionAbility | 否 | @ohos.bundle.bundleManager.d.ts |
| setDisposedStatus | setDisposedStatus | 是 | @ohos.bundle.appControl.d.ts |
| getDisposedStatus | getDisposedStatus | 是 | @ohos.bundle.appControl.d.ts |
| 无 | deleteDisposedStatus | 是 | @ohos.bundle.appControl.d.ts |
| getBundleInfoSync | getBundleInfoSync | 是 | @ohos.bundle.bundleManager.d.ts |
| getApplicationInfoSync | getApplicationInfoSync | 是 | @ohos.bundle.bundleManager.d.ts |
|无| getBundleInfoForSelf | 否 | @ohos.bundle.bundleManager.d.ts |
**适配指导**<br>
将原接口替换为API9新增的接口,导入相关的模块。
旧的导入模块:
```
import bundle form '@ohos.bundle'
```
新的导入模块:
```
import bundle form '@ohos.bundle.bundleManager'
import freeInstall form '@ohos.bundle.freeInstall'
import installer form '@ohos.bundle.installer'
import appControl form '@ohos.bundle.appControl'
```
## cl.bundlemanager.4 BundleInfo结构体变更,包管理原有bundle/bundleInfo.d.ts字段全部废弃变更为bundleManager/bundleInfo.d.ts,涉及字段属性变化。
包管理原有bundle/bundleInfo.d.ts字段全部废弃。由老的[bundle/bundleInfo.d.ts]((https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundle/bundleInfo.d.ts))变更为[bundleManager/bundleInfo.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/BundleInfo.d.ts),涉及字段属性变化。
**变更影响**<br>
对原有使用API version 9之前的应用无影响,使用API version 9的应用需要适配新模块和新接口。使用二级模块导出BundleInfo时,需要导入@ohos.bundle.bundleManager模块。
**关键的接口/组件变更**<br>
BundleInfo结构体发生变化的字段内容如下表所示。其余字段在bundle/bundleInfo.d.ts中废弃后,在新的[bundleManager/bundleInfo.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/BundleInfo.d.ts)中均有对应值。没有对应字段,则表明该字段已经在API9上废弃。
| 已废弃 | API9新增或变更 | 类型 |
| --- | --- | --- |
| type | 无 | string |
| appId | 无 | string |
| 无 |signatureInfo | SignatureInfo |
| uid | 无 | number | 无|
| abilityInfos | 无 | Array\<AbilityInfo> |
| reqPermissions | 无 | Array<string> |
| compatibleVersion | 无 | number |
| isCompressNativeLibs | 无 | boolean |
| entryModuleName | 无 | string |
| cpuAbi | 无 | string |
| isSilentInstallation | 无 | string |
| entryInstallationFree | 无 | boolean |
| reqPermissionStates | permissionGrantStates | Array\<bundleManager.PermissionGrantState> |
| extensionAbilityInfo | 无 |Array\<ExtensionAbilityInfo>|
| hapModuleInfos | hapModulesInfo | Array\<HapModuleInfo> |
API9中新增SignatureInfo结构体,该结构体如下:
| 属性名 | 类型 |
| ----------- | ------ |
| appId | string |
| fingerprint | string |
**适配指导**<br>
导入包管理查询的模块,使用API9 version的BundleInfo结构体,使用二级模块导出时也需要引入下面模块。
```
import bundle form '@ohos.bundle.bundleManager'
```
## cl.bundlemanager.5 ApplicationInfo结构体变更,包管理原有bundle/applicationInfo.d.ts字段全部废弃,变更为bundleManager/applicationInfo.d.ts,涉及字段属性变化。
ApplicationInfo结构体变更,包管理原有bundle/applicationInfo.d.ts字段全部废弃,变更为bundleManager/applicationInfo.d.ts,涉及字段属性变化。
**变更影响**<br>
对原有使用API version 9之前的应用无影响,使用API version 9的应用需要适配新模块和新接口。使用二级模块导出ApplicationInfo时,需要导入@ohos.bundle.bundleManager模块。
**关键的接口/组件变更**<br>
ApplicationInfo结构体发生变化的字段内容如下表所示。其余字段在bundle/applicationInfo.d.ts中废弃后,在新的[bundleManager/applicationInfo.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/ApplicationInfo.d.ts)中均有对应值。没有对应字段,则表明该字段已经在API9上废弃。
| 废弃 | API9新增或变更 | 类型 |
| --- | --- | --- |
| systemApp | 无 | boolean |
| labelId | 无 | string |
| labelIndex | labelId | number |
| iconId | 无 | string |
| iconIndex | iconId | number |
| supportedModes | 无 | number |
| moduleSourceDirs | 无 | Array\<string> |
| moduleInfos | 无 | Array\<ModuleInfo> |
| metaData | 无 | Map\<string,Array\<CustomizeData>> |
| entityType | 无 | string |
| fingerprint | 无 | string |
**适配指导**<br>
导入包管理查询的模块,使用API9 version的ApplicationInfo结构体。
## cl.bundlemanager.6 HapModuleInfo结构体字段变更,包管理原有bundle/hapModuleInfo.d.ts 和 moduleInfo.d.ts字段全部废弃,变更为bundleManager/hapModuleInfo.d.ts,涉及字段属性变化。
HapModuleInfo结构体字段变更,包管理原有bundle/hapModuleInfo.d.ts 和 moduleInfo.d.ts字段全部废弃,变更为[bundleManager/hapModuleInfo.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/HapModuleInfo.d.ts),涉及字段属性变化。
**变更影响**<br>
对原有使用API version 9之前的应用无影响,使用API version 9的应用需要适配新模块和新接口。使用二级模块导出HapModuleInfo时,需要导入@ohos.bundle.bundleManager模块。
**关键的接口/组件变更**<br>
HapModuleInfo结构体发生变化的字段内容如下表所示。其余字段在bundle/hapModuleInfo.d.ts中废弃后,在新的bundleManager/hapModuleInfo.d.ts中均有对应值。
| 废弃 | API9新增或变更 | 类型 |
| --- | --- | --- |
| abilityInfo | abilitiesInfo | Array<AbilityInfo> |
| 无 | moduleSourceDir | string |
| backgroundImg | 无 | string |
| supportedModes | 无 | string |
| reqCapabilities | 无 | Array\<string> |
| moduleName | 无 | string |
| mainAbilityName | 无 | string |
| extensionAbilityInfo | extensionAbilitiesInfo | Array\<ExtensionAbilityInfo> |
**适配指导**<br>
导入包管理查询的模块,使用API9 version的HapModuleInfo结构体。
## cl.bundlemanager.7 ModuleInfo结构体废弃,使用bundleManager/hapModuleInfo.d.ts中的HapModuleInfo代替。
包管理原有bundle/hapModuleInfo.d.ts 和 moduleInfo.d.ts字段全部废弃,变更为[bundleManager/hapModuleInfo.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/HapModuleInfo.d.ts),涉及字段属性变化。
ModuleInfo结构体废弃,使用[bundleManager/hapModuleInfo.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/HapModuleInfo.d.ts)中的HapModuleInfo代替。
**变更影响**<br>
对原有使用API version 9之前的应用无影响,使用API version 9的应用需要适配新模块和新接口。ModuleInfo被废弃,使用HapModuleInfo代替。
**关键的接口/组件变更**<br>
ModuleInfo结构体被废弃,使用HapModuleInfo代替。
**适配指导**<br>
使用API9 version的HapModuleInfo结构体。
## cl.bundlemanager.8 AbilityInfo结构体字段变更,原bundle/abilityInfo.d.ts全部废弃,变更为bundleManager/abilityInfo.d.ts,涉及到字段属性变化
AbilityInfo结构体字段变更,原bundle/abilityInfo.d.ts全部废弃,变更为bundleManager/abilityInfo.d.ts,涉及到字段属性变化
**变更影响**<br>
对原有使用API version 9之前的应用无影响,使用API version 9的应用需要适配新模块和新接口。
**关键的接口/组件变更**<br>
包管理AbilityInfo结构体字段变更如下表所示,未在表格中列出的表明废弃后均在新的AbilityInfo中存在,标记为无的表明该字段已在API9废弃,在新的AbilityInfo中不存在。
|废弃 | API9新增或变更 | 类型|
|----| --| --|
| launchMode | launchType | number |
| supportWindowMode | supportWindowModes | Array\<number> |
| targetAbility | 无 | string |
| backgroundModes | 无 | number |
| formEnabled | 无 | boolean |
| subType | 无 | AbilitySubType |
|deviceCapabilities |无| Array\<string>|
| metaData | 无 | Array\<CustomizeData>|
| maxWindowRatio | 无 | number |
| minWindowRatio | 无 | number |
| maxWindowWidth | 无 | number |
| minWindowWidth | 无 | number |
| maxWindowHeight | 无 | number |
| minWindowHeight | 无 | number |
| 无| windowSize | WindowSize |
其中API9新增结构体WindowSize属性如下:
| 属性名 | 类型 |
| :-------------: | :----: |
| maxWindowRatio | number |
| minWindowRatio | number |
| maxWindowWidth | number |
| minWindowWidth | number |
| maxWindowHeight | number |
| minWindowHeight | number |
**适配指导**<br>
使用API9 version的AbilityInfo结构体。
## cl.bundlemanager.9 BundleFlag变更,变更为@ohos.bundle.bundleManager中的BundleFlag、ApplicationFlag和AbilityFlag,涉及到接口入参修改。
BundleFlag变更,变更为@ohos.bundle.bundleManager中的BundleFlag、ApplicationFlag和AbilityFlag,根据新接口的入参,传入不同类型的flag。
**变更影响**<br>
BundleFlag变更,变更为@ohos.bundle.bundleManager中的BundleFlag、ApplicationFlag和AbilityFlag,根据新接口的入参描述,传入不同类型的flag。直接使用API Version 9之前的BundleFlag,可能查询失败。
**关键的接口/组件变更**<br>
原@ohos.bundle中的BundleFlag全部废弃,使用新的@ohos.bundle.bundleManager中的BundleFlag、ApplicationFlag和AbilityFlag代替。
API9的BundleFlag 如下表所示:
| BundleFlag |值 |描述|
|---|---| --|
|GET_BUNDLE_INFO_DEFAULT|0x00000000|获取默认BundleInfo,获取到的BundleInfo不包含signatureInfo, hapModuleInfo, appInfo, reqPermissionDetails和permissionGrantStates|
|GET_BUNDLE_INFO_WITH_APPLICATION| 0x00000001|额外获取appInfos|
|GET_BUNDLE_INFO_WITH_HAP_MODULE|0x00000002|额外获取hapModulesInfo|
|GET_BUNDLE_INFO_WITH_ABILITY|0x00000004|指定在获取hapModulesInfo的信息中是否包含abilitiesInfo,需要和GET_BUNDLE_INFO_WITH_HAP_MODULE一起使用,不能单独使用。|
|GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY|0x00000008|指定在获取hapModulesInfo的信息中是否包含extensionAbilitiesInfo,需要和GET_BUNDLE_INFO_WITH_HAP_MODULE一起使用,不能单独使用。|
|GET_BUNDLE_INFO_WITH_REQUESTED_PERMISSION|0x00000010|额外获取reqPermissionDetails和permissionGrantStates|
|GET_BUNDLE_INFO_WITH_METADATA|0x00000020|控制返回的ApplicationInfo, AbilityInfo和ExtensionAbilityInfo中是否包含metadata信息,不能单独使用|
|GET_BUNDLE_INFO_WITH_DISABLE|0x00000040|可获取被禁用application的BundleInfo和获取abilitiesInfo中disabled ability信息|
|GET_BUNDLE_INFO_WITH_SIGNATURE_INFO|0x00000080|额外获取signatureInfo|
API9的 ApplicationFlag 如下表所示
| ApplicationFlag |值 |描述|
|---|---| --|
|GET_APPLICATION_INFO_DEFAULT|0x00000000|获取默认ApplicationInfo,获取的ApplicationInfo不包含permissions和matedata|
|GET_APPLICATION_INFO_WITH_PERMISSION|0x00000001|额外获取permissions|
|GET_APPLICATION_INFO_WITH_METADATA|0x00000002|额外获取metadata|
|GET_APPLICATION_INFO_WITH_DISABLE|0x00000004|获取disabled的application信息|
API9的 AbilityFlag 如下表所示:
| AbilityFlag |值 |描述|
|---|---|---|
|GET_ABILITY_INFO_DEFAULT| 0x00000000|用于获取默认的AbilityInfo信息,不包含permission、metadata和 disabled 的 AbilityInfo|
|GET_ABILITY_INFO_WITH_PERMISSION | 0x00000001|用于获取带有permission信息的AbilityInfo|
|GET_ABILITY_INFO_WITH_APPLICATION | 0x00000002|用于获取带有ApplicationInfo结构体信息的AbilityInfo|
| GET_ABILITY_INFO_WITH_METADATA | 0x00000004|用于获取带有metadata信息的AbilityInfo|
|GET_ABILITY_INFO_WITH_DISABLE | 0x00000008|用于获取所有的AbilityInfo,包含被禁用的Ability|
|GET_ABILITY_INFO_ONLY_SYSTEM_APP | 0x00000010| 用于系统应用获取AbilityInfo|
**适配指导**<br>
根据调用的@ohos.bundle.bundleManager.d.ts中的接口,使用不同的flag类型。
## cl.bundlemanager.10 默认应用模块ApplicationType枚举值变更
@ohos.bundle.defaultApp模块,相关接口功能未发生变化,使用方式未发生变化。只有ApplicationType的枚举值有变化。
**变更影响**<br>
相关接口版本为API version 9,对API9之前的应用无影响。API9应用需要适配新枚举值。
**关键的接口/组件变更**<br>
ApplicationType的枚举值变化如下:
| ApplicationType | API9新增或变更 | API8及以前 |
| :-----: | :-------------: | :--------: |
| BROWSER | "Web Browser" | "BROWSER" |
| IMAGE | "Image Gallery" | "IMAGE" |
| AUDIO | "Audio Player" | "AUDIO" |
| VIDEO | "Video Player" | "VIDEO" |
| PDF | "PDF Viewer" | "PDF" |
| WORD | "Word Viewer" | "WORD" |
| EXCEL | "Excel Viewer" | "EXCEL" |
| PPT | "PPT Viewer" | "PPT" |
**适配指导**<br>
导入默认应用的模块,调用相关的接口。
```
import defaultApp form '@ohos.bundle.defaultAppManager'
```
## cl.bundlemanager.11 分布式包管理模块变更,原@ohos.distributedBundle.d.ts接口全部废弃,变更为@ohos.bundle.distributedBundle.d.ts,涉及接口变更。
API异常错误整改,分布式包管理模块变更,原@ohos.distributedBundle.d.ts接口全部废弃,变更为[@ohos.bundle.distributedBundleManager.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.bundle.distributedBundleManager.d.ts)。涉及接口getRemoteAbilityInfos,变更为getRemoteAbilityInfo。相关结构体RemoteAbilityInfo的二级模块导出功能也需要导入新模块才可以继续使用。
**变更影响**<br>
对API version 9之前的应用无影响。分布式模块和getRemoteAbilityInfos名称变更,会导致原有API version 9应用使用新的sdk编译失败。
**关键的接口/组件变更**<br>
@ohos.distributedBundle.d.ts中接口全部废弃,新增@ohos.bundle.distributedBundle.d.ts,其中部分接口保持与原接口功能一致。新接口全部支持异常处理。接口变更如下:
| 废弃 | API9新增或变更 | systemapi |
|----| ----| -- |
| getRemoteAbilityInfos | getRemoteAbilityInfo | 是|
**适配指导**<br>
需要导入新的分布式模块:
```
import distributedBundle form '@ohos.bundle.distributedBundle'
```
## cl.bundlemanager.12 免安装模块和接口变更,从@ohos.bundle.d.ts移到@ohos.bundle.freeInstall.d.ts,涉及模块和接口变更
API支持异常处理整改,免安装模块变更,从@ohos.bundle.d.ts移到@ohos.bundle.freeInstall.d.ts,涉及模块和接口变更,系统能力为SystemCapability.BundleManager.BundleFramework.FreeInstall。
1. 原导入的@ohos.bundle模块需要变更为@ohos.bundle.freeInstall。
2. setModuleUpgradeFlag变更为setHapModuleUpgradeFlag。
3. isModuleRemovable变更为isHapModuleRemovable。
4. getDispatcher变更为getDispatchInfo
**变更影响**<br>
对API version 9之前的应用无影响,使用API9接口的应用会编译失败。
**关键的接口/组件变更**<br>
免安装相关接口变更如下表所示。未在表中列出的表示接口名称和使用方法未发生变更,仅修改了模块名称。
|废弃 | API9新增或变更 | systemapi |
|----|----|----|
|setModuleUpgradeFlag|setHapModuleUpgradeFlag| 是 |
|isModuleRemovable|isHapModuleRemovable| 是 |
|getDispatcher|getDispatchInfo| 是 |
**适配指导**<br>
使用免安装相关接口,需要导入新的模块,按照接口前后对应关系进行修改。
```
import freeInstall from '@ohos.bundle.freeInstall'
```
## cl.bundlemanager.13 免安装相关结构体DisPatchInfo、AbilityFormInfo、ModuleDistroInfo和ModuleConfigInfo发生字段变更
免安装相关结构体DisPatchInfo、AbilityFormInfo、ModuleDistroInfo和ModuleConfigInfo发生字段变更:
1. DispatchInfo中字段dispatchAPI名称修改为[dispatchAPIVersion](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/DispatchInfo.d.ts),属性不变,为string。表示免安装接口的版本信息,含义不变。
2. AbilityFormInfo结构体字段属性变更,原有字段supportDimensions属性由Array\<number>修改为Array\<string>;
3. AbilityFormInfo结构体字段属性变更,原有字段defaultDimension属性由number修改为string。
4. ModuleDistroInfo结构体废弃mainAbility字段,移至ModuleConfigInfo结构体中。
5. ModuleConfigInfo结构体新增mainAbility字段。
**变更影响**<br>
对API version 9之前的应用无影响。结构体名称字段属性变更,会导致原有API9应用使用新的sdk编译失败。
**关键的接口/组件变更**<br>
1. DispatchInfo
| 废弃 | API9新增或变更 | 属性|
|---|----|---|
| dispatchAPI | dispatchAPIVersion | string |
2. AbilityFormInfo
| 字段 | API9属性 | 原属性 |
|---|----|---|
| supportDimensions | Array\<string> | Array\<number> |
| defaultDimension | string| number |
3. ModuleDistroInfo
| 字段 | API9新增或变更 | 属性 |
|---|----|---|
| mainAbility | 无| string |
4. MooduleConfigInfo
| 字段 | API9新增或变更 | 属性 |
|---|----|---|
| 无 | mainAbility| string |
**适配指导**<br>
使用免安装相关接口,需要导入新的模块,按照结构体前后对应关系进行修改。
```
import freeInstall from '@ohos.bundle.freeInstall'
```
## cl.bundlemanager.14 结构体GrantStatus变更为PermissionGrantState
结构体GrantStatus变更为PermissionGrantState,枚举类型和值不变。
**变更影响**<br>
对API version 9之前的应用无影响。结构体名称字变更,会导致原有API9应用使用新的sdk编译失败。
**关键的接口/组件变更**<br>
表示授权状态的GrantStatus结构体变更为@ohos.bundle.bundleManager.d.ts中的PermissionGrantState。
| 枚举名 | 枚举值 |
| ---| ---|
| PERMISSION_DENIED | -1 |
| PERMISSION_GRANTED | 0 |
**适配指导**<br>
需要导入新的模块,修改结构体名称为PermissionGrantState。
```
import bundle form '@ohos.bundle.bundleManager'
```
## cl.bundlemanager.15 包管理ShortcutInfo结构体字段变更
包管理ShortcutInfo结构体字段变更,原有bundle/shortcutInfo.d.ts字段全部废弃,变更为[bundleManager/shortcutInfo.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/ShortcutInfo.d.ts)。ShortcutInfo和ShortWant结构体全部为systemapi。
**变更影响**<br>
对API version 9之前的应用无影响。结构体名称字段属性变更,会导致原有API9应用使用新的sdk编译失败。
**关键的接口/组件变更**<br>
涉及到ShortcutInfo和ShortcutWant结构体。如果需要使用二级模块导出功能,需要导入新模块@ohos.bundle.launcherBundleManager。
ShortcutInfo结构体变化如下表,未在表格中列出的表明字段在API9上还存在。
| 废弃 | API9新增或变更 | 属性 |
| ---| ---| ---|
| disableMessage | 无 | string |
| isStatic | 无 | boolean |
| isHomeShortcut | 无 | boolean |
| isEnabled | 无 | boolean |
| disableMessage | 无 | boolean |
ShortcutWant结构体如下表,未在表格中列出的表明字段在API9上还存在。
| 废弃 | API9新增或变更 | 属性 |
| ---| ---| ---|
| targetClass | targetAbility | string |
**适配指导**<br>
使用免安装相关接口,需要导入新的模块,按照结构体前后对应关系进行修改。
```
import launcherBundleManager form '@ohos.bundle.launcherBundleManager'
```
## cl.bundlemanager.16 包管理getBundleInstaller接口变更,从@ohos.bundle.d.ts移至@ohos.bundle.installer.d.ts
包管理getBundleInstaller接口变更,从@ohos.bundle.d.ts移至[@ohos.bundle.installer.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.bundle.installer.d.ts)
.,系统能力为SystemCapability.BundleManager.BundleFramework.Core。
**变更影响**<br>
对API version 9之前的应用无影响。使用API9的应用需要适配新模块和新接口。
**关键的接口/组件变更**<br>
1. getBundleInstaller,导入模块由@ohos.bundle变更为@ohos.bundle.installer。
**适配指导**<br>
导入新的包管理安装模块,调用getBundleInstaller
```
import installer form '@ohos.bundle.installer'
```
## cl.bundlemanager.17 包管理安装接口变更,从bundle/bundleInstaller.d.ts移至@ohos.bundle.installer.d.ts
包管理安装接口变更,从bundle/bundleInstaller.d.ts移至[@ohos.bundle.installer.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.bundle.installer.d.ts),系统能力为SystemCapability.BundleManager.BundleFramework.Core。
**变更影响**<br>
对API version 9之前的应用无影响。使用API9的应用需要适配新模块和新接口。
**关键的接口/组件变更**<br>
1. install/uninstall/recover接口增加了异常处理能力,接口名称和入参均未发生变化,仅修改了模块名称。
2. HashParam结构体新增字段
| API9新增 | 属性 |
|---|---|
| moduleName | string |
| hashValue | string |
3. InstallParam结构体变更如下:
| API9新增 | 属性 |
|---|--|
| userId | number |
| installFlag | number |
| isKeepData | boolean |
| hashParams | Array\<HashParam> |
| crowdtestDeadline | number |
4. InstallStatus,结构体已废弃。
**适配指导**<br>
导入新的包管理安装模块,调用getBundleInstaller
```
import installer form '@ohos.bundle.installer'
```
## cl.bundlemanager.18 包管理安装功能变更
包管理安装规格变更,增加了对应用deviceType配置和设备类型的匹配校验,如果两者匹配失败,则安装失败。
**变更影响**<br>
影响在此前版本已开发的应用,应用需要适配才能在新版本镜像安装成功。
**关键的接口/组件变更**<br>
不涉及
**适配指导**<br>
提供指导,在应用配置文件config.json或者module.json的deviceType配置对应的设备类型。
```
{
"module": {
"name": "entry",
"type": "entry",
// ...
"deviceTypes":[
// 该示例配置了default和tablet,则支持在default和tablet上进行安装。
"default",
"tablet"
],
// ...
}
```
## cl.bundlemanager.19 包管理innerBundleManger模块接口变更,@ohos.bundle.innerBundleManger.d.ts接口全部废弃,移至@ohos.bundle.launcherBundleManager.d.ts。
innerBundleManager相关接口功能未发生变化,使用方式有变化。需要导入[@ohos.bundle.launcherBundleManager.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.bundle.launcherBundleManager.d.ts)模块来使用innerBundleManager相关的接口,系统能力为SystemCapability.BundleManager.BundleFramework.Core。
**变更影响**<br>
相关接口版本为API version 9,对api9之前的应用无影响。使用了innerBundleManager接口能力的应用需要适配新的模块和接口。
**关键的接口/组件变更**<br>
以下接口功能和入参未发生变化,增加了API异常处理。使用二级模块导出ShortcutInfo和ShortcutWant时,需要导入新模块@ohos.bundle.launcherBundleManager。on/off接口从@ohos.bundle.innerBundleManger.d.ts中废弃,移至@ohos.bundle.bundleMonitor.d.ts中。
1. getLauncherAbilityInfos<br>
2. getAllLauncherAbilityInfos<br>
3. getShortcutInfos
**适配指导**<br>
需要导入新模块@ohos.bundle.launcherBundleManage
```
import launcherBundleManager form '@ohos.bundle.launcherBundleManage'
```
## cl.bundlemanager.20 innerBundleManagr模块变更,on, off接口从@ohos.bundle.innerBundleManager模块移到@ohos.bundle.bundleMonitor.d.ts模块
innerBundleManager相关接口功能未发生变化,使用方式有变化。需要导入[@ohos.bundle.bundleMonitor.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.bundle.bundleMonitor.d.ts)模块来使用innerBundleManager相关的接口,均为systemapi。系统能力为SystemCapability.BundleManager.BundleFramework.Core。
**变更影响**<br>
相关接口版本为API version 9,对API9之前的应用无影响。使用了innerBundleManager接口能力的应用需要适配新的模块和接口。
**关键的接口/组件变更**<br>
on/off变更至@ohos.bundle.bundleMonitor.d.ts,使用接口入参与老接口不同。API9函数原型为:
```
function on(type: BundleChangedEvent, callback: Callback<BundleChangedInfo>): void;
function off(type: BundleChangedEvent, callback?: Callback<BundleChangedInfo>): void;
```
其中BundleChangedEvent为:
```
type BundleChangedEvent = 'add' | 'update' | 'remove';
```
回调函数BundleChangedInfo为:
```
interface BundleChangedInfo {
readonly bundleName: string;
readonly userId: number;
}
```
由调用方获取到BundleChangedInfo后,继续执行相关操作(即老接口中BundleStatusCallback中的add、update和remove等函数)。
**适配指导**<br>
导入bundleMonitor的模块,调用相关接口。
```
import bundleMonitor form '@ohos.bundle.bundleMonitor'
```
## cl.bundlemanager.21 包管理bundleStatusCallback.d.ts接口全部废弃,移至@ohos.bundle.bundleMonitor.d.ts中。
包管理bundleStatusCallback.d.ts接口全部废弃,移至[@ohos.bundle.bundleMonitor.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.bundle.bundleMonitor.d.ts)中。原有BundleStatusCallback中的add、update和remove全部废弃,变更为BundleChangedEvent,为systemapi。系统能力为SystemCapability.BundleManager.BundleFramework.Core。
**变更影响**<br>
相关接口版本为API version 9,对API9之前的应用无影响。使用了BundleStatusCallback接口能力的应用需要适配新的模块和接口。
**关键的接口/组件变更**<br>.
以下接口全部废弃,在@ohos.bundle.bundleMonitor.d.ts中新增BundleChangedEvent。
1. add
2. update
3. remove
**适配指导**<br>
导入bundleMonitor的模块,调用相关接口。与之前的BundleStatusCallback方式不同,BundleStatusCallback是将add、update和remove方法传入on/off接口,API9的BundleMonitor接口是通过on/off接口将BundleChangedInfo通过回调函数返回出来给调用方使用。
```
import bundleMonitor form '@ohos.bundle.bundleMonitor'
```
## cl.bundlemanager.22 包管理Zlib模块接口变更,@ohos.zlib.d.ts中接口涉及废弃和变更。
包管理Zlib模块接口变更,[@ohos.zlib.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.zlib.d.ts)中接口涉及废弃和变更。系统能力为SystemCapability.BundleManager.Zlib。
**变更影响**<br>
相关接口版本为API version 9,对API9之前的应用无影响。使用了API9的应用需要适配新的模块和接口。
**关键的接口/组件变更**<br>
@ohos.zlib.d.ts中涉及到变更的接口如下表所示,新增API9接口使用方法与之前相同,支持API异常处理。
| 废弃 | API9新增或变更 | systemapi|
|---|----|---|
| zipFile | compressFile | 是 |
| unzipFile | decompressFile | 是 |
| ErrorCode | 无 | 是 |
**适配指导**<br>
导入模块未发生变化,直接使用新接口,适配异常处理。
```
import zlib form '@ohos.zlib'
```
# 帐号子系统ChangeLog
## cl.account_os_account.1 帐号SystemAPI错误信息返回方式变更
已发布的部分帐号SystemAPI使用业务逻辑返回值表示错误信息,不符合OpenHarmony接口错误码规范。从API9开始作以下变更:
异步接口:通过AsyncCallback或Promise的error对象返回错误信息。
同步接口:通过抛出异常的方式返回错误信息。
**变更影响**
基于此前版本开发的应用,需适配变更接口的错误信息返回方式,否则会影响原有业务逻辑。
**关键接口/组件变更**
变更前:
- class UserAuth
- setProperty(request: SetPropertyRequest, callback: AsyncCallback&lt;number&gt;): void;
- setProperty(request: SetPropertyRequest): Promise&lt;number&gt;;
- cancelAuth(contextID: Uint8Array): number;
- class PINAuth
- registerInputer(inputer: Inputer): boolean;
- UserIdentityManager
- cancel(challenge: Uint8Array): number;
变更后:
- class UserAuth
- setProperty(request: SetPropertyRequest, callback: AsyncCallback&lt;void&gt;): void;
- setProperty(request: SetPropertyRequest): Promise&lt;void&gt;;
- cancelAuth(contextID: Uint8Array): void;
- class PINAuth
- registerInputer(inputer: Inputer): void;
- UserIdentityManager
- cancel(challenge: Uint8Array): void;
**适配指导**
异步接口以setProperty为例,示例代码如下:
```
import account_osAccount from "@ohos.account.osAccount"
userAuth.setProperty({
authType: account_osAccount.AuthType.PIN,
key: account_osAccount.SetPropertyType.INIT_ALGORITHM,
setInfo: new Uint8Array([0])
}, (err) => {
if (err) {
console.log("setProperty failed, error: " + JSON.stringify(err));
} else {
console.log("setProperty successfully");
}
});
userAuth.setProperty({
authType: account_osAccount.AuthType.PIN,
key: account_osAccount.SetPropertyType.INIT_ALGORITHM,
setInfo: new Uint8Array([0])
}).catch((err) => {
if (err) {
console.log("setProperty failed, error: " + JSON.stringify(err));
} else {
console.log("setProperty successfully");
}
});
```
同步接口以registerInputer为例,示例代码如下:
```
import account_osAccount from "@ohos.account.osAccount"
let pinAuth = new account_osAccount.PINAuth()
let inputer = {
onGetData: (authType, passwordRecipient) => {
let password = new Uint8Array([0]);
passwordRecipient.onSetData(authType, password);
}
}
try {
pinAuth.registerInputer(inputer);
} catch (err) {
console.log("registerInputer failed, error: " + JSON.stringify(err));
}
```
## cl.account_os_account.2 应用帐号鉴权服务ACTION定义变更
**变更影响**
基于此前版本开发的应用,需适配修改应用配置文件(FA模型为config.json或Stage模型为module.json5)中的ACTION才能正常对外提供应用鉴权服务。
**关键接口/组件变更**
涉及的常量:
@ohos.ability.wantConstant.ACTION_APP_ACCOUNT_AUTH
变更前:
ACTION_APP_ACCOUNT_AUTH = "account.appAccount.action.auth"
变更后:
ACTION_APP_ACCOUNT_AUTH = "ohos.appAccount.action.auth"
**适配指导**
提供应用帐号鉴权服务的三方应用,需要在相关ServiceAbility的配置文件(FA模型为config.json或Stage模型为module.json5)中适配变更后的应用帐号认证ACTION,示例如下:
```
"abilities": [
{
"name": "ServiceAbility",
"srcEntrance": "./ets/ServiceAbility/ServiceAbility.ts",
...
"visible": true,
"skills": {
{
"actions": [
"ohos.appAccount.action.auth"
]
}
}
}]
}
# 分布式调度子系统ChangeLog
## cl.DistributedManagerService.1 continuationManager接口新增DATASYNC权限校验
此前版本continuationManager接口未对调用方进行校验,不符合OpenHarmony的API接口规范。
已做出以下变更:调用方使用continuationManager前需提前申请"ohos.permission.DISTRIBUTED_DATASYNC"权限。
**变更影响**
基于此前版本开发的应用,需提前申请"ohos.permission.DISTRIBUTED_DATASYNC"权限,否则会影响原有业务逻辑。
**关键的接口/组件变更**
涉及接口
- continuationManager.registerContinuation;
- continuationManager.on;
- continuationManager.off;
- continuationManager.unregisterContinuation;
- continuationManager.updateContinuationState;
- continuationManager.startContinuationDeviceManager;
# xxx子系统ChangeLog
相比最近一个发布版本(包括不限于LTS、Release、Beta、monthly版本)发生了影响契约兼容性(契约兼容:也称语义兼容,指版本演进后,开发者原有程序行为不发生变化)的变更(包括不限于接口名、参数、返回值、所需要的权限、调用顺序、枚举值、配置参数、路径等),则需要在ChangeLog中对变更进行阐述。
## cl.subsystemname.x xxx功能变更, 例:DeviceType属性变更、相机权限变更(尽量概括,不要超过15个字)
每个变更标题前需要附加编号:cl.subsystemname.x。cl为ChangeLog首字母缩写,subsystemname请填写子系统英文标准名称,x表示变更序号(从低到高逐位增加,起始为1)。
以功能维度对变更点进行概括描述。例如:xxx功能的xxx、xxx等发生了xxx变化,开发者需要根据以下说明对应用进行适配。
如果有此变更有对应的需求或设计文档,可以在描述中附上对应的设计文档编号。
**变更影响**
是否影响已发布的接口或者接口行为发生变更,影响的是JS接口还是Native接口。
是否影响在此前版本已开发的应用,即应用是否需要进行适配动才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
列举此功能变更涉及的接口/组件变更。
**适配指导(可选,不涉及则可以删除)**
提供指导,帮助开发者针对相关变更进行适配,使应用可以与新版本兼容。
例:
在xxx文件中将xxx参数修改为xxx。
```
sample code
```
# xxx子系统ChangeLog
相比最近一个发布版本(包括不限于LTS、Release、Beta、monthly版本)发生了影响契约兼容性(契约兼容:也称语义兼容,指版本演进后,开发者原有程序行为不发生变化)的变更(包括不限于接口名、参数、返回值、所需要的权限、调用顺序、枚举值、配置参数、路径等),则需要在ChangeLog中对变更进行阐述。
## cl.subsystemname.x xxx功能变更, 例:DeviceType属性变更、相机权限变更(尽量概括,不要超过15个字)
每个变更标题前需要附加编号:cl.subsystemname.x。cl为ChangeLog首字母缩写,subsystemname请填写子系统英文标准名称,x表示变更序号(从低到高逐位增加,起始为1)。
以功能维度对变更点进行概括描述。例如:xxx功能的xxx、xxx等发生了xxx变化,开发者需要根据以下说明对应用进行适配。
如果有此变更有对应的需求或设计文档,可以在描述中附上对应的设计文档编号。
**变更影响**
是否影响已发布的接口或者接口行为发生变更,影响的是JS接口还是Native接口。
是否影响在此前版本已开发的应用,即应用是否需要进行适配动才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
列举此功能变更涉及的接口/组件变更。
**适配指导(可选,不涉及则可以删除)**
提供指导,帮助开发者针对相关变更进行适配,使应用可以与新版本兼容。
例:
在xxx文件中将xxx参数修改为xxx。
```
sample code
```
# 用户IAM子系统Changelog
## cl.useriam.1 API9 GetVesion接口删除
为优化用户IAM接口,从当前版本开始做如下变更:
用户IAM删除GetVersion(API 9)接口。
**变更影响**
对用户IAM GetVersion(API 9)接口的使用有影响,需删除对此接口的调用,否则会调用失败。
**关键接口/组件变更**
| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
| ---------------------- | ------------------- | ------------------------- | ------------------------ |
| ohos.userIAM.userAuth | function | getVersion() : number | 删除 |
**适配指导**
需删除对用户IAM GetVersion(API 9)接口的调用。
## cl.useriam.2 API8 GetVesion接口返回值变更
为统一用户IAM GetVersion(API 8)接口的返回值。从当前版本开始做如下变更:
用户IAM GetVersion(API 8)接口的返回值由0变更为1。
**变更影响**
对用户IAM GetVersion(API 8)接口的使用有影响,如应用校验了此接口的返回值,修改后校验不通过。
**关键接口/组件变更**
用户IAM GetVersion(API 8)接口的返回值由0变更为1。
**适配指导**
此接口已废弃,需删除对用户IAM GetVersion(API 8)接口的使用。
# 帐号子系统ChangeLog
## cl.account_os_account.1 分布式帐号昵称和头像规格扩大
已有分布式帐号的昵称长度和头像大小的规格过小,无法满足其他昵称较长、头像较大的使用场景。
因此,将分布式帐号昵称长度和头像大小的规格扩大。
**变更影响**
该接口变更前向兼容,基于此前版本开发的应用可按照最新规格使用该接口,原有逻辑不受影响。
**关键接口/组件变更**
变更前:
- 昵称长度限制为20个字符,头像大小限制为3M
变更后:
- 昵称长度限制为1024个字符,头像大小限制为10M
# 位置服务子系统ChangeLog
## cl.location.1 删除API9接口geoLocationManager.requestEnableLocation
在位置开关关闭的场景下,应用可以调用geoLocationManager.requestEnableLocation接口,以请求用户开启位置开关;实际该接口使用较少,并且该接口用户体验不太好,并没有告诉用户该应用在什么场景下使用位置信息。
因此变更为由应用本身弹框请求用户跳转到settings开启位置开关,并且在弹框上写清楚会在什么场景下使用位置信息,这样用户体验更好。
**变更影响**
在API9上应用无法使用geoLocationManager.requestEnableLocation请求用户开启位置开关,需要应用自己实现弹框,请求用户开启位置开关。
**关键的接口/组件变更**
| 类名 | 接口类型 | 接口声明 | 变更类型 |
| -- | -- | -- | -- |
|geoLocationManager| method | function requestEnableLocation(callback: AsyncCallback&lt;boolean&gt;): void; | 该接口从API9中删除 |
|geoLocationManager| method | function requestEnableLocation(): Promise&lt;boolean&gt;; | 该接口从API9中删除 |
# 基础通信子系统WiFi ChangeLog
## cl.location.1 位置服务权限变更
从API9开始,增加ohos.permission.APPROXIMATELY_LOCATION,表示模糊位置权限。
如果应用开发者使用的API版本大于等于9,则需要同时申请ohos.permission.LOCATION和ohos.permission.APPROXIMATELY_LOCATION,单独申请ohos.permission.LOCATION会失败。
**变更影响**
如果是存量应用(使用的API版本小于9),则无影响。如果使用的API版本大于等于9,位置服务权限申请方式有变更,详情如下:
应用在使用系统能力前,需要检查是否已经获取用户授权访问设备位置信息。如未获得授权,可以向用户申请需要的位置权限,申请方式请参考下文。
系统提供的定位权限有:
- ohos.permission.LOCATION
- ohos.permission.APPROXIMATELY_LOCATION
- ohos.permission.LOCATION_IN_BACKGROUND
访问设备的位置信息,必须申请权限,并且获得用户授权。
API9之前的版本,申请ohos.permission.LOCATION即可。
API9及之后的版本,需要申请ohos.permission.APPROXIMATELY_LOCATION或者同时申请ohos.permission.APPROXIMATELY_LOCATION和ohos.permission.LOCATION;无法单独申请ohos.permission.LOCATION。
| 使用的API版本 | 申请位置权限 | 申请结果 | 位置的精确度 |
| -------- | -------- | -------- | -------- |
| 小于9 | ohos.permission.LOCATION | 成功 | 获取到精准位置,精准度在米级别。 |
| 大于等于9 | ohos.permission.LOCATION | 失败 | 无法获取位置。 |
| 大于等于9 | ohos.permission.APPROXIMATELY_LOCATION | 成功 | 获取到模糊位置,精确度为5公里。 |
| 大于等于9 | ohos.permission.APPROXIMATELY_LOCATION和ohos.permission.LOCATION | 成功 | 获取到精准位置,精准度在米级别。 |
如果应用在后台运行时也需要访问设备位置,除需要将应用声明为允许后台运行外,还必须申请ohos.permission.LOCATION_IN_BACKGROUND权限,这样应用在切入后台之后,系统可以继续上报位置信息。
开发者可以在应用配置文件中声明所需要的权限,具体可参考[授权申请指导](../../../application-dev/security/accesstoken-guidelines.md)
**关键的接口/组件变更**
| 类名 | 接口类型 | 接口声明 | 变更类型 |
| -- | -- | -- | -- |
|wifiManager| method | function scan(): void; | 权限变更为ohos.permission.SET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION |
|wifiManager| method | function getScanResults(): Promise&lt;Array&lt;WifiScanInfo&gt;&gt;; | 权限变更为ohos.permission.GET_WIFI_INFO and (ohos.permission.GET_WIFI_PEERS_MAC or (ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION)) |
|wifiManager| method | function getScanResults(callback: AsyncCallback&lt;Array&lt;WifiScanInfo&gt;&gt;): void; | 权限变更为ohos.permission.GET_WIFI_INFO and (ohos.permission.GET_WIFI_PEERS_MAC or (ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION)) |
|wifiManager| method | function getScanResultsSync(): Array&lt;WifiScanInfo&gt;; | 权限变更为ohos.permission.GET_WIFI_INFO and (ohos.permission.GET_WIFI_PEERS_MAC or (ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION)) |
|wifiManager| method | function getCandidateConfigs(): Array&lt;WifiDeviceConfig&gt;; | 权限变更为ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION |
|wifiManager| method | function getDeviceConfigs(): Array&lt;WifiDeviceConfig&gt;; | 权限变更为ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION and ohos.permission.GET_WIFI_CONFIG |
|wifiManager| method | function getStations(): Array&lt;StationInfo&gt;; | 权限变更为ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION and ohos.permission.MANAGE_WIFI_HOTSPOT |
|wifiManager| method | function getCurrentGroup(): Promise&lt;WifiP2pGroupInfo&gt;; | 权限变更为ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION |
|wifiManager| method | function getCurrentGroup(callback: AsyncCallback&lt;WifiP2pGroupInfo&gt;): void; | 权限变更为ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION |
|wifiManager| method | function getP2pPeerDevices(): Promise&lt;WifiP2pDevice[]&gt;; | 权限变更为ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION |
|wifiManager| method | function getP2pPeerDevices(callback: AsyncCallback&lt;WifiP2pDevice[]&gt;): void; | 权限变更为ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION |
|wifiManager| method | function p2pConnect(config: WifiP2PConfig): void; | 权限变更为ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION |
|wifiManager| method | function startDiscoverDevices(): void; | 权限变更为ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION |
|wifiManager| method | function getP2pGroups(): Promise&lt;Array&lt;WifiP2pGroupInfo&gt;&gt;; | 权限变更为ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION |
|wifiManager| method | function getP2pGroups(callback: AsyncCallback&lt;Array&lt;WifiP2pGroupInfo&gt;&gt;): void; | 权限变更为ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION |
|wifiManager| method | function on(type: "p2pDeviceChange", callback: Callback&lt;WifiP2pDevice&gt;): void; | 权限变更为ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION |
|wifiManager| method | function off(type: "p2pDeviceChange", callback?: Callback&lt;WifiP2pDevice&gt;): void; | 权限变更为ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION |
|wifiManager| method | function on(type: "p2pPeerDeviceChange", callback: Callback&lt;WifiP2pDevice[]&gt;): void; | 权限变更为ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION |
|wifiManager| method | function off(type: "p2pPeerDeviceChange", callback?: Callback&lt;WifiP2pDevice[]&gt;): void; | 权限变更为ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION |
\ No newline at end of file
# web子系统ChangeLog
OpenHarmony 4.0.2.1 版本相较于OpenHarmony 之前的版本,web的API变更如下。
## cl.web.1 postMessageEvent参数类型变更
该接口postMessageEvent原先仅支持string类型,从4.0.2.1版本开始新增支持ArrayBuffer类型。
**变更影响**
该接口变更前向兼容,基于此前版本开发的应用可继续使用接口,原有功能不受影响。
**关键的接口/组件变更**
- 涉及接口
postMessageEvent(message: string): void
- 变更前:
```ts
postMessageEvent(message: string): void
```
- 变更后:
```ts
type WebMessage = ArrayBuffer | string
postMessageEvent(message: WebMessage): void
```
**适配指导**
该接口变更前向兼容,基于此前版本开发的应用可继续使用接口,原有功能不受影响。
## cl.web.2 onMessageEvent参数类型变更
该接口onMessageEvent原先仅支持string类型,从4.0.2.1版本开始新增支持ArrayBuffer类型。
**变更影响**
该接口变更前向兼容,基于此前版本开发的应用可继续使用接口,增加相应的逻辑处理,原有功能不受影响。
**关键的接口/组件变更**
- 涉及接口
onMessageEvent(callback: (result: string) => void): void
- 变更前:
```ts
onMessageEvent(callback: (result: string) => void): void
```
- 变更后:
```ts
type WebMessage = ArrayBuffer | string
onMessageEvent(callback: (result: WebMessage) => void): void
```
**适配指导**
该接口变更前向兼容,基于此前版本开发的应用可继续使用接口,增加相应的逻辑处理,原有功能不受影响。
\ No newline at end of file
# 元能力子系统ChangeLog
## cl.ability.1 SystemAPI使用规则变更
目前元能力提供的system-api在调用时未做系统应用校验,三方应用使用Full版本的SDK就可以使用这些system-api,存在安全隐患,因此在OpenHarmony 4.0.2.1版本开始增加应用身份校验。
**变更影响**
只有系统应用允许使用system-api,三方应用使用system-api将返回202错误,返回202错误的方式有两种:1.抛异常;2.异步回调
**关键接口/组件变更**
system-api列表如下所示。
| 模块名 | 方法 | 返回错误码方式 |
| ------------------------------------------ | --------------------------------------------------------------------------------- | -------------- |
| @ohos.app.ability.abilityManager.d.ts | updateConfiguration(config: Configuration, callback: AsyncCallback<void>): void | 异步回调 |
| @ohos.app.ability.abilityManager.d.ts | updateConfiguration(config: Configuration): Promise<void> | 异步回调 |
| @ohos.app.ability.abilityManager.d.ts | getAbilityRunningInfos(): Promise<Array<AbilityRunningInfo>> | 异步回调 |
| @ohos.app.ability.abilityManager.d.ts | getAbilityRunningInfos(callback: AsyncCallback<Array<AbilityRunningInfo>>): void | 异步回调 |
| @ohos.app.ability.abilityManager.d.ts | getExtensionRunningInfos(upperLimit: number): Promise<Array<ExtensionRunningInfo>> | 异步回调 |
| @ohos.app.ability.abilityManager.d.ts | getExtensionRunningInfos(upperLimit: number, callback: AsyncCallback<Array<ExtensionRunningInfo>>): void | 异步回调 |
| @ohos.app.ability.abilityManager.d.ts | getTopAbility(): Promise<ElementName> | 抛异常 |
| @ohos.app.ability.abilityManager.d.ts | getTopAbility(callback: AsyncCallback<ElementName>): void | 抛异常 |
| @ohos.app.ability.appManager.d.ts | on(type: "applicationState", observer: ApplicationStateObserver): number | 异步回调 |
| @ohos.app.ability.appManager.d.ts | on(type: "applicationState", observer: ApplicationStateObserver, bundleNameList: Array<string>): number | 异步回调 |
| @ohos.app.ability.appManager.d.ts | off(type: "applicationState", observerId: number, callback: AsyncCallback<void>): void | 异步回调 |
| @ohos.app.ability.appManager.d.ts | off(type: "applicationState", observerId: number): Promise<void> | 异步回调 |
| @ohos.app.ability.appManager.d.ts | getForegroundApplications(callback: AsyncCallback<Array<AppStateData>>): void | 异步回调 |
| @ohos.app.ability.appManager.d.ts | getForegroundApplications(): Promise<Array<AppStateData>> | 异步回调 |
| @ohos.app.ability.appManager.d.ts | killProcessWithAccount(bundleName: string, accountId: number): Promise<void> | 异步回调 |
| @ohos.app.ability.appManager.d.ts | killProcessWithAccount(bundleName: string, accountId: number, callback: AsyncCallback<void>): void | 异步回调 |
| @ohos.app.ability.appManager.d.ts | killProcessesByBundleName(bundleName: string): Promise<void> | 异步回调 |
| @ohos.app.ability.appManager.d.ts | killProcessesByBundleName(bundleName: string, callback: AsyncCallback<void>) | 异步回调 |
| @ohos.app.ability.appManager.d.ts | clearUpApplicationData(bundleName: string): Promise<void> | 异步回调 |
| @ohos.app.ability.appManager.d.ts | clearUpApplicationData(bundleName: string, callback: AsyncCallback<void>) | 异步回调 |
| @ohos.app.ability.missionManager.d.ts | on(type: "mission", listener: MissionListener): number | 异步回调 |
| @ohos.app.ability.missionManager.d.ts | off(type: "mission", listenerId: number, callback: AsyncCallback<void>): void | 异步回调 |
| @ohos.app.ability.missionManager.d.ts | off(type: "mission", listenerId: number): Promise<void> | 异步回调 |
| @ohos.app.ability.missionManager.d.ts | getMissionInfo(deviceId: string, missionId: number, callback: AsyncCallback<MissionInfo>): void | 异步回调 |
| @ohos.app.ability.missionManager.d.ts | getMissionInfo(deviceId: string, missionId: number): Promise<MissionInfo> | 异步回调 |
| @ohos.app.ability.missionManager.d.ts | getMissionInfos(deviceId: string, numMax: number, callback: AsyncCallback<Array<MissionInfo>>): void | 异步回调 |
| @ohos.app.ability.missionManager.d.ts | getMissionInfos(deviceId: string, numMax: number): Promise<Array<MissionInfo>> | 异步回调 |
| @ohos.app.ability.missionManager.d.ts | getMissionSnapShot(deviceId: string, missionId: number, callback: AsyncCallback<MissionSnapshot>): void | 异步回调 |
| @ohos.app.ability.missionManager.d.ts | getMissionSnapShot(deviceId: string, missionId: number): Promise<MissionSnapshot> | 异步回调 |
| @ohos.app.ability.missionManager.d.ts | getLowResolutionMissionSnapShot(deviceId: string, missionId: number, callback: AsyncCallback<MissionSnapshot>): void | 异步回调 |
| @ohos.app.ability.missionManager.d.ts | getLowResolutionMissionSnapShot(deviceId: string, missionId: number): Promise<MissionSnapshot> | 异步回调 |
| @ohos.app.ability.missionManager.d.ts | lockMission(missionId: number, callback: AsyncCallback<void>): void | 异步回调 |
| @ohos.app.ability.missionManager.d.ts | lockMission(missionId: number): Promise<void> | 异步回调 |
| @ohos.app.ability.missionManager.d.ts | unlockMission(missionId: number, callback: AsyncCallback<void>): void | 异步回调 |
| @ohos.app.ability.missionManager.d.ts | unlockMission(missionId: number): Promise<void> | 异步回调 |
| @ohos.app.ability.missionManager.d.ts | clearMission(missionId: number, callback: AsyncCallback<void>): void | 异步回调 |
| @ohos.app.ability.missionManager.d.ts | clearMission(missionId: number): Promise<void> | 异步回调 |
| @ohos.app.ability.missionManager.d.ts | clearAllMissions(callback: AsyncCallback<void>): void | 异步回调 |
| @ohos.app.ability.missionManager.d.ts | clearAllMissions(): Promise<void> | 异步回调 |
| @ohos.app.ability.missionManager.d.ts | moveMissionToFront(missionId: number, callback: AsyncCallback<void>): void | 异步回调 |
| @ohos.app.ability.missionManager.d.ts | moveMissionToFront(missionId: number, options: StartOptions, callback: AsyncCallback<void>): void | 异步回调 |
| @ohos.app.ability.missionManager.d.ts | moveMissionToFront(missionId: number, options?: StartOptions): Promise<void> | 异步回调 |
| @ohos.app.ability.quickFixManager.d.ts | applyQuickFix(hapModuleQuickFixFiles: Array<string>, callback: AsyncCallback<void>): void | 异步回调 |
| @ohos.app.ability.quickFixManager.d.ts | applyQuickFix(hapModuleQuickFixFiles: Array<string>): Promise<void> | 异步回调 |
| @ohos.app.ability.quickFixManager.d.ts | getApplicationQuickFixInfo(bundleName: string, callback: AsyncCallback<ApplicationQuickFixInfo>): void | 异步回调 |
| @ohos.app.ability.quickFixManager.d.ts | getApplicationQuickFixInfo(bundleName: string): Promise<ApplicationQuickFixInfo> | 异步回调 |
| @ohos.app.ability.wantAgent.d.ts | getWant(agent: WantAgent, callback: AsyncCallback<Want>): void | 异步回调 |
| @ohos.app.ability.wantAgent.d.ts | getWant(agent: WantAgent): Promise<Want> | 异步回调 |
| @ohos.app.form.formHost.d.ts | deleteForm(formId: string, callback: AsyncCallback<void>): void | 异步回调 |
| @ohos.app.form.formHost.d.ts | deleteForm(formId: string): Promise<void> | 异步回调 |
| @ohos.app.form.formHost.d.ts | releaseForm(formId: string, callback: AsyncCallback<void>): void | 异步回调 |
| @ohos.app.form.formHost.d.ts | releaseForm(formId: string, isReleaseCache: boolean, callback: AsyncCallback<void>): void | 异步回调 |
| @ohos.app.form.formHost.d.ts | releaseForm(formId: string, isReleaseCache?: boolean): Promise<void> | 异步回调 |
| @ohos.app.form.formHost.d.ts | requestForm(formId: string, callback: AsyncCallback<void>): void | 异步回调 |
| @ohos.app.form.formHost.d.ts | requestForm(formId: string): Promise<void> | 异步回调 |
| @ohos.app.form.formHost.d.ts | castToNormalForm(formId: string, callback: AsyncCallback<void>): void | 异步回调 |
| @ohos.app.form.formHost.d.ts | castToNormalForm(formId: string): Promise<void> | 异步回调 |
| @ohos.app.form.formHost.d.ts | notifyVisibleForms(formIds: Array<string>, callback: AsyncCallback<void>): void | 异步回调 |
| @ohos.app.form.formHost.d.ts | notifyVisibleForms(formIds: Array<string>): Promise<void> | 异步回调 |
| @ohos.app.form.formHost.d.ts | notifyInvisibleForms(formIds: Array<string>, callback: AsyncCallback<void>): void | 异步回调 |
| @ohos.app.form.formHost.d.ts | notifyInvisibleForms(formIds: Array<string>): Promise<void> | 异步回调 |
| @ohos.app.form.formHost.d.ts | enableFormsUpdate(formIds: Array<string>, callback: AsyncCallback<void>): void | 异步回调 |
| @ohos.app.form.formHost.d.ts | enableFormsUpdate(formIds: Array<string>): Promise<void> | 异步回调 |
| @ohos.app.form.formHost.d.ts | disableFormsUpdate(formIds: Array<string>, callback: AsyncCallback<void>): void | 异步回调 |
| @ohos.app.form.formHost.d.ts | disableFormsUpdate(formIds: Array<string>): Promise<void> | 异步回调 |
| @ohos.app.form.formHost.d.ts | isSystemReady(callback: AsyncCallback<void>): void | 抛异常 |
| @ohos.app.form.formHost.d.ts | isSystemReady(): Promise<void> | 抛异常 |
| @ohos.app.form.formHost.d.ts | getAllFormsInfo(callback: AsyncCallback<Array<formInfo.FormInfo>>): void | 异步回调 |
| @ohos.app.form.formHost.d.ts | getAllFormsInfo(): Promise<Array<formInfo.FormInfo>> | 异步回调 |
| @ohos.app.form.formHost.d.ts | getFormsInfo(bundleName: string, callback: AsyncCallback<Array<formInfo.FormInfo>>): void | 异步回调 |
| @ohos.app.form.formHost.d.ts | getFormsInfo(bundleName: string, moduleName: string, callback: AsyncCallback<Array<formInfo.FormInfo>>): void | 异步回调 |
| @ohos.app.form.formHost.d.ts | getFormsInfo(bundleName: string, moduleName?: string): Promise<Array<formInfo.FormInfo>> | 异步回调 |
| @ohos.app.form.formHost.d.ts | deleteInvalidForms(formIds: Array<string>, callback: AsyncCallback<number>): void | 异步回调 |
| @ohos.app.form.formHost.d.ts | deleteInvalidForms(formIds: Array<string>): Promise<number> | 异步回调 |
| @ohos.app.form.formHost.d.ts | acquireFormState(want: Want, callback: AsyncCallback<formInfo.FormStateInfo>): void | 异步回调 |
| @ohos.app.form.formHost.d.ts | acquireFormState(want: Want): Promise<formInfo.FormStateInfo> | 异步回调 |
| @ohos.app.form.formHost.d.ts | on(type: "formUninstall", callback: Callback<string>): void | 抛异常 |
| @ohos.app.form.formHost.d.ts | off(type: "formUninstall", callback?: Callback<string>): void | 抛异常 |
| @ohos.app.form.formHost.d.ts | notifyFormsVisible(formIds: Array<string>, isVisible: boolean, callback: AsyncCallback<void>): void | 异步回调 |
| @ohos.app.form.formHost.d.ts | notifyFormsVisible(formIds: Array<string>, isVisible: boolean): Promise<void> | 异步回调 |
| @ohos.app.form.formHost.d.ts | notifyFormsEnableUpdate(formIds: Array<string>, isEnableUpdate: boolean, callback: AsyncCallback<void>): void | 异步回调 |
| @ohos.app.form.formHost.d.ts | notifyFormsEnableUpdate(formIds: Array<string>, isEnableUpdate: boolean): Promise<void> | 异步回调 |
| @ohos.app.form.formHost.d.ts | shareForm(formId: string, deviceId: string, callback: AsyncCallback<void>): void | 异步回调 |
| @ohos.app.form.formHost.d.ts | shareForm(formId: string, deviceId: string): Promise<void> | 异步回调 |
| @ohos.app.form.formHost.d.ts | notifyFormsPrivacyProtected(formIds: Array<string>, isProtected: boolean, callback: AsyncCallback<void>): void | 异步回调 |
| @ohos.app.form.formHost.d.ts | notifyFormsPrivacyProtected(formIds: Array<string>, isProtected: boolean): Promise<void> | 异步回调 |
| @ohos.app.form.formProvider.d.ts | requestPublishForm(want: Want, formBindingData: formBindingData.FormBindingData, callback: AsyncCallback<string>): void | 异步回调 |
| @ohos.app.form.formProvider.d.ts | requestPublishForm(want: Want, callback: AsyncCallback<string>): void | 异步回调 |
| @ohos.app.form.formProvider.d.ts | requestPublishForm(want: Want, formBindingData?: formBindingData.FormBindingData): Promise<string> | 异步回调 |
| @ohos.app.form.formProvider.d.ts | isRequestPublishFormSupported(callback: AsyncCallback<boolean>): void | 抛异常 |
| @ohos.app.form.formProvider.d.ts | isRequestPublishFormSupported(): Promise<boolean> | 抛异常 |
| UIAbilityContext.d.ts | startAbilityWithAccount(want: Want, accountId: number, callback: AsyncCallback<void>): void | 异步回调 |
| UIAbilityContext.d.ts | startAbilityWithAccount(want: Want, accountId: number, options: StartOptions, callback: AsyncCallback<void>): void | 异步回调 |
| UIAbilityContext.d.ts | startAbilityWithAccount(want: Want, accountId: number, options?: StartOptions): Promise<void> | 异步回调 |
| UIAbilityContext.d.ts | startAbilityForResultWithAccount(want: Want, accountId: number, callback: AsyncCallback<AbilityResult>): void | 抛异常 |
| UIAbilityContext.d.ts | startAbilityForResultWithAccount(want: Want, accountId: number, options: StartOptions, callback: AsyncCallback<AbilityResult>): void | 抛异常 |
| UIAbilityContext.d.ts | startAbilityForResultWithAccount(want: Want, accountId: number, options?: StartOptions): Promise<AbilityResult> | 抛异常 |
| UIAbilityContext.d.ts | startServiceExtensionAbility(want: Want, callback: AsyncCallback<void>): void | 异步回调 |
| UIAbilityContext.d.ts | startServiceExtensionAbility(want: Want): Promise<void> | 异步回调 |
| UIAbilityContext.d.ts | startServiceExtensionAbilityWithAccount(want: Want, accountId: number, callback: AsyncCallback<void>): void | 异步回调 |
| UIAbilityContext.d.ts | startServiceExtensionAbilityWithAccount(want: Want, accountId: number): Promise<void> | 异步回调 |
| UIAbilityContext.d.ts | stopServiceExtensionAbility(want: Want, callback: AsyncCallback<void>): void | 异步回调 |
| UIAbilityContext.d.ts | stopServiceExtensionAbility(want: Want): Promise<void> | 异步回调 |
| UIAbilityContext.d.ts | stopServiceExtensionAbilityWithAccount(want: Want, accountId: number, callback: AsyncCallback<void>): void | 异步回调 |
| UIAbilityContext.d.ts | stopServiceExtensionAbilityWithAccount(want: Want, accountId: number): Promise<void> | 异步回调 |
| UIAbilityContext.d.ts | connectServiceExtensionAbilityWithAccount(want: Want, accountId: number, options: ConnectOptions): number | 异步回调 |
| UIAbilityContext.d.ts | setMissionIcon(icon: image.PixelMap, callback: AsyncCallback<void>): void | 异步回调 |
| UIAbilityContext.d.ts | setMissionIcon(icon: image.PixelMap): Promise<void> | 异步回调 |
| ServiceExtensionContext.d.ts | startAbilityWithAccount(want: Want, accountId: number, callback: AsyncCallback<void>): void | 异步回调 |
| ServiceExtensionContext.d.ts | startAbilityWithAccount(want: Want, accountId: number, options: StartOptions, callback: AsyncCallback<void>): void | 异步回调 |
| ServiceExtensionContext.d.ts | startAbilityWithAccount(want: Want, accountId: number, options?: StartOptions): Promise<void> | 异步回调 |
| ServiceExtensionContext.d.ts | startServiceExtensionAbility(want: Want, callback: AsyncCallback<void>): void | 异步回调 |
| ServiceExtensionContext.d.ts | startServiceExtensionAbility(want: Want): Promise<void> | 异步回调 |
| ServiceExtensionContext.d.ts | startServiceExtensionAbilityWithAccount(want: Want, accountId: number, callback: AsyncCallback<void>): void | 异步回调 |
| ServiceExtensionContext.d.ts | startServiceExtensionAbilityWithAccount(want: Want, accountId: number): Promise<void> | 异步回调 |
| ServiceExtensionContext.d.ts | stopServiceExtensionAbility(want: Want, callback: AsyncCallback<void>): void | 异步回调 |
| ServiceExtensionContext.d.ts | stopServiceExtensionAbility(want: Want): Promise<void> | 异步回调 |
| ServiceExtensionContext.d.ts | stopServiceExtensionAbilityWithAccount(want: Want, accountId: number, callback: AsyncCallback<void>): void | 异步回调 |
| ServiceExtensionContext.d.ts | stopServiceExtensionAbilityWithAccount(want: Want, accountId: number): Promise<void> | 异步回调 |
| ServiceExtensionContext.d.ts | connectServiceExtensionAbilityWithAccount(want: Want, accountId: number, options: ConnectOptions): number | 异步回调 |
| Context.d.ts | createBundleContext(bundleName: string): Context | 抛异常 |
| Context.d.ts | createModuleContext(bundleName: string, moduleName: string): Context | 抛异常 |
| FormExtensionContext.d.ts | startAbility(want: Want, callback: AsyncCallback<void>): void | 异步回调 |
| FormExtensionContext.d.ts | startAbility(want: Want): Promise<void> | 异步回调 |
# 蓝牙服务子系统ChangeLog
## cl.bluetooth.1 接口迁移到新增的@ohos.bluetoothManager.d.ts
@ohos.bluetooth.d.ts接口不支持抛出错误码,而API9以及SystemAPI都需要支持错误码抛出,为了支持该功能,把@ohos.bluetooth.d.ts中所有接口,迁移到新增的@ohos.bluetoothManager.d.ts中,并增加错误码描述。
后续需要import @ohos.bluetoothManager才能使用蓝牙服务的接口:
```ts
import bluetoothManager from '@ohos.bluetoothManager';
```
**变更影响**
对API9以及SystemAPI接口的使用有影响,需要import @ohos.bluetoothManager来使用抛错误码的接口:
```ts
import bluetoothManager from '@ohos.bluetoothManager';
```
**关键的接口/组件变更**
| 类名 | 旧接口 | 新接口 | 变更类型 |
| -- | -- | -- | -- |
| bluetooth | function getState(): BluetoothState | function getState(): BluetoothState | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | method | function getBtConnectionState(): ProfileConnectionState; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | function pairDevice(deviceId: string): boolean | function pairDevice(deviceId: string): void | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口返回值改为void |
| bluetooth | function cancelPairedDevice(deviceId: string): boolean | function cancelPairedDevice(deviceId: string): void | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口返回值改为void |
| bluetooth | function getRemoteDeviceName(deviceId: string): string | function getRemoteDeviceName(deviceId: string): string| API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | function getRemoteDeviceClass(deviceId: string): DeviceClass | function getRemoteDeviceClass(deviceId: string): DeviceClass | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | function enableBluetooth(): boolean | function enableBluetooth(): void | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口返回值改为void |
| bluetooth | function disableBluetooth(): boolean | function disableBluetooth(): void | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口返回值改为void |
| bluetooth | function getLocalName(): string | function getLocalName(): string | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | function getPairedDevices(): Array&lt;string&gt;; | function getPairedDevices(): Array&lt;string&gt;; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | function getProfileConnState(profileId: ProfileId): ProfileConnectionState | function getProfileConnectionState(profileId: ProfileId): ProfileConnectionState | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口名修改为getProfileConnectionState |
| bluetooth | function setDevicePairingConfirmation(device: string, accept: boolean): boolean | function setDevicePairingConfirmation(device: string, accept: boolean): void | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口返回值改为void |
| bluetooth | function setLocalName(name: string): boolean; | function setLocalName(name: string): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口返回值改为void |
| bluetooth | function setBluetoothScanMode(mode: ScanMode, duration: number): boolean | function setBluetoothScanMode(mode: ScanMode, duration: number): void | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口返回值改为void |
| bluetooth | function getBluetoothScanMode(): ScanMod | function getBluetoothScanMode(): ScanMode | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | function startBluetoothDiscovery(): boolean | function startBluetoothDiscovery(): void | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,新加权限ohos.permission.APPROXIMATELY_LOCATION,接口返回值改为void |
| bluetooth | function stopBluetoothDiscovery(): boolean; | function stopBluetoothDiscovery(): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口返回值改为void |
| bluetooth | function on(type: "bluetoothDeviceFind", callback: Callback&lt;Array&lt;string&gt;&gt;): void; | function on(type: "bluetoothDeviceFind", callback: Callback&lt;Array&lt;string&gt;&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | function off(type: "bluetoothDeviceFind", callback?: Callback&lt;Array&lt;string&gt;&gt;): void; | function off(type: "bluetoothDeviceFind", callback?: Callback&lt;Array&lt;string&gt;&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | function on(type: "bondStateChange", callback: Callback&lt;BondStateParam&gt;): void; | function on(type: "bondStateChange", callback: Callbackk&lt;BondStateParam&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | function off(type: "bondStateChange", callback?: Callback&lt;BondStateParam&gt;): void; | function off(type: "bondStateChange", callback?: Callback&lt;BondStateParam&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | function on(type: "pinRequired", callback: Callback&lt;PinRequiredParam&gt;): void; | function on(type: "pinRequired", callback: Callback&lt;PinRequiredParam&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | function off(type: "pinRequired", callback?: Callback&lt;PinRequiredParam&gt;): void; | function off(type: "pinRequired", callback?: Callback&lt;PinRequiredParam&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | function on(type: "stateChange", callback: Callback&lt;BluetoothState&gt;): void; | function on(type: "stateChange", callback: Callback&lt;BluetoothState&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | function off(type: "stateChange", callback?: Callback&lt;BluetoothState&gt;): void; | function off(type: "stateChange", callback?: Callback&lt;BluetoothState&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | function sppListen(name: string, option: SppOption, callback: AsyncCallback&lt;number&gt;): void; | function sppListen(name: string, option: SppOption, callback: AsyncCallback&lt;number&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | function sppAccept(serverSocket: number, callback: AsyncCallback&lt;number&gt;): void; | function sppAccept(serverSocket: number, callback: AsyncCallback&lt;number&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | function sppConnect(device: string, option: SppOption, callback: AsyncCallback&lt;number&gt;): void; | function sppConnect(device: string, option: SppOption, callback: AsyncCallback&lt;number&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | function sppCloseServerSocket(socket: number): void; | function sppCloseServerSocket(socket: number): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | function sppCloseClientSocket(socket: number): void; | function sppCloseClientSocket(socket: number): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | function sppWrite(clientSocket: number, data: ArrayBuffer): boolean; | function sppWrite(clientSocket: number, data: ArrayBuffer): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口返回值改为void |
| bluetooth | function on(type: "sppRead", clientSocket: number, callback: Callback&lt;ArrayBuffer&gt;): void; | function on(type: "sppRead", clientSocket: number, callback: Callback&lt;ArrayBuffer&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts。 |
| bluetooth | function off(type: "sppRead", clientSocket: number, callback?: Callback&lt;ArrayBuffer&gt;): void; | function off(type: "sppRead", clientSocket: number, callback?: Callback&lt;ArrayBuffer&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | function getProfile(profileId: ProfileId): A2dpSourceProfile | HandsFreeAudioGatewayProfile; | function getProfileInstance(profileId: ProfileId): A2dpSourceProfile | HandsFreeAudioGatewayProfile | HidHostProfile | PanProfile; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口名修改为getProfileInstance |
| bluetooth | function getProfileInst(profileId: ProfileId): A2dpSourceProfile | HandsFreeAudioGatewayProfile | HidHostProfile | PanProfile; | function getProfileInstance(profileId: ProfileId): A2dpSourceProfile | HandsFreeAudioGatewayProfile | HidHostProfile | PanProfile; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口名修改为getProfileInstance |
| BaseProfile | getConnectionDevices(): Array&lt;string&gt;; | getConnectionDevices(): Array&lt;string&gt;; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| BaseProfile | getDeviceState(device: string): ProfileConnectionState; | getDeviceState(device: string): ProfileConnectionState; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| A2dpSourceProfile | connect(device: string): boolean; | connect(device: string): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口返回值改为void |
| A2dpSourceProfile | disconnect(device: string): boolean; | disconnect(device: string): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口返回值改为void |
| A2dpSourceProfile | on(type: "connectionStateChange", callback: Callback&lt;StateChangeParam&gt;): void; | on(type: "connectionStateChange", callback: Callback&lt;StateChangeParam&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| A2dpSourceProfile | off(type: "connectionStateChange", callback?: Callback&lt;StateChangeParam&gt;): void; | off(type: "connectionStateChange", callback?: Callback&lt;StateChangeParam&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| A2dpSourceProfile | getPlayingState(device: string): PlayingState; | getPlayingState(device: string): PlayingState; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| HandsFreeAudioGatewayProfile | connect(device: string): boolean; | connect(device: string): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口返回值改为void |
| HandsFreeAudioGatewayProfile | disconnect(device: string): boolean; | disconnect(device: string): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts ,接口返回值改为void |
| HandsFreeAudioGatewayProfile | on(type: "connectionStateChange", callback: Callback&lt;StateChangeParam&gt;): void; | on(type: "connectionStateChange", callback: Callback&lt;StateChangeParam&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| HandsFreeAudioGatewayProfile | off(type: "connectionStateChange", callback?: Callback&lt;StateChangeParam&gt;): void; | off(type: "connectionStateChange", callback?: Callback&lt;StateChangeParam&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| HidHostProfile | connect(device: string): boolean; | connect(device: string): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口返回值改为void |
| HidHostProfile | disconnect(device: string): boolean; | disconnect(device: string): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口返回值改为void |
| HidHostProfile | on(type: "connectionStateChange", callback: Callback&lt;StateChangeParam&gt;): void; | on(type: "connectionStateChange", callback: Callback&lt;StateChangeParam&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| HidHostProfile | off(type: "connectionStateChange", callback?: Callback&lt;StateChangeParam&gt;): void; | off(type: "connectionStateChange", callback?: Callback&lt;StateChangeParam&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| PanProfile | disconnect(device: string): boolean; | disconnect(device: string): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口返回值改为void |
| PanProfile | on(type: "connectionStateChange", callback: Callback&lt;StateChangeParam&gt;): void; | on(type: "connectionStateChange", callback: Callback&lt;StateChangeParam&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| PanProfile | off(type: "connectionStateChange", callback?: Callback&lt;StateChangeParam&gt;): void; | off(type: "connectionStateChange", callback?: Callback&lt;StateChangeParam&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| PanProfile | setTethering(enable: boolean): void; | setTethering(enable: boolean): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| PanProfile | isTetheringOn(): boolean; | isTetheringOn(): boolean; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| BLE | function createGattServer(): GattServer; | function createGattServer(): GattServer; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| BLE | function createGattClientDevice(deviceId: string): GattClientDevice; | function createGattClientDevice(deviceId: string): GattClientDevice; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| BLE | function getConnectedBLEDevices(): Array&lt;string&gt;; | function getConnectedBLEDevices(): Array&lt;string&gt;; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| BLE | function startBLEScan(filters: Array&lt;ScanFilter&gt;, options?: ScanOptions): void; | function startBLEScan(filters: Array&lt;ScanFilter&gt;, options?: ScanOptions): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,新加权限ohos.permission.APPROXIMATELY_LOCATION |
| BLE | function stopBLEScan(): void; | function stopBLEScan(): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| BLE | mefunction on(type: "BLEDeviceFind", callback: Callback&lt;Array&lt;ScanResult&gt;&gt;): void;thod | function on(type: "BLEDeviceFind", callback: Callback&lt;Array&lt;ScanResult&gt;&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| BLE | function off(type: "BLEDeviceFind", callback?: Callback&lt;Array&lt;ScanResult&gt;&gt;): void; | function off(type: "BLEDeviceFind", callback?: Callback&lt;Array&lt;ScanResult&gt;&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| GattServer | startAdvertising(setting: AdvertiseSetting, advData: AdvertiseData, advResponse?: AdvertiseData): void; | startAdvertising(setting: AdvertiseSetting, advData: AdvertiseData, advResponse?: AdvertiseData): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| GattServer | stopAdvertising(): void; | stopAdvertising(): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| GattServer | addService(service: GattService): boolean; | addService(service: GattService): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口返回值改为void |
| GattServer | removeService(serviceUuid: string): boolean; | removeService(serviceUuid: string): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口返回值改为void |
| GattServer | close(): void; | close(): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts
| GattServer | notifyCharacteristicChanged(deviceId: string, notifyCharacteristic: NotifyCharacteristic): boolean; | notifyCharacteristicChanged(deviceId: string, notifyCharacteristic: NotifyCharacteristic): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口返回值改为void |
| GattServer | sendResponse(serverResponse: ServerResponse): boolean; | sendResponse(serverResponse: ServerResponse): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口返回值改为void |
| GattServer | on(type: "characteristicRead", callback: Callback&lt;CharacteristicReadReq&gt;): void; | on(type: "characteristicRead", callback: Callback&lt;CharacteristicReadRequest&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| GattServer | off(type: "characteristicRead", callback?: Callback&lt;CharacteristicReadReq&gt;): void; | off(type: "characteristicRead", callback?: Callback&lt;CharacteristicReadRequest&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| GattServer | on(type: "characteristicWrite", callback: Callback&lt;CharacteristicWriteReq&gt;): void; | on(type: "characteristicWrite", callback: Callback&lt;CharacteristicWriteRequest&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| GattServer | off(type: "characteristicWrite", callback?: Callback&lt;CharacteristicWriteReq&gt;): void; | off(type: "characteristicWrite", callback?: Callback&lt;CharacteristicWriteRequest&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| GattServer | on(type: "descriptorRead", callback: Callback&lt;DescriptorReadReq&gt;): void; | on(type: "descriptorRead", callback: Callback&lt;DescriptorReadRequest&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| GattServer | off(type: "descriptorRead", callback?: Callback&lt;DescriptorReadReq&gt;): void; | off(type: "descriptorRead", callback?: Callback&lt;DescriptorReadRequest&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| GattServer | on(type: "descriptorWrite", callback: Callback&lt;DescriptorWriteReq&gt;): void; | on(type: "descriptorWrite", callback: Callback&lt;DescriptorWriteRequest&gt;): void;| API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| GattServer | off(type: "descriptorWrite", callback?: Callback&lt;DescriptorWriteReq&gt;): void; | off(type: "descriptorWrite", callback?: Callback&lt;DescriptorWriteRequest&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| GattServer | on(type: "connectStateChange", callback: Callback&lt;BLEConnectChangedState&gt;): void; | on(type: "connectStateChange", callback: Callback&lt;BLEConnectChangedState&gt;): void;| API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| GattServer | off(type: "connectStateChange", callback?: Callback&lt;BLEConnectChangedState&gt;): void; | off(type: "connectStateChange", callback?: Callback&lt;BLEConnectChangedState&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| GattClientDevice | connect(): boolean; | connect(): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口返回值改为void |
| GattClientDevice | disconnect(): boolean; | disconnect(): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口返回值改为void |
| GattClientDevice | close(): boolean; | close(): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口返回值改为void |
| GattClientDevice | getDeviceName(callback: AsyncCallback&lt;string&gt;): void; | getDeviceName(callback: AsyncCallback&lt;string&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| GattClientDevice | getDeviceName(): Promise&lt;string&gt;; | getDeviceName(): Promise&lt;string&gt;; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| GattClientDevice | getServices(callback: AsyncCallback&lt;Array&lt;GattService&gt;&gt;): void; | getServices(callback: AsyncCallback&lt;Array&lt;GattService&gt;&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| GattClientDevice | getServices(): Promise&lt;Array&lt;GattService&gt;&gt;; | getServices(): Promise&lt;Array&lt;GattService&gt;&gt;; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| GattClientDevice | readCharacteristicValue(characteristic: BLECharacteristic, callback: AsyncCallback&lt;BLECharacteristic&gt;): void; | readCharacteristicValue(characteristic: BLECharacteristic, callback: AsyncCallback&lt;BLECharacteristic&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| GattClientDevice | readCharacteristicValue(characteristic: BLECharacteristic): Promise&lt;BLECharacteristic&gt;; | readCharacteristicValue(characteristic: BLECharacteristic): Promise&lt;BLECharacteristic&gt;; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| GattClientDevice | readDescriptorValue(descriptor: BLEDescriptor, callback: AsyncCallback&lt;BLEDescriptor&gt;): void; | readDescriptorValue(descriptor: BLEDescriptor, callback: AsyncCallback&lt;BLEDescriptor&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| GattClientDevice | readDescriptorValue(descriptor: BLEDescriptor): Promise&lt;BLEDescriptor&gt;; | readDescriptorValue(descriptor: BLEDescriptor): Promise&lt;BLEDescriptor&gt;; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| GattClientDevice | writeCharacteristicValue(characteristic: BLECharacteristic): boolean; | writeCharacteristicValue(characteristic: BLECharacteristic): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口返回值改为void |
| GattClientDevice | writeDescriptorValue(descriptor: BLEDescriptor): boolean; | writeDescriptorValue(descriptor: BLEDescriptor): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口返回值改为void |
| GattClientDevice | getRssiValue(callback: AsyncCallback&lt;number&gt;): void; | getRssiValue(callback: AsyncCallback&lt;number&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| GattClientDevice | getRssiValue(): Promise&lt;number&gt;; | getRssiValue(): Promise&lt;number&gt;; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| GattClientDevice | setBLEMtuSize(mtu: number): boolean; | setBLEMtuSize(mtu: number): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口返回值改为void |
| GattClientDevice | setNotifyCharacteristicChanged(characteristic: BLECharacteristic, enable: boolean): boolean; | setNotifyCharacteristicChanged(characteristic: BLECharacteristic, enable: boolean): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts,接口返回值改为void |
| GattClientDevice | on(type: "BLECharacteristicChange", callback: Callback&lt;BLECharacteristic&gt;): void; | on(type: "BLECharacteristicChange", callback: Callback&lt;BLECharacteristic&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| GattClientDevice | off(type: "BLECharacteristicChange", callback?: Callback&lt;BLECharacteristic&gt;): void; | off(type: "BLECharacteristicChange", callback?: Callback&lt;BLECharacteristic&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| GattClientDevice | on(type: "BLEConnectionStateChange", callback: Callback&lt;BLEConnectChangedState&gt;): void; | on(type: "BLEConnectionStateChange", callback: Callback&lt;BLEConnectChangedState&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| GattClientDevice | off(type: "BLEConnectionStateChange", callback?: Callback&lt;BLEConnectChangedState&gt;): void; | off(type: "BLEConnectionStateChange", callback?: Callback&lt;BLEConnectChangedState&gt;): void; | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | GattService | GattService | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | BLECharacteristic | BLECharacteristic | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | BLEDescriptor | BLEDescriptor | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | NotifyCharacteristic | NotifyCharacteristic | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | CharacteristicReadReq | CharacteristicReadRequest | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | CharacteristicWriteReq | CharacteristicWriteRequest | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | DescriptorReadRe | DescriptorReadRequest | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | DescriptorWriteReq | DescriptorWriteRequest | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | ServerResponse | ServerResponse | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | BLEConnectChangedState | BLEConnectChangedState | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | ScanResult | ScanResult | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | AdvertiseSetting | AdvertiseSetting | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | AdvertiseData | AdvertiseData | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | ManufactureData | ManufactureData | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | ServiceData | ServiceData | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | ScanFilter | ScanFilter | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | ScanOptions | ScanOptions | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | SppOption | SppOption | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | PinRequiredParam | PinRequiredParam | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | DeviceClass | DeviceClass | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | BondStateParam | BondStateParam | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | StateChangeParam | StateChangeParam | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | ScanDuty | ScanDuty | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | MatchMode | MatchMode | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | ProfileConnectionState | ProfileConnectionState | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | BluetoothState | BluetoothState | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | SppType | SppType | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | ScanMode | ScanMode | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | BondState | BondState | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | MajorClass | MajorClass | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | MajorMinorClass | MajorMinorClass | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | PlayingState | PlayingState | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
| bluetooth | ProfileId | ProfileId | API9接口变更,迁移到@ohos.bluetoothManager.d.ts |
**适配指导(可选,不涉及则可以删除)**
以enableLocation为例,在新版本上需要使用如下方式进行调用:
```ts
import bluetoothManager from '@ohos.bluetoothManager';
try {
var state = bluetoothManager.getState();
} catch (err) {
console.error("errCode:" + err.code + ",errMessage:" + err.message);
}
```
# 分布式数据管理子系统JS API变更Changelog
## cl.distributeddatamgr.1 接口变更
distributeddatamgr子系统relationalStore组件接口存在变更:
变更前:
应用调用getRdbStore接口后,通过返回对象rdbStore的openStatus属性(openStatus == ON_CREATE)判断数据库是否为新创建。
变更后:
应用调用getRdbStore接口后,通过返回对象rdbStore的version属性(version == 0)判断数据库是否为新创建。
开发者需要根据以下说明对应用进行适配。
**变更影响**
影响API10版本的JS接口,应用需要进行适配才可以在新版本SDK环境正常实现功能。
**关键的接口/组件变更**
| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
| ------------------------------ | --------------- | ---------------- | ------- |
| @ohos.data.relationalStore | RdbStore | openStatus: number; 改为 version: number; | 变更 |
**适配指导**
应用中设置和获取数据库版本可参考下列代码:
```ts
const STORE_CONFIG = {
name: "rdbstore.db",
securityLevel: data_rdb.SecurityLevel.S1
}
data_rdb.getRdbStore(this.context, STORE_CONFIG, function (err, rdbStore) {
// 变更前:
// if (rdbStore.openStatus == ON_CREATE) {
// rdbStore.executeSql("CREATE TABLE IF NOT EXISTS student (id INTEGER PRIMARY KEY AUTOINCREMENT, score REAL);", null) // create table xxx
// }
// 变更后:
if (rdbStore.version == 0) {
rdbStore.executeSql("CREATE TABLE IF NOT EXISTS student (id INTEGER PRIMARY KEY AUTOINCREMENT, score REAL);", null) // create table xxx
// 设置数据库版本,值为大于0的正整数
rdbStore.version == 3
}
// 获取数据库版本
console.info("Get RdbStore version is " + rdbStore.version)
})
```
\ No newline at end of file
# 文件管理子系统ChangeLog
## cl.filemanagement.1 environment模块变更
文件管理子系统d.ts归档整改,现统一整改到file一层目录下。environment模块支持错误码处理。
**变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现environment模块支持错误码处理,需注意错误码处理的使用。[相关适配指导参考](../OpenHarmony_3.2.8.1/changelogs-filemanagement.md)
**关键接口/组件变更**
原environment使用的是@ohos.environment,以以下方式import:
```js
import environment from '@ohos.environment';
```
现environment使用的是@ohos.file.environment,以以下方式import:
```js
import environment from '@ohos.file.environment';
```
## cl.filemanagement.2 securityLabel模块变更
文件管理子系统d.ts归档整改,现统一整改到file一层目录下。securityLabel模块支持错误码处理。
**变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现securityLabel模块支持错误码处理,需注意错误码处理的使用。[相关适配指导参考](../OpenHarmony_3.2.8.1/changelogs-filemanagement.md)
**关键接口/组件变更**
原securityLabel使用的是@ohos.securityLabel,以以下方式import:
```js
import securityLabel from '@ohos.securityLabel';
```
现securityLabel使用的是@ohos.file.securityLabel,以以下方式import:
```js
import securityLabel from '@ohos.file.securityLabel';
```
## cl.filemanagement.3 fs模块变更
fs模块下Stat接口ino属性类型变更。
**变更影响**
fs模块下Stat接口ino属性类型变更,由number变更为bigint,以适配文件系统下所有类型文件的inode范围。
**关键接口/组件变更**
原Stat接口ino属性类型为number,现变更为bigint。
## cl.filemanagement.4 fileAccess模块变更
文件管理子系统d.ts归档整改,现统一整改到file一层目录下。fileAccess模块支持错误码处理。
**变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现fileAccess模块支持错误码处理,需注意错误码处理的使用。[相关适配指导参考](../OpenHarmony_3.2.8.1/changelogs-filemanagement.md)
**关键接口/组件变更**
原fileAccess使用的是@ohos.data.fileAccess,以以下方式import:
```js
import fileAccess from '@ohos.data.fileAccess';
```
现fileAccess使用的是@ohos.file.fileAccess,以以下方式import:
```js
import fileAccess from '@ohos.file.fileAccess';
```
## cl.filemanagement.5 fileExtensionInfo模块变更
文件管理子系统d.ts归档整改,现统一整改到file一层目录下。fileExtensionInfo模块支持错误码处理。
**变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现fileExtensionInfo模块支持错误码处理,需注意错误码处理的使用。[相关适配指导参考](../OpenHarmony_3.2.8.1/changelogs-filemanagement.md)
**关键接口/组件变更**
原fileExtensionInfo使用的是@ohos.fileExtensionInfo,以以下方式import:
```js
import fileExtensionInfo from '@ohos.fileExtensionInfo';
```
现fileExtensionInfo使用的是@ohos.file.fileExtensionInfo,以以下方式import:
```js
import fileExtensionInfo from '@ohos.file.fileExtensionInfo';
```
## cl.filemanagement.6 storageStatistics模块变更
文件管理子系统d.ts归档整改,现统一整改到file一层目录下。fileExtensionInfo模块支持错误码处理。
**变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现storageStatistics模块支持错误码处理,需注意错误码处理的使用。[相关适配指导参考](../OpenHarmony_3.2.8.1/changelogs-filemanagement.md)
**关键接口/组件变更**
原storageStatistics使用的是@ohos.storageStatistics,以以下方式import:
```js
import storageStatistics from '@ohos.storageStatistics';
```
现storageStatistics使用的是@ohos.file.storageStatistics,以以下方式import:
```js
import storageStatistics from '@ohos.file.storageStatistics';
```
## cl.filemanagement.7 volumeManager模块变更
文件管理子系统d.ts归档整改,现统一整改到file一层目录下。fileExtensionInfo模块支持错误码处理。
**变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现volumeManager模块支持错误码处理,需注意错误码处理的使用。[相关适配指导参考](../OpenHarmony_3.2.8.1/changelogs-filemanagement.md)
**关键接口/组件变更**
原volumeManager使用的是@ohos.volumeManager,以以下方式import:
```js
import volumeManager from '@ohos.volumeManager';
```
现volumeManager使用的是@ohos.file.volumeManager,以以下方式import:
```js
import volumeManager from '@ohos.file.volumeManager';
```
# 全球化子系统ChangeLog
## cl.global.1 国际化模块系统接口添加运行时鉴权
全球化子系统国际化组件在如下场景中提供的系统接口添加运行时鉴权。从API9开始作以下变更:
- 设置系统语言、系统国家或地区、系统区域
- 设置系统24小时制
- 添加、移除系统偏好语言
- 设置本地化数字
开发者需要根据以下说明对应用进行适配。
**变更影响**
上述场景涉及的国际化系统接口添加运行时鉴权,只有具有UPDATE_CONFIGURATION权限的系统应用可以正常调用。
**关键的接口/组件变更**
- 涉及接口
- setSystemLanguage(language: string): void;
- setSystemRegion(region: string): void;
- setSystemLocale(locale: string): void;
- set24HourClock(option: boolean): void;
- addPreferredLanguage(language: string, index?: number): void;
- removePreferredLanguage(index: number): void;
- setUsingLocalDigit(flag: boolean): void;
**适配指导**
确保应用为系统应用,非系统应用禁止调用上述接口。
当前权限不足或非系统应用调用该接口时会抛出异常,可以通过try-catch来捕获异常。
```js
import I18n from '@ohos.i18n'
try {
I18n.System.setSystemLanguage('zh');
} catch(error) {
console.error(`call System.setSystemLanguage failed, error code: ${error.code}, message: ${error.message}.`)
}
```
\ No newline at end of file
# 媒体子系统ChangeLog
## cl.media.1 播放功能接口变更
新增音视频播放接口[AVPlayer](../../../application-dev/reference/apis/js-apis-media.md#avplayer9)<sup>9+</sup>, 升级了状态机和错误码,推荐用户使用。旧版音频播放接口[AudioPlayer](../../../application-dev/reference/apis/js-apis-media.md#audioplayer)<sup>6+</sup>和视频播放接口[VideoPlayer](../../../application-dev/reference/apis/js-apis-media.md#videoplayer)<sup>8+</sup>停止维护。
**变更影响**
原有的接口暂时可继续使用,但是停止维护,建议使用新接口进行开发。
**关键的接口/组件变更**
新增接口如下:
| 类名 | 新增接口声明 |
| -------------- | ------------------------------------------------------------ |
| media | createAVPlayer(callback: AsyncCallback\<AVPlayer>): void |
| media | createAVPlayer() : Promise\<AVPlayer> |
| media.AVPlayer | interface AVPlayer |
| media.AVPlayer | videoScaleType ?: VideoScaleType |
| media.AVPlayer | url ?: string |
| media.AVPlayer | surfaceId ?: string |
| media.AVPlayer | stop(callback: AsyncCallback\<void>): void |
| media.AVPlayer | stop(): Promise\<void> |
| media.AVPlayer | setVolume(volume: number): void |
| media.AVPlayer | setSpeed(speed: PlaybackSpeed): void |
| media.AVPlayer | setBitrate(bitrate: number): void |
| media.AVPlayer | seek(timeMs: number, mode?:SeekMode): void |
| media.AVPlayer | reset(callback: AsyncCallback\<void>): void |
| media.AVPlayer | reset(): Promise\<void> |
| media.AVPlayer | release(callback: AsyncCallback\<void>): void |
| media.AVPlayer | release(): Promise\<void> |
| media.AVPlayer | readonly width: number |
| media.AVPlayer | readonly state: AVPlayerState |
| media.AVPlayer | readonly height: number |
| media.AVPlayer | readonly duration: number |
| media.AVPlayer | readonly currentTime: number |
| media.AVPlayer | prepare(callback: AsyncCallback\<void>): void |
| media.AVPlayer | prepare(): Promise\<void> |
| media.AVPlayer | play(callback: AsyncCallback\<void>): void |
| media.AVPlayer | play(): Promise\<void> |
| media.AVPlayer | pause(callback: AsyncCallback\<void>): void |
| media.AVPlayer | pause(): Promise\<void> |
| media.AVPlayer | on(type: 'volumeChange', callback: Callback\<number>): void |
| media.AVPlayer | on(type: 'videoSizeChange', callback: (width: number, height: number) => void): void |
| media.AVPlayer | on(type: 'timeUpdate', callback: Callback\<number>): void |
| media.AVPlayer | on(type: 'stateChange', callback: (state: AVPlayerState, reason: StateChangeReason) => void): void |
| media.AVPlayer | on(type: 'startRenderFrame', callback: Callback\<void>): void |
| media.AVPlayer | on(type: 'speedDone', callback: Callback\<number>): void |
| media.AVPlayer | on(type: 'seekDone', callback: Callback\<number>): void |
| media.AVPlayer | on(type: 'error', callback: ErrorCallback): void |
| media.AVPlayer | on(type: 'endOfStream', callback: Callback\<void>): void |
| media.AVPlayer | on(type: 'durationUpdate', callback: Callback\<number>): void |
| media.AVPlayer | on(type: 'bufferingUpdate', callback: (infoType: BufferingInfoType, value: number) => void): void |
| media.AVPlayer | on(type: 'bitrateDone', callback: Callback\<number>): void |
| media.AVPlayer | on(type: 'availableBitrates', callback: (bitrates: Array\<number>) => void): void |
| media.AVPlayer | on(type: 'audioInterrupt', callback: (info: audio.InterruptEvent) => void): void |
| media.AVPlayer | off(type: 'volumeChange'): void |
| media.AVPlayer | off(type: 'videoSizeChange'): void |
| media.AVPlayer | off(type: 'timeUpdate'): void |
| media.AVPlayer | off(type: 'stateChange'): void |
| media.AVPlayer | off(type: 'startRenderFrame'): void |
| media.AVPlayer | off(type: 'speedDone'): void |
| media.AVPlayer | off(type: 'seekDone'): void |
| media.AVPlayer | off(type: 'error'): void |
| media.AVPlayer | off(type: 'endOfStream'): void |
| media.AVPlayer | off(type: 'durationUpdate'): void |
| media.AVPlayer | off(type: 'bufferingUpdate'): void |
| media.AVPlayer | off(type: 'bitrateDone'): void |
| media.AVPlayer | off(type: 'availableBitrates'): void |
| media.AVPlayer | off(type: 'audioInterrupt'): void |
| media.AVPlayer | loop: boolean |
| media.AVPlayer | getTrackDescription(callback: AsyncCallback\<Array\<MediaDescription>>): void |
| media.AVPlayer | getTrackDescription() : Promise\<Array\<MediaDescription>> |
| media.AVPlayer | fdSrc ?: AVFileDescriptor |
| media.AVPlayer | audioInterruptMode ?: audio.InterruptMode |
| unnamed | type AVPlayerState = 'idle' \| 'initialized' \| 'prepared' \| 'playing' \| 'paused' \| 'completed' \| 'stopped' \| 'released' \| 'error' |
停止维护接口如下:
| 类名 | 停止维护接口声明 |
| ----------------- | ------------------------------------------------------------ |
| media | createVideoPlayer(callback: AsyncCallback\<VideoPlayer>): void |
| media | createVideoPlayer() : Promise\<VideoPlayer> |
| media | createAudioPlayer(): AudioPlayer |
| media.AudioPlayer | interface AudioPlayer |
| media.AudioPlayer | play(): void |
| media.AudioPlayer | release(): void |
| media.AudioPlayer | audioInterruptMode ?: audio.InterruptMode |
| media.AudioPlayer | fdSrc: AVFileDescriptor |
| media.AudioPlayer | seek(timeMs: number): void |
| media.AudioPlayer | readonly duration: number |
| media.AudioPlayer | loop: boolean |
| media.AudioPlayer | readonly state: AudioState |
| media.AudioPlayer | getTrackDescription(callback: AsyncCallback\<Array\<MediaDescription>>): void |
| media.AudioPlayer | getTrackDescription() : Promise\<Array\<MediaDescription>> |
| media.AudioPlayer | on(type: 'bufferingUpdate', callback: (infoType: BufferingInfoType, value: number) => void): void |
| media.AudioPlayer | on(type: 'play' \| 'pause' \| 'stop' \| 'reset' \| 'dataLoad' \| 'finish' \| 'volumeChange', callback: () => void): void |
| media.AudioPlayer | on(type: 'timeUpdate', callback: Callback\<number>): void |
| media.AudioPlayer | on(type: 'audioInterrupt', callback: (info: audio.InterruptEvent) => void): void |
| media.AudioPlayer | on(type: 'error', callback: ErrorCallback): void |
| media.AudioPlayer | setVolume(vol: number): void |
| media.AudioPlayer | pause(): void |
| media.AudioPlayer | readonly currentTime: number |
| media.AudioPlayer | stop(): void |
| media.AudioPlayer | reset(): void |
| media.AudioPlayer | src: string |
| media.VideoPlayer | interface VideoPlayer |
| media.VideoPlayer | play(callback: AsyncCallback\<void>): void |
| media.VideoPlayer | play(): Promise\<void> |
| media.VideoPlayer | prepare(callback: AsyncCallback\<void>): void |
| media.VideoPlayer | prepare(): Promise\<void> |
| media.VideoPlayer | release(callback: AsyncCallback\<void>): void |
| media.VideoPlayer | release(): Promise\<void> |
| media.VideoPlayer | audioInterruptMode ?: audio.InterruptMode |
| media.VideoPlayer | fdSrc: AVFileDescriptor |
| media.VideoPlayer | seek(timeMs: number, callback: AsyncCallback\<number>): void |
| media.VideoPlayer | seek(timeMs: number, mode:SeekMode, callback: AsyncCallback\<number>): void |
| media.VideoPlayer | seek(timeMs: number, mode?:SeekMode): Promise\<number> |
| media.VideoPlayer | readonly duration: number |
| media.VideoPlayer | loop: boolean |
| media.VideoPlayer | videoScaleType ?: VideoScaleType |
| media.VideoPlayer | readonly state: VideoPlayState |
| media.VideoPlayer | getTrackDescription(callback: AsyncCallback\<Array\<MediaDescription>>): void |
| media.VideoPlayer | getTrackDescription() : Promise\<Array\<MediaDescription>> |
| media.VideoPlayer | readonly height: number |
| media.VideoPlayer | on(type: 'playbackCompleted', callback: Callback\<void>): void |
| media.VideoPlayer | on(type: 'bufferingUpdate', callback: (infoType: BufferingInfoType, value: number) => void): void |
| media.VideoPlayer | on(type: 'startRenderFrame', callback: Callback\<void>): void |
| media.VideoPlayer | on(type: 'videoSizeChanged', callback: (width: number, height: number) => void): void |
| media.VideoPlayer | on(type: 'audioInterrupt', callback: (info: audio.InterruptEvent) => void): void |
| media.VideoPlayer | on(type: 'error', callback: ErrorCallback): void |
| media.VideoPlayer | setDisplaySurface(surfaceId: string, callback: AsyncCallback\<void>): void |
| media.VideoPlayer | setDisplaySurface(surfaceId: string): Promise\<void> |
| media.VideoPlayer | setVolume(vol: number, callback: AsyncCallback\<void>): void |
| media.VideoPlayer | setVolume(vol: number): Promise\<void> |
| media.VideoPlayer | url: string |
| media.VideoPlayer | pause(callback: AsyncCallback\<void>): void |
| media.VideoPlayer | pause(): Promise\<void> |
| media.VideoPlayer | readonly currentTime: number |
| media.VideoPlayer | setSpeed(speed:number, callback: AsyncCallback\<number>): void |
| media.VideoPlayer | setSpeed(speed:number): Promise\<number> |
| media.VideoPlayer | stop(callback: AsyncCallback\<void>): void |
| media.VideoPlayer | stop(): Promise\<void> |
| media.VideoPlayer | readonly width: number |
| media.VideoPlayer | reset(callback: AsyncCallback\<void>): void |
| media.VideoPlayer | reset(): Promise\<void> |
| unnamed | type AudioState = 'idle' \| 'playing' \| 'paused' \| 'stopped' \| 'error' |
| unnamed | type VideoPlayState = 'idle' \| 'prepared' \| 'playing' \| 'paused' \| 'stopped' \| 'error' |
**适配指导**
请参考各接口的[API参考](../../../application-dev/reference/apis/js-apis-media.md)
## cl.media.2 录制功能接口变更
新增音视频录制接口[AVRecorder](../../../application-dev/reference/apis/js-apis-media.md#avrecorder9)<sup>9+</sup>, 升级了状态机和错误码,推荐用户使用。旧版音频录制接口[AudioRecorder](../../../application-dev/reference/apis/js-apis-media.md#audiorecorder)<sup>6+</sup>和视频录制接口[VideoRecorder](../../../application-dev/reference/apis/js-apis-media.md#videorecorder9)<sup>9+</sup>停止维护。
新旧录制接口共用的[AudioSourceType](../../../application-dev/reference/apis/js-apis-media.md#audiosourcetype9)[VideoSourceType](../../../application-dev/reference/apis/js-apis-media.md#videosourcetype9)接口,变更为非系统接口。
**变更影响**
原有的接口[AudioRecorder](../../../application-dev/reference/apis/js-apis-media.md#audiorecorder)<sup>6+</sup>[VideoRecorder](../../../application-dev/reference/apis/js-apis-media.md#videorecorder9)<sup>9+</sup>暂时可继续使用,但是停止维护,建议使用新接口进行开发[AVRecorder](../../../application-dev/reference/apis/js-apis-media.md#avrecorder9)<sup>9+</sup>
**关键的接口/组件变更**
新增接口如下:
| 类名 | 新增接口声明 |
| ----------------------- | ------------------------------------------------------------ |
| media | createAVRecorder(callback: AsyncCallback\<AVRecorder>): void |
| media | createAVRecorder() : Promise\<AVRecorder> |
| media.AVRecorder | interface AVRecorder |
| media.AVRecorder | prepare(config: AVRecorderConfig, callback: AsyncCallback\<void>): void |
| media.AVRecorder | prepare(config: AVRecorderConfig): Promise\<void> |
| media.AVRecorder | release(callback: AsyncCallback\<void>): void |
| media.AVRecorder | release(): Promise\<void> |
| media.AVRecorder | readonly state: AVRecorderState |
| media.AVRecorder | on(type: 'stateChange', callback: (state: AVRecorderState, reason: StateChangeReason) => void): void |
| media.AVRecorder | on(type: 'error', callback: ErrorCallback): void |
| media.AVRecorder | resume(callback: AsyncCallback\<void>): void |
| media.AVRecorder | resume(): Promise\<void> |
| media.AVRecorder | start(callback: AsyncCallback\<void>): void |
| media.AVRecorder | start(): Promise\<void> |
| media.AVRecorder | off(type: 'stateChange'): void |
| media.AVRecorder | off(type: 'error'): void |
| media.AVRecorder | pause(callback: AsyncCallback\<void>): void |
| media.AVRecorder | pause(): Promise\<void> |
| media.AVRecorder | stop(callback: AsyncCallback\<void>): void |
| media.AVRecorder | stop(): Promise\<void> |
| media.AVRecorder | reset(callback: AsyncCallback\<void>): void |
| media.AVRecorder | reset(): Promise\<void> |
| media.AVRecorder | getInputSurface(callback: AsyncCallback\<string>): void |
| media.AVRecorder | getInputSurface(): Promise\<string> |
| media.AVRecorderConfig | videoSourceType?: VideoSourceType |
| media.AVRecorderConfig | audioSourceType?: AudioSourceType |
| media.AVRecorderConfig | profile: AVRecorderProfile |
| media.AVRecorderConfig | rotation?: number |
| media.AVRecorderConfig | url: string |
| media.AVRecorderConfig | location?: Location |
| media.AVRecorderConfig | interface AVRecorderConfig |
| media.AVRecorderProfile | videoBitrate?: number |
| media.AVRecorderProfile | videoCodec?: CodecMimeType |
| media.AVRecorderProfile | audioCodec?: CodecMimeType |
| media.AVRecorderProfile | videoFrameRate?: number |
| media.AVRecorderProfile | videoFrameHeight?: number |
| media.AVRecorderProfile | audioSampleRate?: number |
| media.AVRecorderProfile | audioBitrate?: number |
| media.AVRecorderProfile | videoFrameWidth?: number |
| media.AVRecorderProfile | audioChannels?: number |
| media.AVRecorderProfile | fileFormat: ContainerFormatType |
| media.AVRecorderProfile | interface AVRecorderProfile |
| unnamed | type AVRecorderState = 'idle' \| 'prepared' \| 'started' \| 'paused' \| 'stopped' \| 'released' \| 'error' |
停止维护接口如下:
| 类名 | 停止维护接口声明 |
| -------------------------- | ------------------------------------------------------------ |
| media | createVideoRecorder(callback: AsyncCallback\<VideoRecorder>): void |
| media | createVideoRecorder(): Promise\<VideoRecorder> |
| media | createAudioRecorder(): AudioRecorder |
| media.AudioRecorder | interface AudioRecorder |
| media.AudioRecorder | prepare(config: AudioRecorderConfig): void |
| media.AudioRecorder | release(): void |
| media.AudioRecorder | on(type: 'prepare' \| 'start' \| 'pause' \| 'resume' \| 'stop' \| 'release' \| 'reset', callback: () => void): void |
| media.AudioRecorder | on(type: 'error', callback: ErrorCallback): void |
| media.AudioRecorder | resume(): void |
| media.AudioRecorder | start(): void |
| media.AudioRecorder | pause(): void |
| media.AudioRecorder | stop(): void |
| media.AudioRecorder | reset(): void |
| media.AudioRecorderConfig | audioSampleRate?: number |
| media.AudioRecorderConfig | location?: Location |
| media.AudioRecorderConfig | fileFormat?: ContainerFormatType |
| media.AudioRecorderConfig | interface AudioRecorderConfig |
| media.AudioRecorderConfig | audioEncoder?: AudioEncoder |
| media.AudioRecorderConfig | audioEncodeBitRate?: number |
| media.AudioRecorderConfig | numberOfChannels?: number |
| media.AudioRecorderConfig | format?: AudioOutputFormat |
| media.AudioRecorderConfig | uri: string |
| media.AudioRecorderConfig | audioEncoderMime?: CodecMimeType |
| media.VideoRecorder | interface VideoRecorder |
| media.VideoRecorder | prepare(config: VideoRecorderConfig, callback: AsyncCallback\<void>): void |
| media.VideoRecorder | prepare(config: VideoRecorderConfig): Promise\<void> |
| media.VideoRecorder | release(callback: AsyncCallback\<void>): void |
| media.VideoRecorder | release(): Promise\<void> |
| media.VideoRecorder | readonly state: VideoRecordState |
| media.VideoRecorder | on(type: 'error', callback: ErrorCallback): void |
| media.VideoRecorder | resume(callback: AsyncCallback\<void>): void |
| media.VideoRecorder | resume(): Promise\<void> |
| media.VideoRecorder | start(callback: AsyncCallback\<void>): void |
| media.VideoRecorder | start(): Promise\<void> |
| media.VideoRecorder | pause(callback: AsyncCallback\<void>): void |
| media.VideoRecorder | pause(): Promise\<void> |
| media.VideoRecorder | stop(callback: AsyncCallback\<void>): void |
| media.VideoRecorder | stop(): Promise\<void> |
| media.VideoRecorder | reset(callback: AsyncCallback\<void>): void |
| media.VideoRecorder | reset(): Promise\<void> |
| media.VideoRecorder | getInputSurface(callback: AsyncCallback\<string>): void |
| media.VideoRecorder | getInputSurface(): Promise\<string> |
| media.VideoRecorderConfig | videoSourceType: VideoSourceType |
| media.VideoRecorderConfig | audioSourceType?: AudioSourceType |
| media.VideoRecorderConfig | profile: VideoRecorderProfile |
| media.VideoRecorderConfig | rotation?: number |
| media.VideoRecorderConfig | url: string |
| media.VideoRecorderConfig | location?: Location |
| media.VideoRecorderConfig | interface VideoRecorderConfig |
| media.VideoRecorderProfile | readonly videoBitrate: number |
| media.VideoRecorderProfile | readonly videoCodec: CodecMimeType |
| media.VideoRecorderProfile | readonly audioCodec: CodecMimeType |
| media.VideoRecorderProfile | readonly videoFrameRate: number |
| media.VideoRecorderProfile | readonly videoFrameHeight: number |
| media.VideoRecorderProfile | readonly audioSampleRate: number |
| media.VideoRecorderProfile | readonly audioBitrate: number |
| media.VideoRecorderProfile | readonly videoFrameWidth: number |
| media.VideoRecorderProfile | readonly audioChannels: number |
| media.VideoRecorderProfile | readonly fileFormat: ContainerFormatType |
| media.VideoRecorderProfile | interface VideoRecorderProfile |
| unnamed | type VideoRecordState = 'idle' \| 'prepared' \| 'playing' \| 'paused' \| 'stopped' \| 'error' |
变更接口如下:
| 类名 | 接口声明 | 变更前能力 | 变更后能力 | 变更前是否为系统接口 | 变更后是否为系统接口 |
| --------------------- | ------------------------------------------------------------ | ----------------------------------------------- | -------------------------------------------- | -------------------- | -------------------- |
| media.AudioSourceType | enum AudioSourceType { /** * default audio source type. * @since 9 * @syscap SystemCapability.Multimedia.Media.AVRecorder */ AUDIO_SOURCE_TYPE_DEFAULT = 0, /** * source type mic. * @since 9 * @syscap SystemCapability.Multimedia.Media.AVRecorder */ AUDIO_SOURCE_TYPE_MIC = 1, } | SystemCapability.Multimedia.Media.VideoRecorder | SystemCapability.Multimedia.Media.AVRecorder | 是 | 否 |
| media.VideoSourceType | enum VideoSourceType { /** * surface raw data. * @since 9 * @syscap SystemCapability.Multimedia.Media.AVRecorder */ VIDEO_SOURCE_TYPE_SURFACE_YUV = 0, /** * surface ES data. * @since 9 * @syscap SystemCapability.Multimedia.Media.AVRecorder */ VIDEO_SOURCE_TYPE_SURFACE_ES = 1, } | SystemCapability.Multimedia.Media.VideoRecorder | SystemCapability.Multimedia.Media.AVRecorder | 是 | 否 |
**适配指导**
请参考各接口的[API参考](../../../application-dev/reference/apis/js-apis-media.md)
## cl.media.3 错误码变更
新增标准的错误枚举类型[AVErrorCode9](../../../application-dev/reference/apis/js-apis-media.md#averrorcode)<sup>9+</sup>替代原有错误枚举类型[MediaErrorCode](../../../application-dev/reference/apis/js-apis-media.md#mediaerrorcode)<sup>8+</sup>
**变更影响**
以往接口返回错误码枚举类型为[MediaErrorCode](../../../application-dev/reference/apis/js-apis-media.md#mediaerrorcode)<sup>8+</sup>不变。新增接口错误码类型均采用[AVErrorCode9](../../../application-dev/reference/apis/js-apis-media.md#averrorcode)<sup>9+</sup>
**关键的接口/组件变更**
新增接口如下:
| 类名 | 新增错误码声明 |
| ----------------- | ------------------------------------------------------------ |
| media.AVErrorCode | enum AVErrorCode { /** * operation success. * @since 9 * @syscap SystemCapability.Multimedia.Media.Core */ AVERR_OK = 0, /** * permission denied. * @since 9 * @syscap SystemCapability.Multimedia.Media.Core */ AVERR_NO_PERMISSION = 201, /** * invalid parameter. * @since 9 * @syscap SystemCapability.Multimedia.Media.Core */ AVERR_INVALID_PARAMETER = 401, /** * the api is not supported in the current version * @since 9 * @syscap SystemCapability.Multimedia.Media.Core */ AVERR_UNSUPPORT_CAPABILITY = 801, /** * the system memory is insufficient or the number of services reaches the upper limit * @since 9 * @syscap SystemCapability.Multimedia.Media.Core */ AVERR_NO_MEMORY = 5400101, /** * current status does not allow or do not have permission to perform this operation * @since 9 * @syscap SystemCapability.Multimedia.Media.Core */ AVERR_OPERATE_NOT_PERMIT = 5400102, /** * data flow exception information * @since 9 * @syscap SystemCapability.Multimedia.Media.Core */ AVERR_IO = 5400103, /** * system or network response timeout. * @since 9 * @syscap SystemCapability.Multimedia.Media.Core */ AVERR_TIMEOUT = 5400104, /** * service process died. * @since 9 * @syscap SystemCapability.Multimedia.Media.Core */ AVERR_SERVICE_DIED = 5400105, /** * unsupported media format * @since 9 * @syscap SystemCapability.Multimedia.Media.Core */ AVERR_UNSUPPORT_FORMAT = 5400106, } |
停止维护接口如下:
| 类名 | 停止维护错误码声明 |
| -------------------- | ------------------------------------------------------------ |
| media.MediaErrorCode | enum MediaErrorCode { /** * operation success. * @since 8 * @syscap SystemCapability.Multimedia.Media.Core */ MSERR_OK = 0, /** * malloc or new memory failed. maybe system have no memory. * @since 8 * @syscap SystemCapability.Multimedia.Media.Core */ MSERR_NO_MEMORY = 1, /** * no permission for the operation. * @since 8 * @syscap SystemCapability.Multimedia.Media.Core */ MSERR_OPERATION_NOT_PERMIT = 2, /** * invalid argument. * @since 8 * @syscap SystemCapability.Multimedia.Media.Core */ MSERR_INVALID_VAL = 3, /** * an I/O error occurred. * @since 8 * @syscap SystemCapability.Multimedia.Media.Core */ MSERR_IO = 4, /** * operation time out. * @since 8 * @syscap SystemCapability.Multimedia.Media.Core */ MSERR_TIMEOUT = 5, /** * unknown error. * @since 8 * @syscap SystemCapability.Multimedia.Media.Core */ MSERR_UNKNOWN = 6, /** * media service died. * @since 8 * @syscap SystemCapability.Multimedia.Media.Core */ MSERR_SERVICE_DIED = 7, /** * operation is not permit in current state. * @since 8 * @syscap SystemCapability.Multimedia.Media.Core */ MSERR_INVALID_STATE = 8, /** * operation is not supported in current version. * @since 8 * @syscap SystemCapability.Multimedia.Media.Core */ MSERR_UNSUPPORTED = 9, } |
\ No newline at end of file
# 测试子系统ChangeLog
## cl.testfwk_arkxtest.1 Rect控件边框信息类接口名称变更
表示控件边框信息的枚举类型Rect定义自4.0.2.1版本起进行了变更。
## 变更影响
此变更影响@ohos.uitest提供的Rect接口。用户此前在测试用例开发中使用了@ohos.uitest-api9 中Rect接口的,需要进行适配才可以在新版本SDK环境正常编译通过。
## 关键的接口/组件变更
### Rect<sup>9+</sup>
变更前:
| 名称 | 值 | 说明 |
| ------- | ---- | ------------------------- |
| leftX | 1 | 控件边框的左上角的X坐标。 |
| topY | 2 | 控件边框的左上角的Y坐标。 |
| rightX | 3 | 控件边框的右下角的X坐标。 |
| bottomY | 4 | 控件边框的右下角的Y坐标。 |
变更后:
| 名称 | 值 | 说明 |
| ------ | ---- | ------------------------- |
| left | 1 | 控件边框的左上角的X坐标。 |
| top | 2 | 控件边框的左上角的Y坐标。 |
| right | 3 | 控件边框的右下角的X坐标。 |
| bottom | 4 | 控件边框的右下角的Y坐标。 |
## 适配指导
### 适配接口名称变更
可按照如下规则做类名替换:
- `leftX-->left`
- `topY-->top`
- `rightX-->right`
- `bottomY-->bottom`
# USB服务子系统ChangeLog
## cl.usb_manager.1 系统接口变更
USB系统API运行时鉴权,异步接口以Promise reject形式抛出错误码。
基于此前版本开发的应用,需修改函数的返回值,否则会影响原有业务逻辑。
**关键接口/组件变更**
| 包名 | 旧接口 | 新接口 |
| --------------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
| ohos.usbV9.d.ts | function setCurrentFunctions(funcs: FunctionType): Promise<boolean>; | function setCurrentFunctions(funcs: FunctionType): Promise<void>; |
| ohos.usbV9.d.ts | function setPortRoles(portId: number, powerRole: PowerRoleType, dataRole: DataRoleType): Promise<boolean>; | function setPortRoles(portId: number, powerRole: PowerRoleType, dataRole: DataRoleType): Promise<void>; |
## cl.usb_manager.2 sdk接口删除
继OpenHarmony 4.0.5.5版本3.30之后,@ohos.usbV9.d.ts文件已删除。
后续需要import @ohos.usbManager才能使用USB服务的接口:
```ts
import usbManager from '@ohos.usbManager';
```
**适配指导**
请参考各接口的[API文档](../../../application-dev/reference/apis/js-apis-usbManager.md)
# web子系统ChangeLog
OpenHarmony 4.0.2.2 版本相较于OpenHarmony 之前的版本,web的API变更如下。
## cl.web.1 删除webDebuggingAccess接口
该接口定义不合理,该属性对所有web实例生效的,属于全局配置。用本次新增的接口setWebDebuggingAccess替换。
**变更影响**
该接口删除无法再使用,请使用新增的接口setWebDebuggingAccess替换。
**关键的接口/组件变更**
| 类名 | 接口类型 | 接口声明 | 变更类型 |
| -- | -- | -- | -- |
|WebAttribute | method | webDebugggingAccess(webDebugggingAccess: boolean): WebAttribute| 删除 |
**适配指导**
该接口删除无法再使用,请使用新增的接口setWebDebuggingAccess替换。
## cl.web.2 新增setWebDebuggingAccess接口
WebviewController提供静态方法来设置调试模式开关,该设置对所有web实例生效。
**变更影响**
原有webDebugggingAccess属性定义不合理,因此新增该静态接口来设置调试模式开关。应用侧需要使用该接口来打开调试模式开关。
**关键的接口/组件变更**
| 类名 | 接口类型 | 接口声明 | 变更类型 |
| -- | -- | -- | -- |
|webview.WebviewController | method | static setWebDebugggingAccess(webDebugggingAccess: boolean): void| 新增 |
**适配指导**
以打开调试开关为例,示例代码如下:
```ts
// xxx.ets
import web_webview from '@ohos.web.webview';
@Entry
@Component
struct WebComponent {
controller: web_webview.WebviewController = new web_webview.WebviewController();
aboutToAppear():void {
try {
web_webview.WebviewController.setWebDebuggingAccess(true);
} catch(error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`);
}
}
build() {
Column() {
Web({ src: 'www.example.com', controller: this.controller })
}
}
}
\ No newline at end of file
# 包管理子系统ChangeLog
## cl.bundlemanager.1 底层能力变更,安装hap时,hap中的文件不再解压到安装目录。
安装hap后,安装目录下只会存在hap文件,应用不能再使用拼接路径访问解压后的资源文件,应用想要访问资源文件,需要使用标准的资源管理接口。
**变更影响**<br>
如果应用使用拼接路径的形式访问资源文件,会访问失败。需要修改成使用资源管理接口访问资源文件。
**关键的接口/组件变更**<br>
不涉及接口及组件变更
**适配指导**<br>
资源管理子系统提供Js接口访问资源文件。参考[访问资源文件](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-resource-manager.md#getrawfilecontent9)
# 全球化子系统ChangeLog
## cl.resourceManager.1 资源获取rawfile文件描述符接口含义变更
相较于之前的版本,在4.0.2.2 版本中,新增不解压特性,rawfile文件描述符接口返回值的含义发生了变化。接口用于返回获取的rawfile文件的descriptor:RawFileDescriptor {fd,offset, length},由于不解压特性变更,返回值没发生变化,但返回值的含义发生了变化, 变化如下:
**新增不解压特性前**
fd: 访问rawfile文件的文件描述符;
offset: 访问rawfile文件的偏移量,此时为0;
length: 访问rawfile文件的大小。
**新增不解压特性后**
fd: 访问rawfile文件所在hap的文件描述符;
offset: 访问rawfile文件相对于hap的偏移量;
length: 访问rawfile文件的大小。
**变更影响**
之前只通过fd可以访问到rawfile文件,在4.0.2.2 及以上版本需要通过{fd, offset, length}三个参数才能访问到。
**关键接口/组件变更**
| **涉及接口** |
| ---------------- |
| getRawFd(path: string, callback: AsyncCallback\<RawFileDescriptor>): void |
| getRawFd(path: string): Promise\<RawFileDescriptor> |
| getRawFileDescriptor(path: string, callback: AsyncCallback\<RawFileDescriptor>): void|
| getRawFileDescriptor(path: string): Promise\<RawFileDescriptor>|
||
**示例代码**
以调用接口getRawFd为例:
```
try {
this.context.resourceManager.getRawFd("test.ogg", (error, value) => {
if (error != null) {
console.log(`callback getRawFd failed error code: ${error.code}, message: ${error.message}.`);
} else {
let fileDescriptor = {
fd = value.fd,
offset = value.offset,
length = value.length
}
this.avPlayer.fdSrc(fileDescriptor); // 以音频播放为例,调用fdSrc时需要传fileDescriptor,不能仅传fd。
}
});
} catch (error) {
console.error(`callback getRawFd failed, error code: ${error.code}, message: ${error.message}.`)
};
```
# 元能力子系统ChangeLog
## cl.ability.1 appRecovery接口中RestartFlag属性名称变更,删除了未支持的属性
appRecovery接口中RestartFlag枚举命名从特定故障发生后**不重启**改成了特定故障发生后**重启**
删除了CPP_CRASH_NO_RESTART。
**变更影响**
4.0.2.3版本之前使用CPP_CRASH_NO_RESTART/JS_CRASH_NO_RESTART/APP_FREEZE_NO_RESTART类型开发的应用,在4.0.2.3版本之后行为会发生变化。
**关键接口/组件变更**
**RestartFlag** <sup>9+</sup>
变更前:
| 名称 | 值 | 说明 |
| ----------------------------- | ---- | ------------------------------------------------------------ |
| ALWAYS_RESTART | 0 | 总是重启应用。 |
| CPP_CRASH_NO_RESTART | 0x0001 | 发生CPP_CRASH时**不重启**应用。 |
| JS_CRASH_NO_RESTART | 0x0002 | 发生JS_CRASH时**不重启**应用。 |
| APP_FREEZE_NO_RESTART | 0x0004 | 发生APP_FREEZE时**不重启**应用。 |
| NO_RESTART | 0xFFFF | 总是不重启应用。 |
变更后:
| 名称 | 值 | 说明 |
| ---------- | ---- | ---------- |
| ALWAYS_RESTART | 0 | 总是重启应用。 |
| CPP_CRASH_NO_RESTART | NA | **删除**,不支持该场景的重启。 |
| RESTART_WHEN_JS_CRASH | 0x0001 | 发生JS_CRASH时**重启**应用。 |
| RESTART_WHEN_APP_FREEZE | 0x0002 | 发生APP_FREEZE时**重启**应用。 |
| NO_RESTART | 0xFFFF | 总是不重启应用。 |
**适配指导**
按新的语义进行适配。
\ No newline at end of file
# ANS通知子系统ChangeLog
## cl.notificationManager.1 接口名变更
基于此前接口名定义不够规范,与其他功能类型的接口命名不一致,对此接口名进行变更。
**变更影响**
底层仍支持原接口功能,不影响4.0.2.3版本调用该接口的应用。
**关键接口/组件变更**
| 包名 | 旧接口 | 新接口 |
| --------------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
| ohos.notificationManager.d.ts | **function** supportDoNotDisturbMode(callback: AsyncCallback<boolean>): **void**; | **function** isSupportDoNotDisturbMode(callback: AsyncCallback<boolean>): **void**; |
| ohos.notificationManager.d.ts | **function** supportDoNotDisturbMode(): Promise<boolean>; | **function** isSupportDoNotDisturbMode(): Promise<boolean>; |
**适配指导**
按新的接口isSupportDoNotDisturbMode调用。
# arkui子系统ChangeLog
## cl.arkui.1 状态变量数据类型声明使用限制。
1. 所有的状态装饰器变量需要显式声明变量类型,不允许声明any。
示例:
```ts
// xxx.ets
@Entry
@Component
struct DatePickerExample {
// 错误写法: @State isLunar: any = false
@State isLunar: boolean = false
build() {
...
}
}
```
2. @State、@Provide、 @Link和@Consume四种状态变量的数据类型声明只能由简单数据类型或引用数据类型的其中一种构成。
类型定义中的Length、ResourceStr、ResourceColor三个类型是简单数据类型或引用数据类型的组合,所以不能被以上四种状态装饰器变量使用。
Length、ResourceStr、ResourceColor的定义请看文档[arkui-ts类型定义](../../../application-dev/reference/arkui-ts/ts-types.md)。
示例:
```ts
// xxx.ets
@Entry
@Component
struct IndexPage {
// 错误写法: @State message: string | Resource = 'Hello World'
@State message: string = 'Hello World'
// 错误写法: @State message: ResourceStr = $r('app.string.hello')
@State resourceStr: Resource = $r('app.string.hello')
build() {
Row() {
Column() {
Text(`${this.message}`)
.fontSize(50)
.fontWeight(FontWeight.Bold)
}
.width('100%')
}
.height('100%')
}
}
```
![hello](../../../application-dev/quick-start/figures/hello.PNG)
**变更影响**
1. 如果状态装饰器变量没有显式声明变量类型,声明any,编译拦截会出现警告;
```ts
// ArkTS:WARN Please define an explicit type, not any.
@State isLunar: any = false
```
3. @State、@Provide、 @Link和@Consume四种状态变量使用框架提供的Length、ResourceStr、ResourceColor,
编译拦截报错。
```ts
/* ArkTS:ERROR The state variable type here is 'ResourceStr', it contains both a simple type and an object type,
which are not allowed to be defined for state variable of a struct.*/
@State message: ResourceStr = $r('app.string.hello')
```
**关键的接口/组件变更**
不涉及。
**适配指导**
1. 状态装饰器变量声明具体的变量类型替代any;
3. 因为Length(string|number|Resource), ResourceStr(string|Resource), ResourceColor(string|number|Color|Resource)
的三个类型是简单数据类型或引用数据类型的组合,使用@State、@Provide、 @Link和@Consume四种状态变量场景参考以下修改:
```ts
// 错误写法:
@State message: ResourceStr = $r('app.string.hello')
// 修正后的写法:
@State resourceStr: Resource = $r('app.string.hello')
```
## cl.arkui.2 自定义组件成员变量初始化的规则与约束。
通过构造函数方法初始化成员变量,需要遵循如下规则:
| **从父组件中的变量(右)到子组件中的变量(下)** | **regular** | **@State** | **@Link** | **@Prop** | **@Provide** | **@Consume** | **@ObjectLink** |
| -------------------------- | ----------- | ---------- | --------- | --------- | ------------ | ------------ | --------------- |
| **regular** | 支持 | 支持 | 支持 | 支持 | 不支持 | 不支持 | 支持 |
| **@State** | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
| **@Link** | 不支持 | 支持(1) | 支持(1) | 支持(1) | 支持(1) | 支持(1) | 支持(1) |
| **@Prop** | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
| **@Provide** | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
| **@Consume** | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 |
| **@ObjectLink** | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 |
| **从父组件中的变量(右)到子组件中的变量(下)** | **@StorageLink** | **@StorageProp** | **@LocalStorageLink** | **@LocalStorageProp** |
| -------------------------- | ---------------- | ---------------- | --------------------- | --------------------- |
| **regular** | 支持 | 不支持 | 不支持 | 不支持 |
| **@State** | 支持 | 支持 | 支持 | 支持 |
| **@Link** | 支持(1) | 支持(1) | 支持(1) | 支持(1) |
| **@Prop** | 支持 | 支持 | 支持 | 支持 |
| **@Provide** | 支持 | 支持 | 支持 | 支持 |
| **@Consume** | 不支持 | 不支持 | 不支持 | 不支持 |
| **@ObjectLink** | 不支持 | 不支持 | 不支持 | 不支持 |
> **说明**
>
> **支持(1)**:必须使用`$`, 例如 `this.$varA`。
> **regular**:未加修饰的常规变量。
不允许从父组件初始化`@StorageLink`, `@StorageProp`, `@LocalStorageLink`, `@LocalStorageProp`修饰的变量。
**变更影响**
1. 不允许从父组件初始化`@LocalStorageLink`, `@LocalStorageProp`修饰的变量,编译出现警告。
```ts
@Entry
@Component
struct LocalStorageComponent {
build() {
Column() {
Child({
/* ArkTS:WARN Property 'simpleVarName' in the custom component 'Child' cannot
initialize here (forbidden to specify). */
simpleVarName: 1,
/* ArkTS:WARN Property 'objectName' in the custom component 'Child' cannot
initialize here (forbidden to specify). */
objectName: new ClassA("x")
})
}
}
}
@Component
struct Child {
@LocalStorageLink("storageSimpleProp") simpleVarName: number = 0;
@LocalStorageProp("storageObjectProp") objectName: ClassA = new ClassA("x");
build() {}
}
```
2. 子组件的@ObjectLink变量不支持父组件装饰器变量的直接赋值,其父组件的源必须是数组的项或对象的属性,该数组或对象必现用`@State``@Link``@Provide``@Consume``@ObjectLink`装饰器修饰。
```ts
let NextID : number = 0;
@Observed class ClassA {
public id : number;
public c: number;
constructor(c: number) {
this.id = NextID++;
this.c = c;
}
}
@Component
struct Child {
@ObjectLink varA : ClassA;
build() {
Row() {
Text('ViewA-' + this.varA.id)
}
}
}
@Component
struct Parent {
@Link linkValue: ClassA
build() {
Column() {
/* ArkTS:ERROR The @Link property 'linkValue' cannot be assigned to
the @ObjectLink property 'varA'.*/
Child({ varA: this.linkValue })
}
}
}
```
**关键的接口/组件变更**
不涉及。
**适配指导**
1. 构造子组件时,不对子组件的`@LocalStorageLink`, `@LocalStorageProp`修饰的变量进行。
如果需要在父组件中修改子组件的`@LocalStorageLink`, `@LocalStorageProp`修饰的变量,则使用LocalStorage提供的API接口方法(比如set方法)赋值。
2. @ObjectLink的使用指导请参考文档[@ObjectLink使用指导](../../../application-dev/quick-start/arkts-observed-and-objectlink.md)
## cl.arkui.3 List组件和Scroll组件onScrollBegin事件变更
List组件和Scroll组件onScrollBegin事件更名为onScrollFrameBegin事件,onScrollBegin事件中dx和dy参数分别表示X轴和Y轴方向滚动偏移量,更变为onScrollFrameBegin事件后使用offset参数表示滚动偏移量。onScrollFrameBegin事件新增ScrollState参数,用于表示当前时手指拖动滑动状态还是惯性滑动状态。
**变更影响**
onScrollBegin事件不能再使用,需要使用onScrollFrameBegin事件。
**关键接口/组件变更**
| 旧事件定义 | 新事件定义 |
| ---------------------------------------- | ---------------------------------------- |
| onScrollBegin(event: (dx: number, dy: number) => { dxRemain: number, dyRemain: number }) | onScrollFrameBegin(event: (offset: number, state: ScrollState) => { offsetRemain: number }) |
onScrollFrameBegin事件说明参考API接口文档:
- [Scroll组件事件](../../../application-dev/reference/arkui-ts/ts-container-scroll.md#事件)
- [List组件事件](../../../application-dev/reference/arkui-ts/ts-container-list.md#事件)
**适配指导**
onScrollBegin改成使用onScrollFrameBegin事件,onScrollBegin事件的dx/dy参数改成onScrollFrameBegin事件的offset参数。原本需要更滚动组件的滚动轴来确定是使用dx还dy参数,使用onScrollFrameBegin事件后,只需要直接使用offset参数。
onScrollBegin事件典型使用示例:
```ts
@Entry
@Component
struct NestedScroll {
@State listPosition: number = 0; // 0代表滚动到List顶部,1代表中间值,2代表滚动到List底部。
private arr: number[] = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
private scrollerForScroll: Scroller = new Scroller()
private scrollerForList: Scroller = new Scroller()
build() {
Flex() {
Scroll(this.scrollerForScroll) {
Column() {
Text("Scroll Area")
.width("100%").height("40%").backgroundColor(0X330000FF)
.fontSize(16).textAlign(TextAlign.Center)
.onClick(() => {
this.scrollerForList.scrollToIndex(5)
})
List({ space: 20, scroller: this.scrollerForList }) {
ForEach(this.arr, (item) => {
ListItem() {
Text("ListItem" + item)
.width("100%").height("100%").borderRadius(15)
.fontSize(16).textAlign(TextAlign.Center).backgroundColor(Color.White)
}.width("100%").height(100)
}, item => item)
}
.width("100%")
.height("50%")
.edgeEffect(EdgeEffect.None)
.onReachStart(() => {
this.listPosition = 0
})
.onReachEnd(() => {
this.listPosition = 2
})
.onScrollBegin((dx: number, dy: number) => {
if ((this.listPosition == 0 && dy >= 0) || (this.listPosition == 2 && dy <= 0)) {
this.scrollerForScroll.scrollBy(0, -dy)
return { dxRemain: dx, dyRemain: 0 }
}
this.listPosition = 1
return { dxRemain: dx, dyRemain: dy };
})
Text("Scroll Area")
.width("100%").height("40%").backgroundColor(0X330000FF)
.fontSize(16).textAlign(TextAlign.Center)
}
}
.width("100%").height("100%")
}.width('100%').height('100%').backgroundColor(0xDCDCDC).padding(20)
}
}
```
改成onScrollFrameBegin事件参考代码如下:
```ts
@Entry
@Component
struct NestedScroll {
@State listPosition: number = 0; // 0代表滚动到List顶部,1代表中间值,2代表滚动到List底部。
private arr: number[] = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
private scrollerForScroll: Scroller = new Scroller()
private scrollerForList: Scroller = new Scroller()
build() {
Flex() {
Scroll(this.scrollerForScroll) {
Column() {
Text("Scroll Area")
.width("100%").height("40%").backgroundColor(0X330000FF)
.fontSize(16).textAlign(TextAlign.Center)
.onClick(() => {
this.scrollerForList.scrollToIndex(5)
})
List({ space: 20, scroller: this.scrollerForList }) {
ForEach(this.arr, (item) => {
ListItem() {
Text("ListItem" + item)
.width("100%").height("100%").borderRadius(15)
.fontSize(16).textAlign(TextAlign.Center).backgroundColor(Color.White)
}.width("100%").height(100)
}, item => item)
}
.width("100%")
.height("50%")
.edgeEffect(EdgeEffect.None)
.onReachStart(() => {
this.listPosition = 0
})
.onReachEnd(() => {
this.listPosition = 2
})
.onScrollFrameBegin((offset: number, state: ScrollState) => {
if ((this.listPosition == 0 && offset >= 0) || (this.listPosition == 2 && offset <= 0)) {
this.scrollerForScroll.scrollBy(0, -offset)
return { offsetRemain: 0 }
}
this.listPosition = 1
return { offsetRemain: offset };
})
Text("Scroll Area")
.width("100%").height("40%").backgroundColor(0X330000FF)
.fontSize(16).textAlign(TextAlign.Center)
}
}
.width("100%").height("100%")
}.width('100%').height('100%').backgroundColor(0xDCDCDC).padding(20)
}
}
```
\ No newline at end of file
# USB服务子系统ChangeLog
## cl.usb_manager.1 包名变更
基于此前版本开发的应用,需修改导入的包名,否则会影响原有业务逻辑。
**关键接口/组件变更**
| 旧包名 | 新包名 |
|------------------ | ------------------- |
| ohos.usbV9.d.ts | ohos.usbManager.d.ts |
**适配指导**
开发者导入时将@ohos.usbV9更换为@ohos.usbManager即可。
## cl.usb_manager.2 接口参数类型变更
基于此前版本开发的应用,需修改参数类型,否则会影响原有业务逻辑。
**关键接口/组件变更**
| 旧类名 | 新类名 |
|---------------| ------------- |
| interface USBConfig | interface USBConfiguration |
| 旧命名空间 | 新命名空间 |
|---------------| ------------- |
| @namespace usbV9 | @namespace usbManager |
| 包名 | 旧接口 | 新接口 |
| --------------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
| ohos.usbManager.d.ts | function setConfiguration(pipe: USBDevicePipe, config: USBConfig): number; | function setConfiguration(pipe: USBDevicePipe, config: USBConfiguration): number; |
**适配指导**
调用setConfiguration接口时参数类型USBConfig修改为USBConfiguration即可。
\ No newline at end of file
# 电话子系统ChangeLog
## cl.telephony.radio.1 isNrSupported接口变更
NR是专有名词,需要全部大写。
开发者需要根据以下说明对应用进行适配。
**变更影响**
基于此前版本开发的应用,需适配变更的js接口,变更前的接口已经不能正常使用了,否则会影响原有功能。
**关键的接口/组件变更**
- 涉及接口
isNrSupported(): boolean;
isNrSupported(slotId: number): boolean;
- 变更前:
```js
function isNrSupported(): boolean;
function isNrSupported(slotId: number): boolean;
```
- 变更后:
```js
function isNRSupported(): boolean;
function isNRSupported(slotId: number): boolean;
```
**适配指导**
使用变更后的接口,示例代码如下:
```js
let result = radio.isNrSupported();
console.log("Result: "+ result);
```
```js
let slotId = 0;
let result = radio.isNRSupported(slotId);
console.log("Result: "+ result);
```
## cl.telephony.call.2 dial接口变更
从API9开始,废弃此接口,改为使用dialCall接口。
开发者需要根据以下说明对应用进行适配。
**变更影响**
该接口删除无法再使用,请使用新增的接口dialCall替换,否则会影响原有功能。
**关键的接口/组件变更**
- 涉及接口
dial(phoneNumber: string, callback: AsyncCallback<boolean>): void;
dial(phoneNumber: string, options: DialOptions, callback: AsyncCallback<boolean>): void;
dial(phoneNumber: string, options?: DialOptions): Promise<boolean>;
- 变更前:
```js
function dial(phoneNumber: string, callback: AsyncCallback<boolean>): void;
function dial(phoneNumber: string, options: DialOptions, callback: AsyncCallback<boolean>): void;
function dial(phoneNumber: string, options?: DialOptions): Promise<boolean>;
```
- 变更后:
```js
function dialCall(phoneNumber: string, callback: AsyncCallback<void>): void;
function dialCall(phoneNumber: string, options: DialCallOptions, callback: AsyncCallback<void>): void;
function dialCall(phoneNumber: string, options?: DialCallOptions): Promise<void>;
```
**适配指导**
该接口删除无法再使用,请使用新增的接口dialCall替换。
使用变更后的接口,示例代码如下:
```js
call.dialCall("138xxxxxxxx", (err, data) => {
console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});
```
```js
call.dialCall("138xxxxxxxx", {
accountId: 0,
videoState: 0,
dialScene: 0,
dialType: 0,
}, (err, data) => {
console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});
```
```js
try {
call.dialCall('138xxxxxxxx');
console.log(`dialCall success, promise: data->${JSON.stringify(data)}`);
} catch (error) {
console.log(`dialCall fail, promise: err->${JSON.stringify(error)}`);
}
```
# 程序访问控制子系统ChangeLog
OpenHarmony 4.0.3.2 版本相较于OpenHarmony 之前的版本,程序访问控制子系统的API变更如下。
## cl.access_token.1 getPermissionUsedRecords命名变更
接口getPermissionUsedRecords由于命名规范问题,名称变更为getPermissionUsedRecord。
**变更影响**
接口getPermissionUsedRecords,在4.0.3.3版本及后续版本中无法继续正常使用。
**关键的接口/组件变更**
- 涉及接口
function getPermissionUsedRecords
- 变更前:
```ts
function getPermissionUsedRecords
```
- 变更后:
```ts
function getPermissionUsedRecord
```
**适配指导**
请使用getPermissionUsedRecord替换getPermissionUsedRecords
\ No newline at end of file
# security子系统ChangeLog
## cl.security.1 ParamsSpec属性名变更为algName。
结构体ParamsSpec的属性algoName由于API命名统一,名称更改为algName。
**变更影响**
影响已发布的JS接口,对ParamsSpec以及其子类IvParamsSpec,GcmParamsSpec与CcmParamsSpec,使用这些对象作为参数或返回值时,其属性名需要更改为algName。
应用需要进行适配,才可以在新版本SDK环境正常编译通过。
**关键的接口/组件变更**
修改前的接口原型:
```ts
interface ParamsSpec {
/**
* Indicates the algorithm name. Should be set before initialization of a cipher object.
* @type { string }
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
algoName : string;
}
```
修改后的接口原型:
```ts
interface ParamsSpec {
/**
* Indicates the algorithm name. Should be set before initialization of a cipher object.
* @type { string }
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
algName : string;
}
```
**适配指导**
对ParamsSpec以及其子类IvParamsSpec,GcmParamsSpec与CcmParamsSpec,使用这些对象作为参数或返回值时,其属性名需要从algoName更改为algName。
```ts
function genGcmParamsSpec() {
let arr = [0, 0, 0, 0 , 0, 0, 0, 0, 0, 0 , 0, 0]; // 12 bytes
let dataIv = new Uint8Array(arr);
let ivBlob = {data : dataIv};
arr = [0, 0, 0, 0 , 0, 0, 0, 0]; // 8 bytes
let dataAad = new Uint8Array(arr);
let aadBlob = {data : dataAad};
arr = [0, 0, 0, 0 , 0, 0, 0, 0, 0, 0, 0, 0 , 0, 0, 0, 0]; // 16 bytes
let dataTag = new Uint8Array(arr);
let tagBlob = {data : dataTag};
let gcmParamsSpec = {iv : ivBlob, aad : aadBlob, authTag : tagBlob, algName : "GcmParamsSpec"};
return gcmParamsSpec;
}
```
详细查看API参考中ParamsSpec对应的接口适配指南:
[加解密算法库框架-ParamsSpec-API参考](../../../application-dev/reference/apis/js-apis-cryptoFramework.md#paramsspec)
## cl.security.2 ECC密码算法的参数名从ECC512变更为ECC521
**变更影响**
影响已发布的JS接口,接口行为发生变更。
应用需要进行适配,才可以在新版本SDK环境获取正确结果。
**关键的接口/组件变更**
发布的JS接口不变, 传入接口的参数发生变化,由ECC512变化为ECC521,具体可见[加解密算法库框架-ECC密码算法参数参考](../../../application-dev/security/cryptoFramework-overview.md#密钥生成规格),涉及的接口有:
cryptoFramework.createAsyKeyGenerator
cryptoFramework.createSign
cryptoFramework.createVerify
cryptoFramework.createKeyAgreement
**适配指导**
```js
import cryptoFramework from "@ohos.security.cryptoFramework"
let asyKeyGenerator = cryptoFramework.createAsyKeyGenerator("ECC521");
```
\ No newline at end of file
# 软总线子系统ChangeLog
## cl.softbus.1 IPC接口中unregisterDeathRecipient接口返回值变更,更改为void。
unregisterDeathRecipient(recipient: DeathRecipient, flags: number)方法返回值为boolean,更正为void。
**变更影响**
该unregisterDeathRecipient接口如果需要继续使用,建议优先使用removeDeathRecipient(recipient: DeathRecipient, flags: number): boolean方法。
**关键的接口/组件变更**
- 变更前:
```js
unregisterDeathRecipient(recipient: DeathRecipient, flags: number): boolean
```
- 变更后:
```js
unregisterDeathRecipient(recipient: DeathRecipient, flags: number): void
```
**适配指导**
该unregisterDeathRecipient接口如果需要继续使用,建议优先使用removeDeathRecipient(recipient: DeathRecipient, flags: number): boolean方法。
\ No newline at end of file
# web子系统ChangeLog
OpenHarmony 4.0.3.2 版本相较于OpenHarmony 之前的版本,web的API变更如下。
## cl.web.1 HitTestTypeV9命名变更
枚举类HitTestTypeV9由于命名规范问题,名称变更为WebHitTestType。
**变更影响**
枚举类HitTestTypeV9,以及使用HitTestTypeV9作为参数或返回值的接口,在4.0.3.2版本及后续版本中无法继续正常使用。
**关键的接口/组件变更**
- 涉及接口
enum HitTestTypeV9
- 变更前:
```ts
enum HitTestTypeV9
```
- 变更后:
```ts
enum WebHitTestType
```
**适配指导**
请使用WebHitTestType替换HitTestTypeV9。
## cl.web.2 HeaderV9命名变更
结构体HeaderV9由于命名规范问题,名称变更为WebHeader。
**变更影响**
结构体HeaderV9,以及使用HeaderV9作为参数或返回值的接口,在4.0.3.2版本及后续版本中无法继续正常使用。
**关键的接口/组件变更**
- 涉及接口
interface HeaderV9
- 变更前:
```ts
interface HeaderV9
```
- 变更后:
```ts
interface WebHeader
```
**适配指导**
请使用WebHeader替换HeaderV9。
## cl.web.3 HitTestValue结构体成员类型变更
结构体HitTestValue中的成员变量HitTestTypeV9由于命名规范问题,名称变更为WebHitTestType。
**变更影响**
结构体HitTestValue,以及使用HitTestValue作为参数或返回值的接口,在4.0.3.2版本及后续版本中无法继续正常使用。
**关键的接口/组件变更**
- 涉及接口
interface HitTestValue
- 变更前:
```ts
interface HitTestValue {
/**
* Get the hit test type.
*
* @since 9
*/
type: HitTestTypeV9;
/**
* Get the hit test extra data.
*
* @since 9
*/
extra: string;
}
```
- 变更后:
```ts
interface HitTestValue {
/**
* Get the hit test type.
*
* @since 9
*/
type: WebHitTestType;
/**
* Get the hit test extra data.
*
* @since 9
*/
extra: string;
}
```
**适配指导**
请使用WebHitTestType替换HitTestTypeV9。
## cl.web.4 loadUrl参数类型变更
loadUrl接口中的参数headers,由于其类型的命名规范问题,类型变更为WebHeader。
**变更影响**
loadUrl接口若使用了headers参数,则在4.0.3.2版本及后续版本中无法继续正常使用。
**关键的接口/组件变更**
- 涉及接口
loadUrl(url: string | Resource, headers?: Array<HeaderV9>): void
- 变更前:
```ts
loadUrl(url: string | Resource, headers?: Array<HeaderV9>): void
```
- 变更后:
```ts
loadUrl(url: string | Resource, headers?: Array<WebHeader>): void
```
**适配指导**
在loadUrl中设置headers参数时,请使用WebHeader类型替换HeaderV9类型。
## cl.web.5 getHitTest返回值类型变更
getHitTest接口中的返回值,由于其类型的命名规范问题,变更为WebHitTest。
**变更影响**
getHitTest接口,在4.0.3.2版本及后续版本中无法继续正常使用。
**关键的接口/组件变更**
- 涉及接口
getHitTest(): HitTestTypeV9
- 变更前:
```ts
getHitTest(): HitTestTypeV9
```
- 变更后:
```ts
getHitTest(): WebHitTestType
```
**适配指导**
在使用getHitTest接口的返回值时,请使用WebHitTestType类型替换HitTestTypeV9类型。
## cl.web.6 WebMessagePort类迁移
WebMessagePort类迁移至@ohos.web.webview.d.ts,并新增错误码抛出。
**变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现该类下接口支持错误码处理,需注意错误码处理的使用。
**关键的接口/组件变更**
- 涉及接口
postMessageEvent(message: WebMessageEvent): void;
onMessageEvent(callback: (result: string) => void): void;
- 变更前:
```ts
postMessageEvent(message: WebMessageEvent): void;
onMessageEvent(callback: (result: string) => void): void;
```
- 变更后:
```ts
postMessageEvent(message: WebMessage): void;
onMessageEvent(callback: (result: WebMessage) => void): void;
```
**适配指导**
原WebMessagePort类不需要import,现WebMessagePort类使用的是@ohos.web.webview,以下方式import:
```ts
import web_webview from '@ohos.web.webview';
```
## cl.web.7 HitTestValue类迁移
HitTestValue类迁移至@ohos.web.webview.d.ts,HitTestValue类变更为接口,getType,getExtra变更为属性。
**变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。
**关键的接口/组件变更**
- 涉及接口
getType(): HitTestType;
getExtra(): string;
- 变更前:
```ts
getType(): HitTestType;
getExtra(): string;
```
- 变更后:
```ts
type: WebHitTestType;
extra: string;
```
**适配指导**
原HitTestValue类不需要import,现HitTestValue类使用的是@ohos.web.webview,以下方式import:
```ts
import web_webview from '@ohos.web.webview';
```
## cl.web.8 WebCookie类下api9接口迁移
WebCookie类下api9接口迁移,WebCookie类下api9接口迁移到web.webview.webview.WebCookieManager。
并新增接口错误码抛出。
**变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现该类下接口支持错误码处理,需注意错误码处理的使用。
该类方法变为静态方法。
**关键的接口/组件变更**
- 涉及接口
isCookieAllowed(): boolean;
isThirdPartyCookieAllowed(): boolean;
putAcceptCookieEnabled(accept: boolean): void;
putAcceptThirdPartyCookieEnabled(accept: boolean): void;
setCookie(url: string, value: string): boolean;
saveCookieSync(): boolean;
getCookie(url: string): string;
existCookie(): boolean;
deleteEntireCookie(): void;
deleteSessionCookie(): void;
- 变更前:
```ts
isCookieAllowed(): boolean;
isThirdPartyCookieAllowed(): boolean;
putAcceptCookieEnabled(accept: boolean): void;
putAcceptThirdPartyCookieEnabled(accept: boolean): void;
setCookie(url: string, value: string): boolean;
saveCookieSync(): boolean;
getCookie(url: string): string;
existCookie(): boolean;
deleteEntireCookie(): void;
deleteSessionCookie(): void;
```
- 变更后:
```ts
static isCookieAllowed(): boolean;
static isThirdPartyCookieAllowed(): boolean;
static putAcceptCookieEnabled(accept: boolean): void;
static putAcceptThirdPartyCookieEnabled(accept: boolean): void;
static setCookie(url: string, value: string): void;
static saveCookieAsync(): Promise<void>;
static saveCookieAsync(callback: AsyncCallback<void>): void;
static getCookie(url: string): string;
static existCookie(): boolean;
static deleteEntireCookie(): void;
static deleteSessionCookie(): void;
```
**适配指导**
原WebCookie类不需要import,现WebCookieManager使用的是@ohos.web.webview,以下方式import:
```ts
import web_webview from '@ohos.web.webview';
```
## cl.web.9 WebController类下api9接口迁移
WebController类下api9接口迁移至web.webview.webview.WebviewController,并新增接口错误码抛出。
**变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现该类下接口支持错误码处理,需注意错误码处理的使用。
getDefaultUserAgent接口更名为getUserAgent。
**关键的接口/组件变更**
- 涉及接口
zoomIn(): boolean;
zoomOut(): boolean;
createWebMessagePorts(): Array<WebMessagePort>;
postMessage(options: { message: WebMessageEvent, uri: string}): void;
getHitTestValue(): HitTestValue;
getWebId(): number;
getDefaultUserAgent(): string;
getTitle(): string;
getPageHeight(): number;
backOrForward(step: number): void;
searchAllAsync(searchString: string): void;
clearMatches(): void;
searchNext(forward: boolean): void;
clearSslCache(): void;
clearClientAuthenticationCache(): void;
getUrl(): string;
- 变更前:
```ts
zoomIn(): boolean;
zoomOut(): boolean;
createWebMessagePorts(): Array<WebMessagePort>;
postMessage(options: { message: WebMessageEvent, uri: string}): void;
getHitTestValue(): HitTestValue;
getWebId(): number;
getDefaultUserAgent(): string;
getTitle(): string;
getPageHeight(): number;
backOrForward(step: number): void;
searchAllAsync(searchString: string): void;
clearMatches(): void;
searchNext(forward: boolean): void;
clearSslCache(): void;
clearClientAuthenticationCache(): void;
getUrl(): string;
```
- 变更后:
```ts
zoomIn(): void;
zoomOut(): void;
createWebMessagePorts(): Array<WebMessagePort>;
postMessage(name: string, ports: Array<WebMessagePort>, uri: string): void;
getHitTestValue(): HitTestValue;
getWebId(): number;
getUserAgent(): string;
getTitle(): string;
getPageHeight(): number;
backOrForward(step: number): void;
searchAllAsync(searchString: string): void;
clearMatches(): void;
searchNext(forward: boolean): void;
clearSslCache(): void;
clearClientAuthenticationCache(): void;
getUrl(): string;
```
**适配指导**
原WebController类不需要import,现WebviewController类使用的是@ohos.web.webview,以下方式import:
```ts
import web_webview from '@ohos.web.webview';
```
## cl.web.10 WebAsyncController类迁移
WebAsyncController类下接口迁移至web.webview.webview.WebviewController,并新增接口错误码抛出。
**变更影响**
基于此前版本开发的应用,需注意错误码处理的使用。
**关键的接口/组件变更**
- 涉及接口
storeWebArchive(baseName: string, autoName: boolean): Promise<string>;
storeWebArchive(baseName: string, autoName: boolean, callback : AsyncCallback<string>): void;
- 变更前:
```ts
storeWebArchive(baseName: string, autoName: boolean): Promise<string>;
storeWebArchive(baseName: string, autoName: boolean, callback : AsyncCallback<string>): void;
```
- 变更后:
```ts
storeWebArchive(baseName: string, autoName: boolean): Promise<string>;
storeWebArchive(baseName: string, autoName: boolean, callback : AsyncCallback<string>): void;
```
**适配指导**
使用示例:
```ts
// xxx.ets
import web_webview from '@ohos.web.webview'
@Entry
@Component
struct WebComponent {
controller: web_webview.WebviewController = new web_webview.WebviewController();
build() {
Column() {
Button('saveWebArchive')
.onClick(() => {
try {
this.controller.storeWebArchive("/data/storage/el2/base/", true, (error, filename) => {
if (error) {
console.info(`save web archive error: ` + JSON.stringify(error))
return;
}
if (filename != null) {
console.info(`save web archive success: ${filename}`)
}
});
} catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`);
}
})
Web({ src: 'www.example.com', controller: this.controller })
}
}
}
```
\ No newline at end of file
# 帐号子系统ChangeLog
OpenHarmony4.0.3.2版本相较于OpenHarmony之前的版本,帐号模块的API变更如下。
## cl.account_os_account.1 应用帐号isAccountRemovable命名变更
类Authenticator中的成员函数isAccountRemovable由于命名不统一问题,名称变更为checkAccountRemovable。
**变更影响**
类Authenticator中的成员函数isAccountRemovable,在4.0.3.2版本及后续版本中无法继续正常使用,由checkAccountRemovable代替。
**关键的接口/组件变更**
- 涉及接口
```ts
class Authenticator {
...
isAccountRemovable
...
}
```
- 变更前:
```ts
class Authenticator {
...
/**
* Checks whether the specified account can be removed.
* @param name Indicates the account name.
* @param callback Indicates the authenticator callback.
* @returns void.
* @since 9
*/
isAccountRemovable(name: string, callback: AuthCallback): void;
...
}
```
- 变更后:
```ts
class Authenticator {
...
/**
* Checks whether the specified account can be removed.
* @param name Indicates the account name.
* @param callback Indicates the authenticator callback.
* @returns void.
* @since 9
*/
checkAccountRemovable(name: string, callback: AuthCallback): void;
...
}
```
## cl.account_os_account.2 系统帐号checkConstraintEnabled命名变更
checkConstraintEnabled由于命名不统一问题,名称变更为checkOsAccountConstraintEnabled。
**变更影响**
checkConstraintEnabled接口,在4.0.3.2版本及后续版本中无法继续正常使用,由checkOsAccountConstraintEnabled代替。
**关键的接口/组件变更**
- 涉及接口
```
interface AccountManager {
...
checkConstraintEnabled
...
}
```
- 变更前:
```ts
checkConstraintEnabled(localId: number, constraint: string, callback: AsyncCallback<boolean>): void;
checkConstraintEnabled(localId: number, constraint: string): Promise<boolean>;
```
- 变更后:
```ts
checkOsAccountConstraintEnabled(localId: number, constraint: string, callback: AsyncCallback<boolean>): void;
checkOsAccountConstraintEnabled(localId: number, constraint: string): Promise<boolean>;
```
## cl.account_os_account.3 系统帐号checkOsAccountConstraintEnabled权限场景变更
checkOsAccountConstraintEnabled接口的权限管控新增可选权限:ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS。
**变更影响**
在4.0.3.2版本及后续版本中,应用申请ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS权限亦可调用checkOsAccountConstraintEnabled,
切此前版本申请ohos.permission.MANAGE_LOCAL_ACCOUNTS权限的不影响使用
**关键的接口/组件变更**
- 涉及接口
```
interface AccountManager {
...
checkOsAccountConstraintEnabled
...
}
```
- 变更前:
```ts
...
* @permission ohos.permission.MANAGE_LOCAL_ACCOUNTS
...
checkOsAccountConstraintEnabled(localId: number, constraint: string, callback: AsyncCallback<boolean>): void;
checkOsAccountConstraintEnabled(localId: number, constraint: string): Promise<boolean>;
```
- 变更后:
```ts
...
* @permission ohos.permission.MANAGE_LOCAL_ACCOUNTS or ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS
...
checkOsAccountConstraintEnabled(localId: number, constraint: string, callback: AsyncCallback<boolean>): void;
checkOsAccountConstraintEnabled(localId: number, constraint: string): Promise<boolean>;
```
## cl.account_os_account.4 系统帐号queryOsAccountLocalIdFromProcessd命名变更
queryOsAccountLocalIdFromProcess由于命名不统一问题,名称变更为getOsAccountLocalId。
**变更影响**
queryOsAccountLocalIdFromProcess接口,在4.0.3.2版本及后续版本中无法继续正常使用,由getOsAccountLocalId代替。
**关键的接口/组件变更**
- 涉及接口
```
interface AccountManager {
...
queryOsAccountLocalIdFromProcess
...
}
```
- 变更前:
```ts
queryOsAccountLocalIdFromProcess(callback: AsyncCallback<number>): void;
queryOsAccountLocalIdFromProcess(): Promise<number>;
```
- 变更后:
```ts
getOsAccountLocalId(callback: AsyncCallback<number>): void;
getOsAccountLocalId(): Promise<number>;
```
## cl.account_os_account.5 系统帐号queryOsAccountLocalIdFromUid命名变更
queryOsAccountLocalIdFromUid由于命名不统一问题,名称变更为getOsAccountLocalIdForUid。
**变更影响**
queryOsAccountLocalIdFromUid接口,在4.0.3.2版本及后续版本中无法继续正常使用,由getOsAccountLocalIdForUid代替。
**关键的接口/组件变更**
- 涉及接口
```
interface AccountManager {
...
queryOsAccountLocalIdFromUid
...
}
```
- 变更前:
```ts
queryOsAccountLocalIdFromUid(uid: number, callback: AsyncCallback<number>): void;
queryOsAccountLocalIdFromUid(uid: number): Promise<number>;
```
- 变更后:
```ts
getOsAccountLocalIdForUid(uid: number, callback: AsyncCallback<number>): void;
getOsAccountLocalIdForUid(uid: number): Promise<number>;
```
## cl.account_os_account.6 系统帐号queryOsAccountLocalIdFromDomain命名变更
queryOsAccountLocalIdFromDomain由于命名不统一问题,名称变更为getOsAccountLocalIdForDomain。
**变更影响**
queryOsAccountLocalIdFromDomain接口,在4.0.3.2版本及后续版本中无法继续正常使用,由getOsAccountLocalIdForDomain代替。
**关键的接口/组件变更**
- 涉及接口
```
interface AccountManager {
...
queryOsAccountLocalIdFromDomain
...
}
```
- 变更前:
```ts
queryOsAccountLocalIdFromDomain(domainInfo: DomainAccountInfo, callback: AsyncCallback<number>): void;
queryOsAccountLocalIdFromDomain(domainInfo: DomainAccountInfo): Promise<number>;
```
- 变更后:
```ts
getOsAccountLocalIdForDomain(domainInfo: DomainAccountInfo, callback: AsyncCallback<number>): void;
getOsAccountLocalIdForDomain(domainInfo: DomainAccountInfo): Promise<number>;
```
## cl.account_os_account.7 系统帐号getActivatedOsAccountIds命名变更
getActivatedOsAccountIds由于命名不统一问题,名称变更为getActivatedOsAccountLocalIds。
**变更影响**
getActivatedOsAccountIds接口,在4.0.3.2版本及后续版本中无法继续正常使用,由getActivatedOsAccountLocalIds代替。
**关键的接口/组件变更**
- 涉及接口
```
interface AccountManager {
...
getActivatedOsAccountIds
...
}
```
- 变更前:
```ts
getActivatedOsAccountIds(callback: AsyncCallback<Array<number>>): void;
getActivatedOsAccountIds(): Promise<Array<number>>;
```
- 变更后:
```ts
getActivatedOsAccountLocalIds(callback: AsyncCallback<Array<number>>): void;
getActivatedOsAccountLocalIds(): Promise<Array<number>>;
```
## cl.account_os_account.8 系统帐号queryOsAccountLocalIdBySerialNumber命名变更
queryOsAccountLocalIdBySerialNumber由于命名不统一问题,名称变更为getOsAccountLocalIdForSerialNumber。
**变更影响**
queryOsAccountLocalIdBySerialNumber接口,在4.0.3.2版本及后续版本中无法继续正常使用,由getOsAccountLocalIdForSerialNumber代替。
**关键的接口/组件变更**
- 涉及接口
```
interface AccountManager {
...
queryOsAccountLocalIdBySerialNumber
...
}
```
- 变更前:
```ts
queryOsAccountLocalIdBySerialNumber(serialNumber: number, callback: AsyncCallback<number>): void;
queryOsAccountLocalIdBySerialNumber(serialNumber: number): Promise<number>;
```
- 变更后:
```ts
getOsAccountLocalIdForSerialNumber(serialNumber: number, callback: AsyncCallback<number>): void;
getOsAccountLocalIdForSerialNumber(serialNumber: number): Promise<number>;
```
## cl.account_os_account.9 系统帐号querySerialNumberByOsAccountLocalId命名变更
querySerialNumberByOsAccountLocalId由于命名不统一问题,名称变更为getSerialNumberForOsAccountLocalId。
**变更影响**
querySerialNumberByOsAccountLocalId接口,在4.0.3.2版本及后续版本中无法继续正常使用,由getSerialNumberForOsAccountLocalId代替。
**关键的接口/组件变更**
- 涉及接口
```
interface AccountManager {
...
querySerialNumberByOsAccountLocalId
...
}
```
- 变更前:
```ts
querySerialNumberByOsAccountLocalId(localId: number, callback: AsyncCallback<number>): void;
querySerialNumberByOsAccountLocalId(localId: number): Promise<number>;
```
- 变更后:
```ts
getSerialNumberForOsAccountLocalId(localId: number, callback: AsyncCallback<number>): void;
getSerialNumberForOsAccountLocalId(localId: number): Promise<number>;
```
## cl.account_os_account.10 系统帐号getBundleIdFromUid命名变更
getBundleIdFromUid由于命名不统一问题,名称变更为getBundleIdForUid。
**变更影响**
getBundleIdFromUid接口,在4.0.3.2版本及后续版本中无法继续正常使用,由getBundleIdForUid代替。
**关键的接口/组件变更**
- 涉及接口
```
interface AccountManager {
...
getBundleIdFromUid
...
}
```
- 变更前:
```ts
getBundleIdFromUid(uid: number, callback: AsyncCallback<number>): void;
getBundleIdFromUid(uid: number): Promise<number>;
```
- 变更后:
```ts
getBundleIdForUid(uid: number, callback: AsyncCallback<number>): void;
getBundleIdForUid(uid: number): Promise<number>;
```
## cl.account_os_account.11 系统帐号queryOsAccountConstraintSourceTypes命名变更
queryOsAccountConstraintSourceTypes由于命名不统一问题,名称变更为getOsAccountConstraintSourceTypes。
**变更影响**
queryOsAccountConstraintSourceTypes接口,在4.0.3.2版本及后续版本中无法继续正常使用,由getOsAccountConstraintSourceTypes代替。
**关键的接口/组件变更**
- 涉及接口
```
interface AccountManager {
...
queryOsAccountConstraintSourceTypes
...
}
```
- 变更前:
```ts
queryOsAccountConstraintSourceTypes(localId: number, constraint: string, callback: AsyncCallback<Array<ConstraintSourceTypeInfo>>): void;
queryOsAccountConstraintSourceTypes(localId: number, constraint: string): Promise<Array<ConstraintSourceTypeInfo>>;
```
- 变更后:
```ts
getOsAccountConstraintSourceTypes(localId: number, constraint: string, callback: AsyncCallback<Array<ConstraintSourceTypeInfo>>): void;
getOsAccountConstraintSourceTypes(localId: number, constraint: string): Promise<Array<ConstraintSourceTypeInfo>>;
```
\ No newline at end of file
# arkui子系统ChangeLog
## cl.arkui.1 getInspectorTree接口返回值从string修改为Object。
**变更影响**
4.0.3.2之前使用getInspectorTree接口的代码需要适配
**关键的接口/组件变更**
getInspectorTree接口返回值从string修改为Object
**适配指导**
将getInspectorTree返回值作为string使用的代码需要修改,比如以下示例代码:
```typescript
console.info(getInspectorTree())
```
需要修改成
```typescript
console.info(JSON.stringify(getInspectorTree()))
```
## cl.arkui.2 废弃GridItem的forceRebuild属性
**变更影响**
无,该属性无作用
**关键的接口/组件变更**
GridItem的forceRebuild属性废弃
**适配指导**
如有使用可以直接删除,不影响GridItem功能
## cl.arkui.1 API9 router接口整改。
ohos.router中的enableAlertBeforeBackPage、enableBackPageAlert、disableAlertBeforeBackPage接口名不利于开发者理解,更改为showAlertBeforeBackPage、hideAlertBeforeBackPage。
**变更影响**
router的enableAlertBeforeBackPage、enableBackPageAlert接口需替换为showAlertBeforeBackPage;
disableAlertBeforeBackPage接口需替换为hideAlertBeforeBackPage。
**关键的接口/组件变更**
涉及router.enableAlertBeforeBackPage, router.enableBackPageAlert, router.disableAlertBeforeBackPage。
* 变更前:
```ts
router.enableAlertBeforeBackPage();
router.enableBackPageAlert()
```
* 变更后:
```ts
router.showAlertBeforeBackPage()
```
* 变更前:
```ts
router.disableAlertBeforeBackPage()
```
* 变更后:
```ts
router.hideAlertBeforeBackPage()
```
**适配指导**
将enableAlertBeforeBackPage、enableBackPageAlert替换为showAlertBeforeBackPage;
将disableAlertBeforeBackPage替换为hideAlertBeforeBackPage。
# 包管理子系统ChangeLog
## cl.bundlemanager.1 包管理删除@ohos.bundle.bundleManager.d.ts中的getAbilityIcon接口,可以使用@ohos.resourceManager.d.ts中的getMediaContent替换。
包管理删除[@ohos.bundle.bundleManager.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.bundle.bundleManager.d.ts)中的getAbilityIcon接口,可以使用[@ohos.resourceManager.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.resourceManager.d.ts)中的getMediaContent替换。
**变更影响**<br>
使用之前已发布的API 9各beta版本且使用到了getAbilityIcon接口的,需要改为使用getMediaContent接口。
**关键的接口/组件变更**<br>
删除@ohos.bundle.bundleManager.d.ts中的getAbilityIcon接口。
**适配指导**<br>
使用@ohos.bundle.bundleManager.d.ts下面的getAbilityIcon,需要修改为@ohos.resourceManager.d.ts中的getMediaContent。需要提前获取到图标的资源ID值,可参考该接口的[使用指导](../../../application-dev/reference/apis/js-apis-resource-manager.md#getmediacontent9)
## cl.bundlemanager.2 包管理新增202错误码
包管理系统新增202错误码,非系统应用调用api9及之后包管理提供的系统api,将返回错误202。
**变更影响**<br>
非系统应用调用api9及之后包管理提供的系统api,将返回错误202。
**关键的接口/组件变更**<br>
所有包管理提供的api9及之后的系统api,非系统应用调用将返回错误202。
**适配指导**<br>
不影响已开发的程序,无需适配。
\ No newline at end of file
# 公共事件子系统ChangeLog
## cl.ces.1 ohos.commonEvent中Support事件枚举值修改。
**变更影响**
4.0.3.2之前使用ohos.commonEvent的下面的公共事件需要修改适配。
| 公共事件名 |
| ----------------------------------- |
| COMMON_EVENT_PACKAGE_CACHE_CLEARED |
| COMMON_EVENT_USB_STATE |
| COMMON_EVENT_USB_PORT_CHANGED |
| COMMON_EVENT_VOLUME_REMOVED |
| COMMON_EVENT_VOLUME_UNMOUNTED |
| COMMON_EVENT_VOLUME_MOUNTED |
| COMMON_EVENT_VOLUME_BAD_REMOVAL |
| COMMON_EVENT_VOLUME_EJECT |
| COMMON_EVENT_SLOT_CHANGE |
| COMMON_EVENT_SPN_INFO_CHANGED |
| COMMON_EVENT_QUICK_FIX_APPLY_RESULT |
**关键的接口/组件变更**
下面修改的ohos.commonEvent中的公共事件替换到ohos.commonEventManager中。
| 模块 | ohos.commonEvent | ohos.commonEventManager |
| ---------- | ----------------------------------- | ----------------------------------- |
| | COMMON_EVENT_PACKAGE_CACHE_CLEARED | COMMON_EVENT_PACKAGE_CACHE_CLEARED |
| | COMMON_EVENT_USB_STATE | COMMON_EVENT_USB_STATE |
| | COMMON_EVENT_USB_PORT_CHANGED | COMMON_EVENT_USB_PORT_CHANGED |
| | COMMON_EVENT_VOLUME_REMOVED | COMMON_EVENT_VOLUME_REMOVED |
| | COMMON_EVENT_VOLUME_UNMOUNTED | COMMON_EVENT_VOLUME_UNMOUNTED |
| **事件名** | COMMON_EVENT_VOLUME_MOUNTED | COMMON_EVENT_VOLUME_MOUNTED |
| | COMMON_EVENT_VOLUME_BAD_REMOVAL | COMMON_EVENT_VOLUME_BAD_REMOVAL |
| | COMMON_EVENT_VOLUME_EJECT | COMMON_EVENT_VOLUME_EJECT |
| | COMMON_EVENT_SLOT_CHANGE | COMMON_EVENT_SLOT_CHANGE |
| | COMMON_EVENT_SPN_INFO_CHANGED | COMMON_EVENT_SPN_INFO_CHANGED |
| | COMMON_EVENT_QUICK_FIX_APPLY_RESULT | COMMON_EVENT_QUICK_FIX_APPLY_RESULT |
**适配指导**
将调用ohos.commonEvent中的事件替换成调用@ohos.commonEventManager,比如以下示例代码:
```typescript
import commonEvent from '@ohos.commonEvent';
let event: string = commonEvent.Support.COMMON_EVENT_PACKAGE_CACHE_CLEARED;
```
需要修改成
```typescript
import commonEventManager from '@ohos.commonEventManager';
let event: string = commonEventManager.Support.COMMON_EVENT_PACKAGE_CACHE_CLEARED;
```
# 文件管理子系统ChangeLog
## cl.filemanagement.1 Filter类型模块变更
**变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现Filter类型变更至@ohos.file.fs模块下。Filter类型具体属性不变。
**关键接口/组件变更**
原Filter类型在模块@ohos.fileio下,通过以下方式import:
```js
import Filter from '@ohos.fileio';
```
**适配指导**
现Filter类型在模块@ohos.file.fs,通过以下方式import:
```js
import Filter from '@ohos.file.fs';
```
# 剪贴板子系统ChangeLog
OpenHarmony 4.0.3.2 版本相较于OpenHarmony 之前的版本,剪贴板子系统的API变更如下。
## cl.pasteboard.1 convertToTextV9接口变更
接口convertToTextV9由于命名规范和接口返回方式问题,名称变更为toPlainText(),返回方式改为同步方式。
**变更影响**
4.0.3.3版本之前使用接口convertToTextV9开发的应用,在4.0.3.3版本及后续版本中无法继续正常使用。
**关键的接口/组件变更**
- 涉及接口
function convertToTextV9
- 变更前:
```ts
convertToTextV9(callback: AsyncCallback<string>): void;
convertToTextV9(): Promise<string>;
```
- 变更后:
```ts
toPlainText(): string;
```
变更前:
**适配指导**
请使用toPlainText替换convertToTextV9,并注意接口返回方式。
## cl.pasteboard.2 ShareOption属性名称变更,删除了未支持的属性
ShareOption枚举命名从**大驼峰**改成了**全大写**
**变更影响**
4.0.3.3版本之前使用InApp/LocalDevice/CrossDevice类型开发的应用,在4.0.3.3版本及后续版本中无法继续正常使用。
**关键接口/组件变更**
ShareOption<sup>9+</sup>
变更前:
| 名称 | 值 | 说明 |
| ---- |---|-------------------|
| InApp | 0 | 表示仅允许同应用内粘贴。 |
| LocalDevice | 1 | 表示允许在此设备中任何应用内粘贴。 |
| CrossDevice | 2 | 表示允许跨设备在任何应用内粘贴。 |
变更后:
| 名称 | 值 | 说明 |
| ---- |---|-------------------|
| INAPP | 0 | 表示仅允许同应用内粘贴。 |
| LOCALDEVICE | 1 | 表示允许在此设备中任何应用内粘贴。 |
| CROSSDEVICE | 2 | 表示允许跨设备在任何应用内粘贴。 |
**适配指导**
按新的语义进行适配。
\ No newline at end of file
# 电源子系统ChangeLog
## cl.powermgr.1 CommonEventBatteryChangedCode接口变更
[ @ohos.batteryInfo](../../../application-dev/reference/apis/js-apis-battery-info.md) (电量信息)中的CommonEventBatteryChangedCode枚举类进行如下变更:
- 类名称变更为CommonEventBatteryChangedKey;
- 删除EXTRA_MAX_CURRENT、EXTRA_MAX_VOLTAGE和EXTRA_CHARGE_COUNTER;
- 枚举值类型从数值变更为字符串。
#### 变更影响
基于此前版本开发的应用,需适配接口的变更,否则会影响原有业务逻辑。
#### 关键的接口/组件变更
变更前:
| 名称 | 值 | 说明 |
| -------------------- | ---- | -------------------------------------------------- |
| EXTRA_SOC | 0 | 表示剩余电池电量百分比的查询键。 |
| EXTRA_VOLTAGE | 1 | 表示当前设备电池电压的查询键。 |
| EXTRA_TEMPERATURE | 2 | 表示当前设备电池温度的查询键。 |
| EXTRA_HEALTH_STATE | 3 | 表示当前设备电池健康状态的查询键。 |
| EXTRA_PLUGGED_TYPE | 4 | 表示当前设备连接的充电器类型的查询键。 |
| EXTRA_MAX_CURRENT | 5 | 表示当前设备电池最大电流的查询键。 |
| EXTRA_MAX_VOLTAGE | 6 | 表示当前设备电池最大电压的查询键。 |
| EXTRA_CHARGE_STATE | 7 | 表示当前设备电池充电状态的查询键。 |
| EXTRA_CHARGE_COUNTER | 8 | 表示当前设备电池充电次数的查询键。 |
| EXTRA_PRESENT | 9 | 表示当前设备是否支持电池或者电池是否在位的查询键。 |
| EXTRA_TECHNOLOGY | 10 | 表示当前设备电池技术型号的查询键。 |
| EXTRA_CAPACITY_LEVEL | 11 | 表示当前设备电池电量等级的查询键。 |
变更后:
| 名称 | 值 | 说明 |
| -------------------- | --------------- | -------------------------------------------------- |
| EXTRA_SOC | "soc" | 表示剩余电池电量百分比的查询键。 |
| EXTRA_CHARGE_STATE | "chargeState" | 表示当前设备电池充电状态的查询键。 |
| EXTRA_HEALTH_STATE | "healthState" | 表示当前设备电池健康状态的查询键。 |
| EXTRA_PLUGGED_TYPE | "pluggedType" | 表示当前设备连接的充电器类型的查询键。 |
| EXTRA_VOLTAGE | "voltage" | 表示当前设备电池电压的查询键。 |
| EXTRA_TECHNOLOGY | "technology" | 表示当前设备电池技术型号的查询键。 |
| EXTRA_TEMPERATURE | "temperature" | 表示当前设备电池温度的查询键。 |
| EXTRA_PRESENT | "present" | 表示当前设备是否支持电池或者电池是否在位的查询键。 |
| EXTRA_CAPACITY_LEVEL | "capacityLevel" | 表示当前设备电池电量等级的查询键。 |
#### 适配指导
请参考[@ohos.batteryInfo](../../../application-dev/reference/apis/js-apis-battery-info.md) (电量信息)接口的API参考。
## cl.powermgr.2 estimatedRemainingChargeTime系统接口变更
[@ohos.batteryInfo](../../../application-dev/reference/apis/js-apis-battery-info.md) (电量信息)中的estimatedRemainingChargeTime属性变更为系统接口。
#### 变更影响
基于此前版本开发的应用,需适配新的系统权限,否则会影响原有业务逻辑。
#### 适配指导
请参考[@ohos.batteryInfo](../../../application-dev/reference/apis/js-apis-battery-info.md) (电量信息)接口的API参考。
## cl.powermgr.3 系统公共事件行为变更
电量信息通过[@ohos.commonEventManager (公共事件模块)](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-commonEventManager.md)提供了如下几种系统公共事件:
- COMMON_EVENT_BATTERY_LOW,表示电池电量低的的公共事件的动作,包含剩余电池电量百分比信息;
- COMMON_EVENT_BATTERY_OKAY,表示电池电量正常的公共事件的动作,包含剩余电池电量百分比信息;
- COMMON_EVENT_POWER_CONNECTED,表示设备连接到外部电源的公共事件的动作,包含设备连接的电源类型信息;
- COMMON_EVENT_POWER_DISCONNECTED,表示设备与外部电源断开的公共事件的动作,包含设备连接的电源类型信息;
- COMMON_EVENT_CHARGING,表示系统开始为电池充电的公共事件的动作,包含充电状态信息;
- COMMON_EVENT_DISCHARGING,表示系统停止为电池充电的公共事件的动作,包含充电状态信息。
这几种公共事件的数据的获取方式从CommonEventData.data变更为CommonEventData.code。
#### 变更影响
基于此前版本开发的应用,需适配新的数据获取方式,否则会影响原有业务逻辑。
#### 适配指导
请参考[ @ohos.commonEventManager (公共事件模块)](../../../application-dev/reference/apis/js-apis-commonEventManager.md)接口的API参考。
# 泛sensor子系统ChangeLog
## cl.ability.1 Sensor接口中venderName属性名称变更,更改为vendorName。
venderName为错别字,更正为vendorName。
**变更影响**
该venderName属性无法再使用,请使用新增属性vendorName替换。
**关键的接口/组件变更**
- 变更前:
```js
interface Sensor {
sensorName:string; /**< Sensor name */
venderName:string; /**< Sensor vendor version */
firmwareVersion:string; /**< Sensor firmware version */
hardwareVersion:string; /**< Sensor hardware version */
sensorId:number; /**< Sensor type ID, {@code SensorType} */
maxRange:number; /**< Maximum measurement range of the sensor */
minSamplePeriod:number; /**< Minimum sample period allowed, in ns */
maxSamplePeriod:number; /**< maximum sample period allowed, in ns */
precision:number; /**< Sensor accuracy */
power:number; /**< Sensor power */
}
```
- 变更后:
```js
interface Sensor {
sensorName:string; /**< Sensor name */
vendorName:string; /**< Sensor vendor version */
firmwareVersion:string; /**< Sensor firmware version */
hardwareVersion:string; /**< Sensor hardware version */
sensorId:number; /**< Sensor type ID, {@code SensorType} */
maxRange:number; /**< Maximum measurement range of the sensor */
minSamplePeriod:number; /**< Minimum sample period allowed, in ns */
maxSamplePeriod:number; /**< maximum sample period allowed, in ns */
precision:number; /**< Sensor accuracy */
power:number; /**< Sensor power */
}
```
**适配指导**
该venderName属性删除无法再使用,请使用新增属性vendorName替换。
\ No newline at end of file
# 启动子系统JS API变更ChangeLog
## cl.startup.1 包名变更
**变更影响**
原有的@ohos.systemParameterV9包名将被删除无法再使用,需更换为新的@ohos.systemParameterEnhance包名。
**适配指导**
原有的@ohos.systemParameterV9需要变更为@ohos.systemParameterEnhance,包内接口都不变,示例:
```js
import @ohos.systemParameterEnhance
```
# 包管理子系统ChangeLog
## cl.bundlemanager.1 包管理底层能力变更,仅支持系统资源HAP自定义权限,其它HAP均不支持自定义权限。
仅支持系统资源HAP自定义权限,其它HAP均不支持自定义权限。包管理在解析HAP时,仅支持解析资源HAP(包名为:ohos.global.systemres)的配置文件中的definePermissions字段,该字段用来定义权限。其它HAP中配置的definePermissions字段将不会解析。
如果有应用需要自定义权限,可以在资源HAP的[配置文件](https://gitee.com/openharmony/utils_system_resources/blob/master/systemres/main/config.json)中definePermissions字段下面新增定义权限。格式可参考[定义权限](../../../application-dev/quick-start/module-structure.md#definepermissions对象内部结构)
**变更影响**<br>
升级新版本镜像后,应用自定义的权限将不会生效,使用方在申请该权限时,会授权失败。
**关键的接口/组件变更**<br>
包管理底层能力变更,仅支持系统资源HAP自定义权限,其它HAP均不支持自定义权限。
**适配指导**<br>
如果有应用需要自定义权限,可以在资源HAP的[配置文件](https://gitee.com/openharmony/utils_system_resources/blob/master/systemres/main/config.json)中definePermissions字段下面新增定义权限。格式可参考[定义权限](../../../application-dev/quick-start/module-structure.md#definepermissions对象内部结构)
## cl.bundlemanager.2 包管理二级模块文件名称变更,修改为文件内对应的接口名称
包管理二级模块文件名称变更,修改为文件内对应的接口名称,变更文件如下:
| 原文件名称 |变更后文件名称 |
|----|----|
| bundleManager/abilityInfo.d.ts | bundleManager/AbilityInfo.d.ts |
| bundleManager/applicationInfo.d.ts | bundleManager/ApplicationInfo.d.ts |
| bundleManager/bundleInfo.d.ts | bundleManager/BundleInfo.d.ts |
| bundleManager/dispatchInfo.d.ts | bundleManager/DispatchInfo.d.ts |
| bundleManager/elementName.d.ts | bundleManager/ElementName.d.ts |
| bundleManager/extensionAbilityInfo.d.ts | bundleManager/ExtensionAbilityInfo.d.ts |
| bundleManager/hapModuleInfo.d.ts | bundleManager/HapModuleInfo.d.ts |
| bundleManager/launcherAbilityInfo.d.ts | bundleManager/LauncherAbilityInfo.d.ts |
| bundleManager/metadata.d.ts | bundleManager/Metadata.d.ts |
| bundleManager/packInfo.d.ts | bundleManager/BundlePackInfo.d.ts |
| bundleManager/permissionDef.d.ts | bundleManager/PermissionDef.d.ts |
| bundleManager/remoteAbilityInfo.d.ts | bundleManager/RemoteAbilityInfo.d.ts |
| bundleManager/shortcutInfo.d.ts | bundleManager/ShortcutInfo.d.ts |
除了免安装相关的BundlePackInfo文件名称增加了Bundle,其余文件名称均是修改为大写开头。
**变更影响**<br>
仅修改二级模块文件名称,不会影响一级模块的使用。在使用之前已发布的API 9各beta版本时,如果在ts文件中直接导入了bundleManager下面二级模块接口的,IDE中编译报错的话,需要修改导入的文件名称。
**关键的接口/组件变更**<br>
变更bundleManager文件夹下面的d.ts名称,修改为文件中的接口名称。
**适配指导**<br>
使用新的sdk后,正常情况下应用无需适配该变更。如果在应用中直接导入了bundleManager文件夹下面的文件,则需要修改导入的文件名称。可以按照如下的修改方式:
**修改前:**
```ts
import {AbilityInfo} from 'bundleManger/abilityInfo';
import {ExtensionAbilityInfo} from 'bundleManger/extensionAbilityInfo';
import {BundlePackInfo} from 'bundleManger/packInfo';
```
**修改后:**
```ts
import {AbilityInfo} from 'bundleManger/AbilityInfo';
import {ExtensionAbilityInfo} from 'bundleManger/ExtensionAbilityInfo';
import {BundlePackInfo} from 'bundleManger/BundlePackInfo';
```
## cl.bundlemanager.3 包管理LaunchType枚举类型名称变更,由STANDARD修改为MULTITON,枚举值不变。
包管理[LaunchType](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.bundle.bundleManager.d.ts)枚举类型变更,由STANDARD修改为MULTITON,枚举值不变,表示多实例类型。
**变更影响**<br>
使用之前已发布的API 9各beta版本且使用到了LaunchType.STANDARD的,需要改为使用LaunchType.MULTITON接口。
**关键的接口/组件变更**<br>
LaunchType枚举类型名称变更,由LaunchType.STANDARD修改为LaunchType.MULTITON。
**适配指导**<br>
由LaunchType.STANDARD修改为LaunchType.MULTITON。
## cl.bundlemanager.4 包管理AbilityInfo结构体中isVisible字段修改为exported,类型不变。
包管理[AbilityInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/AbilityInfo.d.ts)结构体中isVisible字段修改为exported,类型不变,表示当前ability是否支持导出,被其他的ability使用。
**变更影响**<br>
使用之前已发布的API 9各beta版本且使用到了isVisible的,需要改为使用exported。
**关键的接口/组件变更**<br>
包管理[AbilityInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/AbilityInfo.d.ts)结构体中isVisible字段修改为exported,类型不变。
**适配指导**<br>
由isVisible修改为exported。
## cl.bundlemanager.5 包管理ExtensionAbilityInfo结构体中isVisible字段修改为exported,类型不变。
包管理[ExtensionAbilityInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/ExtensionAbilityInfo.d.ts)结构体中isVisible字段修改为exported,类型不变,表示当前ability是否支持导出,被其他的ability使用。
**变更影响**<br>
使用之前已发布的API 9各beta版本且使用到了isVisible的,需要改为使用exported。
**关键的接口/组件变更**<br>
包管理[ExtensionAbilityInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/ExtensionAbilityInfo.d.ts)结构体中isVisible字段修改为exported,类型不变。
**适配指导**<br>
由isVisible修改为exported。
## cl.bundlemanager.6 包管理ModuleAbilityInfo结构体中visible字段修改为exported,类型不变。
包管理[ModuleAbilityInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/BundlePackInfo.d.ts)结构体中visible字段修改为exported,类型不变,表示当前ability是否支持导出,被其他的ability使用。
**变更影响**<br>
使用之前已发布的API 9各beta版本且使用到了visible的,需要改为使用exported。
**关键的接口/组件变更**<br>
包管理[ModuleAbilityInfo](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/bundleManager/BundlePackInfo.d.ts)结构体中visible字段修改为exported,类型不变。
**适配指导**<br>
由visible修改为exported。
# 资源调度子系统ChangeLog
## cl.resourceschedule.workScheduler
WorkSchedulerExtensionAbility提供默认的WorkSchedulerExtensionContext。
**变更影响**
基于OpenHarmony4.0.5.1及之后的SDK版本开发的应用,可使用默认的context属性作为WorkSchedulerExtension的上下文环境。
**关键接口/组件变更**
@ohos.WorkSchedulerExtensionAbility.d.ts中新增context属性。新增文件application/WorkSchedulerExtensionContext.d.ts,继承自ExtensionContext。
| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
| -- | -- | -- | -- |
| @ohos.WorkSchedulerExtensionAbility.d.ts | WorkSchedulerExtensionAbility | context: WorkSchedulerExtensionContext; | 新增 |
| application/WorkSchedulerExtensionContext.d.ts | WorkSchedulerExtensionContext | - | 新增 |
**适配指导**<br>
通过WorkSchedulerExtensionAbility子类实例来获取WorkSchedulerExtensionContext。
```ts
import WorkSchedulerExtensionAbility from '@ohos.WorkSchedulerExtensionAbility';
class MyWorkSchedulerExtensionAbility extends WorkSchedulerExtensionAbility {
onWorkStart(workInfo) {
let WorkSchedulerExtensionContext = this.context; // 获取WorkSchedulerExtensionContext
}
}
```
\ No newline at end of file
# 元能力子系统ChangeLog
## cl.ability.appRecovery新增saveAppState接口
新增接口saveAppState(context?: UIAbilityContext): boolean;
**变更影响**
基于OpenHarmony4.0.5.2及之后的SDK版本开发的应用,可以使用saveAppState接口传入指定Ability Context,实现主动保存指定的Ability状态。
**关键接口/组件变更**
@ohos.app.ability.appRecovery.d.ts中新增saveAppState接口。
| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
| -- | -- | -- | -- |
| @ohos.app.ability.appRecovery.d.ts | appRecovery | saveAppState(context?: UIAbilityContext): boolean; | 新增 |
**适配指导**
通过调用saveAppState传入UIAbility Context参数主动保存此指定的Ability的状态。
```ts
import appRecovery from '@ohos.app.ability.appRecovery';
onBackground() {
hilog.info(0x0000, '[demo]', '%{public}s', 'EntryAbility onBackground');
appRecovery.saveAppState(this.context)
}
```
## cl.ability.appRecovery新增setRestartWant接口
新增接口setRestartWant(want: Want): void;
**变更影响**
基于OpenHarmony4.0.5.2及之后的SDK版本开发的应用,可以使用setRestartWant接口设置下次由恢复主动拉起场景下的Ability。
**关键接口/组件变更**
@ohos.app.ability.appRecovery.d.ts中新增setRestartWant接口。
| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
| -- | -- | -- | -- |
| @ohos.app.ability.appRecovery.d.ts | appRecovery | setRestartWant(want: Want): void; | 新增 |
**适配指导**
通过调用setRestartWant设置下次恢复到的指定Ability。
```ts
import appRecovery from '@ohos.app.ability.appRecovery';
Button("启动到恢复Ability")
.fontSize(40)
.fontWeight(FontWeight.Bold)
.onClick(()=> {
// set restart want
let want = {
bundleName: "ohos.samples.recovery",
abilityName: "RecoveryAbility"
};
appRecovery.setRestartWant(want);
})
```
\ No newline at end of file
# 泛Sensor子系统Changelog
## cl.vibrator.isSupportEffect接口新增
新增isSupportEffect接口。
**变更影响**
基于OpenHarmony4.0.5.2及之后的SDK版本开发的应用,可使用isSupportEffect接口查询传入effectId是否支持。
**关键接口/组件变更**
@ohos.vibrator.d.ts中新增isSupportEffect接口。
| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
| -- | -- | -- | -- |
| @ohos.vibrator.d.ts | vibrator | isSupportEffect(effectId: string, callback: AsyncCallback&lt;boolean&gt;): void | 新增 |
| @ohos.vibrator.d.ts | vibrator | isSupportEffect(effectId: string): Promise&lt;boolean&gt; | 新增 |
**适配指导**<br>
通过调用isSupportEffect接口查询是否支持传入的参数effectId。
```ts
import vibrator from '@ohos.vibrator';
try {
// 查询是否支持'haptic.clock.timer'
vibrator.isSupportEffect('haptic.clock.timer', function (err, state) {
if (err) {
console.error('isSupportEffect failed, error:' + JSON.stringify(err));
return;
}
console.log('The effectId is ' + (state ? 'supported' : 'unsupported'));
if (state) {
try {
vibrator.startVibration({ // 使用startVibration需要添加ohos.permission.VIBRATE权限
type: 'preset',
effectId: 'haptic.clock.timer',
count: 1,
}, {
usage: 'unknown'
}, (error) => {
if(error) {
console.error('haptic.clock.timer vibrator error:' + JSON.stringify(error));
} else {
console.log('haptic.clock.timer vibrator success');
}
});
} catch (error) {
console.error('Exception in, error:' + JSON.stringify(error));
}
}
})
} catch (error) {
console.error('Exception in, error:' + JSON.stringify(error));
}
```
## cl.vibrator.stopVibration接口新增
新增stopVibration接口。
**变更影响**
基于OpenHarmony4.0.5.2及之后的SDK版本开发的应用,可使用stopVibration接口停止所有类型的振动。
**关键接口/组件变更**
@ohos.vibrator.d.ts中新增stopVibration接口。
| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
| ------------------- | -------- | -------------------------------------------------------- | -------- |
| @ohos.vibrator.d.ts | vibrator | stopVibration(callback: AsyncCallback&lt;void&gt;): void | 新增 |
| @ohos.vibrator.d.ts | vibrator | stopVibration(): Promise&lt;void&gt; | 新增 |
**适配指导**<br>
通过调用stopVibration接口停止所有类型的振动。
```ts
import vibrator from '@ohos.vibrator';
try {
// 停止所有模式的马达振动
vibrator.stopVibration(function (error) {
if (error) {
console.log('error.code' + error.code + 'error.message' + error.message);
return;
}
console.log('Callback returned to indicate successful.');
})
} catch (error) {
console.info('errCode: ' + error.code + ' ,msg: ' + error.message);
}
```
# 输入法框架子系统-输入法框架服务ChangeLog
## @ohos.InputMethodSubtype 中输入法子类型中name、label、id属性值变更
从API9开始,变更如上三个属性值
开发者需要根据以下说明对应用进行适配。
**变更影响**
此三个属性的取值发生变化,需要开发者进行适配更新
| 名称 | 变更前 | 变更后 |
| -------- | -------- | -------- |
| label | (1)取值:输入法子类型的id。| (1)取值:输入法子类型的标签。|
| name | (1)说明:输入法子类型的名字;(2)取值:输入法子类型的标签。| (1)说明:输入法应用的包名;(2)取值:输入法应用的包名。|
| id | (1)取值:输入法应用的包名。| (1)取值:输入法子类型的id。|
**适配指导**
请按上述取值变更结果适配更新。
# 主题框架子系统-锁屏管理服务ChangeLog
## cl.screenlock.1 isLocked、unlock接口使用权限变更
从API9开始,变更为systemapi,停止对三方应用开放。
开发者需要根据以下说明对应用进行适配。
**变更影响**
基于此前版本开发的应用,需适配变更的js接口,变更前的接口已经不能正常使用了,否则会影响原有功能。
- 涉及接口
```js
function isLocked(): boolean;
function unlock(callback: AsyncCallback<boolean>): void;
function unlock():Promise<boolean>;
```
- 变更前:
```js
* Checks whether the screen is currently locked.
*
* @returns Returns {@code true} if the screen is currently locked; returns {@code false} otherwise.
* @syscap SystemCapability.MiscServices.ScreenLock
* @since 9
*/
function isLocked(): boolean;
/**
* Unlock the screen.
*
* @returns Returns {@code true} if the screen is unlocked successfully; returns {@code false} otherwise.
* @throws {BusinessError} 401 - parameter error.
* @throws {BusinessError} 202 - permission verification failed, application which is not a system application uses system API.
* @throws {BusinessError} 13200002 - the screenlock management service is abnormal.
* @syscap SystemCapability.MiscServices.ScreenLock
* @systemapi Hide this for inner system use.
* @since 9
*/
function unlock(callback: AsyncCallback<boolean>): void;
/**
* Unlock the screen.
*
* @returns Returns {@code true} if the screen is unlocked successfully; returns {@code false} otherwise.
* @throws {BusinessError} 401 - parameter error.
* @throws {BusinessError} 202 - permission verification failed, application which is not a system application uses system API.
* @throws {BusinessError} 13200002 - the screenlock management service is abnormal.
* @syscap SystemCapability.MiscServices.ScreenLock
* @systemapi Hide this for inner system use.
* @since 9
*/
function unlock():Promise<boolean>;
```
- 变更后:
```js
* Checks whether the screen is currently locked.
*
* @returns Returns {@code true} if the screen is currently locked; returns {@code false} otherwise.
* @throws {BusinessError} 202 - permission verification failed, application which is not a system application uses system API.
* @syscap SystemCapability.MiscServices.ScreenLock
* @systemapi Hide this for inner system use.
* @since 9
*/
function isLocked(): boolean;
/**
* Unlock the screen.
*
* @returns Returns {@code true} if the screen is unlocked successfully; returns {@code false} otherwise.
* @throws {BusinessError} 401 - parameter error.
* @throws {BusinessError} 13200002 - the screenlock management service is abnormal.
* @syscap SystemCapability.MiscServices.ScreenLock
* @since 9
*/
function unlock(callback: AsyncCallback<boolean>): void;
/**
* Unlock the screen.
*
* @returns Returns {@code true} if the screen is unlocked successfully; returns {@code false} otherwise.
* @throws {BusinessError} 13200002 - the screenlock management service is abnormal.
* @syscap SystemCapability.MiscServices.ScreenLock
* @since 9
*/
function unlock():Promise<boolean>;
```
**适配指导**
该接口变更为系统应用后,三方应用已无法使用。
系统应用可正常使用。
示例代码如下:
```js
try {
let ret = screenLock.isLocked();
console.error(`Obtain whether the screen is locked successfully , ret is: ${ret}`);
} catch (error) {
console.error(`Failed to obtain whether the screen is locked, error is : ${error.code}, ${error.message}`);
}
```
```js
screenlock.unlock((err, data) => {
if (err) {
console.error(`Failed to unlock the screen, because: ${err.message}`);
return;
}
console.info(`unlock the screen successfully. result: ${data}`);
});
```
```js
screenlock.unlock().then((data) => {
console.info(`unlock the screen successfully. result: ${data}`);
}).catch((err) => {
console.error(`Failed to unlock the screen, because: ${err.message}`);
});
```
## cl.screenlock.2 isSecure接口废弃变更
从API9开始,废弃此接口。
开发者需要根据以下说明对应用进行适配。
**变更影响**
该接口删除无法再使用,请使用进行更新使用,否则会影响原有功能。
- 涉及接口
```js
function isSecure(): boolean;
```
- 变更前:
```js
function isSecure(): boolean;
```
- 变更后:删除接口,停止对外开放。
**适配指导**
该接口删除后无法再使用,请适配更新。
# 主题框架子系统-壁纸管理服务ChangeLog
## cl.wallpaper.1 getColorsSync、getMinHeightSync、getMinWidthSync、restore、setImage接口使用权限变更
从API9开始,变更为systemapi,停止对三方应用开放。
开发者需要根据以下说明对应用进行适配。
**变更影响**
基于此前版本开发的应用,需适配变更的js接口,变更前的接口已经不能正常使用了,否则会影响原有功能。
- 涉及接口
```js
function getColorsSync(wallpaperType: WallpaperType): Array<RgbaColor>;
function getMinHeightSync(): number;
function getMinWidthSync(): number;
function restore(wallpaperType: WallpaperType, callback: AsyncCallback<void>): void;
function restore(wallpaperType: WallpaperType): Promise<void>;
function setImage(source: string | image.PixelMap, wallpaperType: WallpaperType, callback: AsyncCallback<void>): void;
function setImage(source: string | image.PixelMap, wallpaperType: WallpaperType): Promise<void>;
```
- 变更前:
```js
/**
* Obtains the wallpaper colors for the wallpaper of the specified type. Returns rgbaColor type of array callback function.
* @param wallpaperType Indicates the wallpaper type.
* @returns { Array<RgbaColor> } the Array<RgbaColor> returned by the function.
* @throws {BusinessError} 401 - parameter error.
* @throws {BusinessError} 202 - permission verification failed, application which is not a system application uses system API.
* @syscap SystemCapability.MiscServices.Wallpaper
* @systemapi Hide this for inner system use.
* @since 9
*/
function getColorsSync(wallpaperType: WallpaperType): Array<RgbaColor>;
/**
* Obtains the minimum height of the wallpaper. in pixels. returns 0 if no wallpaper has been set.
* @returns { number } the number returned by the function.
* @throws {BusinessError} 202 - permission verification failed, application which is not a system application uses system API.
* @syscap SystemCapability.MiscServices.Wallpaper
* @systemapi Hide this for inner system use.
* @since 9
*/
function getMinHeightSync(): number;
/**
* Obtains the minimum width of the wallpaper. in pixels. returns 0 if no wallpaper has been set.
* @returns { number } the number returned by the function.
* @throws {BusinessError} 202 - permission verification failed, application which is not a system application uses system API.
* @syscap SystemCapability.MiscServices.Wallpaper
* @systemapi Hide this for inner system use.
* @since 9
*/
function getMinWidthSync(): number;
/**
* Removes a wallpaper of the specified type and restores the default one.
* @param wallpaperType Indicates the wallpaper type.
* @throws {BusinessError} 401 - parameter error.
* @throws {BusinessError} 201 - permission denied.
* @throws {BusinessError} 202 - permission verification failed, application which is not a system application uses system API.
* @permission ohos.permission.SET_WALLPAPER
* @syscap SystemCapability.MiscServices.Wallpaper
* @systemapi Hide this for inner system use.
* @since 9
*/
function restore(wallpaperType: WallpaperType, callback: AsyncCallback<void>): void;
/**
* Removes a wallpaper of the specified type and restores the default one.
* @param wallpaperType Indicates the wallpaper type.
* @throws {BusinessError} 401 - parameter error.
* @throws {BusinessError} 201 - permission denied.
* @throws {BusinessError} 202 - permission verification failed, application which is not a system application uses system API.
* @permission ohos.permission.SET_WALLPAPER
* @syscap SystemCapability.MiscServices.Wallpaper
* @systemapi Hide this for inner system use.
* @since 9
*/
function restore(wallpaperType: WallpaperType): Promise<void>;
/**
* Sets a wallpaper of the specified type based on the uri path from a JPEG or PNG file or the pixel map of a PNG file.
* @param source Indicates the uri path from a JPEG or PNG file or the pixel map of the PNG file.
* @param wallpaperType Indicates the wallpaper type.
* @throws {BusinessError} 401 - parameter error.
* @throws {BusinessError} 201 - permission denied.
* @throws {BusinessError} 202 - permission verification failed, application which is not a system application uses system API.
* @permission ohos.permission.SET_WALLPAPER
* @syscap SystemCapability.MiscServices.Wallpaper
* @systemapi Hide this for inner system use.
* @since 9
*/
function setImage(source: string | image.PixelMap, wallpaperType: WallpaperType, callback: AsyncCallback<void>): void;
/**
* Sets a wallpaper of the specified type based on the uri path from a JPEG or PNG file or the pixel map of a PNG file.
* @param source Indicates the uri path from a JPEG or PNG file or the pixel map of the PNG file.
* @param wallpaperType Indicates the wallpaper type.
* @throws {BusinessError} 401 - parameter error.
* @throws {BusinessError} 201 - permission denied.
* @throws {BusinessError} 202 - permission verification failed, application which is not a system application uses system API.
* @permission ohos.permission.SET_WALLPAPER
* @syscap SystemCapability.MiscServices.Wallpaper
* @systemapi Hide this for inner system use.
* @since 9
*/
function setImage(source: string | image.PixelMap, wallpaperType: WallpaperType): Promise<void>;
```
- 变更后:
```js
/**
* Obtains the wallpaper colors for the wallpaper of the specified type. Returns rgbaColor type of array callback function.
* @param wallpaperType Indicates the wallpaper type.
* @returns { Array<RgbaColor> } the Array<RgbaColor> returned by the function.
* @throws {BusinessError} 401 - parameter error.
* @syscap SystemCapability.MiscServices.Wallpaper
* @since 9
*/
function getColorsSync(wallpaperType: WallpaperType): Array<RgbaColor>;
/**
* Obtains the minimum height of the wallpaper. in pixels. returns 0 if no wallpaper has been set.
* @returns { number } the number returned by the function.
* @syscap SystemCapability.MiscServices.Wallpaper
* @since 9
*/
function getMinHeightSync(): number;
/**
* Obtains the minimum width of the wallpaper. in pixels. returns 0 if no wallpaper has been set.
* @returns { number } the number returned by the function.
* @syscap SystemCapability.MiscServices.Wallpaper
* @since 9
*/
function getMinWidthSync(): number;
/**
* Removes a wallpaper of the specified type and restores the default one.
* @param wallpaperType Indicates the wallpaper type.
* @throws {BusinessError} 401 - parameter error.
* @throws {BusinessError} 201 - permission denied.
* @permission ohos.permission.SET_WALLPAPER
* @syscap SystemCapability.MiscServices.Wallpaper
* @since 9
*/
function restore(wallpaperType: WallpaperType, callback: AsyncCallback<void>): void;
/**
* Removes a wallpaper of the specified type and restores the default one.
* @param wallpaperType Indicates the wallpaper type.
* @throws {BusinessError} 401 - parameter error.
* @throws {BusinessError} 201 - permission denied.
* @permission ohos.permission.SET_WALLPAPER
* @syscap SystemCapability.MiscServices.Wallpaper
* @since 9
*/
function restore(wallpaperType: WallpaperType): Promise<void>;
/**
* Sets a wallpaper of the specified type based on the uri path from a JPEG or PNG file or the pixel map of a PNG file.
* @param source Indicates the uri path from a JPEG or PNG file or the pixel map of the PNG file.
* @param wallpaperType Indicates the wallpaper type.
* @throws {BusinessError} 401 - parameter error.
* @throws {BusinessError} 201 - permission denied.
* @permission ohos.permission.SET_WALLPAPER
* @syscap SystemCapability.MiscServices.Wallpaper
* @since 9
*/
function setImage(source: string | image.PixelMap, wallpaperType: WallpaperType, callback: AsyncCallback<void>): void;
/**
* Sets a wallpaper of the specified type based on the uri path from a JPEG or PNG file or the pixel map of a PNG file.
* @param source Indicates the uri path from a JPEG or PNG file or the pixel map of the PNG file.
* @param wallpaperType Indicates the wallpaper type.
* @throws {BusinessError} 401 - parameter error.
* @throws {BusinessError} 201 - permission denied.
* @permission ohos.permission.SET_WALLPAPER
* @syscap SystemCapability.MiscServices.Wallpaper
* @since 9
*/
function setImage(source: string | image.PixelMap, wallpaperType: WallpaperType): Promise<void>;
```
**适配指导**
该接口变更为系统应用后,三方应用已无法使用。
系统应用可正常使用。
示例代码如下:
```js
try {
let colors = wallpaper.getColorsSync(wallpaper.WallpaperType.WALLPAPER_SYSTEM);
console.log(`success to getColorsSync: ${JSON.stringify(colors)}`);
} catch (error) {
console.error(`failed to getColorsSync because: ${JSON.stringify(error)}`);
}
```
```js
let minHeight = wallpaper.getMinHeightSync();
```
```js
let minWidth = wallpaper.getMinWidthSync();
```
```js
wallpaper.restore(wallpaper.WallpaperType.WALLPAPER_SYSTEM, (error) => {
if (error) {
console.error(`failed to restore because: ${JSON.stringify(error)}`);
return;
}
console.log(`success to restore.`);
});
```
```js
wallpaper.restore(wallpaper.WallpaperType.WALLPAPER_SYSTEM).then(() => {
console.log(`success to restore.`);
}).catch((error) => {
console.error(`failed to restore because: ${JSON.stringify(error)}`);
});
```
```js
// source类型为string
let wallpaperPath = "/data/data/ohos.acts.aafwk.plrdtest.form/files/Cup_ic.jpg";
wallpaper.setImage(wallpaperPath, wallpaper.WallpaperType.WALLPAPER_SYSTEM, (error) => {
if (error) {
console.error(`failed to setImage because: ${JSON.stringify(error)}`);
return;
}
console.log(`success to setImage.`);
});
```
```js
// source类型为string
let wallpaperPath = "/data/data/ohos.acts.aafwk.plrdtest.form/files/Cup_ic.jpg";
wallpaper.setImage(wallpaperPath, wallpaper.WallpaperType.WALLPAPER_SYSTEM).then(() => {
console.log(`success to setImage.`);
}).catch((error) => {
console.error(`failed to setImage because: ${JSON.stringify(error)}`);
});
```
## cl.wallpaper.2 getIdSync、getFileSync、isChangeAllowed、isUserChangeAllowed、on、off、RgbaColor接口废弃变更
从API9开始,废弃此接口。
开发者需要根据以下说明对应用进行适配。
**变更影响**
该接口删除无法再使用,请使用进行更新使用,否则会影响原有功能。
- 涉及接口
```js
function getIdSync(wallpaperType: WallpaperType): number;
function getFileSync(wallpaperType: WallpaperType): number;
function isChangeAllowed(): boolean;
function isUserChangeAllowed(): boolean;
function on(type: 'colorChange', callback: (colors: Array<RgbaColor>, wallpaperType: WallpaperType) => void): void;
function off(type: 'colorChange', callback?: (colors: Array<RgbaColor>, wallpaperType: WallpaperType) => void): void;
interface RgbaColor {
red: number;
green: number;
blue: number;
alpha: number;
}
```
- 变更前:
```js
function getIdSync(wallpaperType: WallpaperType): number;
function getFileSync(wallpaperType: WallpaperType): number;
function isChangeAllowed(): boolean;
function isUserChangeAllowed(): boolean;
function on(type: 'colorChange', callback: (colors: Array<RgbaColor>, wallpaperType: WallpaperType) => void): void;
function off(type: 'colorChange', callback?: (colors: Array<RgbaColor>, wallpaperType: WallpaperType) => void): void;
interface RgbaColor {
red: number;
green: number;
blue: number;
alpha: number;
}
```
- 变更后:删除接口,停止对外开放。
**适配指导**
该接口删除后无法再使用,请适配更新。
# arkui子系统ChangeLog
## cl.arkui.1 List组件和Gird组件滚动条默认状态变更
List组件和Gird组件滚动条默认状态从BarState.Off变更为BarState.Auto。
**变更影响**
List组件和Gird组件,如果没有设置滚动条状态,变更前不会显示滚动条,变更以后滚动时会显示滚动条,滚动停止两秒后滚动条隐藏。
**关键接口/组件变更**
List组件和Gird组件滚动条API接口文档:
- [List组件属性](../../../application-dev/reference/arkui-ts/ts-container-list.md#属性)
- [Grid组件属性](../../../application-dev/reference/arkui-ts/ts-container-grid.md#属性)
**适配指导**
对于不需要滚动条的场景,需要将List组件或Grid组件的scrollBar属性设置为BarState.Off。
参考代码如下:
```ts
// xxx.ets
@Entry
@Component
struct ListItemExample {
private arr: number[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
build() {
Column() {
List({ space: 20, initialIndex: 0 }) {
ForEach(this.arr, (item) => {
ListItem() {
Text('' + item)
.width('100%').height(100).fontSize(16)
.textAlign(TextAlign.Center).borderRadius(10).backgroundColor(0xFFFFFF)
}
}, item => item)
}
.width('90%')
.scrollBar(BarState.Off)
}.width('100%').height('100%').backgroundColor(0xDCDCDC).padding({ top: 5 })
}
}
```
\ No newline at end of file
# HUKS子系统ChangeLog
OpenHarmony 4.0.6.1 版本相较于OpenHarmony 之前的版本,HUKS的API使用权限变更如下。
## cl.huks.1 attestKeyItem接口使用权限变更
attestKeyItem是基于设备证书链封装业务公钥对用户指定的密钥进行证明,如果设备证书随意导出涉及用户隐私风险,所以此接口需要增加系统权限管控。
**变更影响**
对于不具备system权限或者ohos.permission.ACCESS_IDS权限的应用,无法正常使用attestKeyItem接口。
**关键的接口/组件变更**
- 涉及接口
attestKeyItem(keyAlias: string, options: HuksOptions, callback: AsyncCallback\<HuksReturnResult\>): void;
attestKeyItem(keyAlias: string, options: HuksOptions): Promise\<HuksReturnResult\>;
- 变更前:
只针对传入ATTESTATION_ID相关TAG的应用校验AccessToken权限,其它情况无接口权限的限制。
- 变更后:
只有具备system权限的系统应用或者申请了ohos.permission.ACCESS_IDS权限的普通应用才能正常使用attestKeyItem接口。
**适配指导**
已经具备system权限的应用则可以正常使用attestKeyItem接口,其余普通应用需申请ohos.permission.ACCESS_IDS权限即可,申请方法参考[ACL权限配置说明](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/security/accesstoken-overview.md#%E8%AE%BF%E9%97%AE%E6%8E%A7%E5%88%B6%E5%88%97%E8%A1%A8acl%E8%AF%B4%E6%98%8E)
\ No newline at end of file
# web子系统ChangeLog
OpenHarmony 4.0.6.1 版本相较于OpenHarmony 之前的版本,web的API变更如下。
## cl.web.1 createWebMessagePorts接口参数
由于WebMessagePort需要新增支持更多数据类型,因此在该接口增加一个可选参数来区分新老接口。
**变更影响**
无,可选参数,可前向兼容。
**关键的接口/组件变更**
- 涉及接口
createWebMessagePorts(): Array<WebMessagePort>;
- 变更前:
```ts
createWebMessagePorts(): Array<WebMessagePort>;
```
- 变更后:
```ts
createWebMessagePorts(isExtentionType?: boolean): Array<WebMessagePort>;
```
**适配指导**
已有应用无需适配。
\ No newline at end of file
# USB服务子系统ChangeLog
## cl.usb_manager.1 sdk接口删除
基于此前版本开发的应用,需修改导入的包名,否则会影响原有业务逻辑。
**关键接口/组件变更**
@ohos.usbV9.d.ts文件已删除,由@ohos.usbManager.d.ts替代。
| 新包名 | 旧包名 | 已删除包名 |
| -------------------- | ------------- | --------------- |
| ohos.usbManager.d.ts | ohos.usb.d.ts | ohos.usbV9.d.ts |
后续需要import @ohos.usbManager才能使用USB服务的接口:
```ts
import usbManager from '@ohos.usbManager';
```
**适配指导**
请参考各接口的[API文档](../../../application-dev/reference/apis/js-apis-usbManager.md)
# 全球化子系统ChangeLog
## cl.resourceManager.1 getStringSync、getStringByNameSync新增接口
相较于之前的版本,在4.0.6.2 版本中,为扩展getStringSync、getStringByNameSync接口字符串匹配功能,新增了接口以及相应的错误码。
| 包名 | 新增接口 |
| --------------- | ---------------------------------------------------- |
| ohos.resourceManager.d.ts | getStringSync(resId: number, ...args: Array<string \| number>): string; |
| ohos.resourceManager.d.ts | getStringSync(resource: Resource, ...args: Array<string \| number>): string; |
| ohos.resourceManager.d.ts | getStringByNameSync(resName: string, ...args: Array<string \| number>): string; |
**变更影响**
之前只能直接获取resources中的string资源的value值,在4.0.6.2 及以上版本中可用通过参数格式化string资源的value值,扩展了格式化字符串的查询能力。
新增错误码:
9001007 根据当前id获取的资源格式化失败
9001008 根据当前名称获取的资源格式化失败
**示例代码**
以调用接口getStringSync为例,变更前只支持示例1,变更后示例1、示例2都支持。
```
示例1:
try {
this.context.resourceManager.getStringSync($r('app.string.test').id);
} catch (error) {
console.error(`getStringSync failed, error code: ${error.code}, message: ${error.message}.`)
}
示例2:
try {
this.context.resourceManager.getStringSync($r('app.string.test').id, "format string", 787, 98.78);
} catch (error) {
console.error(`getStringSync failed, error code: ${error.code}, message: ${error.message}.`)
}
```
**适配指导**
请参考接口说明:
[新增接口参考](../../../application-dev/reference/apis/js-apis-resource-manager.md)
[新增错误码参考](../../../application-dev/reference/errorcodes/errorcode-resource-manager.md)
\ No newline at end of file
# ArkUI子系统ChangeLog
修复问题:[Stack](../../../application-dev/reference/arkui-ts/ts-container-stack.md)设置alignContent,在子组件超出父组件的场景中,子组件未按照alignContent布局
示例:
```ts
@Entry
@Component
struct StackExample {
build() {
Stack({alignContent:Alignment.TopEnd}){
Text('First child, show in bottom')
.width(200).height(200).backgroundColor(0xd2cab3).margin(10)
}.width(150).height(150).backgroundColor(Color.Pink).margin(100)
}
}
```
修复前:子组件未能按照alignContent:Alignment.TopEnd布局
![stack](figures/stack_before.jpg)
修复后:子组件可以按照alignContent:Alignment.TopEnd布局
![stack](figures/stack_after.jpg)
**变更影响**
1. 如果应用中有子组件大小大于父组件Stack的场景,需要应用进行适配。
2. 应用之前可能采用的规避方案:给子组件设置Offset或者translate
**适配指导**
去掉之前给子组件设置的Offset或者translate,使用alignContent实际布局方式进行布局。
\ No newline at end of file
# HUKS子系统ChangeLog
## cl.huks.1 HUKS支持可选设置rsa_pss_salt_length类型
变更之前,应用在签名/验签时,HUKS默认使用RSA_PSS_SALT_LEN_MAX进行处理;
变更之后,应用在签名/验签需传入HuksRsaPssSaltLenType中定义的类型。若不传入,则默认使用RSA_PSS_SALT_LEN_MAX进行处理。
**变更影响**
影响已发布的JS接口,接口行为发生变更。
**关键的接口/组件变更**
发布的JS接口不变, 传入接口的参数集合发生变更。
**适配指导**
以RSA签名为例,示例代码如下:
```js
import huks from '@ohos.security.huks';
let keyAlias = 'rsa_Key';
let inData = new Uint8Array(
0x4B, 0x1E, 0x22, 0x64, 0xA9, 0x89, 0x60, 0x1D, 0xEC, 0x78, 0xC0, 0x5D, 0xBE, 0x46, 0xAD, 0xCF,
0x1C, 0x35, 0x16, 0x11, 0x34, 0x01, 0x4E, 0x9B, 0x7C, 0x00, 0x66, 0x0E, 0xCA, 0x09, 0xC0, 0xF3,
);
/* 签名参数 */
let signProperties = new Array();
signProperties[0] = {
tag: huks.HuksTag.HUKS_TAG_ALGORITHM,
value: huks.HuksKeyAlg.HUKS_ALG_RSA,
}
signProperties[1] = {
tag: huks.HuksTag.HUKS_TAG_PURPOSE,
value:
huks.HuksKeyPurpose.HUKS_KEY_PURPOSE_SIGN
}
signProperties[2] = {
tag: huks.HuksTag.HUKS_TAG_KEY_SIZE,
value: huks.HuksKeySize.HUKS_RSA_KEY_SIZE_2048,
}
signProperties[3] = {
tag: huks.HuksTag.HUKS_TAG_PADDING,
value: huks.HuksKeyPadding.HUKS_PADDING_PSS,
}
signProperties[4] = {
tag: huks.HuksTag.HUKS_TAG_DIGEST,
value: huks.HuksKeyDigest.HUKS_DIGEST_SHA1,
}
signProperties[5] = {
tag: huks.HuksTag.HUKS_TAG_RSA_PSS_SALT_LEN_TYPE,
value: huks.HuksRsaPssSaltLenType.HUKS_RSA_PSS_SALT_LEN_MAX,
}
let signOptions = {
properties: signProperties,
inData: inData
}
huks.initSession(keyAlias, signOptions);
```
更多接口的示例代码可参考[HUKS-guidelines](../../../application-dev/security/huks-guidelines.md)[HUKS API](../../../application-dev/reference/apis/js-apis-huks.md)
## cl.huks.2 HUKS解决派生密钥/协商密钥的存储/导出问题
变更之前,派生密钥/协商密钥既支持存储,又支持导出,存在安全风险;
变更之后,应用在派生密钥/协商密钥时需传入HuksKeyStorageType中定义的类型。应用只能选择存储,或者选择导出。若不传入,则默认同时支持存储和导出,存在安全问题,不推荐业务使用。
**变更影响**
影响已发布的JS接口,接口行为发生变更。
**关键的接口/组件变更**
发布的JS接口不变, 传入接口的参数集合发生变更。
**适配指导**
接口使用的示例代码可参考[HUKS-guidelines](../../../application-dev/security/huks-guidelines.md)[HUKS API](../../../application-dev/reference/apis/js-apis-huks.md)
## cl.huks.3 新增用于细粒度用户身份访问控制的Tag
新增用于细粒度用户身份访问控制的HuksTag: HUKS_TAG_KEY_AUTH_PURPOSE,业务可在原有用户身份访问控制能力上,选择某种特定算法用途下需要用户身份访问控制能力。
**变更影响**
新增的HuksTag,不影响已有的接口。
**关键的接口/组件变更**
只新增了HuksTag: HUKS_TAG_KEY_AUTH_PURPOSE, 用于支持细粒度用户身份访问控制。
**适配指导**
接口使用的示例代码可参考[密钥访问控制_细粒度用户身份认证访问控制](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/security/huks-guidelines.md#%E5%AF%86%E9%92%A5%E8%AE%BF%E9%97%AE%E6%8E%A7%E5%88%B6),接口定义参考[HuksTag](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-huks.md#hukstag)
\ No newline at end of file
# 资源调度子系统ChangeLog
## cl.resourceschedule.reminderAgent.1
提醒代理支持系统应用设置自定义按钮,并且自定义按钮可跳转指定应用界面。
**变更影响**
基于OpenHarmony4.0.7.1及之后的SDK版本开发的系统应用,可设置提醒自定义按钮。
**关键接口/组件变更**
| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
| -- | -- | -- | -- |
| reminderAgentManager | ActionButtonType | ACTION_BUTTON_TYPE_CUSTOM = 2 | 新增 |
| reminderAgentManager | ActionButton | wantAgent?: WantAgent | 新增 |
| reminderAgentManager | WantAgent | uri?: string | 新增 |
| reminderAgentManager | ReminderRequest | actionButton?: [ActionButton?, ActionButton?, ActionButton?] | 变更 |
**适配指导**<br>
```ts
import reminderAgentManager from '@ohos.reminderAgentManager';
let targetReminderAgent: reminderAgentManager.ReminderRequestAlarm = {
reminderType: reminderAgentManager.ReminderType.REMINDER_TYPE_ALARM, // 提醒类型为闹钟类型
...
actionButton: [
{
title: '稍后提醒',
type: reminderAgentManager.ActionButtonType.ACTION_BUTTON_TYPE_SNOOZE
},
{
title: '关闭',
type: reminderAgentManager.ActionButtonType.ACTION_BUTTON_TYPE_CLOSE
},
{
title: '自定义',
type: reminderAgentManager.ActionButtonType.ACTION_BUTTON_TYPE_CUSTOM,
wantAgent: {
pkgName: "com.example.myapplication",
abilityName: "EntryAbility",
}
},
]
}
```
## cl.resourceschedule.reminderAgent.2
提醒代理支持设置通知自动消失和自动消失时间。
**变更影响**
基于OpenHarmony4.0.7.1及之后的SDK版本开发的系统应用,可设置提醒自动消失。
**关键接口/组件变更**
| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
| -- | -- | -- | -- |
| reminderAgentManager | ReminderRequest | tapDismissed?: boolean | 新增 |
| reminderAgentManager | ReminderRequest | autoDeletedTime?: number | 新增 |
**适配指导**<br>
```ts
import reminderAgentManager from '@ohos.reminderAgentManager';
let targetReminderAgent: reminderAgentManager.ReminderRequestAlarm = {
reminderType: reminderAgentManager.ReminderType.REMINDER_TYPE_ALARM, // 提醒类型为闹钟类型
...
tapDismissed: true,
autoDeletedTime: 300,
}
```
\ No newline at end of file
# arkui子系统ChangeLog
### UI范式装饰器使用限制
#### 1.组件装饰器使用限制
组件装饰器@Component、@Entry、 @Preview和@CustomDialog只能作用于struct组件,不能用于装饰类class。
**示例:**
```
@Component
// ERROR:The '@Component' decorator can only be used with 'struct'.
class Index {
build() {
}
}
```
**变更影响**
如果组件装饰器@Component、@Entry、 @Preview和@CustomDialog 不是装饰struct组件,编译报错。
**关键的接口/组件变更**
不涉及。
**适配指导**
组件装饰器@Component、@Entry、 @Preview和@CustomDialog修饰struct组件。
#### 2.组件成员变量装饰器使用限制
组件成员变量装饰器@State、@Prop、@Link、@Provide、@Consume、@ObjectLink、@StorageLink、@StorageProp、@LocalStorageLink、@LocalStorageProp、@Watch、@BuilderParam只能装饰struct组件的成员变量。
**示例:**
```
@Component
class Index {
// ERROR: The '@State' decorator can only be used with 'struct'.
@State message: string = 'Hello world'
build() {
}
}
```
**变更影响**
如果上述提到的组件成员变量装饰器不是装饰struct组件的成员变量,编译报错。
**关键的接口/组件变更**
不涉及
**适配指导**
组件成员变量装饰器如果装饰了非struct组件成员变量,请将该变量作用在'struct'组件内。
\ No newline at end of file
# 语言编译运行时子系统ChangeLog
## cl.arkcompiler.1 LLVM新增告警及已有告警增强
**变更影响**
OpenHarmony NDK默认不开启-Werror选项,对于已经开启-Werror选项的开发者,建议基于告警检查提示修改错误业务代码或屏蔽
**关键的编译检查规则变更**
| 新增检查选项 | 作用 | 修改建议 |
| --- | --- | --- |
| Wunused-but-set-variable | 当代码中有未使用的变量时(包含++操作符)提出告警 | 定义变量时添加"maybe_unused"属性或者使用宏区分 |
| Wdeprecated-non-prototype | 当代码中存在没有原型的函数时提出告警 | 添加函数原型并明确参数 |
| Wunqualified-std-cast-call | 当代码中错误使用std::move等时提出告警 | 明确移动语义的使用场景并检查代码 |
| Wdeprecated-builtins | 当代码中使用了废弃的内置函数时提出告警 | 替换使用新版函数 |
| Warray-parameter | 当函数参数中包含数组并且重复定义了不一致的形式时提出告警 | 确认函数参数的一致性 |
| Wbitwise-instead-of-logical | 当在布尔运算中使用按位或时提出告警 | 更新代码在布尔运算中使用逻辑或 |
| Wint-conversion | 当代码中出现int变量转换为指针时提出告警 | 更新代码替换使用新的实现方式 |
| Wdeprecated-declarations | 当代码中使用了废弃的定义(包含函数和变量等)时提出告警 | 更新代码替换使用新的实现方式 |
| Wnull-pointer-subtraction | 当代码中出现空指针减法时提出告警 | 更新代码避免空指针参与减法运算 |
| Wunused-but-set-parameter | 当函数中出现未使用的参数时提出告警 | 更新代码去掉未使用的参数 |
| Warray-bounds | 当代码中出现对数组的越界访问时提出告警 | 检查代码并修改越界访问 |
| Wdeprecated-pragma | 当代码中使用了废弃的宏时提出告警 | 更新代码避免使用废弃的宏 |
| Wreserved-identifier | 当代码中使用了"__"开头的变量时提出告警 | 检查代码避免"__"开头的变量被外部使用 |
**适配指导**
1. 对于用户代码中存在的LLVM-12未检测出来的问题,需要用户检查并更新代码。
2. LLVM更新废弃了一些旧的实现,需要用户代码适配并更新代码。
3. 开发者评估暂时规避的告警,可采用-Wno-xxx选项规避该error。
问题代码实例
```
void Heap::Resume(TriggerGCType gcType)
{
if (mode_ != HeapMode::SPAWN &&
activeSemiSpace_->AdjustCapacity(inactiveSemiSpace_->GetAllocatedSizeSinceGC())) {
// if activeSpace capacity changes, oldSpace maximumCapacity should change, too.
size_t multiple = 2;
// oldSpaceMaxLimit被赋值了但未被使用
size_t oldSpaceMaxLimit = 0;
if (activeSemiSpace_->GetInitialCapacity() >= inactiveSemiSpace_->GetInitialCapacity()) {
size_t delta = activeSemiSpace_->GetInitialCapacity() - inactiveSemiSpace_->GetInitialCapacity();
oldSpaceMaxLimit = oldSpace_->GetMaximumCapacity() - delta * multiple;
} else {
size_t delta = inactiveSemiSpace_->GetInitialCapacity() - activeSemiSpace_->GetInitialCapacity();
oldSpaceMaxLimit = oldSpace_->GetMaximumCapacity() + delta * multiple;
}
inactiveSemiSpace_->SetInitialCapacity(activeSemiSpace_->GetInitialCapacity());
}
// irrelated code ...
}
```
oldSpaceMaxLimit变量并未使用,编译器提出告警
```
../../arkcompiler/ets_runtime/ecmascript/mem/heap.cpp:247:16: error: variable 'oldSpaceMaxLimit' set but not used [-Werror,-Wunused-but-set-variable]
size_t oldSpaceMaxLimit = 0;
```
添加属性后解决
```
void Heap::Resume(TriggerGCType gcType)
{
if (mode_ != HeapMode::SPAWN &&
activeSemiSpace_->AdjustCapacity(inactiveSemiSpace_->GetAllocatedSizeSinceGC())) {
// if activeSpace capacity changes, oldSpace maximumCapacity should change, too.
size_t multiple = 2;
// 添加maybe_unused属性,声明不一定使用变量oldSpaceMaxLimit
[[maybe_unused]] size_t oldSpaceMaxLimit = 0;
if (activeSemiSpace_->GetInitialCapacity() >= inactiveSemiSpace_->GetInitialCapacity()) {
size_t delta = activeSemiSpace_->GetInitialCapacity() - inactiveSemiSpace_->GetInitialCapacity();
oldSpaceMaxLimit = oldSpace_->GetMaximumCapacity() - delta * multiple;
} else {
size_t delta = inactiveSemiSpace_->GetInitialCapacity() - activeSemiSpace_->GetInitialCapacity();
oldSpaceMaxLimit = oldSpace_->GetMaximumCapacity() + delta * multiple;
}
inactiveSemiSpace_->SetInitialCapacity(activeSemiSpace_->GetInitialCapacity());
}
// irrelated code ...
}
```
## cl.arkcompiler.2 LLVM解析格式差异
**变更影响**
对于业务依赖version-script或-gcc-toolchain选项的开发者,在沿用LLVM12配置文件或选项时,可能会解析失败
**关键的编译规则变更**
1. 新版本中修改了符号的表示,现在连续的">"会被编译器表示为">>",这个在旧版本中会被表示为"> >",错误使用将导致符号不被解析匹配
2. 废弃-xx选项,如-gcc-toolchain选项,改用--gcc-toolchain选项(该选项在clang3.4以后的版本已表示会弃用,LLVM15上正式废弃)
**适配指导**
version-script使用方法可以参考
适配实例
对于代码中出现连续两个“>”(忽略中间空格数量),在version-script中(由于 mangling差异)会被分别解析为如下"> >"与">>"两种情况,在15中我们需要使用">>"
原始配置文件
```
{
global:
extern "C++" {
"google::protobuf::TextFormat::ParseFromString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, google::protobuf::Message*)";
// LLVM12 "> >"可以被解析,但">>"不行
"google::protobuf::TextFormat::PrintToString(google::protobuf::Message const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*)";
};
local:
*;
}
```
修改后的配置文件
```
{
global:
extern "C++" {
"google::protobuf::TextFormat::ParseFromString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, google::protobuf::Message*)";
// LLVM15 只会解析">>"
"google::protobuf::TextFormat::PrintToString(google::protobuf::Message const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*)";
};
local:
*;
}
```
## cl.arkcompiler.3 LLVM emu-tls变更
**变更影响**
对于LLVM12/LLVM15工具链混用的开发者(禁止行为),会产生libc++.so emu-tls符号无法找到的问题
**关键的库依赖变更**
LLVM15中将emu-tls符号从目标二进制抽取到了libc++.so中,即__emutls_get_address的属性从内部符号变为外部可见的符号(libc++.so中会包含该符号),可能会导致编译出来的动态库依赖libc++.so。
**适配指导**
该符号同时也在libclang_rt.builtin.a中,如果不希望依赖libc++.so可以静态链接libclang_rt.builtin.a库。
## cl.arkcompiler.4 LLVM官方release note
**变更影响**
新增特性及内部接口变更(如LLVM内部的IR,编译器前端修改),详见官方变更文档
**关键变更文档**
https://releases.llvm.org/13.0.0/docs/ReleaseNotes.html
https://releases.llvm.org/14.0.0/docs/ReleaseNotes.html
https://releases.llvm.org/15.0.0/docs/ReleaseNotes.html
**适配指导**
详细修改信息以及适配指导见官方文档
# web子系统ChangeLog
OpenHarmony 4.0.7.3 版本相较于OpenHarmony 之前的版本,web的API变更如下。
## cl.web.1 setResponseData接口参数新增
**变更影响**
setResponseData(data: string | number | Resource),新增入参类型`Resource`
在应用hap不解压场景,应用hap中的文件路径已不存在。当需要读取hap包内资源时,通过使用入参`data:Resource`替代`data:number`,实现对本应用下的资源访问。
**关键的接口/组件变更**
- 涉及接口
setResponseData
- 变更前:
```ts
setResponseData(data: string | number)
```
- 变更后:
```ts
setResponseData(data: string | number | Resource)
```
**适配指导**
应用hap解压时,打开并持有资源文件fd,最后通过`setResponseData(data:number)`将资源响应数据传递给内核。
```ts
// xxx.ets
import web_webview from '@ohos.web.webview'
import fileio from '@ohos.fileio';
@Entry
@Component
struct WebComponent {
controller: web_webview.WebviewController = new web_webview.WebviewController()
responseweb: WebResourceResponse = new WebResourceResponse()
heads: Header[] = new Array()
build() {
Column() {
Web({ src: 'www.example.com', controller: this.controller })
.onInterceptRequest((event) => {
console.log('url:' + event.request.getRequestUrl())
var head1:Header = {
headerKey:"Connection",
headerValue:"keep-alive"
}
var head2:Header = {
headerKey:"Cache-Control",
headerValue:"no-cache"
}
var length = this.heads.push(head1)
length = this.heads.push(head2)
this.responseweb.setResponseHeader(this.heads)
this.responseweb.setResponseEncoding('utf-8')
this.responseweb.setResponseMimeType('text/html')
this.responseweb.setResponseCode(200)
this.responseweb.setReasonMessage('OK')
//// fd方案 --start
// '/xxx/.../test.html'为文件的本地路径
// @ts-ignore
let fd = fileio.openSync('/xxx/.../test.html', 0o102, 0o666)
this.responseweb.setResponseData(fd)
//// fd方案 --end
return this.responseweb
})
}
}
}
```
应用hap不解压时,应用hap中的文件路径已不存在,通过`setResponseData(data:Resource)`将资源响应数据传递给内核。
```ts
// xxx.ets
import web_webview from '@ohos.web.webview'
@Entry
@Component
struct WebComponent {
controller: web_webview.WebviewController = new web_webview.WebviewController()
responseweb: WebResourceResponse = new WebResourceResponse()
heads: Header[] = new Array()
build() {
Column() {
Web({ src: 'www.example.com', controller: this.controller })
.onInterceptRequest((event) => {
console.log('url:' + event.request.getRequestUrl())
var head1:Header = {
headerKey:"Connection",
headerValue:"keep-alive"
}
var head2:Header = {
headerKey:"Cache-Control",
headerValue:"no-cache"
}
var length = this.heads.push(head1)
length = this.heads.push(head2)
this.responseweb.setResponseHeader(this.heads)
this.responseweb.setResponseEncoding('utf-8')
this.responseweb.setResponseMimeType('text/html')
this.responseweb.setResponseCode(200)
this.responseweb.setReasonMessage('OK')
//// Resource方案 --start
// 指定hap包中rawfile目录下的目标文件
this.responseweb.setResponseData($rawfile('test.html'))
//// Resource方案 --end
return this.responseweb
})
}
}
}
```
# arkui子系统ChangeLog
## cl.arkui.1 Button组件hover状态效果变更
Button组件的hover状态由100-105%放大效果变更为0-5%不透明度的叠加效果,hover状态切换到press状态的效果变更为5-10%不透明度的叠加效果。
**变更影响**
影响Button的hover状态的视觉效果以及hover状态切换到press状态的视觉效果。
## cl.arkui.2 toast组件多行文本对齐方式
toast多行文本对齐方式由居中对齐变为左对齐
**变更影响**
影响toast文本提示框的多行文本的视觉效果。
## cl.arkui.3 SideBarContainer组件新增属性、修改属性默认值及新增显示模式
1、新增minContentWidth,默认值360vp,开发者未设置时为0vp。设置为小于0的值时按默认值显示。Embed场景下,增大组件尺寸时仅增大内容区的尺寸,缩小组件尺寸时,先缩小内容区的尺寸至minContentWidth,然后再缩小侧边栏的尺寸,当缩小侧边栏的尺寸至minSideBarWidth后,继续缩小组件尺寸时,会保持侧边栏最小尺寸,继续缩小内容区尺寸,并采用截断方式显示内容区,内容区尺寸可以缩小至0vp。minContentWidth优先于侧边栏的maxSideBarWidth与sideBarWidth属性,minContentWidth未设置时默认值优先级低于设置的minSideBarWidth与maxSideBarWidth属性。<br/>2、minSideBarWidth、SideBarWidth的默认宽度在API version 9及以下版本默认值为200vp,API version 10的默认值为240vp。
<br/>3、新增Auto显示模式,组件尺寸大于等于minSideBarWidth+minContentWidth时,采用Embed模式显示;组件尺寸小于minSideBarWidth+minContentWidth时,采用Overlay模式显示;未设置minSideBarWidth或minContentWidth时,会使用未设置接口的默认值进行计算,若计算后的值小于600vp,则使用600vp做为模式切换的断点值。。
**变更影响**
在API version 10下,影响SideBarContainer组件默认情况下的视觉效果。
\ No newline at end of file
# ArkCompiler子系统ChangeLog
## cl.ArkCompiler.1 type编译模式默认使用es2abc
SDK中ArkCompiler有两个编译器支持ets/ts/js的编译,分别是ts2abc编译器和es2abc编译器。<br>
编译模式介绍:<br>
&emsp;非type编译:ets/ts源码转化为js源码,使用ArkCompiler编译器es2abc生成字节码。<br>
&emsp;type编译:ets/ts源码转化为ts源码,使用ArkCompiler编译器ts2abc(之前版本)/es2abc(此版本使能)生成字节码。<br>
应用工程hvigor版本信息查看:<br>
&emsp;应用工程hvigor目录hvigor-config.json5文件中hvigorVersion字段以及dependencies中@ohos/hvigor-ohos-plugin字段。<br>
开启type编译:<br>
&emsp;hvigor版本大于等于2.6.0-rc.9.s时默认使用type模式编译,或者应用源码(src目录)同级目录build-profile.json5文件中,buildOption标签下配置"aotCompileMode": "type"选项。<br>
当开启type编译且使用该版本的SDK时,将默认使用ArkCompiler编译器es2abc编译ts源码生成字节码,并且不推荐使用使能ts2abc的老版本SDK进行type编译。<br>
**变更影响**<br>
使用DevEco Studio进行应用开发,使能type编译模式并使用新版SDK后,由于编译模式的变更以及ArkCompiler编译器的变更,可能会出现应用编译失败,运行时Crash等。<br>
**关键的接口/组件变更**<br>
type编译模式默认使用ArkCompiler编译器es2abc<br>
**适配指导**<br>
1. hvigor版本大于等于2.6.0-rc.9.s时,切换原来的编译模式(非type),开发者需要在build-profile.json5文件中配置"aotCompileMode":""。
# ArkUI子系统ChangeLog
## cl.arkui.1 uiAppearance部分谓词由公共接口变更为系统接口
命名空间uiAppearance及其内部DarkMode枚举谓词由公共接口变更为系统接口。
**变更影响**
无影响。规范性整改,命名空间uiAppearance及其内部DarkMode枚举类型修改前后均只被系统接口使用
**关键接口/组件变更**
如下接口添加系统接口systemapi说明:
- declare namespace uiAppearance
- enum DarkMode
- ALWAYS_DARK = 0
- ALWAYS_LIGHT = 1
\ No newline at end of file
# 分布式数据管理子系统ChangeLog
## cl.distributeddatamgr.1 ValuesBucket由系统接口变更为公共接口
**变更影响**
基于此前版本开发的应用,仅支持系统应用使用ValuesBucket。现接口类型中的系统接口标识取消,支持第三方开发者使用。
**关键接口/组件变更**
修改前的接口原型:
```ts
/**
* Indicates possible value types
*
* @syscap SystemCapability.DistributedDataManager.DataShare.Core
* @systemapi
* @StageModelOnly
* @since 9
*/
export type ValueType = number | string | boolean;
```
修改后的接口原型:
```ts
/**
* Indicates possible value types
*
* @syscap SystemCapability.DistributedDataManager.DataShare.Core
* @StageModelOnly
* @since 10
*/
export type ValueType = number | string | boolean;
}
```
## cl.distributeddatamgr.2 dataSharePredicates部分谓词由系统接口变更为公共接口
**变更影响**
基于此前版本开发的应用,仅支持系统应用使用dataSharePredicates。现命名空间dataSharePredicates、类dataSharePredicates及类内部分谓词接口类型中的系统接口标识取消,支持第三方开发者使用。
**关键接口/组件变更**
部分谓词接口的系统接口说明取消,涉及的接口有:
- equalTo(field: string, value: ValueType): DataSharePredicates
- and(): DataSharePredicates
- orderByAsc(field: string): DataSharePredicates
- orderByDesc(field: string): DataSharePredicates
- limit(total: number, offset: number): DataSharePredicates
- in(field: string, value: Array<ValueType>): DataSharePredicates
\ No newline at end of file
# arkui子系统ChangeLog
## cl.arkui.1 状态变量数据类型声明使用限制。
所有的状态装饰器变量需要显式声明变量类型,不允许声明any。
**示例:**
```ts
// xxx.ets
@Entry
@Component
struct DatePickerExample {
// 错误写法: @State isLunar: any = false
@State isLunar: boolean = false
build() {
...
}
}
```
**变更影响**
如果状态装饰器变量没有显式声明变量类型,声明any,编译拦截等级由WARN变成ERROR。
```ts
// ArkTS:ERROR Please define an explicit type, not any.
@State isLunar: any = false
```
**关键的接口/组件变更**
不涉及。
**适配指导**
状态装饰器变量声明具体的变量类型替代any。
## cl.arkui.2 自定义组件成员变量初始化的规则与约束。
不允许从父组件初始化`@LocalStorageLink`, `@LocalStorageProp`修饰的变量。
**示例:**
```ts
let NextID: number = 0;
@Observed
class ClassA {
public id: number;
public c: number;
constructor(c: number) {
this.id = NextID++;
this.c = c;
}
}
@Entry
@Component
struct LocalStorageComponent {
build() {
Column() {
Child({
/* ArkTS:ERROR Property 'simpleVarName' in the custom component 'Child' cannot
initialize here (forbidden to specify). */
simpleVarName: 1,
/* ArkTS:ERROR Property 'objectName' in the custom component 'Child' cannot
initialize here (forbidden to specify). */
objectName: new ClassA(1)
})
}
}
}
@Component
struct Child {
@LocalStorageLink("storageSimpleProp") simpleVarName: number = 0;
@LocalStorageProp("storageObjectProp") objectName: ClassA = new ClassA(1);
build() {
}
}
```
**变更影响**
如果父组件初始化`@LocalStorageLink`, `@LocalStorageProp`修饰的变量,编译拦截等级由WARN变成ERROR。
**关键的接口/组件变更**
不涉及。
**适配指导**
构造子组件时,不对子组件的`@LocalStorageLink`, `@LocalStorageProp`修饰的变量进行赋值。
如果需要在父组件中修改子组件的`@LocalStorageLink`, `@LocalStorageProp`修饰的变量,则使用LocalStorage提供的API接口方法(比如set方法)赋值。
## cl.arkui.3 PromptAction模块中,文本提示框toast的bottom属性含义变更。
文本提示框toast的bottom属性值的含义,从文本提示框上边沿到屏幕下边沿,变更为文本提示框下边沿到屏幕下边沿。
**示例:**
```ts
import promptAction from '@ohos.promptAction';
@Entry
@Component
struct Index {
build() {
Row() {
Button()
.onClick(() => {
try {
promptAction.showToast({
message: 'Message Info',
duration: 2000
});
} catch (error) {
console.error(`showToast args error code is ${error.code}, message is ${error.message}`);
};
})
}
}
}
```
**变更影响**
PromptAction模块中,文本提示框toast的bottom属性设置同样的数值,会由于编译器所使用的API版本是否为API version 10+而有所差异。
**关键的接口/组件变更**
不涉及。
**适配指导**
编译器采用API version 9或以往版本以保持之前的样式,或者采用API version 10及以上版本以采用新样式。
## cl.arkui.4 AlertDialog控件内容布局变更。
AlertDialog的内容属性部分会根据:1)有无标题title,2)是否为单行文本,条件不同而布局有所不同。
目前规格:仅无标题title的单行文本情况下为居中,其余情况文本左对齐。
**示例:**
```ts
// xxx.ets
@Entry
@Component
struct AlertDialogExample {
build() {
Column({ space: 5 }) {
Button('one button dialog')
.onClick(() => {
AlertDialog.show(
{
title: 'title',
message: 'text'.repeat(20),
autoCancel: true,
alignment: DialogAlignment.Bottom,
offset: { dx: 0, dy: -20 },
gridCount: 3,
confirm: {
value: 'button',
action: () => {
console.info('Button-clicking callback')
}
},
cancel: () => {
console.info('Closed callbacks')
}
}
)
})
.backgroundColor(0x317aff)
}.width('100%').margin({ top: 5 })
}
}
```
**变更影响**
AlertDialog控件message属性对应的文本内容,布局效果变更。
**关键的接口/组件变更**
不涉及。
**适配指导**
无需主动适配,或者可以使用customDialog做相关实现。
## cl.arkui.5 popup避让行为优化。
变更前,popup发生避让优先在下方空间找位置,导致在上方空间充足也无法设置在上方显示。
目前规格:根据开发者设置,若设置在上方,优先在上方空间找位置;若设置在下方,优先在上下方空间找位置。
**变更影响**
使用bindpopup属性,气泡避让行为优化。
**关键的接口/组件变更**
不涉及。
**适配指导**
若发现使用场景中,使用bindpopup属性,气泡出现位置与之前发生上下位置变化,可通过调整placement恢复。
\ No newline at end of file
# 分布式数据管理子系统ChangeLog
## cl.datashare.1 js-apis-data-dataShare API version 10开始托管数据PublishedItem中data的数据类型从Ashmem变更为ArrayBuffer
**变更影响**
PublishedItem中data的数据类型从Ashmem变更为ArrayBuffer
## PublishedItem<sup>10+</sup>
指定发布的数据类型。
**系统能力:** SystemCapability.DistributedDataManager.DataShare.Consumer
| 名称 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| key | string | 是 | 指定发布数据的键。 |
| data | string \| ArrayBuffer | 是 | 指定发布的数据。如果数据很大,请使用ArrayBuffer。 |
| subscriberId | string | 是 | 指定订阅者id。 |
**适配指导**
示例代码如下:
**示例:**
```ts
let arrayBuffer = new ArrayBuffer(1);
let version = 1;
let data : Array<dataShare.PublishedItem> = [{key:"key2", subscriberId:"11", data:arrayBuffer}];
function publishCallback(err, result: Array<dataShare.OperationResult>) {
console.info("publishCallback " + JSON.stringify(result));
}
try {
console.info("data length is:", data.length);
dataShareHelper.publish(data, "com.acts.ohos.data.datasharetest", version, publishCallback);
} catch (e) {
console.error("publish error " + JSON.stringify(e));
}
```
\ No newline at end of file
# 设备管理ChangeLog
## cl.device_manager.1 接口权限变更
从Openharmony 4.0.8.2版本开始,部分接口新增权限校验。
**变更影响**
从Openharmony 4.0.8.2之后版本开发的应用,需要持有相应权限,否则无法正常调用接口。
**关键的接口/组件变更**
| 模块名 | 类名 | 方法/属性/枚举/常量 | 新增权限 |
| ------------------------- | ------------------- | ------------------------------------------------------------ | -------- |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** release(): void | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** getTrustedDeviceListSync(): Array&lt;DeviceInfo&gt; | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** getTrustedDeviceListSync(isRefresh: boolean): Array&lt;DeviceInfo&gt;; | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** getTrustedDeviceList(callback:AsyncCallback&lt;Array&lt;DeviceInfo&gt;&gt;): void | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** getTrustedDeviceList(): Promise&lt;Array&lt;DeviceInfo&gt;&gt; | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** getLocalDeviceInfoSync(): DeviceInfo | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** getLocalDeviceInfo(callback:AsyncCallback&lt;DeviceInfo&gt;): void | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** getLocalDeviceInfo(): Promise&lt;DeviceInfo&gt; | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** getDeviceInfo(networkId: string, callback:AsyncCallback&lt;DeviceInfo&gt;): void | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** getDeviceInfo(networkId: string): Promise&lt;DeviceInfo&gt; | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** startDeviceDiscovery(subscribeInfo: SubscribeInfo): void | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** startDeviceDiscovery(subscribeInfo: SubscribeInfo, filterOptions?: string): void | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** stopDeviceDiscovery(subscribeId: number): void | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** publishDeviceDiscovery(publishInfo: PublishInfo): void | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** unPublishDeviceDiscovery(publishId: number): void | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** authenticateDevice(deviceInfo: DeviceInfo, authParam: AuthParam, callback: AsyncCallback&lt;{deviceId: string, pinToken ?: number}&gt;): void | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** unAuthenticateDevice(deviceInfo: DeviceInfo): void | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** verifyAuthInfo(authInfo: AuthInfo, callback: AsyncCallback&lt;{deviceId: string, level: number}&gt;): void | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** setUserOperation(operateAction: number, params: string): void | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** requestCredentialRegisterInfo(requestInfo: string, callback: AsyncCallback&lt;{registerInfo: string}&gt;): void; | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** importCredential(credentialInfo: string, callback: AsyncCallback&lt;{resultInfo: string}&gt;): void; | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** deleteCredential(queryInfo: string, callback: AsyncCallback&lt;{resultInfo: string}&gt;): void; | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** on(type: 'uiStateChange', callback: Callback&lt;{ param: string}&gt;): void; | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** off(type: 'uiStateChange', callback?: Callback&lt;{ param: string}&gt;): void; | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** on(type: 'deviceStateChange', callback: Callback&lt;{ action: DeviceStateChangeAction, device: DeviceInfo }&gt;): void | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** off(type: 'deviceStateChange', callback?: Callback&lt;{ action: DeviceStateChangeAction, device: DeviceInfo }&gt;): void | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** on(type: 'deviceFound', callback: Callback&lt;{ subscribeId: number, device: DeviceInfo }&gt;): void | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** off(type: 'deviceFound', callback?: Callback&lt;{ subscribeId: number, device: DeviceInfo }&gt;): void | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** on(type: 'discoverFail', callback: Callback&lt;{ subscribeId: number, reason: number }&gt;): void | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** off(type: 'discoverFail', callback?: Callback&lt;{ subscribeId: number, reason: number }&gt;): void | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** on(type: 'publishSuccess', callback: Callback&lt;{ publishId: number }&gt;): void | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** off(type: 'publishSuccess', callback?: Callback&lt;{ publishId: number }&gt;): void | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** on(type: 'publishFail', callback: Callback&lt;{ publishId: number, reason: number }&gt;): void | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** off(type: 'publishFail', callback?: Callback&lt;{ publishId: number, reason: number }&gt;): void | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** on(type: 'serviceDie', callback: () =&gt; void): void | ohos.permission.ACCESS_SERVICE_DM |
| @ohos.distributedHardware.deviceManager | deviceManager | **function** off(type: 'serviceDie', callback?: () =&gt; void): void | ohos.permission.ACCESS_SERVICE_DM |
**适配指导**
调用以上接口,需要申请相应的权限才能正常调用。
## cl.device_manager.2 所有接口进行系统接口权限校验
从Openharmony 4.0.8.2版本开始,所有接口进行系统接口权限校验。
**变更影响**
非系统应用无法调用系统接口,如调用方为非系统应用或未申请SystemApi相关权限,将无法调用接口。
**关键的接口/组件变更**
所有接口均进行系统接口权限校验,接口明细如下:
| 接口、枚举或变量名 | 类型 | 是否为SystemApi |
| -------- | -------- | ------- |
| createDeviceManager(bundleName: string, callback: AsyncCallback&lt;DeviceManager&gt;): void; | interface | 是 |
| release(): void | interface | 是 |
| getTrustedDeviceListSync(): Array&lt;DeviceInfo&gt; | interface | 是 |
| getTrustedDeviceListSync(isRefresh: boolean): Array&lt;DeviceInfo&gt;; | interface | 是 |
| getTrustedDeviceList(callback:AsyncCallback&lt;Array&lt;DeviceInfo&gt;&gt;): void | interface | 是 |
| getTrustedDeviceList(): Promise&lt;Array&lt;DeviceInfo&gt;&gt; | interface | 是 |
| getLocalDeviceInfoSync(): DeviceInfo | interface | 是 |
| getLocalDeviceInfo(callback:AsyncCallback&lt;DeviceInfo&gt;): void | interface | 是 |
| getLocalDeviceInfo(): Promise&lt;DeviceInfo&gt; | interface | 是 |
| getDeviceInfo(networkId: string, callback:AsyncCallback&lt;DeviceInfo&gt;): void | interface | 是 |
| getDeviceInfo(networkId: string): Promise&lt;DeviceInfo&gt; | interface | 是 |
| startDeviceDiscovery(subscribeInfo: SubscribeInfo): void | interface | 是 |
| startDeviceDiscovery(subscribeInfo: SubscribeInfo, filterOptions?: string): void | interface | 是 |
| stopDeviceDiscovery(subscribeId: number): void | interface | 是 |
| publishDeviceDiscovery(publishInfo: PublishInfo): void | interface | 是 |
| unPublishDeviceDiscovery(publishId: number): void | interface | 是 |
| authenticateDevice(deviceInfo: DeviceInfo, authParam: AuthParam, callback: AsyncCallback&lt;{deviceId: string, pinToken ?: number}&gt;): void |interface | 是 |
| unAuthenticateDevice(deviceInfo: DeviceInfo): void | interface | 是 |
| verifyAuthInfo(authInfo: AuthInfo, callback: AsyncCallback&lt;{deviceId: string, level: number}&gt;): void | interface | 是 |
| setUserOperation(operateAction: number, params: string): void | interface | 是 |
| requestCredentialRegisterInfo(requestInfo: string, callback: AsyncCallback&lt;{registerInfo: string}&gt;): void; | interface | 是 |
| importCredential(credentialInfo: string, callback: AsyncCallback&lt;{resultInfo: string}&gt;): void; | interface | 是 |
| deleteCredential(queryInfo: string, callback: AsyncCallback&lt;{resultInfo: string}&gt;): void; | interface | 是 |
| on(type: 'uiStateChange', callback: Callback&lt;{ param: string}&gt;): void; | interface | 是 |
| off(type: 'uiStateChange', callback?: Callback&lt;{ param: string}&gt;): void; | interface | 是 |
| on(type: 'deviceStateChange', callback: Callback&lt;{ action: DeviceStateChangeAction, device: DeviceInfo }&gt;): void | interface | 是 |
| off(type: 'deviceStateChange', callback?: Callback&lt;{ action: DeviceStateChangeAction, device: DeviceInfo }&gt;): void | interface | 是 |
| on(type: 'deviceFound', callback: Callback&lt;{ subscribeId: number, device: DeviceInfo }&gt;): void | interface | 是 |
| off(type: 'deviceFound', callback?: Callback&lt;{ subscribeId: number, device: DeviceInfo }&gt;): void | interface | 是 |
| on(type: 'discoverFail', callback: Callback&lt;{ subscribeId: number, reason: number }&gt;): void | interface | 是 |
| off(type: 'discoverFail', callback?: Callback&lt;{ subscribeId: number, reason: number }&gt;): void | interface | 是 |
| on(type: 'publishSuccess', callback: Callback&lt;{ publishId: number }&gt;): void | interface | 是 |
| off(type: 'publishSuccess', callback?: Callback&lt;{ publishId: number }&gt;): void | interface | 是 |
| on(type: 'publishFail', callback: Callback&lt;{ publishId: number, reason: number }&gt;): void | interface | 是 |
| off(type: 'publishFail', callback?: Callback&lt;{ publishId: number, reason: number }&gt;): void | interface | 是 |
| on(type: 'serviceDie', callback: () =&gt; void): void | interface | 是 |
| off(type: 'serviceDie', callback?: () =&gt; void): void | interface | 是 |
**适配指导**
调用以上接口,调用方需要为系统应用或申请SystemApi相关权限。
# 分布式数据管理子系统ChangeLog
## cl.distributeddatamgr.1 js-apis-application-dataShareExtensionAbility API version 9开始支持的context属性删除,新增API version 10的context属性取消可选标识符。
**变更影响**
基于此前版本开发的应用,使用context需切换SDK至API version 10。
**关键接口/组件变更**
删除的API version 9的接口原型:
```ts
/**
* Indicates datashare extension ability context.
*
* @type ?{ ExtensionContext }
* @syscap SystemCapability.DistributedDataManager.DataShare.Provider
* @systemapi
* @StageModelOnly
* @since 9
*/
context?: ExtensionContext;
```
新增的API version 10的接口原型:
```ts
/**
* Indicates datashare extension ability context.
*
* @type { ExtensionContext }
* @syscap SystemCapability.DistributedDataManager.DataShare.Provider
* @systemapi
* @StageModelOnly
* @since 10
*/
context: ExtensionContext;
```
## cl.distributeddatamgr.2 OH_Predicates 结构体的函数指针成员变量返回值类型由OH_Predicates 变更为OH_Predicates *
**变更影响**
该变更为不兼容变更,用户使用OH_Predicates结构体中的函数指针变量时,需要按照新类型进行使用。
**关键接口/组件变更**
修改前的OH_Predicates成员变量原型:
```ts
OH_Predicates (*equalTo)(OH_Predicates *predicates, const char *field, OH_VObject *valueObject);
OH_Predicates (*notEqualTo)(OH_Predicates *predicates, const char *field, OH_VObject *valueObject);
OH_Predicates (*beginWrap)(OH_Predicates *predicates);
OH_Predicates (*endWrap)(OH_Predicates *predicates);
OH_Predicates (*orOperate)(OH_Predicates *predicates);
OH_Predicates (*andOperate)(OH_Predicates *predicates);
OH_Predicates (*isNull)(OH_Predicates *predicates, const char *field);
OH_Predicates (*isNotNull)(OH_Predicates *predicates, const char *field);
OH_Predicates (*like)(OH_Predicates *predicates, const char *field, OH_VObject *valueObject);
OH_Predicates (*between)(OH_Predicates *predicates, const char *field, OH_VObject *valueObject);
OH_Predicates (*notBetween)(OH_Predicates *predicates, const char *field, OH_VObject *valueObject);
OH_Predicates (*greaterThan)(OH_Predicates *predicates, const char *field, OH_VObject *valueObject);
OH_Predicates (*lessThan)(OH_Predicates *predicates, const char *field, OH_VObject *valueObject);
OH_Predicates (*greaterThanOrEqualTo)(OH_Predicates *predicates, const char *field, OH_VObject *valueObject);
OH_Predicates (*lessThanOrEqualTo)(OH_Predicates *predicates, const char *field, OH_VObject *valueObject);
OH_Predicates (*orderBy)(OH_Predicates *predicates, const char *field, OH_OrderType type);
OH_Predicates (*distinct)(OH_Predicates *predicates);
OH_Predicates (*limit)(OH_Predicates *predicates, unsigned int value);
OH_Predicates (*offset)(OH_Predicates *predicates, unsigned int rowOffset);
OH_Predicates (*groupBy)(OH_Predicates *predicates, char const *const *fields, int length);
OH_Predicates (*in)(OH_Predicates *predicates, const char *field, OH_VObject *valueObject);
OH_Predicates (*notIn)(OH_Predicates *predicates, const char *field, OH_VObject *valueObject);
OH_Predicates (*clear)(OH_Predicates *predicates);
```
修改后的OH_Predicates成员变量原型:
```ts
OH_Predicates *(*equalTo)(OH_Predicates *predicates, const char *field, OH_VObject *valueObject);
OH_Predicates *(*notEqualTo)(OH_Predicates *predicates, const char *field, OH_VObject *valueObject);
OH_Predicates *(*beginWrap)(OH_Predicates *predicates);
OH_Predicates *(*endWrap)(OH_Predicates *predicates);
OH_Predicates *(*orOperate)(OH_Predicates *predicates);
OH_Predicates *(*andOperate)(OH_Predicates *predicates);
OH_Predicates *(*isNull)(OH_Predicates *predicates, const char *field);
OH_Predicates *(*isNotNull)(OH_Predicates *predicates, const char *field);
OH_Predicates *(*like)(OH_Predicates *predicates, const char *field, OH_VObject *valueObject);
OH_Predicates *(*between)(OH_Predicates *predicates, const char *field, OH_VObject *valueObject);
OH_Predicates *(*notBetween)(OH_Predicates *predicates, const char *field, OH_VObject *valueObject);
OH_Predicates *(*greaterThan)(OH_Predicates *predicates, const char *field, OH_VObject *valueObject);
OH_Predicates *(*lessThan)(OH_Predicates *predicates, const char *field, OH_VObject *valueObject);
OH_Predicates *(*greaterThanOrEqualTo)(OH_Predicates *predicates, const char *field, OH_VObject *valueObject);
OH_Predicates *(*lessThanOrEqualTo)(OH_Predicates *predicates, const char *field, OH_VObject *valueObject);
OH_Predicates *(*orderBy)(OH_Predicates *predicates, const char *field, OH_OrderType type);
OH_Predicates *(*distinct)(OH_Predicates *predicates);
OH_Predicates *(*limit)(OH_Predicates *predicates, unsigned int value);
OH_Predicates *(*offset)(OH_Predicates *predicates, unsigned int rowOffset);
OH_Predicates *(*groupBy)(OH_Predicates *predicates, char const *const *fields, int length);
OH_Predicates *(*in)(OH_Predicates *predicates, const char *field, OH_VObject *valueObject);
OH_Predicates *(*notIn)(OH_Predicates *predicates, const char *field, OH_VObject *valueObject);
OH_Predicates *(*clear)(OH_Predicates *predicates);
```
**适配指导**
示例代码如下:
变更前代码示例:
```
predicates->beginWrap(predicates).equalTo(predicates, "data1", valueObject).orOperate(predicates);
```
变更后代码示例:
```
predicates->beginWrap(predicates)->equalTo(predicates, "data1", valueObject)->orOperate(predicates);
```
## cl.distributeddatamgr.3 OH_Rdb_ErrCode结构体的错误码信息变更
**变更影响**
该变更主要为将 RDB_ERR_INVALID_ARGS, RDB_ERR_OK错误码更改为RDB_E_INVALID_ARGS和RDB_OK,并增加其他错误码。
**关键接口/组件变更**
修改前的OH_Rdb_ErrCode成员变量原型:
```ts
RDB_ERR_INVALID_ARGS = -2,
RDB_ERR = -1,
RDB_ERR_OK = 0
```
修改后的OH_Predicates成员变量原型:
```ts
RDB_ERR = -1,
RDB_OK = 0,
E_BASE = 14800000,
RDB_E_NOT_SUPPORTED = 801,
RDB_E_ERROR = E_BASE,
RDB_E_INVALID_ARGS = (E_BASE + 1),
RDB_E_CANNOT_UPDATE_READONLY = (E_BASE + 2),
RDB_E_REMOVE_FILE = (E_BASE + 3),
RDB_E_EMPTY_TABLE_NAME = (E_BASE + 5),
RDB_E_EMPTY_VALUES_BUCKET = (E_BASE + 6),
RDB_E_EXECUTE_IN_STEP_QUERY = (E_BASE + 7),
RDB_E_INVALID_COLUMN_INDEX = (E_BASE + 8),
RDB_E_INVALID_COLUMN_TYPE = (E_BASE + 9),
RDB_E_EMPTY_FILE_NAME = (E_BASE + 10),
RDB_E_INVALID_FILE_PATH = (E_BASE + 11),
RDB_E_TRANSACTION_IN_EXECUTE = (E_BASE + 12),
RDB_E_INVALID_STATEMENT = (E_BASE + 13),
RDB_E_EXECUTE_WRITE_IN_READ_CONNECTION = (E_BASE + 14),
RDB_E_BEGIN_TRANSACTION_IN_READ_CONNECTION = (E_BASE + 15),
RDB_E_NO_TRANSACTION_IN_SESSION = (E_BASE + 16),
RDB_E_MORE_STEP_QUERY_IN_ONE_SESSION = (E_BASE + 17),
RDB_E_NO_ROW_IN_QUERY = (E_BASE + 18),
RDB_E_INVALID_BIND_ARGS_COUNT = (E_BASE + 19),
RDB_E_INVALID_OBJECT_TYPE = (E_BASE + 20),
RDB_E_INVALID_CONFLICT_FLAG = (E_BASE + 21),
RDB_E_HAVING_CLAUSE_NOT_IN_GROUP_BY = (E_BASE + 22),
RDB_E_NOT_SUPPORTED_BY_STEP_RESULT_SET = (E_BASE + 23),
RDB_E_STEP_RESULT_SET_CROSS_THREADS = (E_BASE + 24),
RDB_E_STEP_RESULT_QUERY_NOT_EXECUTED = (E_BASE + 25),
RDB_E_STEP_RESULT_IS_AFTER_LAST = (E_BASE + 26),
RDB_E_STEP_RESULT_QUERY_EXCEEDED = (E_BASE + 27),
RDB_E_STATEMENT_NOT_PREPARED = (E_BASE + 28),
RDB_E_EXECUTE_RESULT_INCORRECT = (E_BASE + 29),
RDB_E_STEP_RESULT_CLOSED = (E_BASE + 30),
RDB_E_RELATIVE_PATH = (E_BASE + 31),
RDB_E_EMPTY_NEW_ENCRYPT_KEY = (E_BASE + 32),
RDB_E_CHANGE_UNENCRYPTED_TO_ENCRYPTED = (E_BASE + 33),
RDB_E_CHANGE_ENCRYPT_KEY_IN_BUSY = (E_BASE + 34),
RDB_E_STEP_STATEMENT_NOT_INIT = (E_BASE + 35),
RDB_E_NOT_SUPPORTED_ATTACH_IN_WAL_MODE = (E_BASE + 36),
RDB_E_CREATE_FOLDER_FAIL = (E_BASE + 37),
RDB_E_SQLITE_SQL_BUILDER_NORMALIZE_FAIL = (E_BASE + 38),
RDB_E_STORE_SESSION_NOT_GIVE_CONNECTION_TEMPORARILY = (E_BASE + 39),
RDB_E_STORE_SESSION_NO_CURRENT_TRANSACTION = (E_BASE + 40),
RDB_E_NOT_SUPPORT = (E_BASE + 41),
RDB_E_INVALID_PARCEL = (E_BASE + 42),
RDB_E_QUERY_IN_EXECUTE = (E_BASE + 43),
RDB_E_SET_PERSIST_WAL = (E_BASE + 44),
RDB_E_DB_NOT_EXIST = (E_BASE + 45),
RDB_E_ARGS_READ_CON_OVERLOAD = (E_BASE + 46),
RDB_E_WAL_SIZE_OVER_LIMIT = (E_BASE + 47),
RDB_E_CON_OVER_LIMIT = (E_BASE + 48)
```
# 文件子系统ChangeLog
## cl.file.1 mediaLibrary相关接口兼容性变更
mediaLibrary部分接口兼容性变更。
**变更影响**
[mediaLibrary](../../../application-dev/reference/apis/js-apis-medialibrary.md)部分接口兼容性变更。
基于此前版本开发的应用,需注意接口的迭代更新。
**关键接口/组件变更**
| 模块名 | 方法/属性/枚举/常量 | 变更类型 |
| ------------------------- | ------------------------------------------------------------ | -------- |
| medialibrary | **function** getFileAssets(options: MediaFetchOptions, callback: AsyncCallback&lt;FetchFileResult&gt;): void | 接口兼容性变更 |
| medialibrary | **function** getFileAssets(options: MediaFetchOptions): Promise&lt;FetchFileResult&gt; | 接口兼容性变更 |
| medialibrary | **function** createAsset(mediaType: MediaType, displayName: string, relativePath: string, callback: AsyncCallback&lt;FileAsset&gt;): void| 接口兼容性变更 |
| medialibrary | **function** createAsset(mediaType: MediaType, displayName: string, relativePath: string): Promise&lt;FileAsset&gt;| 接口兼容性变更 |
| medialibrary | **function** getAlbums(options: MediaFetchOptions, callback: AsyncCallback&lt;Array&lt;Album&gt;&gt;): void | 接口兼容性变更 |
| medialibrary | **function** getAlbums(options: MediaFetchOptions): Promise&lt;Array&lt;Album&gt;&gt; | 接口兼容性变更 |
| medialibrary | **function** FileAsset.commitModify(callback: AsyncCallback&lt;void&gt;): void | 接口兼容性变更 |
| medialibrary | **function** FileAsset.commitModify(): Promise&lt;void&gt; | 接口兼容性变更 |
**适配指导**
**getFileAssets接口获取文件资源兼容性影响:**
在API version 10上,摒弃了物理目录作为相册的设计,采用了逻辑相册的设计,一个相册中可以添加多个文件,一个文件也可以在多个相册中呈现。新的设计将带来parent、albumId、albumUri和albumName属性使用上的不兼容,无法作为MediaFetchOptions的参数在getFileAssets接口中使用。下面示例代码为错误示例:
1. 使用[getMediaLibrary](../../../application-dev/reference/apis/js-apis-medialibrary.md#medialibrarygetmedialibrary)接口获取媒体库实例。
2. 创建检索条件[MediaFetchOptions](../../../application-dev/reference/apis/js-apis-medialibrary.md#mediafetchoptions7)
3. 调用[getFileAssets](../../../application-dev/reference/apis/js-apis-medialibrary.md#getfileassets7)接口获取文件资源。
**错误示例:**
```js
import mediaLibrary from '@ohos.multimedia.mediaLibrary';
async function example() {
try {
let context = getContext(this);
let media = mediaLibrary.getMediaLibrary(context);
let fileKeyObj = mediaLibrary.FileKey;
let albumId = 1;
let getImageOp = {
selections: fileKeyObj.ALBUM_ID + '= ?', // 使用parent、albumId、albumUri和albumName属性查询均无法获取文件资源。
selectionArgs: [albumId.toString()],
};
const fetchFileResult = await media.getFileAssets(getImageOp); // 查询失败,获取的fetchFileResult为空。
const fileAsset = await fetchFileResult.getFirstObject();
console.info('mediaLibrary fileAsset displayName: ' + fileAsset.displayName);
} catch (err) {
console.error('mediaLibrary fail, err: ' + err);
}
}
```
推荐使用以下方式调用getFileAssets接口获取文件资源:
**正确示例:**
```js
import mediaLibrary from '@ohos.multimedia.mediaLibrary';
async function example() {
try {
let context = getContext(this);
let media = mediaLibrary.getMediaLibrary(context);
let fileKeyObj = mediaLibrary.FileKey;
let imageType = mediaLibrary.MediaType.IMAGE;
let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], // 查询所有图片类型的文件。
};
const fetchFileResult = await media.getFileAssets(getImageOp);
const fileAsset = await fetchFileResult.getFirstObject();
console.info('mediaLibrary fileAsset displayName: ' + fileAsset.displayName);
} catch (err) {
console.error('mediaLibrary fail, err: ' + err);
}
}
```
**createAsset接口创建相册兼容性影响:**
由于API version 10的SDK上relativePath和相册没有关联关系,文件创建成功后,relativePath的最后一级目录不会作为相册呈现。
**getAlbums接口获取相册兼容性影响:**
由于API version 10的SDK上relativePath和相册没有关联关系,在使用getAlbums时不支持relativePath作为查询条件,并且ALBUM_NAME参数只能使用"Camera"和"Screenshots"。下面示例代码为错误示例:
1. 使用[getMediaLibrary](../../../application-dev/reference/apis/js-apis-medialibrary.md#medialibrarygetmedialibrary)接口获取媒体库实例。
2. 创建相册检索条件[MediaFetchOptions](../../../application-dev/reference/apis/js-apis-medialibrary.md#mediafetchoptions7)
3. 调用[getAlbums](../../../application-dev/reference/apis/js-apis-medialibrary.md#getalbums7)接口获取相册。
**错误示例:**
```js
import mediaLibrary from '@ohos.multimedia.mediaLibrary';
async function example() {
try {
let context = getContext(this);
let media = mediaLibrary.getMediaLibrary(context);
let AlbumNoArgsfetchOp = {
selections: mediaLibrary.FileKey.ALBUM_NAME + ' = ?',
selectionArgs: ['新建相册1'], // 获取albumName为新建相册1的相册。
};
const albumList = await media.getAlbums(AlbumNoArgsfetchOp); // 查询失败,获取的fetchFileResult为空。
for (let i = 0; i < albumList.length; i++) {
console.info('mediaLibrary album albumName: ' + albumList[i].albumName);
}
} catch (err) {
console.error('mediaLibrary fail, err: ' + err);
}
}
```
使用如下示例代码可以获取Camera和Screenshots相册。
**正确示例:**
```js
import mediaLibrary from '@ohos.multimedia.mediaLibrary';
async function example() {
try {
let context = getContext(this);
let media = mediaLibrary.getMediaLibrary(context);
let AlbumNoArgsfetchOp = {
selections: mediaLibrary.FileKey.ALBUM_NAME + ' = ? OR ' + mediaLibrary.FileKey.ALBUM_NAME + ' = ?',
selectionArgs: ['Camera', 'Screenshots'], // 获取相机相册和截屏录屏相册。
};
const albumList = await media.getAlbums(AlbumNoArgsfetchOp);
for (let i = 0; i < albumList.length; i++) {
console.info('mediaLibrary album albumName: ' + albumList[i].albumName);
}
} catch (err) {
console.error('mediaLibrary fail, err: ' + err);
}
}
```
**FileAsset.commitModify接口获取相册兼容性影响:**
在API version 10的SDK上去掉了针对audio无意义的orientation属性,在使用commitModify接口时将无法对audio资源的orientation属性进行修改。
# 泛Sensor子系统Changelog
## cl.vibrator.1 新增自定义振动相关属性
新增自定义振动效果属性VibrateFromFile,自定义振动配置文件描述符属性HapticFileDescriptor;振动下发接口startVibration支持的振动效果由VibrateEffect = VibrateTime | VibratePreset扩展为VibrateEffect = VibrateTime | VibratePreset | VibrateFromFile。
**变更影响**
基于OpenHarmony4.0.8.2及之后的SDK版本开发的应用,可使用VibrateFromFile属性在支持自定义振动的设备上播放自定义振动文件中配置的振动序列。
**关键接口/组件变更**
@ohos.vibrator.d.ts中新增属性VibrateFromFile,HapticFileDescriptor。
| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
| -- | -- | -- | -- |
| @ohos.vibrator.d.ts | vibrator | HapticFileDescriptor | 新增 |
| @ohos.vibrator.d.ts | vibrator | VibrateFromFile | 新增 |
**适配指导**<br>
通过资源管理接口获取振动配置文件资源,启动自定义振动并停止。
```ts
import vibrator from '@ohos.vibrator';
import resourceManager from '@ohos.resourceManager';
const FILE_NAME = "xxx.json";
async function openResource(fileName) {
let fileDescriptor = undefined;
let mgr = await resourceManager.getResourceManager();
await mgr.getRawFd(fileName).then(value => {
fileDescriptor = {fd: value.fd, offset: value.offset, length: value.length};
console.log('openResource success fileName: ' + fileName);
}).catch(error => {
console.log('openResource err: ' + error);
});
return fileDescriptor;
}
async function closeResource(fileName) {
let mgr = await resourceManager.getResourceManager();
await mgr.closeRawFd(fileName).then(()=> {
console.log('closeResource success fileName: ' + fileName);
}).catch(error => {
console.log('closeResource err: ' + error);
});
}
// 获取振动文件资源描述符
let rawFd = openResource(FILE_NAME);
// 使用startVibration、stopVibration需要添加ohos.permission.VIBRATE权限
try {
// 启动自定义振动
vibrator.startVibration({
type: "file",
hapticFd: { fd: rawFd.fd, offset: rawFd.offset, length: rawFd.length }
}, {
usage: "alarm"
}).then(() => {
console.info('startVibration success');
}, (error) => {
console.info('startVibration error');
});
// 停止所有类型的马达振动
vibrator.stopVibration(function (error) {
if (error) {
console.log('error.code' + error.code + 'error.message' + error.message);
return;
}
console.log('Callback returned to indicate successful.');
})
} catch (error) {
console.info('errCode: ' + error.code + ' ,msg: ' + error.message);
}
// 关闭振动文件资源
closeResource(FILE_NAME);
```
# arkui子系统ChangeLog
## cl.arkui.1 FormComponent组件中的JS卡片禁用网络图片
FormComponent组件中的JS卡片禁止使用网络图片。
**变更影响**
影响FormComponent中JS卡片中网络图片的加载显示。变更前JS卡片支持网络图片加载,变更后JS卡片不支持网络图片的加载。变更后建议将所需的网络图片下载至内存后刷新。
# arkui子系统ChangeLog
## cl.arkui.1 stack组件alignContent属性和通用属性align生效顺序
**说明**
属性之间的处理原则:如果功能相同,属性按覆盖处理即后设置的生效。alignContent和align功能相同,都是子组件在stack容器组件的对齐方式。
**示例:**
```ts
// xxx.ets
@Entry
@Component
struct StackExample {
build() {
Stack({alignContent:Alignment.Start}){
Text("Stack's child").backgroundColor(Color.Brown).height("100").width(100)
}
.width(300).height(300)
.backgroundColor(Color.Pink)
.align(Alignment.Center)
.alignContent(Alignment.TopEnd)
}
}
```
API version 9:子组件按照通用属性align布局
![stack](figures/api9.png)
API version 10及以后:子组件按照后设置的alignContent布局
![stack](figures/api10_and_later.png)
**变更影响**
alignContent和align都设置时,API version 9及以前是align生效,API version 10及以后是后设置的生效。
## cl.arkui.2 canvas组件fillText接口和strokeText接口行为变更
**说明**
fillText和strokeText接口在绘制文字时,不会换行。
**示例:**
```ts
// xxx.ets
@Entry
@Component
struct FillText {
private settings: RenderingContextSettings = new RenderingContextSettings(true)
private context: CanvasRenderingContext2D = new CanvasRenderingContext2D(this.settings)
build() {
Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Center, justifyContent: FlexAlign.Center }) {
Canvas(this.context)
.width('100%')
.height('100%')
.backgroundColor('#ffff00')
.onReady(() =>{
this.context.font = '50px sans-serif'
this.context.fillText("Hello World!", 0, 100)
this.context.fillText("Hello World! This is a long string to fully show", 0, 150)
this.context.strokeText("Hello World!", 0, 250)
this.context.strokeText("Hello World! This is a long string to fully show", 0, 300)
})
}
.width('100%')
.height('100%')
}
}
```
API version 9:fillText和strokeText接口在绘制文字时,会根据组件宽度换行。
![stack](figures/api9filltext.jpeg)
API version 10及以后:fillText和strokeText接口在绘制文字时,不会换行。
![stack](figures/api10filltext.jpeg)
**变更影响**
fillText和strokeText接口在绘制文字时,API version 9及以前是根据组件宽度换行,API version 10及以后是不会换行。
\ No newline at end of file
# multimedia子系统ChangeLog
## cl.multimedia.1 音视频封装/解封装头文件引用路径变更
| 封装解封装头文件 | 原引用路径 | 现引用路径 |
| ------------------------------- | ------------------------------------- | ------------------------------------- |
| native_avmuxer.h | <multimedia/native_avmuxer.h> | <multimedia/player_framework/native_avmuxer.h> |
| native_avdemuxer.h | <multimedia/native_avdemuxer.h> | <multimedia/player_framework/native_avdemuxer.h> |
| native_avsource.h | <multimedia/native_avsource.h> | <multimedia/player_framework/native_avsource.h> |
**变更影响**
对于已发布的SDK,可能影响三方应用的兼容性。
**适配指导**
开发人员需要在引用封装解封装头文件时,修改头文件引用路径。
# 程序访问控制子系统ChangeLog
## cl.accessToken.1 "媒体和文件"权限组拆分
原"媒体和文件"权限组内包含以下权限:
- ohos.permission.MEDIA_LOCATION
- ohos.permission.READ_MEDIA
- ohos.permission.WRITE_MEDIA
对这三个权限所属的权限组进行调整:
- ohos.permission.MEDIA_LOCATION 划分到 "图片和视频" 权限组
- ohos.permission.READ_MEDIA 和 ohos.permission.WRITE_MEDIA 划分到 "文件" 权限组。
**变更影响**
权限弹窗是以权限组为单位进行展示的。
- 在变更前,如果开发者同时申请以上三个权限,应用仅会弹一次申请"媒体和文件"权限的弹窗;
- 在变更后,如果开发者同时申请以上三个权限,应用会分别弹一次申请"图片和视频"权限的弹窗和申请"文件"权限的弹窗;
**关键的接口/组件变更**
修改前的权限组归属:
| 权限 | 所属权限组 |
| -------- | ---------------------------- |
| ohos.permission.MEDIA_LOCATION | 媒体和文件 |
| ohos.permission.READ_MEDIA | 媒体和文件 |
| ohos.permission.WRITE_MEDIA | 媒体和文件 |
修改后的权限组归属:
| 权限 | 所属权限组 |
| -------- | ---------------------------- |
| ohos.permission.MEDIA_LOCATION | 图片和视频 |
| ohos.permission.READ_MEDIA | 文件 |
| ohos.permission.WRITE_MEDIA | 文件 |
**适配指导**
应用开发者无需适配。
## cl.accessToken.2 “电话”/“信息”/“通话记录”权限组的权限申请方式调整
“电话”/“信息”/“通话记录”权限组的共包含以下权限:
- ohos.permission.ANSWER_CALL
- ohos.permission.MANAGE_VOICEMAIL
- ohos.permission.READ_CELL_MESSAGES
- ohos.permission.READ_MESSAGES
- ohos.permission.RECEIVE_MMS
- ohos.permission.RECEIVE_SMS
- ohos.permission.RECEIVE_WAP_MESSAGES
- ohos.permission.SEND_MESSAGES
- ohos.permission.READ_CALL_LOG
- ohos.permission.WRITE_CALL_LOG
- ohos.permission.MEDIA_LOCATION
当前调整这些权限的申请方式:这些权限仅能通过预授权方式进行授权。
**变更影响**
当前申请这些权限的系统应用无法通过权限弹窗进行权限请求,仅能通过预授权方式获取权限。
**关键的接口/组件变更**
不涉及。
**适配指导**
申请上述权限时,需要调整权限请求方式,申请权限预授权。
# arkcompiler子系统ChangeLog
## cl.arkcompiler.1 sdk中ts2abc编译器下线
sdk中arkcompiler原有两个编译器支持ets/js的编译,分别是ts2abc编译器和es2abc编译器。在这个版本的迭代中,ts2abc编译器已经下线,无法调用ts2abc编译器生成abc文件。开发者可以在sdk的ets\build-tools\ets-loader\bin以及js\build-tools\ets-loader\bin目录下发现如下图所示的变更。
![stack](figures/api10_sdk_arkcompiler_component_change.png)
**变更影响**<br>
升级新版本的sdk后,使用DevEco进行应用开发时不会有任何影响。如果利用脚本调用sdk中的ts2abc编译器进行编译生成abc操作时,需要调用es2abc编译器进行开发。
**关键的接口/组件变更**
arkcompiler前端编译器中的ts2abc下线
**适配指导**
1. 对于利用DevEco进行应用开发的开发者而言,ts2abc编译器的下线不会造成任何影响,不需要做适配
2. 对于自己开发脚本调用sdk中的ts2abc编译器的开发者而言,需要切换为调用es2abc编译器来生成abc文件。es2abc编译器的使用说明以及与ts2abc编译器的对比请参考[es2abc和ts2abc使用说明](https://gitee.com/openharmony/arkcompiler_ets_frontend#%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E). 假设编译的文件名叫a.js文件,对于使用频率最高的生成abc文件,两者的编译命令如下:
- script模式编译
1. es2abc: es2abc a.js --output a.abc
2. ts2abc: node --expose-gc pathToIndex/index.js a.js --output a.abc
- module模式编译
1. es2abc: es2abc a.js --module --output a.abc
2. ts2abc: node --expose-gc pathToIndex/index.js a.js --module --output a.abc
\ No newline at end of file
# arkui子系统ChangeLog
## cl.arkui.1 通用事件参数支持undefined
通用事件(点击事件、触摸事件、挂载卸载事件、按键事件、焦点事件、鼠标事件、组件区域变化事件)参数支持undefined。
**示例:**
```ts
// xxx.ets
@Entry
@Component
struct Example {
build() {
Button("test")
.onClick(()=>{
console.log("click");
})
.onClick(undefined)
}
}
```
**变更影响**
如果事件回调参数为undefined,那么将不再响应已经设置的事件回调。
**关键的接口/组件变更**
不涉及。
**适配指导**
当事件参数设置为undefined,将会禁用该事件,依据实际应用开发场景进行参数设置即可。
## cl.arkui.2 @Prop/@BuilderParam 状态变量需要初始化或从父组件传值
**示例:**
```ts
// xxx.ets
@Entry
@Component
struct Parent {
@State message: string = 'Parent'
build() {
Column() {
Child() // 编译报错
}
}
}
@Component
struct Child {
@Prop message: string
build() {
Column() {
}
}
}
```
**变更影响**
当@Prop/@BuilderParam 状态变量未初始化且未从父组件传值时,编译无法通过。
**关键的接口/组件变更**
不涉及。
**适配指导**
对@Prop/@BuilderParam 状态变量做初始化赋值或从父组件调用子组件时传入。
## cl.arkui.3 @BuilderParam 状态变量初始化赋值必须为@Builder函数/方法
**示例:**
```ts
// xxx.ets
@Builder
function builderFunction() {
Text('Hello Builder')
}
function normal () {
}
@Component
struct Index {
@BuilderParam builderParam: ()=>void = builderFunction
@BuilderParam builderParam2: ()=>void = normal // 编译报错
build() {
Column() {
}
}
}
```
**变更影响**
@BuilderParam 状态变量初始化赋值非@Builder方法时,编译无法通过。
**关键的接口/组件变更**
不涉及。
**适配指导**
@BuilderParam 状态变量初始化赋值传入@Builder方法。
## cl.arkui.4 Search组件的searchButton属性中SearchButtonOption修改为SearchButtonOptions
**变更影响**
如果显式地使用了SearchButtonOption类型,编译无法通过。
**关键的接口/组件变更**
searchButton属性中类型SearchButtonOption修改为SearchButtonOptions。
**适配指导**
SearchButtonOption修改为SearchButtonOptions。
# 包管理子系统ChangeLog
## cl.bundlemanager.1 包管理@ohos.bundle.d.ts中getAllBundleInfo接口底层实现变更。
@ohos.bundle.d.ts中getAllBundleInfo接口已标记废弃,在targetAPILevel为API9及之后的版本镜像上,返回数据列表为空。
**变更影响**<br>
升级新版本镜像后,使用@ohos.bundle.d.ts中的getAllBundleInfo的接口调用成功后返回数据列表为空。需要应用调用新的接口@ohos.bundle.bundleManager.d.ts中的getAllBundleInfo。
**关键的接口/组件变更**<br>
底层实现变更,使用@ohos.bundle.d.ts中的getAllBundleInfo的接口调用成功后返回数据列表为空。
**适配指导**<br>
1. 应用在使用@ohos.bundle.d.ts中getAllBundleInfo接口的地方可以修改为使用@ohos.bundle.bundleManager.d.ts中getAllBundleInfo,新接口使用方法可参考[指南](../../../application-dev/reference/apis/js-apis-bundleManager.md#bundlemanagergetallbundleinfo)
```ets
import bundleManager from '@ohos.bundle.bundleManager';
```
## cl.bundlemanager.2 包管理@ohos.bundle.d.ts中getAllApplicationInfo接口底层实现变更。
@ohos.bundle.d.ts中getAllApplicationInfo接口已标记废弃,在targetAPILevel为API9及之后的版本镜像上,返回数据列表为空。
**变更影响**<br>
升级新版本镜像后,使用@ohos.bundle.d.ts中的getAllApplicationInfo的接口调用成功后返回数据列表为空。需要应用调用新的接口@ohos.bundle.bundleManager.d.ts中的getAllApplicationInfo。
**关键的接口/组件变更**<br>
底层实现变更,使用@ohos.bundle.d.ts中的getAllApplicationInfo的接口调用成功后返回数据列表为空。
**适配指导**<br>
1. 应用在使用@ohos.bundle.d.ts中getAllApplicationInfo接口的地方可以修改为使用@ohos.bundle.bundleManager.d.ts中getAllApplicationInfo,新接口使用方法可参考[指南](../../../application-dev/reference/apis/js-apis-bundleManager.md#bundlemanagergetallapplicationinfo)
```ets
import bundleManager from '@ohos.bundle.bundleManager';
```
## cl.bundlemanager.3 包管理@ohos.bundle.bundleManager.d.ts中getAllBundleInfo接口权限变更。
获取应用列表接口需要由用户选择是否同意授权,因此将
@ohos.bundle.bundleManager.d.ts中getAllBundleInfo接口权限变更为ohos.permission.GET_INSTALLED_BUNDLE_LIST。
**变更影响**<br>
升级新版本镜像后,使用getAllBundleInfo的接口需要申请新的权限ohos.permission.GET_INSTALLED_BUNDLE_LIST,否则接口会调用失败。
**关键的接口/组件变更**<br>
@ohos.bundle.bundleManager.d.ts中getAllBundleInfo接口权限变更为ohos.permission.GET_INSTALLED_BUNDLE_LIST。
**适配指导**<br>
1. 应用可以在配置文件中新增申请权限ohos.permission.GET_INSTALLED_BUNDLE_LIST。
2. 该权限为user_grant类型的,安装时默认不会授权,需要应用调用弹框接口由用户选择是否授权或者使用预授权进行授权。
3. 使用弹框授权方式可以参考[向用户申请授权](../../../application-dev/security/accesstoken-guidelines.md#向用户申请授权)
4. 使用预授权方式可以参考[权限预授权](../../../application-dev/security/accesstoken-guidelines.md#user_grant权限预授权)
## cl.bundlemanager.4 包管理@ohos.bundle.bundleManager.d.ts中getAllApplicationInfo接口权限变更。
获取应用列表接口需要由用户选择是否同意授权,因此将
@ohos.bundle.bundleManager.d.ts中getAllApplicationInfo接口权限变更为ohos.permission.GET_INSTALLED_BUNDLE_LIST。
**变更影响**<br>
升级新版本镜像后,使用getAllApplicationInfo的接口需要申请新的权限ohos.permission.GET_INSTALLED_BUNDLE_LIST,否则接口会调用失败。
**关键的接口/组件变更**<br>
@ohos.bundle.bundleManager.d.ts中getAllApplicationInfo接口权限变更为ohos.permission.GET_INSTALLED_BUNDLE_LIST。
**适配指导**<br>
1. 应用可以在配置文件中新增申请权限ohos.permission.GET_INSTALLED_BUNDLE_LIST。
2. 该权限为user_grant类型的,安装时默认不会授权,需要应用调用弹框接口由用户选择是否授权或者使用预授权进行授权。
3. 使用弹框授权方式可以参考[向用户申请授权](../../../application-dev/security/accesstoken-guidelines.md#向用户申请授权)
4. 使用预授权方式可以参考[权限预授权](../../../application-dev/security/accesstoken-guidelines.md#user_grant权限预授权)
## cl.bundlemanager.5 包管理@ohos.bundle.installer.d.ts中getSpecifiedDistributionType接口移动到@ohos.bundle.bundleManager.d.ts中。
包管理@ohos.bundle.installer.d.ts中getSpecifiedDistributionType接口移动到@ohos.bundle.bundleManager.d.ts中。
**变更影响**<br>
升级新版本SDK后,包管理@ohos.bundle.installer.d.ts中getSpecifiedDistributionType接口移动到@ohos.bundle.bundleManager.d.ts中。
**关键的接口/组件变更**<br>
包管理@ohos.bundle.installer.d.ts中getSpecifiedDistributionType接口移动到@ohos.bundle.bundleManager.d.ts中。
**适配指导**<br>
1. 修改导入模块,使用bundleManager中的getSpecifiedDistributionType
```ets
import bundleManager form '@ohos.bundle.bundleManager'
```
## cl.bundlemanager.6 包管理@ohos.bundle.installer.d.ts中getAdditionalInfo接口移动到@ohos.bundle.bundleManager.d.ts中。
包管理@ohos.bundle.installer.d.ts中getAdditionalInfo接口移动到@ohos.bundle.bundleManager.d.ts中。
**变更影响**<br>
升级新版本SDK后,包管理@ohos.bundle.installer.d.ts中getAdditionalInfo接口移动到@ohos.bundle.bundleManager.d.ts中。
**关键的接口/组件变更**<br>
包管理@ohos.bundle.installer.d.ts中getAdditionalInfo接口移动到@ohos.bundle.bundleManager.d.ts中。
**适配指导**<br>
1. 修改导入模块,使用bundleManager中的getAdditionalInfo
```ets
import bundleManager form '@ohos.bundle.bundleManager'
```
## cl.bundlemanager.7 应用配置文件module.json5中proxyDatas更名为proxyData。
由于命名规范问题,proxyDatas更名为proxyData。
**变更影响**<br>
升级新版本SDK后,proxyDatas更名为proxyData,应用如果不进行适配,将会编译失败。
**关键的接口/组件变更**<br>
proxyDatas更名为proxyData。
**适配指导**<br>
请使用proxyData替换proxyDatas,其内容不需要变更。
\ No newline at end of file
# security子系统ChangeLog
## cl.security.1 对API9中已经抛出的异常,补写throws标签
对于在API9中已经抛出异常而JS DOC中漏写throws标签的接口,在since 9的注释中补上throws标签。
**变更影响**
对于已发布的JS接口,可能影响异常处理流程,包括同步异常和异步异常。应用需要根据最新的throws标签,排查是否有遗漏的异常处理流程,结合实际情况进行适配。
**关键的接口/组件变更**
修改前的接口原型:
```ts
interface Key {
/**
* Encode the key object to binary data.
*
* @returns { DataBlob } the binary data of the key object.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
getEncoded(): DataBlob;
}
interface AsyKeyGenerator {
/**
* Used to generate asymmetric key pair.
*
* @param { AsyncCallback<KeyPair> } callback - the callback used to return keypair.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 17620001 - memory error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
generateKeyPair(callback: AsyncCallback<KeyPair>): void;
/**
* Used to generate asymmetric key pair.
*
* @returns { Promise<KeyPair> } the promise used to return keypair.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 17620001 - memory error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
generateKeyPair(): Promise<KeyPair>;
/**
* Used to convert asymmetric key data to key pair object.
*
* @param { DataBlob } pubKey - the public key data blob.
* @param { DataBlob } priKey - the private key data blob.
* @param { AsyncCallback<KeyPair> } callback - the callback used to return keypair.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 17620001 - memory error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
convertKey(pubKey: DataBlob, priKey: DataBlob, callback: AsyncCallback<KeyPair>): void;
/**
* Used to convert asymmetric key data to key pair object.
*
* @param { DataBlob } pubKey - the public key data blob.
* @param { DataBlob } priKey - the private key data blob.
* @returns { Promise<KeyPair> } the promise used to return keypair.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 17620001 - memory error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
convertKey(pubKey: DataBlob, priKey: DataBlob): Promise<KeyPair>;
}
/**
* Provides the asymmetric key generator instance func.
*
* @param { string } algName - indicates the algorithm name.
* @returns { AsyKeyGenerator } the generator obj create by algName.
* @throws { BusinessError } 401 - invalid parameters.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
function createAsyKeyGenerator(algName: string): AsyKeyGenerator;
/**
* Create a cipher object for encryption and decryption operations according to the given specifications.
* Two different Cipher objects should be created when using RSA encryption and decryption,
* even with the same specifications.
*
* @param { string } transformation - indicates the description to be transformed to cipher specifications.
* @returns { Cipher } the cipher object returned by the function.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 801 - this operation is not supported.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
function createCipher(transformation: string): Cipher;
/**
* Create sign class.
*
* @param { string } algName - indicates the algorithm name and params.
* @returns { Sign } the sign class.
* @throws { BusinessError } 401 - invalid parameters.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
function createSign(algName: string): Sign;
/**
* Create verify class.
*
* @param { string } algName - indicates the algorithm name and params.
* @returns { Verify } the verify class.
* @throws { BusinessError } 401 - invalid parameters.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
function createVerify(algName: string): Verify;
/**
* Create key agreement class.
*
* @param { string } algName - indicates the algorithm name and params.
* @returns { KeyAgreement } the key agreement class.
* @throws { BusinessError } 401 - invalid parameters.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
function createKeyAgreement(algName: string): KeyAgreement;
```
修改后的接口原型:
```ts
interface Key {
/**
* Encode the key object to binary data.
*
* @returns { DataBlob } the binary data of the key object.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 17620001 - memory error.
* @throws { BusinessError } 17630001 - crypto operation error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
getEncoded(): DataBlob;
}
interface AsyKeyGenerator {
/**
* Used to generate asymmetric keypair.
*
* @param { AsyncCallback<KeyPair> } callback - the callback used to return keypair.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 17620001 - memory error.
* @throws { BusinessError } 17630001 - crypto operation error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
generateKeyPair(callback: AsyncCallback<KeyPair>): void;
/**
* Used to generate asymmetric keypair.
*
* @returns { Promise<KeyPair> } the promise used to return keypair.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 17620001 - memory error.
* @throws { BusinessError } 17630001 - crypto operation error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
generateKeyPair(): Promise<KeyPair>;
/**
* Used to convert asymmetric key data to keypair object.
*
* @param { DataBlob } pubKey - the public key data blob.
* @param { DataBlob } priKey - the private key data blob.
* @param { AsyncCallback<KeyPair> } callback - the callback used to return keypair.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 17620001 - memory error.
* @throws { BusinessError } 17630001 - crypto operation error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
convertKey(pubKey: DataBlob, priKey: DataBlob, callback: AsyncCallback<KeyPair>): void;
/**
* Used to convert asymmetric key data to keypair object.
*
* @param { DataBlob } pubKey - the public key data blob.
* @param { DataBlob } priKey - the private key data blob.
* @returns { Promise<KeyPair> } the promise used to return keypair.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 17620001 - memory error.
* @throws { BusinessError } 17630001 - crypto operation error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
convertKey(pubKey: DataBlob, priKey: DataBlob): Promise<KeyPair>;
}
/**
* Create the asymmetric key generator instance according to the given algorithm name.
*
* @param { string } algName - indicates the algorithm name.
* @returns { AsyKeyGenerator } the asymmetric key generator instance.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 17620001 - memory error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
function createAsyKeyGenerator(algName: string): AsyKeyGenerator;
/**
* Create a cipher object for encryption and decryption operations according to the given specifications.
* Two different Cipher objects should be created when using RSA encryption and decryption,
* even with the same specifications.
*
* @param { string } transformation - indicates the description to be transformed to cipher specifications.
* @returns { Cipher } the cipher object returned by the function.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 17620001 - memory error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
function createCipher(transformation: string): Cipher;
/**
* Create a sign object for generating signatures.
*
* @param { string } algName - indicates the algorithm name and params.
* @returns { Sign } the sign class.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 17620001 - memory error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
function createSign(algName: string): Sign;
/**
* Create a verify object for verifying signatures.
*
* @param { string } algName - indicates the algorithm name and the parameters.
* @returns { Verify } the verify class.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 17620001 - memory error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
function createVerify(algName: string): Verify;
/**
* Create a key agreement object.
*
* @param { string } algName - indicates the algorithm name and params.
* @returns { KeyAgreement } the key agreement object.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 17620001 - memory error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
function createKeyAgreement(algName: string): KeyAgreement;
```
**适配指导**
由于漏标的throws异常发生在较少见的情况下,应用可以结合实际情况,排查漏标的throws标签是否需要专门适配。
- 对于同步方法,如createSign等,请使用try/catch方式处理错误信息。
- 对于异步方法,如convertKey等,请使用try/catch方式处理同步的参数错误,使用error对象的方式获取异步的参数错误和业务执行错误。
# arkui子系统ChangeLog
## cl.arkui.1 滚动事件上报滚动状态枚举值规则变更
ScrollState枚举值在API version 9及以下上报规则:
| 名称 | 描述 |
| ------ | ------------------------------ |
| Idle | 空闲状态。使用控制器提供的方法滚动、拖动滚动条滚动时触发。 |
| Scroll | 手指拖动状态。使用手指拖动List滚动时触发。 |
| Fling | 惯性滚动状态。快速划动松手后惯性滚动和划动到边缘回弹时触发。 |
从API version 10开始,ScrollState上报规则变更为:
| 名称 | 描述 |
| ------ | ------------------------------ |
| Idle | 空闲状态。滚动状态回归空闲的时候触发,一个滚动流程的最后一帧回调。控制器提供的无动画的方法控制的滚动也会触发。 |
| Scroll | 滚动状态。手指拖动List滚动时触发,拖动滚动条滚动时触发,滚动鼠标滚轮触发。 |
| Fling | 惯性滚动状态。由动画触发的滚动,包括快速划动松手后的惯性滚动,划动到边缘回弹的滚动,快速拖动内置滚动条松手后的惯性滚动,使用滚动控制器提供的带动画的方法控制的滚动。 |
ScrollState枚举变更如下。
| 场景 | API version 9及以下 |API version 10开始 |
| ------ | ------------------------------ |------------------------------ |
| 手指拖动滑动 | Scroll | Scroll |
| 惯性滚动 | Fling | Fling |
| 过界回弹 | Fling | Fling |
| 鼠标滚轮滚动 | Idle | Scroll |
| 拖动滚动条 | Idle | Scroll |
| 滚动控制器滚动(带动画) | Idle | Fling |
| 滚动控制器滚动(不带动画) | Idle | Idle |
**变更影响**
1、ScrollState枚举值从API version 7开始提供,在API version 10变更,不影响API version 9及以下版本使用。<br/>
2、API version 9及以下使用到这个枚举值的接口有List组件的onScroll事件、onScrollFrameBegin事件、Scroll组件的onScrollFrameBegin事件,API version 9及以下滚动状态上报规则不变,不会产生影响;从API version 10开始,List组件的onScroll事件在文章起始列出的部分场景中上报的枚举值会有变化。
**关键接口/组件变更**
List组件接口文档:
- [List组件事件](../../../application-dev/reference/arkui-ts/ts-container-list.md#事件)
- [List组件ScrollState枚举说明](../../../application-dev/reference/arkui-ts/ts-container-list.md#scrollstate枚举说明)
**适配指导**
List组件绑定onScroll事件,通过onScroll事件上报当前滚动状态。API version 9及以下上报的滚动状态仍遵循变更前规则,从API version 10开始,上报的滚动状态遵循变更后规则。
参考代码如下:
```ts
// xxx.ets
@Entry
@Component
struct ListExample {
private arr: number[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
build() {
Column() {
List({ space: 20, initialIndex: 0 }) {
ForEach(this.arr, (item) => {
ListItem() {
Text('' + item)
.width('100%').height(100).fontSize(16)
.textAlign(TextAlign.Center).borderRadius(10).backgroundColor(0xFFFFFF)
}
}, item => item)
}
.listDirection(Axis.Vertical) // 排列方向
.edgeEffect(EdgeEffect.Spring) // 边缘效果设置为Spring
.onScroll((scrollOffset: number, scrollState: ScrollState) => {
console.log(`onScroll scrollState = ${ScrollState[scrollState]}, scrollOffset = ${[scrollOffset]}`)
})
.width('90%')
}
.width('100%')
.height('100%')
.backgroundColor(0xDCDCDC)
.padding({ top: 5 })
}
}
```
\ No newline at end of file
# 设备管理ChangeLog
## cl.distributedDeviceManager.1 接口变更
从Openharmony 4.0.9.2版本开始,新增设备管理接口。
**变更影响**
原有的接口[API参考](../../../application-dev/reference/apis/js-apis-device-manager.md)暂时可继续使用,但是停止维护,建议使用新接口进行开发。
**关键的接口/组件变更**
##新增接口如下:
| 模块名 | 类名 | 新增接口声明 |
| ------------------------------------ | ------------------- | ------------------------------------------------------------ |
| @ohos.distributedDeviceManager | function | **function** createDeviceManager(bundleName: string): DeviceManager; |
| @ohos.distributedDeviceManager | function | **function** releaseDeviceManager(deviceManager: DeviceManager): void; |
| @ohos.distributedDeviceManager | DeviceManager | **function** getAvailableDeviceListSync(): Array&lt;DeviceBasicInfo&gt;; |
| @ohos.distributedDeviceManager | DeviceManager | **function** getAvailableDeviceList(callback:AsyncCallback&lt;Array&lt;DeviceBasicInfo&gt;&gt;): void; |
| @ohos.distributedDeviceManager | DeviceManager | **function** getAvailableDeviceList(): Promise&lt;Array&lt;DeviceBasicInfo&gt;&gt;; |
| @ohos.distributedDeviceManager | DeviceManager | **function** getLocalDeviceNetworkId(): string; |
| @ohos.distributedDeviceManager | DeviceManager | **function** getLocalDeviceName(): string; |
| @ohos.distributedDeviceManager | DeviceManager | **function** getLocalDeviceType(): number; |
| @ohos.distributedDeviceManager | DeviceManager | **function** getLocalDeviceId(): string; |
| @ohos.distributedDeviceManager | DeviceManager | **function** getDeviceName(networkId: string): string; |
| @ohos.distributedDeviceManager | DeviceManager | **function** getDeviceType(networkId: string): number; |
| @ohos.distributedDeviceManager | DeviceManager | **function** startDiscovering(discoverParam: {[key:&nbsp;string]:&nbsp;Object} , filterOptions?: {[key:&nbsp;string]:&nbsp;Object} ): void; |
| @ohos.distributedDeviceManager | DeviceManager | **function** stopDiscovering(): void; |
| @ohos.distributedDeviceManager | DeviceManager | **function** bindTarget(deviceId: string, bindParam: {[key:&nbsp;string]:&nbsp;Object} , callback: AsyncCallback&lt;{deviceId: string}&gt;): void; |
| @ohos.distributedDeviceManager | DeviceManager | **function** unbindTarget(deviceId: string): void; |
| @ohos.distributedDeviceManager | DeviceManager | **function** replyUiAction(action: number, actionResult: string): void; |
| @ohos.distributedDeviceManager | DeviceManager | **function** on(type: 'replyResult', callback: Callback&lt;{ param: string}&gt;): void; |
| @ohos.distributedDeviceManager | DeviceManager | **function** off(type: 'replyResult', callback?: Callback&lt;{ param: string}&gt;): void; |
| @ohos.distributedDeviceManager | DeviceManager | **function** on(type: 'deviceStateChange', callback: Callback&lt;{ action: DeviceStateChange, device: DeviceBasicInfo }&gt;): void; |
| @ohos.distributedDeviceManager | DeviceManager | **function** off(type: 'deviceStateChange', callback?: Callback&lt;{ action: DeviceStateChange, device: DeviceBasicInfo }&gt;): void; |
| @ohos.distributedDeviceManager | DeviceManager | **function** on(type: 'discoverSuccess', callback: Callback&lt;{ device: DeviceBasicInfo }&gt;): void; |
| @ohos.distributedDeviceManager | DeviceManager | **function** off(type: 'discoverSuccess', callback?: Callback&lt;{ device: DeviceBasicInfo }&gt;): void; |
| @ohos.distributedDeviceManager | DeviceManager | **function** on(type: 'deviceNameChange', callback: Callback&lt;{ deviceName: string }&gt;): void; |
| @ohos.distributedDeviceManager | DeviceManager | **function** off(type: 'deviceNameChange', callback?: Callback&lt;{ deviceName: string }&gt;): void; |
| @ohos.distributedDeviceManager | DeviceManager | **function** on(type: 'discoverFailure', callback: Callback&lt;{ reason: number }&gt;): void; |
| @ohos.distributedDeviceManager | DeviceManager | **function** off(type: 'discoverFailure', callback?: Callback&lt;{ reason: number }&gt;): void; |
| @ohos.distributedDeviceManager | DeviceManager | **function** on(type: 'serviceDie', callback?: Callback&lt;{}&gt;): void; |
| @ohos.distributedDeviceManager | DeviceManager | **function** off(type: 'serviceDie', callback?: Callback&lt;{}&gt;): void; |
**适配指导**
请参考各接口的[API参考](../../../application-dev/reference/apis/js-apis-distributedDeviceManager.md)
# 位置服务子系统ChangeLog
## cl.location.1 新增获取WiFi/BT扫描结果的系统接口
@ohos.geoLocationManager.d.ts中增加获取WiFi/BT扫描结果的接口,这些接口是systemApi。
**变更影响**
系统应用可以从调用@ohos.geoLocationManager.d.ts中的接口获取WiFi/BT扫描结果,用于网络定位。
**关键的接口/组件变更**
| 类名 | 接口类型 | 接口声明 | 变更类型 |
| -- | -- | -- | -- |
|geoLocationManager| method | function on(type: 'locatingRequiredDataChange', config: LocatingRequiredDataConfig, callback: Callback&lt;Array&lt;LocatingRequiredData&gt;&gt;): void; | 新增接口 |
|geoLocationManager| method | function off(type: 'locatingRequiredDataChange', callback?: Callback&lt;Array&lt;LocatingRequiredData&gt;&gt;): void; | 新增接口 |
|geoLocationManager| method | function getLocatingRequiredData(config: LocatingRequiredDataConfig): Promise&lt;Array&lt;LocatingRequiredData&gt;&gt;; | 新增接口 |
**适配指导**
以单次获取扫描信息为例:
```ts
import geoLocationManager from '@ohos.geoLocationManager';
let config = {'type': 1, 'needStartScan': true, 'scanInterval': 10000};
try {
geoLocationManager.getLocatingRequiredData(config).then((result) => {
console.log('getLocatingRequiredData return: ' + JSON.stringify(result));
})
.catch((error) => {
console.log('promise, getLocatingRequiredData: error=' + JSON.stringify(error));
});
} catch (err) {
console.error("errCode:" + err.code + ",errMessage:" + err.message);
}
```
# 输入法框架子系统-输入法框架ChangeLog
## cl.imf.1 @ohos.InputMethod中on('imeShow')系统接口权限校验失败返回错误码变更
**变更影响**
使用on('imeShow')接口,系统权限校验失败的返回码从201变更为202。
## cl.imf.2 @ohos.InputMethod中on('imeHide')系统接口权限校验失败返回错误码变更
**变更影响**
使用on('imeHide')接口,系统权限校验失败的返回码从201变更为202。
## cl.imf.3 @ohos.InputMethod中off接口新增参数
off接口新增需要取消订阅的回调函数作为可选参数,需要与on接口传入的保持一致。
| 接口 | 变更前 | 变更后 |
| ------------------------- | ------------------------------------- | ------------------------------------------------------------ |
| off('insertText') | off(type: 'insertText'): void | off(type: 'insertText', callback?: (text: string) => void): void |
| off('deleteLeft') | off(type: 'deleteLeft'): void | off(type: 'deleteLeft', callback?: (length: number) => void): void |
| off('deleteRight') | off(type: 'deleteRight'): void | off(type: 'deleteRight', callback?: (length: number) => void): void |
| off('sendKeyboardStatus') | off(type: 'sendKeyboardStatus'): void | off(type: 'sendKeyboardStatus', callback?: (keyboardStatus: KeyboardStatus) => void): void |
| off('sendFunctionKey') | off(type: 'sendFunctionKey'): void | off(type: 'sendFunctionKey', callback?: (functionKey: FunctionKey) => void): void |
| off('moveCursor') | off(type: 'moveCursor'): void | off(type: 'moveCursor', callback?: (direction: Direction) => void): void |
| off('handleExtendAction') | off(type: 'handleExtendAction'): void | off(type: 'handleExtendAction', callback?: (action: ExtendAction) => void): void |
| off('selectByRange') | off(type: 'selectByRange'): void | off(type: 'selectByRange', callback?: Callback\<Range\>): void |
| off('selectByMovement') | off(type: 'selectByMovement'): void | off(type: 'selectByMovement', callback?: Callback\<Movement\>): void |
**变更影响**
以上接口的调用,有多个订阅回调时,可传入订阅回调函数只取消单个回调函数的订阅,当该参数不填写时,取消订阅对应的所有回调事件。
**适配指导**
请参考接口说明:[@ohos.inputMethod.d.ts](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-inputmethod.md)
# multimedia子系统ChangeLog
## cl.multimedia.1 音频C接口流类型枚举声明变更
对于在API10中已经新增的音频C接口,音频输出流类型错写为AUDIOSTREAM_TYPE_RERNDERER,需要修正为AUDIOSTREAM_TYPE_RENDERER。
**变更影响**
对于已发布的C接口,可能影响三方应用的兼容性。
**关键的接口/组件变更**
修改前的接口原型:
```C
enum OH_AudioStream_Type {
/**
* The type for audio stream is renderer.
*/
AUDIOSTREAM_TYPE_RERNDERER = 1,
/**
* The type for audio stream is capturer.
*/
AUDIOSTREAM_TYPE_CAPTURER = 2
};
```
修改后的接口原型:
```C
enum OH_AudioStream_Type {
/**
* The type for audio stream is renderer.
*/
AUDIOSTREAM_TYPE_RENDERER = 1,
/**
* The type for audio stream is capturer.
*/
AUDIOSTREAM_TYPE_CAPTURER = 2
};
```
**适配指导**
开发人员需要在使用音频输出流类型AUDIOSTREAM_TYPE_RERNDERER时,修改为AUDIOSTREAM_TYPE_RENDERER。例如:
修改前
```C
OH_AudioStreamBuilder* builder;
OH_AudioStreamBuilder_Create(&builder, AUDIOSTREAM_TYPE_RERNDERER);
```
修改后
```C
OH_AudioStreamBuilder* builder;
OH_AudioStreamBuilder_Create(&builder, AUDIOSTREAM_TYPE_RENDERER);
```
## cl.multimedia.2 移除OH_AudioStream_Content
对于在API10中已经新增的音频C接口,音频输出流属性中将删除掉OH_AudioStream_Content。
**变更影响**
对于已发布的C接口,可能影响三方应用的兼容性。
**关键的接口/组件变更**
- native_audiostream_base.h 文件
修改前的接口原型:
```C
typedef enum {
AUDIOSTREAM_CONTENT_TYPE_UNKNOWN = 0,
AUDIOSTREAM_CONTENT_TYPE_SPEECH = 1,
AUDIOSTREAM_CONTENT_TYPE_MUSIC = 2,
AUDIOSTREAM_CONTENT_TYPE_MOVIE = 3,
} OH_AudioStream_Content;
```
修改后
删除OH_AudioStream_Content枚举定义
- native_audiostreambuilder.h 文件
修改前
```C
OH_AudioStream_Result OH_AudioStreamBuilder_SetRendererInfo(OH_AudioStreamBuilder* builder,
OH_AudioStream_Usage usage, OH_AudioStream_Content content);
```
修改后
```C
OH_AudioStream_Result OH_AudioStreamBuilder_SetRendererInfo(OH_AudioStreamBuilder* builder,
OH_AudioStream_Usage usage);
```
- native_audiorenderer.h 文件
修改前
```C
OH_AudioStream_Result OH_AudioRenderer_GetRendererInfo(OH_AudioRenderer* renderer,
OH_AudioStream_Usage* usage, OH_AudioStream_Content* content);
```
修改后
```C
OH_AudioStream_Result OH_AudioRenderer_GetRendererInfo(OH_AudioRenderer* renderer,
OH_AudioStream_Usage* usage);
```
**适配指导**
对于OH_AudioStreamBuilder_SetRendererInfo接口,开发者按照所属场景,原本设置的OH_AudioStream_Content类型可对比下表,使用对应的OH_AudioStream_Usage类型。
| OH_AudioStream_Content | OH_AudioStream_Usage |
| ------------------------------- | ------------------------------------- |
| AUDIOSTREAM_CONTENT_TYPE_SPEECH | AUDIOSTREAM_USAGE_VOICE_COMMUNICATION |
| AUDIOSTREAM_CONTENT_TYPE_MUSIC | AUDIOSTREAM_USAGE_MUSIC |
| AUDIOSTREAM_CONTENT_TYPE_MOVIE | AUDIOSTREAM_USAGE_MOVIE |
对于OH_AudioRenderer_GetRendererInfo接口,开发者使用新的接口只能获取到OH_AudioStream_Usage属性,不能获取OH_AudioStream_Content属性。
## cl.multimedia.3 OH_AudioStream_Usage变更
API10的音频C接口native_audiostream_base.h 文件中,在OH_AudioStream_Usage枚举中删除了AUDIOSTREAM_USAGE_MEDIA枚举值,将AUDIOSTREAM_USAGE_COMMUNICATION枚举值变更为AUDIOSTREAM_USAGE_VOICE_COMMUNICATION和AUDIOSTREAM_USAGE_VOICE_ASSISTANT。
**变更影响**
对于已发布的C接口,可能影响三方应用的兼容性。如果开发者使用AUDIOSTREAM_USAGE_MEDIA和AUDIOSTREAM_USAGE_COMMUNICATION枚举值,会有兼容性问题。
**关键的接口/组件变更**
修改前
```C
typedef enum {
AUDIOSTREAM_USAGE_UNKNOWN = 0,
AUDIOSTREAM_USAGE_MEDIA = 1,
AUDIOSTREAM_USAGE_COMMUNICATION = 2,
} OH_AudioStream_Usage;
```
修改后
```C
typedef enum {
/**
* Unknown usage.
*/
AUDIOSTREAM_USAGE_UNKNOWN = 0,
/**
* Music usage.
*/
AUDIOSTREAM_USAGE_MUSIC = 1,
/**
* Voice communication usage.
*/
AUDIOSTREAM_USAGE_VOICE_COMMUNICATION = 2,
/**
* Voice assistant usage.
*/
AUDIOSTREAM_USAGE_VOICE_ASSISTANT = 3,
/**
* Movie or video usage.
*/
AUDIOSTREAM_USAGE_MOVIE = 10,
} OH_AudioStream_Usage;
```
**适配指导**
用户通过OH_AudioStreamBuilder_SetRendererInfo接口不能再设置OH_AudioStream_Usage值为AUDIOSTREAM_USAGE_MEDIA,改为使用AUDIOSTREAM_USAGE_MUSIC或者AUDIOSTREAM_USAGE_MOVIE。
修改前
```C
OH_AudioStreamBuilder_SetRendererInfo(builder, AUDIOSTREAM_USAGE_MEDIA);
```
修改后
```C
OH_AudioStreamBuilder_SetRendererInfo(builder, AUDIOSTREAM_USAGE_MUSIC); // 音乐场景
```
或者
```C
OH_AudioStreamBuilder_SetRendererInfo(builder, AUDIOSTREAM_USAGE_MOVIE); // 视频场景
```
用户通过OH_AudioStreamBuilder_SetRendererInfo接口不能再设置OH_AudioStream_Usage值为AUDIOSTREAM_USAGE_COMMUNICATION,改为使用AUDIOSTREAM_USAGE_VOICE_COMMUNICATION或者AUDIOSTREAM_USAGE_VOICE_ASSISTANT。
修改前
```C
OH_AudioStreamBuilder_SetRendererInfo(builder, AUDIOSTREAM_USAGE_COMMUNICATION);
```
修改后
```C
OH_AudioStreamBuilder_SetRendererInfo(builder, AUDIOSTREAM_USAGE_VOICE_COMMUNICATION); // 通话场景
```
或者
```C
OH_AudioStreamBuilder_SetRendererInfo(builder, AUDIOSTREAM_USAGE_VOICE_ASSISTANT); // 语音场景
```
## cl.multimedia.4 OH_AudioStream_SampleFormat变更,删除AUDIOSTREAM_SAMPLE_F32LE
API10的音频C接口native_audiostream_base.h 文件中,在OH_AudioStream_SampleFormat枚举中删除了AUDIOSTREAM_SAMPLE_F32LE枚举值。
**变更影响**
对于已发布的C接口,可能影响三方应用的兼容性。如果开发者使用AUDIOSTREAM_SAMPLE_F32LE会有兼容性问题。
**关键的接口/组件变更**
修改前
```C
typedef enum {
AUDIOSTREAM_SAMPLE_U8 = 0,
AUDIOSTREAM_SAMPLE_S16LE = 1,
AUDIOSTREAM_SAMPLE_S24LE = 2,
AUDIOSTREAM_SAMPLE_S32LE = 3,
AUDIOSTREAM_SAMPLE_F32LE = 4,
} OH_AudioStream_SampleFormat;
```
修改后
```C
typedef enum {
/**
* Unsigned 8 format.
*/
AUDIOSTREAM_SAMPLE_U8 = 0,
/**
* Signed 16 bit integer, little endian.
*/
AUDIOSTREAM_SAMPLE_S16LE = 1,
/**
* Signed 24 bit integer, little endian.
*/
AUDIOSTREAM_SAMPLE_S24LE = 2,
/**
* Signed 32 bit integer, little endian.
*/
AUDIOSTREAM_SAMPLE_S32LE = 3,
} OH_AudioStream_SampleFormat;
```
**适配指导**
修改后用户不能再设置采样格式为AUDIOSTREAM_SAMPLE_F32LE枚举值。
## cl.multimedia.5 OH_AudioStream_Result添加枚举值
API10的音频C接口native_audiostream_base.h 文件中,在OH_AudioStream_Result枚举中给枚举值定义数值。
**变更影响**
无影响
**关键的接口/组件变更**
修改前
```C
typedef enum {
/**
* The call was successful.
*/
AUDIOSTREAM_SUCCESS,
/**
* This means that the function was executed with an invalid input parameter.
*/
AUDIOSTREAM_ERROR_INVALID_PARAM,
/**
* Execution status exception.
*/
AUDIOSTREAM_ERROR_ILLEGAL_STATE,
/**
* An system error has occurred.
*/
AUDIOSTREAM_ERROR_SYSTEM
} OH_AudioStream_Result;
```
修改后
```C
typedef enum {
/**
* The call was successful.
*/
AUDIOSTREAM_SUCCESS = 0,
/**
* This means that the function was executed with an invalid input parameter.
*/
AUDIOSTREAM_ERROR_INVALID_PARAM = 1,
/**
* Execution status exception.
*/
AUDIOSTREAM_ERROR_ILLEGAL_STATE = 2,
/**
* An system error has occurred.
*/
AUDIOSTREAM_ERROR_SYSTEM = 3
} OH_AudioStream_Result;
```
**适配指导**
无兼容性影响,不涉及。
# 主题框架子系统锁屏管理ChangeLog
## cl.screenlock.1 代码实例名称变更
锁屏管理的包名为'@ohos.screenLock',在导入时,使用的代码实例应为screenLock,而不是screenlock。
**变更影响**
无。
**关键的接口/组件变更**
修改前的接口调用:
```js
screenlock.isLocked();
screenlock.unlock();
screenlock.lock();
screenlock.onSystemEvent(event=>{});
screenlock.sendScreenLockEvent('unlockScreenResult', 0);
screenlock.isScreenLocked()
screenlock.isSecureMode();
screenlock.unlockScreen();
```
修改后的接口调用:
```js
screenLock.isLocked();
screenLock.unlock();
screenLock.lock();
screenLock.onSystemEvent(event=>{});
screenLock.sendScreenLockEvent('unlockScreenResult', 0);
screenLock.isScreenLocked()
screenLock.isSecureMode();
screenLock.unlockScreen();
```
**适配指导**
导入时使用screenLock,例如::
修改前
```js
import screenlock from '@ohos.screenLock';
```
修改后
```js
import screenLock from '@ohos.screenLock';
```
# arkui子系统ChangeLog
## ArkUI系统组件使用限制
ArkUI系统组件必须在struct的build方法,pageTransition方法,@Builder修饰的函数内使用。
**示例:**
```
@Entry
@Component
struct Index {
build() {
Row() {
}
}
}
// ERROR:UI component 'Text' cannot be used in this place.
Text('Hello World')
```
**变更影响**
如果ArkUI系统组件不在struct的build方法,pageTransition方法,@Builder修饰的函数内使用,编译报错。
**关键的接口/组件变更**
不涉及。
**适配指导**
ArkUI系统组件必须在struct的build方法,pageTransition方法,@Builder修饰的函数内使用。
# arkui子系统状态管理ChangeLog
# ArkUI子系统@Prop装饰器支持Object行为变化
## cl.@Prop支持Object api9浅拷贝,api10变更为深拷贝
**变更影响**
@Prop支持Object在api9为浅拷贝,具体行为表现为:
- Object类型:浅拷贝Object.keys(propObj) 返回的所有属性。即只拷贝最外层的Object,Object中property还是指向原来的父组件的数据源。
- 数组类型:浅拷贝所有的数组项,即只拷贝最外层的array,其他行为和Object一致。
- 拷贝Object和数组的prototype。
@Prop支持Object在api10变更为深拷贝,具体行为表现为:
- Object类型:完全拷贝Object.keys(propObj) 返回的所有属性。
- 数组类型:完全拷贝所有的数组项;
- 拷贝Object和数组的prototype。
**适配指导**
@Prop深浅拷贝的变更在UI渲染上的影响主要在@ObjectLink相关的场景,因为@ObjectLink会代理其修饰对象属性。
例子如下:
api9:PropClassAArray组件中@Prop objArray改变ClassA的属性,或者设置新的数组项,都会引起父组件StateClassAArray创建的ObjectLinkClassA中的@ObjectLink obj的改变。
这个更新是因为父组件StateClassAArray中@State stateClassAArray到子组件PropClassAArray中@Prop objArray是浅拷贝引起的,因为浅拷贝只拷贝了数组项的引用,所以数据源也被改变,而@ObjectLink代理了数据源的属性,所以引发了ObjectLinkClassA组件中的@ObjectLink obj的更新(从StateClassAArray组件中构造的)。
api10:在上述场景中,因为父组件StateClassAArray中@State stateClassAArray到子组件PropClassAArray中@Prop objArray是深拷贝,完整拷贝了ClassA的对象,所以不会改变数据源,从而不会引发ObjectLinkClassA组件中的@ObjectLink obj的更新(从StateClassAArray组件中构造的)。
![zh-cn_image_0000001588291546](figures/zh-cn_image_0000001588291546.png)
```ts
let nextId = 0;
@Observed
class ClassA {
id : number;
a : number;
constructor(a : number = 0) {
this.id = nextId++;
this.a = a;
}
}
@Component
struct ObjectLinkClassA {
@ObjectLink obj : ClassA;
build() {
Row() {
Text(`ObjectLink: obj: ${this.obj.a}`)
.height(100)
.onClick(() => {
this.obj.a += 1;
console.info(`ObjectLink onClick ClassA property changed to ${this.obj.a}`)
})
}.border({width: 3, color: Color.Red})
}
}
@Component
struct PropClassAArray {
@Prop objArray : Array<ClassA> = [];
build() {
Column() {
Text(`green box: @Prop : Array<ObjectClassA> item [0] + [1]`)
Row() {
ObjectLinkClassA({ obj: this.objArray[0] })
Text("[0] Assign new ClassA")
.height(100)
.onClick(() => {
this.objArray[0] = new ClassA();
console.info(`PropClassAArray[0] onClick ClassA object assign ${this.objArray[0].a}`)
})
Text("Change ClassA property")
.height(100)
.onClick(() => {
this.objArray[0].a += 1;
console.info(`PropClassAArray[1] onClick ClassA property change ${this.objArray[1].a}`)
})
}
}.border({width: 3, color: Color.Green})
}
}
@Entry
@Component
struct StateClassAArray {
@State stateClassAArray : Array<ClassA> = [ new ClassA(), new ClassA() ];
build() {
Column() {
Column() {
Text("Red box: @ObjectLink from @State array item[0]")
Row() {
ObjectLinkClassA({obj : this.stateClassAArray[0] })
Text("Assign new ClassA")
.height(100)
.onClick(() => {
this.stateClassAArray[0] = new ClassA();
console.info(`StateClassAArray[0] onClick ClassA object assign ${this.stateClassAArray[0].a}`)
})
Text("Change ClassA property")
.height(100)
.onClick(() => {
this.stateClassAArray[0].a += 1;
console.info(`StateClassAArray onClick stateClassAArray[0] changed to ${this.stateClassAArray[0].a}`)
})
}
}.border({width: 3, color: Color.Blue})
Divider().height(5)
// api9浅拷贝:只拷贝指向源数组项的引用,不拷贝数组项ClassA实例自身
// api10深拷贝:完整拷贝this.stateClassAArray,包括其数组项。
PropClassAArray({ objArray: this.stateClassAArray })
}
}
}
```
\ No newline at end of file
# arkui子系统ChangeLog
## cl.arkui.1 编译拦截@Extend/@AnimatableExtend参数个数不符合预期
@Extend/@AnimatableExtend装饰器参数有且仅能有一个。
**变更影响**
当@Extend/@AnimatableExtend装饰器参数有多个时,编译报错。
**错误示例:**
```ts
// xxx.ets
@Extend(Text, Button) // 编译报错: @Extend should have one and only one parameter
function fancy() {
.width(100)
}
@AnimatableExtend(Text, Polyline) // 编译报错: @AnimatableExtend should have one and only one parameter
function fancy2() {
.height(100)
}
@Entry
@Component
struct Example {
build() {
Column() {
Text('text')
.fancy()
.fancy2()
}
}
}
```
**关键接口/组件变更**
不涉及
**适配指导**
@Extend和AnimatableExtend装饰器仅能传一个参数。
参考代码如下:
```ts
// xxx.ets
@Extend(Text)
function fancy() {
.width(100)
}
@AnimatableExtend(Text)
function fancy2() {
.height(100)
}
@Entry
@Component
struct Example {
build() {
Column() {
Text('text')
.fancy()
.fancy2()
}
}
}
```
## cl.arkui.2 编译拦截@Link/@ObjectLink成员变量未从父组件传值
子组件的@Link/@ObjectLink成员变量需要从父组件传值。
**变更影响**
子组件的@Link/@ObjectLink当没有从父组件传值时,编译报错。
**错误示例:**
```ts
// xxx.ets
@Observed
class Count {
message: string = 'count'
}
@Entry
@Component
struct Parent {
@State state1: string = 'state1';
@State state2: Count = new Count();
build() {
Column() {
Child() // 编译报错:Property 'link' in the custom component 'Child' is missing (mandatory to specify).
// 编译报错:Property 'objectLink' in the custom component 'Child' is missing (mandatory to specify).
}
}
}
@Component
struct Child {
@Link link: string;
@ObjectLink objectLink: Count;
build() {
Column() {
Text(this.link)
.fontSize(50)
Text(this.objectLink.message)
.fontSize(50)
}
}
}
```
**关键接口/组件变更**
不涉及
**适配指导**
子组件的@Link/@ObjectLink成员变量需要从父组件传值。
参考代码如下:
```ts
// xxx.ets
@Observed
class Count {
message: string = 'count'
}
@Entry
@Component
struct Parent {
@State state1: string = 'state1';
@State state2: Count = new Count();
build() {
Column() {
Child({link: $state1, objectLink: this.state2})
}
}
}
@Component
struct Child {
@Link link: string;
@ObjectLink objectLink: Count;
build() {
Column() {
Text(this.link)
.fontSize(50)
Text(this.objectLink.message)
.fontSize(50)
}
}
}
```
## cl.arkui.3 canvas组件onReady事件行为变更
**说明**
onReady事件在组件创建完成后或组件大小发生变化时触发,并清空画布。
**示例:**
```ts
@Entry
@Component
struct OnReadyDiff {
@State message: string = 'init '
@State isShow: boolean = false
@State myHeight: number = 300
private settings: RenderingContextSettings = new RenderingContextSettings(true);
private context: CanvasRenderingContext2D = new CanvasRenderingContext2D(this.settings);
build() {
Row() {
Column() {
Text(this.message)
.fontSize(50)
.fontWeight(FontWeight.Bold)
Button('ChangePosition')
.onClick(()=>{
this.isShow = !this.isShow
})
if (this.isShow) {
Button('new button')
.height(200)
}
Button('ChangeHeight')
.onClick(()=>{
this.myHeight = this.myHeight==300?500:300
})
Canvas(this.context)
.width(300)
.height(this.myHeight)
.backgroundColor('#ffff00')
.onReady(() =>{
this.context.fillRect(0, 0, 100, 100)
this.message += 'a '
})
Button('draw another')
.onClick(()=>{
this.context.fillRect(100, 100, 100, 100)
})
}
.width('100%')
}
.height('100%')
}
}
```
API version 9:onReady在组件创建完成时触发,位置变化时会触发,组件大小变化时也会触发。
![stack](figures/api9onReady.gif)
API version 10及以后:onReady在组件创建完成时触发,在组件位置变化时不会触发,组件大小变化时会触发。
![stack](figures/api10onReady.gif)
**变更影响**
onReady事件在组件位置发生变化时行为变更,API version 9及以前会触发,API version 10及以后不会触发。
\ No newline at end of file
# 包管理子系统ChangeLog
## cl.bundlemanager.1 module.json配置文件schema变更
module.json配置文件中,module字段的name属性、ability字段的name属性、extensionAbility字段的name属性,需要以英文字母开头,并仅含有英文字母、数字以及下划线和点符号。
**变更影响**<br>
升级新版本sdk后,如果module字段的name属性、ability字段的name属性、extensionAbility字段的name属性不符合上述要求,则编译失败。
**关键的接口/组件变更**<br>
module.json配置文件中,module字段的name属性、ability字段的name属性、extensionAbility字段的name属性,需要以英文字母开头,并仅含有英文字母、数字以及下划线和点符号。
**适配指导**<br>
修改对应的字段,使其满足以英文字母开头,并仅含有英文字母、数字以及下划线和点符号的要求。
# 媒体子系统ChangeLog
## cl.media.1 播放功能接口变更
删除音轨切换相关接口。
**变更影响**
删除音轨切换相关接口,相关接口不可使用。
**关键的接口/组件变更**
删除接口如下:
| 类名 | 删除接口声明 |
| -------------- | ------------------------------------------------------------ |
| Media.Core | MD_KEY_LANGUAGE |
| Media.AVPlayer | selectTrack(index: number): void |
| Media.AVPlayer | deselectTrack(index: number): void |
| Media.AVPlayer | getCurrentTrack(trackType: MediaType, callback: AsyncCallback\<number>): void |
| Media.AVPlayer | getCurrentTrack(trackType: MediaType): Promise\<number> |
| Media.AVPlayer | on(type: 'trackChange', callback: (index: number, isSelect: boolean) => void): void; |
| Media.AVPlayer | off(type: 'trackChange'): void |
# multimedia子系统ChangeLog
## cl.multimedia.1 getAudioEffectInfoArray接口入参变更,删除Content type入参
对于getAudioEffectInfoArray,适配4.0.9.2修改,删除Content type入参。
**变更影响**
对于已发布的js接口,可能影响三方应用的兼容性。
**关键的接口/组件变更**
修改前的接口原型:
```js
getAudioEffectInfoArray(content: ContentType, usage: StreamUsage, callback: AsyncCallback<AudioEffectInfoArray>): void;
getAudioEffectInfoArray(content: ContentType, usage: StreamUsage): Promise<AudioEffectInfoArray>;
```
修改后的接口原型:
```js
getAudioEffectInfoArray(usage: StreamUsage, callback: AsyncCallback<AudioEffectInfoArray>): void;
getAudioEffectInfoArray(usage: StreamUsage): Promise<AudioEffectInfoArray>;
```
**适配指导**
修改后用户调用该接口时,只需要传入StreamUsage入参,对于已经适配的用户,直接删去ContentType type入参即可。
\ No newline at end of file
# arkui子系统ChangeLog
## cl.arkui.1 Navigation menus属性显示变更
**变更影响**
menus的value属性值不做显示,如果需要显示,可以使用自定义Builder显示。
**示例:**
```ts
@Entry
@Component
struct Index {
build() {
Column() {
Navigation() {
Text('Navigation')
}.title("Navigation Menu")
.menus([
{icon: 'common/image/icon.png', value: 'menu1'},
{icon: 'common/image/icon.png', value: 'menu2'},
{icon: 'common/image/icon.png', value: 'menu3'}
])
}
}
}
```
API Version 9:menus的value属性会显示
![Navigation](figures/navigation_menu_api9.png)
API Version 10: menus中的value属性不显示
![Navigation](figures/navigation_menu_api10.png)
## cl.arkui.2 Navigation的titleMode属性Free模式默认显示位置变更
**变更影响**
1. Navigation组件自定义标题并titleMode设置为Full模式或Free模式显示位置相同
2. 使用自定义title结合Free模式的标签会出现标签位置向右偏移
**示例:**
```ts
@Entry
@Component
struct Index {
@Builder NavigationTile() {
Column() {
Text('title').fontColor('#182431').fontSize(30).lineHeight(41)
Text('subTitle').fontColor('#182431').fontSize(14).lineHeight(19).margin(top:2, bottom: 20)
}
}
build() {
Column() {
Navigation() {
Text('Navigation')
}.title(this.NavigationTitle)
.titleMode(NavigationTitleMode.Free)
.menus([
{icon: 'common/image/icon.png', value: 'menu1'}
])
}
}
}
```
API Version 9: Free模式显示位置
![Navigation](figures/navigation_title_mode_free_sdk9.png)
API Version 10: Free模式显示位置与Full模式显示位置相同
![Navigation](figures/navigation_title_mode_free_sdk10.png)
\ No newline at end of file
# formfwk子系统ChangeLog
## cl.formfwk.1 @ohos.app.form.formHost.d.ts部分接口移出,接口权限变动
1. @ohos.app.form.formHost.d.ts中涉及监听和获取卡片动态信息的接口移至@ohos.app.form.formObserver.d.ts;
2. 涉及接口需申请权限由ohos.permission.REQUIRE_FORM修改为ohos.permission.OBSERVE_FORM_RUNNING。
**变更影响**
对于已发布的js接口,可能影响三方应用的兼容性。
**关键的接口/组件变更**
| 接口 | 修改前所属d.ts | 修改后所属d.ts | 修改前所需权限 | 修改后所需权限 |
| -------- | -------- | -------- | -------- | -------- |
| on('formAdd') | @ohos.app.form.formHost.d.ts | @ohos.app.form.formObserver.d.ts | ohos.permission.REQUIRE_FORM | ohos.permission.OBSERVE_FORM_RUNNING | @ohos.app.form.formHost.d.ts | @ohos.app.form.formObserver.d.ts | ohos.permission.REQUIRE_FORM|ohos.permission.OBSERVE_FORM_RUNNING|
| off('formAdd')| @ohos.app.form.formHost.d.ts | @ohos.app.form.formObserver.d.ts | ohos.permission.REQUIRE_FORM|ohos.permission.OBSERVE_FORM_RUNNING | @ohos.app.form.formHost.d.ts | @ohos.app.form.formObserver.d.ts | ohos.permission.REQUIRE_FORM | ohos.permission.OBSERVE_FORM_RUNNING |
| on('formRemove') | @ohos.app.form.formHost.d.ts | @ohos.app.form.formObserver.d.ts | ohos.permission.REQUIRE_FORM | ohos.permission.OBSERVE_FORM_RUNNING | @ohos.app.form.formHost.d.ts | @ohos.app.form.formObserver.d.ts | ohos.permission.REQUIRE_FORM | ohos.permission.OBSERVE_FORM_RUNNING |
| off('formRemove') | @ohos.app.form.formHost.d.ts | @ohos.app.form.formObserver.d.ts | ohos.permission.REQUIRE_FORM | ohos.permission.OBSERVE_FORM_RUNNING | @ohos.app.form.formHost.d.ts | @ohos.app.form.formObserver.d.ts | ohos.permission.REQUIRE_FORM | ohos.permission.OBSERVE_FORM_RUNNING |
| on('notifyVisible') | @ohos.app.form.formHost.d.ts | @ohos.app.form.formObserver.d.ts | ohos.permission.REQUIRE_FORM | ohos.permission.OBSERVE_FORM_RUNNING | @ohos.app.form.formHost.d.ts | @ohos.app.form.formObserver.d.ts | ohos.permission.REQUIRE_FORM | ohos.permission.OBSERVE_FORM_RUNNING |
| off('notifyVisible') | @ohos.app.form.formHost.d.ts | @ohos.app.form.formObserver.d.ts | ohos.permission.REQUIRE_FORM | ohos.permission.OBSERVE_FORM_RUNNING | @ohos.app.form.formHost.d.ts | @ohos.app.form.formObserver.d.ts | ohos.permission.REQUIRE_FORM | ohos.permission.OBSERVE_FORM_RUNNING |
| on('notifyInvisible') | @ohos.app.form.formHost.d.ts | @ohos.app.form.formObserver.d.ts | ohos.permission.REQUIRE_FORM | ohos.permission.OBSERVE_FORM_RUNNING | @ohos.app.form.formHost.d.ts | @ohos.app.form.formObserver.d.ts | ohos.permission.REQUIRE_FORM | ohos.permission.OBSERVE_FORM_RUNNING |
| off('notifyInvisible') | @ohos.app.form.formHost.d.ts | @ohos.app.form.formObserver.d.ts | ohos.permission.REQUIRE_FORM | ohos.permission.OBSERVE_FORM_RUNNING | @ohos.app.form.formHost.d.ts | @ohos.app.form.formObserver.d.ts | ohos.permission.REQUIRE_FORM | ohos.permission.OBSERVE_FORM_RUNNING |
| getRunningFormInfos | @ohos.app.form.formHost.d.ts | @ohos.app.form.formObserver.d.ts | ohos.permission.REQUIRE_FORM | ohos.permission.OBSERVE_FORM_RUNNING | @ohos.app.form.formHost.d.ts | @ohos.app.form.formObserver.d.ts | ohos.permission.REQUIRE_FORM | ohos.permission.OBSERVE_FORM_RUNNING |
| getRunningFormInfosByFilter | @ohos.app.form.formHost.d.ts | @ohos.app.form.formObserver.d.ts | ohos.permission.REQUIRE_FORM | ohos.permission.OBSERVE_FORM_RUNNING | @ohos.app.form.formHost.d.ts | @ohos.app.form.formObserver.d.ts | ohos.permission.REQUIRE_FORM | ohos.permission.OBSERVE_FORM_RUNNING |
| getRunningFormInfoById | @ohos.app.form.formHost.d.ts | @ohos.app.form.formObserver.d.ts | ohos.permission.REQUIRE_FORM | ohos.permission.OBSERVE_FORM_RUNNING | @ohos.app.form.formHost.d.ts | @ohos.app.form.formObserver.d.ts | ohos.permission.REQUIRE_FORM | ohos.permission.OBSERVE_FORM_RUNNING |
**适配指导**
已使用相关接口开发的应用工程,需要对接口进行适配。从OpenHarmony 4.0.9.5版本起,相关接口使用应导入@ohos.app.form.formObserver.d.ts,并申请ohos.permission.OBSERVE_FORM_RUNNING权限。
**示例:**
```js
import formObserver from @ohos.app.form.formObserver.d.ts;
try {
formObserver.getRunningFormInfos((error, data) => {
if (error) {
console.error(`error, code: ${error.code}, message: ${error.message}`);
} else {
console.log('formHost getRunningFormInfos, data: ${JSON.stringify(data)}');
}
}, 'com.example.ohos.formjsdemo');
} catch(error) {
console.error(`catch error, code: ${error.code}, message: ${error.message}`);
}
```
## cl.formfwk.2 事件订阅,取消订阅相关接口(on/off)参数顺序调整
事件订阅,取消订阅相关接口(on/off)中的callback调整为接口最后一个参数。
**变更影响**
对于已发布的js接口,可能影响三方应用的兼容性。
**关键的接口/组件变更**
修改前的接口原型:
```js
function on(type: 'formAdd', observerCallback: Callback<formInfo.RunningFormInfo>, bundleName?: string): void;
function off(type: 'formAdd', observerCallback?: Callback<formInfo.RunningFormInfo>, bundleName?: string): void;
function on(type: 'formRemove', observerCallback: Callback<formInfo.RunningFormInfo>, bundleName?: string): void;
function off(type: 'formRemove', observerCallback?: Callback<formInfo.RunningFormInfo>, bundleName?: string): void;
function on(
type: 'notifyVisible',
observerCallback: Callback<Array<formInfo.RunningFormInfo>>,
hostBundleName?: string
): void;
function off(
type: 'notifyVisible',
observerCallback?: Callback<Array<formInfo.RunningFormInfo>>,
hostBundleName?: string
): void;
function on(
type: 'notifyInvisible',
observerCallback: Callback<Array<formInfo.RunningFormInfo>>,
hostBundleName?: string
): void;
function off(
type: 'notifyInvisible',
observerCallback?: Callback<Array<formInfo.RunningFormInfo>>,
hostBundleName?: string
): void;
```
修改后的接口原型:
```js
function on(type: 'formAdd', observerCallback: Callback<formInfo.RunningFormInfo>): void;
function on(type: 'formAdd', hostBundleName: string, observerCallback: Callback<formInfo.RunningFormInfo>): void;
function off(type: 'formAdd', hostBundleName?: string, observerCallback?: Callback<formInfo.RunningFormInfo>): void;
function on(type: 'formRemove', observerCallback: Callback<formInfo.RunningFormInfo>): void;
function on(type: 'formRemove', hostBundleName: string, observerCallback: Callback<formInfo.RunningFormInfo>): void;
function off(type: 'formRemove', hostBundleName?: string, observerCallback?: Callback<formInfo.RunningFormInfo>): void;
function on(type: 'notifyVisible', observerCallback: Callback<Array<formInfo.RunningFormInfo>>): void;
function on(
type: 'notifyVisible',
hostBundleName: string,
observerCallback: Callback<Array<formInfo.RunningFormInfo>>
): void;
function off(
type: 'notifyVisible',
hostBundleName?: string,
observerCallback?: Callback<Array<formInfo.RunningFormInfo>>
): void;
function on(type: 'notifyInvisible', observerCallback: Callback<Array<formInfo.RunningFormInfo>>): void;
function on(
type: 'notifyInvisible',
hostBundleName: string,
observerCallback: Callback<Array<formInfo.RunningFormInfo>>,
): void;
function off(
type: 'notifyInvisible',
hostBundleName?: string,
observerCallback?: Callback<Array<formInfo.RunningFormInfo>>
): void;
```
**适配指导**
已使用相关接口开发的应用工程,需要对接口进行适配。从OpenHarmony 4.0.9.5版本起,相关接口使用应注意入参顺序的调整,将callback作为最后一个参数进行接口调用。
**示例:**
```js
import formObserver from @ohos.app.form.formObserver.d.ts;
let bundleName = 'ohos.samples.FormApplication';
let callback = function(data) {
console.log('a new form added, data: ${JSON.stringify(data)');
}
formHost.on('formAdd', callback);
formHost.on('formAdd', bundleName, callback);
```
\ No newline at end of file
# Readme
- [元能力](changelogs-ability.md)
- [帐号](changelogs-account_os_account.md)
- [ArkUI](changelogs-arkui.md)
- [多媒体-相机](changelogs-camera.md)
- [设备管理](changelogs-device-manager.md)
- [USB](changelogs-device-usb.md)
- [分布式调度](changelogs-dmsfwk.md)
- [分布式软总线](changelogs-dsoftbus.md)
- [定制管理](changelogs-enterprise_device_management.md)
- [文件管理](changelogs-filemanagement.md)
- [位置服务](changelogs-geolocation.md)
- [全球化](changelogs-global.md)
- [输入法框架](changelogs-inputmethod-framworks.md)
- [多媒体](changelogs-multimedia.md)
- [多模输入](changelogs-multimodalinput.md)
- [事件通知](changelogs-notification.md)
- [电源管理](changelogs-power.md)
- [上传下载](changelogs-request.md)
- [资源管理](changelogs-resource-manager.md)
- [资源调度](changelogs-resourceschedule.md)
- [电话服务](changelogs-telephony.md)
- [测试](changelogs-testfwk_arkxtest.md)
- [主题](changelogs-theme.md)
- [用户IAM](changelogs-useriam.md)
- [元能力-WantAgent](changelogs-wantAgent.md)
- [Web](changelogs-web.md)
- [基础通信-WIFI](changelogs-wifi.md)
# 帐号子系统changeLog # 帐号子系统changeLog
## cl.account_os_account.1 变更错误码定义及其返回方式 ## cl.account_os_account.1 变更错误码定义及其返回方式
针对帐号子系统API存在错误码定义不统一和抛出方式不符合OpenHarmony错误码规范的问题,从API9开始作以下变更: 针对帐号子系统API存在错误码定义不统一和抛出方式不符合OpenHarmony错误码规范的问题,从API9开始作以下变更:
- 新增统一的错误码定义: - 新增统一的错误码定义:
- [帐号公共错误码](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/errorcodes/errorcode-account.md) [帐号公共错误码](../../../application-dev/reference/errorcodes/errorcode-account.md)
- [应用帐号错误码](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/errorcodes/errorcode-account.md)
- 按以下方式返回错误码:
- 按以下方式返回错误码: - 异步接口:错误信息通过AsyncCallback或Promise的error对象返回。其中,参数类型和数量错误信息,通过抛出异常的方式返回。
- 异步接口:错误信息通过AsyncCallback或Promise的error对象返回。其中,参数类型和数量错误信息,通过抛出异常的方式返回。 - 同步接口:错误信息通过抛出异常的方式返回。
- 同步接口:错误信息通过抛出异常的方式返回。
**变更影响**
**变更影响**
基于此前版本开发的应用,需适配变更后的新错误码和错误信息返回方式,否则会影响原有业务逻辑。
基于此前版本开发的应用,需适配变更后的新错误码和错误信息返回方式,否则会影响原有业务逻辑。
**关键接口/组件变更**
**关键接口/组件变更**
以下接口涉及新错误码和错误信息返回方式变更:
以下接口涉及新错误码和错误信息返回方式变更: - class AccountManager
- class AccountManager - activateOsAccount(localId: number, callback: AsyncCallback&lt;void&gt;): void;
- activateOsAccount(localId: number, callback: AsyncCallback&lt;void&gt;): void; - removeOsAccount(localId: number, callback: AsyncCallback&lt;void&gt;): void;
- removeOsAccount(localId: number, callback: AsyncCallback&lt;void&gt;): void; - setOsAccountConstraints(localId: number, constraints: Array&lt;string&gt;, enable: boolean, callback: AsyncCallback&lt;void&gt;): void;
- setOsAccountConstraints(localId: number, constraints: Array&lt;string&gt;, enable: boolean, callback: AsyncCallback&lt;void&gt;): void; - setOsAccountName(localId: number, localName: string, callback: AsyncCallback&lt;void&gt;): void;
- setOsAccountName(localId: number, localName: string, callback: AsyncCallback&lt;void&gt;): void; - queryMaxOsAccountNumber(callback: AsyncCallback&lt;number&gt;): void;
- queryMaxOsAccountNumber(callback: AsyncCallback&lt;number&gt;): void; - queryAllCreatedOsAccounts(callback: AsyncCallback&lt;Array&lt;OsAccountInfo&gt;&gt;): void;
- queryAllCreatedOsAccounts(callback: AsyncCallback&lt;Array&lt;OsAccountInfo&gt;&gt;): void; - createOsAccount(localName: string, type: OsAccountType, callback: AsyncCallback&lt;OsAccountInfo&gt;): void;
- createOsAccount(localName: string, type: OsAccountType, callback: AsyncCallback&lt;OsAccountInfo&gt;): void; - createOsAccountForDomain(type: OsAccountType, domainInfo: DomainAccountInfo, callback: AsyncCallback&lt;OsAccountInfo&gt;): void;
- createOsAccountForDomain(type: OsAccountType, domainInfo: DomainAccountInfo, callback: AsyncCallback&lt;OsAccountInfo&gt;): void; - queryOsAccountById(localId: number, callback: AsyncCallback&lt;OsAccountInfo&gt;): void;
- queryOsAccountById(localId: number, callback: AsyncCallback&lt;OsAccountInfo&gt;): void; - getOsAccountProfilePhoto(localId: number, callback: AsyncCallback&lt;string&gt;): void;
- getOsAccountProfilePhoto(localId: number, callback: AsyncCallback&lt;string&gt;): void; - setOsAccountProfilePhoto(localId: number, photo: string, callback: AsyncCallback&lt;void&gt;): void;
- setOsAccountProfilePhoto(localId: number, photo: string, callback: AsyncCallback&lt;void&gt;): void; - on(type: 'activate' | 'activating', name: string, callback: Callback&lt;number&gt;): void;
- on(type: 'activate' | 'activating', name: string, callback: Callback&lt;number&gt;): void; - off(type: 'activate' | 'activating', name: string, callback?: Callback&lt;number&gt;): void;
- off(type: 'activate' | 'activating', name: string, callback?: Callback&lt;number&gt;): void; - isMainOsAccount(callback: AsyncCallback&lt;boolean&gt;): void;
- isMainOsAccount(callback: AsyncCallback&lt;boolean&gt;): void; - queryOsAccountConstraintSourceTypes(localId: number, constraint: string, callback: AsyncCallback&lt;Array&lt;ConstraintSourceTypeInfo&gt;&gt;): void;
- queryOsAccountConstraintSourceTypes(localId: number, constraint: string, callback: AsyncCallback&lt;Array&lt;ConstraintSourceTypeInfo&gt;&gt;): void; - class UserAuth
- class UserAuth - constructor();
- constructor(); - getVersion(): number;
- getVersion(): number; - getAvailableStatus(authType: AuthType, authTrustLevel: AuthTrustLevel): number;
- getAvailableStatus(authType: AuthType, authTrustLevel: AuthTrustLevel): number; - getProperty(request: GetPropertyRequest, callback: AsyncCallback&lt;ExecutorProperty&gt;): void;
- getProperty(request: GetPropertyRequest, callback: AsyncCallback&lt;ExecutorProperty&gt;): void; - setProperty(request: SetPropertyRequest, callback: AsyncCallback&lt;number&gt;): void;
- setProperty(request: SetPropertyRequest, callback: AsyncCallback&lt;number&gt;): void; - auth(challenge: Uint8Array, authType: AuthType, authTrustLevel: AuthTrustLevel, callback: IUserAuthCallback): Uint8Array;
- auth(challenge: Uint8Array, authType: AuthType, authTrustLevel: AuthTrustLevel, callback: IUserAuthCallback): Uint8Array; - authUser(userId: number, challenge: Uint8Array, authType: AuthType, authTrustLevel: AuthTrustLevel, callback: IUserAuthCallback): Uint8Array;
- authUser(userId: number, challenge: Uint8Array, authType: AuthType, authTrustLevel: AuthTrustLevel, callback: IUserAuthCallback): Uint8Array; - cancelAuth(contextID: Uint8Array): number;
- cancelAuth(contextID: Uint8Array): number; - class PINAuth
- class PINAuth - constructor();
- constructor(); - registerInputer(inputer: IInputer): boolean;
- registerInputer(inputer: IInputer): boolean; - unregisterInputer(authType: AuthType): void;
- unregisterInputer(authType: AuthType): void; - class UserIdentityManager
- class UserIdentityManager - constructor();
- constructor(); - openSession(callback: AsyncCallback&lt;Uint8Array&gt;): void;
- openSession(callback: AsyncCallback&lt;Uint8Array&gt;): void; - addCredential(credentialInfo: CredentialInfo, callback: IIdmCallback): void;
- addCredential(credentialInfo: CredentialInfo, callback: IIdmCallback): void; - updateCredential(credentialInfo: CredentialInfo, callback: IIdmCallback): void;
- updateCredential(credentialInfo: CredentialInfo, callback: IIdmCallback): void; - closeSession(): void;
- closeSession(): void; - cancel(challenge: Uint8Array): number;
- cancel(challenge: Uint8Array): number; - delUser(token: Uint8Array, callback: IIdmCallback): void;
- delUser(token: Uint8Array, callback: IIdmCallback): void; - delCred(credentialId: Uint8Array, token: Uint8Array, callback: IIdmCallback): void;
- delCred(credentialId: Uint8Array, token: Uint8Array, callback: IIdmCallback): void; - getAuthInfo(callback: AsyncCallback&lt;Array&lt;EnrolledCredInfo&gt;&gt;): void;
- getAuthInfo(callback: AsyncCallback&lt;Array&lt;EnrolledCredInfo&gt;&gt;): void; - interface IInputData
- interface IInputData - onSetData: (authSubType: AuthSubType, data: Uint8Array) =&gt; void;
- onSetData: (authSubType: AuthSubType, data: Uint8Array) =&gt; void;
**适配指导**
**适配指导**
异步接口的错误信息处理逻辑以activateOsAccount为例,示例代码如下:
异步接口的错误信息处理逻辑以activateOsAccount为例,示例代码如下:
```ts
```ts import account_osAccount from "@ohos.account.osAccount"
import account_osAccount from "@ohos.account.osAccount" let accountMgr = account_osAccount.getAccountManager()
let accountMgr = account_osAccount.getAccountManager() let callbackFunc = (err) => {
let callbackFunc = (err) => { if (err != null) { // handle the bussiness error
if (err != null) { // handle the bussiness error console.log("account_osAccount failed, error: " + JSON.stringify(err));
console.log("account_osAccount failed, error: " + JSON.stringify(err)); } else {
} else { console.log("account_osAccount successfully");
console.log("account_osAccount successfully"); }
} }
} try {
try { accountMgr.activateOsAccount("100", callbackFunc);
accountMgr.activateOsAccount("100", callbackFunc); } catch (err) { // handle the parameter type error
} catch (err) { // handle the parameter type error console.log("account_osAccount failed for incorrect parameter type, error: " + JSON.stringify(err));
console.log("account_osAccount failed for incorrect parameter type, error: " + JSON.stringify(err)); }
} try {
try { accountMgr.activateOsAccount();
accountMgr.activateOsAccount(); } catch (err) { // handle the parameter number error
} catch (err) { // handle the parameter number error console.log("account_osAccount failed for incorrect parameter number, error: " + JSON.stringify(err));
console.log("account_osAccount failed for incorrect parameter number, error: " + JSON.stringify(err)); }
} ```
```
同步接口的错误信息处理以registerInputer为例,示例代码如下:
同步接口的错误信息处理以registerInputer为例,示例代码如下:
```ts
```ts import account_osAccount from "@ohos.account.osAccount"
import account_osAccount from "@ohos.account.osAccount" let pinAuth = new account_osAccount.PINAuth()
let pinAuth = new account_osAccount.PINAuth() try {
try { pinAuth.registerInputer({})
pinAuth.registerInputer({}) } catch (err) { // handle the parameter type error
} catch (err) { // handle the parameter type error console.log("account_osAccount failed for incorrect parameter type, error: " + JSON.stringify(err));
console.log("account_osAccount failed for incorrect parameter type, error: " + JSON.stringify(err)); }
} try {
try { pinAuth.registerInputer()
pinAuth.registerInputer() } catch (err) { // handle the parameter number error
} catch (err) { // handle the parameter number error console.log("account_osAccount failed for incorrect parameter number, error: " + JSON.stringify(err));
console.log("account_osAccount failed for incorrect parameter number, error: " + JSON.stringify(err)); }
} ```
```
# 帐号子系统ChangeLog
## cl.account_os_account.2 帐号SystemAPI错误信息返回方式变更
已发布的部分帐号SystemAPI使用业务逻辑返回值表示错误信息,不符合OpenHarmony接口错误码规范。从API9开始作以下变更:
异步接口:通过AsyncCallback或Promise的error对象返回错误信息。
同步接口:通过抛出异常的方式返回错误信息。
**变更影响**
基于此前版本开发的应用,需适配变更接口的错误信息返回方式,否则会影响原有业务逻辑。
**关键接口/组件变更**
变更前:
- class UserAuth
- setProperty(request: SetPropertyRequest, callback: AsyncCallback&lt;number&gt;): void;
- setProperty(request: SetPropertyRequest): Promise&lt;number&gt;;
- cancelAuth(contextID: Uint8Array): number;
- class PINAuth
- registerInputer(inputer: Inputer): boolean;
- UserIdentityManager
- cancel(challenge: Uint8Array): number;
变更后:
- class UserAuth
- setProperty(request: SetPropertyRequest, callback: AsyncCallback&lt;void&gt;): void;
- setProperty(request: SetPropertyRequest): Promise&lt;void&gt;;
- cancelAuth(contextID: Uint8Array): void;
- class PINAuth
- registerInputer(inputer: Inputer): void;
- UserIdentityManager
- cancel(challenge: Uint8Array): void;
**适配指导**
异步接口以setProperty为例,示例代码如下:
```
import account_osAccount from "@ohos.account.osAccount"
userAuth.setProperty({
authType: account_osAccount.AuthType.PIN,
key: account_osAccount.SetPropertyType.INIT_ALGORITHM,
setInfo: new Uint8Array([0])
}, (err) => {
if (err) {
console.log("setProperty failed, error: " + JSON.stringify(err));
} else {
console.log("setProperty successfully");
}
});
userAuth.setProperty({
authType: account_osAccount.AuthType.PIN,
key: account_osAccount.SetPropertyType.INIT_ALGORITHM,
setInfo: new Uint8Array([0])
}).catch((err) => {
if (err) {
console.log("setProperty failed, error: " + JSON.stringify(err));
} else {
console.log("setProperty successfully");
}
});
```
同步接口以registerInputer为例,示例代码如下:
```
import account_osAccount from "@ohos.account.osAccount"
let pinAuth = new account_osAccount.PINAuth()
let inputer = {
onGetData: (authType, passwordRecipient) => {
let password = new Uint8Array([0]);
passwordRecipient.onSetData(authType, password);
}
}
try {
pinAuth.registerInputer(inputer);
} catch (err) {
console.log("registerInputer failed, error: " + JSON.stringify(err));
}
```
## cl.account_os_account.3 应用帐号鉴权服务ACTION定义变更
**变更影响**
基于此前版本开发的应用,需适配修改应用配置文件(FA模型为config.json或Stage模型为module.json5)中的ACTION才能正常对外提供应用鉴权服务。
**关键接口/组件变更**
涉及的常量:
@ohos.ability.wantConstant.ACTION_APP_ACCOUNT_AUTH
变更前:
ACTION_APP_ACCOUNT_AUTH = "account.appAccount.action.auth"
变更后:
ACTION_APP_ACCOUNT_AUTH = "ohos.appAccount.action.auth"
**适配指导**
提供应用帐号鉴权服务的三方应用,需要在相关ServiceAbility的配置文件(FA模型为config.json或Stage模型为module.json5)中适配变更后的应用帐号认证ACTION,示例如下:
```
"abilities": [
{
"name": "ServiceAbility",
"srcEnty": "./ets/ServiceAbility/ServiceAbility.ts",
...
"visible": true,
"skills": {
{
"actions": [
"ohos.appAccount.action.auth"
]
}
}
}]
}
```
...@@ -69,7 +69,7 @@ ArkUI子系统alertDialog, actionSheet, customDialog组件及prompt, promptActio ...@@ -69,7 +69,7 @@ ArkUI子系统alertDialog, actionSheet, customDialog组件及prompt, promptActio
## cl.arkui.3 自定义组件成员变量初始化的方式与约束校验场景补全 ## cl.arkui.3 自定义组件成员变量初始化的方式与约束校验场景补全
自定义组件成员变量初始化规则此版本修复了某些遗漏场景的校验。 自定义组件成员变量初始化规则请参考文档,此版本修复了某些遗漏场景的校验。
**变更影响** **变更影响**
...@@ -86,7 +86,7 @@ ArkUI子系统alertDialog, actionSheet, customDialog组件及prompt, promptActio ...@@ -86,7 +86,7 @@ ArkUI子系统alertDialog, actionSheet, customDialog组件及prompt, promptActio
## cl.arkui.4 自定义父子组件成员变量赋值约束校验场景补全 ## cl.arkui.4 自定义父子组件成员变量赋值约束校验场景补全
自定义父子组件成员变量赋值规则此版本修复了某些遗漏场景的校验。 自定义父子组件成员变量赋值规则请参考文档,此版本修复了某些遗漏场景的校验。
**变更影响** **变更影响**
......
# 媒体子系统JS API变更Changelog # 媒体子系统JS API变更Changelog
OpenHarmony3.2 Beta4版本相较于OpenHarmony3.2 Beta3版本,媒体子系统camera部件API变更如下
## camera接口变更 ## camera接口变更
基于以下原因新增部分功能接口以及废弃部分接口: 基于以下原因新增部分功能接口以及废弃部分接口:
1. 提升开发者使用相机接口的便利。 1. 提升开发者使用相机接口的便利。
......
# USB管理 changeLog # USB管理 changeLog
## cl.usb_manager.1 API错误信息返回方式变更 ## cl.usb_manager.1 API错误信息返回方式变更
USB管理接口使用业务逻辑返回值表示错误信息,不符合OpenHarmony接口错误码规范。从API9开始作出变更,选择通过抛出异常的方式返回错误信息。 USB管理接口使用业务逻辑返回值表示错误信息,不符合OpenHarmony接口错误码规范。从API9开始作出变更,选择通过抛出异常的方式返回错误信息。
**变更影响** **变更影响**
基于此前版本开发的应用,需适配接口的错误信息返回方式,否则会影响原有业务逻辑。 基于此前版本开发的应用,需适配接口的错误信息返回方式,否则会影响原有业务逻辑。
**关键接口/组件变更** **关键接口/组件变更**
USB模块名由@ohos.usb.d.ts 变更为 @ohos.usbV9.d.ts,模块内所有接口均增加错误码处理。 USB模块名由@ohos.usb.d.ts 变更为 @ohos.usbV9.d.ts,模块内所有接口均增加错误码处理。
**适配指导** **适配指导**
接口以getDevices为例,示例代码如下: 接口以getDevices为例,示例代码如下:
```ts ```ts
import usbV9 from '@ohos.usbV9' import usbV9 from '@ohos.usbV9'
try { try {
usbV9.getDevices(); // 如果给该接口传入不合适的参数,则会抛出异常 usbV9.getDevices(); // 如果给该接口传入不合适的参数,则会抛出异常
} catch (err) { } catch (err) {
console.error("getDevices errCode:" + err.code + ",errMessage:" + err.message); console.error("getDevices errCode:" + err.code + ",errMessage:" + err.message);
} }
``` ```
\ No newline at end of file
...@@ -99,4 +99,24 @@ continuationManager.off 设备取消选择事件 ...@@ -99,4 +99,24 @@ continuationManager.off 设备取消选择事件
} catch (err) { } catch (err) {
console.error('off failed, cause: ' + JSON.stringify(err)); console.error('off failed, cause: ' + JSON.stringify(err));
} }
``` ```
\ No newline at end of file
## cl.DistributedManagerService.2 continuationManager接口新增DATASYNC权限校验
此前版本continuationManager接口未对调用方进行校验,不符合OpenHarmony的API接口规范。
已做出以下变更:调用方使用continuationManager前需提前申请"ohos.permission.DISTRIBUTED_DATASYNC"权限。
**变更影响**
基于此前版本开发的应用,需提前申请"ohos.permission.DISTRIBUTED_DATASYNC"权限,否则会影响原有业务逻辑。
**关键的接口/组件变更**
涉及接口
- continuationManager.registerContinuation;
- continuationManager.on;
- continuationManager.off;
- continuationManager.unregisterContinuation;
- continuationManager.updateContinuationState;
- continuationManager.startContinuationDeviceManager;
\ No newline at end of file
# 软总线子系统Changelog # 软总线子系统Changelog
## IPC&RPC API支持异常处理方式和支持传入布尔值与数值选择同步或异步方式发送信息变更 ## IPC&RPC API支持异常处理方式和支持传入布尔值与数值选择同步或异步方式发送信息变更
1. 软总线IPC&RPC部分接口使用业务逻辑返回值表示错误信息,不符合OpenHarmony接口错误规范; 1. 软总线IPC&RPC部分接口使用业务逻辑返回值表示错误信息,不符合OpenHarmony接口错误规范;
2. 支持传入布尔值选择同步或异步方式发送信息。 2. 支持传入布尔值选择同步或异步方式发送信息。
#### 变更影响 #### 变更影响
此版本兼容之前的应用开发,不需要适配,后续可调用新增接口支持以下两个变更: 此版本兼容之前的应用开发,不需要适配,后续可调用新增接口支持以下两个变更:
1. 支持异常处理并返回错误码; 1. 支持异常处理并返回错误码;
2. 提供通过布尔值或通过0与非0数字选择同步或异步发消息。 2. 提供通过布尔值或通过0与非0数字选择同步或异步发消息。
#### 关键接口/组件变更 #### 关键接口/组件变更
为适配统一的API异常处理方式,对IPC&RPC相关接口进行废弃,并新增对应接口和方法。新增接口支持统一的错误码异常处理规范,功能上与原接口保持一致。 为适配统一的API异常处理方式,对IPC&RPC相关接口进行废弃,并新增对应接口和方法。新增接口支持统一的错误码异常处理规范,功能上与原接口保持一致。
| 类名 | 废弃接口 | 新增替换类名 | 新增替代接口 | | 类名 | 废弃接口 | 新增替换类名 | 新增替代接口 |
| ------------ | ------------ | ------------ | ------------ | | ------------ | ------------ | ------------ | ------------ |
| MessageParcel | static create(): MessageParcel | MessageSequence | static create(): MessageSequence | | MessageParcel | static create(): MessageParcel | MessageSequence | static create(): MessageSequence |
| MessageParcel | reclaim(): void | MessageSequence | reclaim(): void | | MessageParcel | reclaim(): void | MessageSequence | reclaim(): void |
| MessageParcel | writeRemoteObject(object: IRemoteObject): boolean| MessageSequence |writeRemoteObject(object: IRemoteObject): void| | MessageParcel | writeRemoteObject(object: IRemoteObject): boolean| MessageSequence |writeRemoteObject(object: IRemoteObject): void|
| MessageParcel | readRemoteObject(): IRemoteObject | MessageSequence | readRemoteObject(): IRemoteObject | | MessageParcel | readRemoteObject(): IRemoteObject | MessageSequence | readRemoteObject(): IRemoteObject |
| MessageParcel | writeInterfaceToken(token: string): boolean | MessageSequence | writeInterfaceToken(token: string): void | | MessageParcel | writeInterfaceToken(token: string): boolean | MessageSequence | writeInterfaceToken(token: string): void |
| MessageParcel | readInterfaceToken(): string | MessageSequence | readInterfaceToken(): string | | MessageParcel | readInterfaceToken(): string | MessageSequence | readInterfaceToken(): string |
| MessageParcel | getSize(): number | MessageSequence | getSize(): number | | MessageParcel | getSize(): number | MessageSequence | getSize(): number |
| MessageParcel | getCapacity(): number | MessageSequence | getCapacity(): number| | MessageParcel | getCapacity(): number | MessageSequence | getCapacity(): number|
| MessageParcel | setSize(size: number): boolean | MessageSequence | setCapacity(size: number): void | | MessageParcel | setSize(size: number): boolean | MessageSequence | setCapacity(size: number): void |
| MessageParcel | getReadableBytes(): number | MessageSequence | getReadableBytes(): number | | MessageParcel | getReadableBytes(): number | MessageSequence | getReadableBytes(): number |
| MessageParcel | getReadPosition(): number | MessageSequence | getReadPosition(): number | | MessageParcel | getReadPosition(): number | MessageSequence | getReadPosition(): number |
| MessageParcel | getWritePosition(): number | MessageSequence | getWritePosition(): number | | MessageParcel | getWritePosition(): number | MessageSequence | getWritePosition(): number |
| MessageParcel | rewindRead(pos: number): boolean | MessageSequence | rewindRead(pos: number): void | | MessageParcel | rewindRead(pos: number): boolean | MessageSequence | rewindRead(pos: number): void |
| MessageParcel | rewindWrite(pos: number): boolean | MessageSequence | rewindWrite(pos: number): void | | MessageParcel | rewindWrite(pos: number): boolean | MessageSequence | rewindWrite(pos: number): void |
| MessageParcel | writeNoException(): void | MessageSequence | writeNoException(): void | | MessageParcel | writeNoException(): void | MessageSequence | writeNoException(): void |
| MessageParcel | readException(): void | MessageSequence | readException(): void | | MessageParcel | readException(): void | MessageSequence | readException(): void |
| MessageParcel | writeByte(val: number): boolean | MessageSequence | writeByte(val: number): void | | MessageParcel | writeByte(val: number): boolean | MessageSequence | writeByte(val: number): void |
| MessageParcel | writeShort(val: number): boolean | MessageSequence | writeShort(val: number): void | | MessageParcel | writeShort(val: number): boolean | MessageSequence | writeShort(val: number): void |
| MessageParcel | writeInt(val: number): boolean | MessageSequence | writeInt(val: number): void | | MessageParcel | writeInt(val: number): boolean | MessageSequence | writeInt(val: number): void |
| MessageParcel | writeLong(val: number): boolean | MessageSequence | writeLong(val: number): void | | MessageParcel | writeLong(val: number): boolean | MessageSequence | writeLong(val: number): void |
| MessageParcel | writeFloat(val: number): boolean | MessageSequence | writeFloat(val: number): void | | MessageParcel | writeFloat(val: number): boolean | MessageSequence | writeFloat(val: number): void |
| MessageParcel | writeDouble(val: number): boolean | MessageSequence | writeDouble(val: number): void | | MessageParcel | writeDouble(val: number): boolean | MessageSequence | writeDouble(val: number): void |
| MessageParcel | writeBoolean(val: boolean): boolean | MessageSequence | writeBoolean(val: boolean): void | | MessageParcel | writeBoolean(val: boolean): boolean | MessageSequence | writeBoolean(val: boolean): void |
| MessageParcel | writeChar(val: number): boolean | MessageSequence | writeChar(val: number): void | | MessageParcel | writeChar(val: number): boolean | MessageSequence | writeChar(val: number): void |
| MessageParcel | writeString(val: string): boolean | MessageSequence | writeString(val: string): void | | MessageParcel | writeString(val: string): boolean | MessageSequence | writeString(val: string): void |
| MessageParcel | writeSequenceable(val: Sequenceable): boolean | MessageSequence | writeParcelable(val: Parcelable): void | | MessageParcel | writeSequenceable(val: Sequenceable): boolean | MessageSequence | writeParcelable(val: Parcelable): void |
| MessageParcel | writeByteArray(byteArray: number[]): boolean | MessageSequence | writeByteArray(byteArray: number[]): void | | MessageParcel | writeByteArray(byteArray: number[]): boolean | MessageSequence | writeByteArray(byteArray: number[]): void |
| MessageParcel | writeShortArray(shortArray: number[]): boolean | MessageSequence | writeShortArray(shortArray: number[]): void | | MessageParcel | writeShortArray(shortArray: number[]): boolean | MessageSequence | writeShortArray(shortArray: number[]): void |
| MessageParcel | writeIntArray(intArray: number[]): boolean | MessageSequence | writeIntArray(intArray: number[]): void | | MessageParcel | writeIntArray(intArray: number[]): boolean | MessageSequence | writeIntArray(intArray: number[]): void |
| MessageParcel | writeLongArray(longArray: number[]): boolean | MessageSequence | writeLongArray(longArray: number[]): void | | MessageParcel | writeLongArray(longArray: number[]): boolean | MessageSequence | writeLongArray(longArray: number[]): void |
| MessageParcel | writeFloatArray(floatArray: number[]): boolean | MessageSequence | writeFloatArray(floatArray: number[]): void | | MessageParcel | writeFloatArray(floatArray: number[]): boolean | MessageSequence | writeFloatArray(floatArray: number[]): void |
| MessageParcel | writeDoubleArray(doubleArray: number[]): boolean | MessageSequence | writeDoubleArray(doubleArray: number[]): void | | MessageParcel | writeDoubleArray(doubleArray: number[]): boolean | MessageSequence | writeDoubleArray(doubleArray: number[]): void |
| MessageParcel | writeBooleanArray(booleanArray: boolean[]): boolean | MessageSequence | writeBooleanArray(booleanArray: boolean[]): void | | MessageParcel | writeBooleanArray(booleanArray: boolean[]): boolean | MessageSequence | writeBooleanArray(booleanArray: boolean[]): void |
| MessageParcel | writeCharArray(charArray: number[]): boolean | MessageSequence | writeCharArray(charArray: number[]): void | | MessageParcel | writeCharArray(charArray: number[]): boolean | MessageSequence | writeCharArray(charArray: number[]): void |
| MessageParcel | writeStringArray(stringArray: string[]): boolean | MessageSequence | writeStringArray(stringArray: string[]): void | | MessageParcel | writeStringArray(stringArray: string[]): boolean | MessageSequence | writeStringArray(stringArray: string[]): void |
| MessageParcel | writeSequenceableArray(sequenceableArray: Sequenceable[]): boolean | MessageSequence | writeParcelableArray(sequenceableArray: Parcelable[]): void | | MessageParcel | writeSequenceableArray(sequenceableArray: Sequenceable[]): boolean | MessageSequence | writeParcelableArray(sequenceableArray: Parcelable[]): void |
| MessageParcel | writeRemoteObjectArray(objectArray: IRemoteObject[]): boolean | MessageSequence | writeRemoteObjectArray(objectArray: IRemoteObject[]): void | | MessageParcel | writeRemoteObjectArray(objectArray: IRemoteObject[]): boolean | MessageSequence | writeRemoteObjectArray(objectArray: IRemoteObject[]): void |
| MessageParcel | readByte(): number | MessageSequence | readByte(): number | | MessageParcel | readByte(): number | MessageSequence | readByte(): number |
| MessageParcel | readShort(): number | MessageSequence | readShort(): number | | MessageParcel | readShort(): number | MessageSequence | readShort(): number |
| MessageParcel | readLong(): number | MessageSequence | readLong(): number | | MessageParcel | readLong(): number | MessageSequence | readLong(): number |
| MessageParcel | readFloat(): number | MessageSequence | readFloat(): number | | MessageParcel | readFloat(): number | MessageSequence | readFloat(): number |
| MessageParcel | readDouble(): number | MessageSequence | readDouble(): number | | MessageParcel | readDouble(): number | MessageSequence | readDouble(): number |
| MessageParcel | readBoolean(): boolean | MessageSequence | readBoolean(): boolean | | MessageParcel | readBoolean(): boolean | MessageSequence | readBoolean(): boolean |
| MessageParcel | readChar(): number | MessageSequence | readChar(): number | | MessageParcel | readChar(): number | MessageSequence | readChar(): number |
| MessageParcel | readString(): string | MessageSequence | readString(): string | | MessageParcel | readString(): string | MessageSequence | readString(): string |
| MessageParcel | readSequenceable(dataIn: Sequenceable) : boolean | MessageSequence | readSequenceable(dataIn: Parcelable) : void | | MessageParcel | readSequenceable(dataIn: Sequenceable) : boolean | MessageSequence | readSequenceable(dataIn: Parcelable) : void |
| MessageParcel | readByteArray(dataIn: number[]) : void | MessageSequence | readByteArray(dataIn: number[]) : void | | MessageParcel | readByteArray(dataIn: number[]) : void | MessageSequence | readByteArray(dataIn: number[]) : void |
| MessageParcel | readByteArray(): number[] | MessageSequence | readByteArray(): number[] | | MessageParcel | readByteArray(): number[] | MessageSequence | readByteArray(): number[] |
| MessageParcel | readShortArray(dataIn: number[]) : void | MessageSequence | readShortArray(dataIn: number[]) : void | | MessageParcel | readShortArray(dataIn: number[]) : void | MessageSequence | readShortArray(dataIn: number[]) : void |
| MessageParcel | readShortArray(): number[] | MessageSequence | readShortArray(): number[] | | MessageParcel | readShortArray(): number[] | MessageSequence | readShortArray(): number[] |
| MessageParcel | readIntArray(dataIn: number[]) : void | MessageSequence | readIntArray(dataIn: number[]) : void | | MessageParcel | readIntArray(dataIn: number[]) : void | MessageSequence | readIntArray(dataIn: number[]) : void |
| MessageParcel | readIntArray() : number[] | MessageSequence | readIntArray() : number[] | | MessageParcel | readIntArray() : number[] | MessageSequence | readIntArray() : number[] |
| MessageParcel | readLongArray(dataIn: number[]) : void | MessageSequence | readLongArray(dataIn: number[]) : void | | MessageParcel | readLongArray(dataIn: number[]) : void | MessageSequence | readLongArray(dataIn: number[]) : void |
| MessageParcel | readLongArray(): number[] | MessageSequence | readLongArray(): number[] | | MessageParcel | readLongArray(): number[] | MessageSequence | readLongArray(): number[] |
| MessageParcel | readFloatArray(dataIn: number[]) : void | MessageSequence | readFloatArray(dataIn: number[]) : void | | MessageParcel | readFloatArray(dataIn: number[]) : void | MessageSequence | readFloatArray(dataIn: number[]) : void |
| MessageParcel | readFloatArray(): number[] | MessageSequence | readFloatArray(): number[] | | MessageParcel | readFloatArray(): number[] | MessageSequence | readFloatArray(): number[] |
| MessageParcel | readDoubleArray(dataIn: number[]) : void | MessageSequence | readDoubleArray(dataIn: number[]) : void | | MessageParcel | readDoubleArray(dataIn: number[]) : void | MessageSequence | readDoubleArray(dataIn: number[]) : void |
| MessageParcel | readDoubleArray(): number[] | MessageSequence | readDoubleArray(): number[] | | MessageParcel | readDoubleArray(): number[] | MessageSequence | readDoubleArray(): number[] |
| MessageParcel | readBooleanArray(dataIn: boolean[]) : void | MessageSequence | readBooleanArray(dataIn: boolean[]) : void | | MessageParcel | readBooleanArray(dataIn: boolean[]) : void | MessageSequence | readBooleanArray(dataIn: boolean[]) : void |
| MessageParcel | readBooleanArray(): boolean[] | MessageSequence | readBooleanArray(): boolean[] | | MessageParcel | readBooleanArray(): boolean[] | MessageSequence | readBooleanArray(): boolean[] |
| MessageParcel | readCharArray(dataIn: number[]) : void | MessageSequence | readCharArray(dataIn: number[]) : void | | MessageParcel | readCharArray(dataIn: number[]) : void | MessageSequence | readCharArray(dataIn: number[]) : void |
| MessageParcel | readCharArray(): number[] | MessageSequence | readCharArray(): number[] | | MessageParcel | readCharArray(): number[] | MessageSequence | readCharArray(): number[] |
| MessageParcel | readStringArray(dataIn: string[]) : void | MessageSequence | readStringArray(dataIn: string[]) : void | | MessageParcel | readStringArray(dataIn: string[]) : void | MessageSequence | readStringArray(dataIn: string[]) : void |
| MessageParcel | readStringArray(): string[] | MessageSequence | readStringArray(): string[] | | MessageParcel | readStringArray(): string[] | MessageSequence | readStringArray(): string[] |
| MessageParcel | readSequenceableArray(sequenceableArray: Sequenceable[]): void | MessageSequence | readSequenceableArray(sequenceableArray: Parcelable[]): void | | MessageParcel | readSequenceableArray(sequenceableArray: Sequenceable[]): void | MessageSequence | readSequenceableArray(sequenceableArray: Parcelable[]): void |
| MessageParcel | readRemoteObjectArray(objects: IRemoteObject[]): void | MessageSequence | readRemoteObjectArray(objects: IRemoteObject[]): void | | MessageParcel | readRemoteObjectArray(objects: IRemoteObject[]): void | MessageSequence | readRemoteObjectArray(objects: IRemoteObject[]): void |
| MessageParcel | readRemoteObjectArray(): IRemoteObject[] | MessageSequence | readRemoteObjectArray(): IRemoteObject[] | | MessageParcel | readRemoteObjectArray(): IRemoteObject[] | MessageSequence | readRemoteObjectArray(): IRemoteObject[] |
| MessageParcel | static closeFileDescriptor(fd: number): void | MessageSequence | static closeFileDescriptor(fd: number): void | | MessageParcel | static closeFileDescriptor(fd: number): void | MessageSequence | static closeFileDescriptor(fd: number): void |
| MessageParcel | static dupFileDescriptor(fd: number) :number | MessageSequence | static dupFileDescriptor(fd: number) :number | | MessageParcel | static dupFileDescriptor(fd: number) :number | MessageSequence | static dupFileDescriptor(fd: number) :number |
| MessageParcel | containFileDescriptors(): boolean | MessageSequence | containFileDescriptors(): boolean | | MessageParcel | containFileDescriptors(): boolean | MessageSequence | containFileDescriptors(): boolean |
| MessageParcel | writeFileDescriptor(fd: number): boolean | MessageSequence | writeFileDescriptor(fd: number): void | | MessageParcel | writeFileDescriptor(fd: number): boolean | MessageSequence | writeFileDescriptor(fd: number): void |
| MessageParcel | readFileDescriptor(): number | MessageSequence | readFileDescriptor(): number | | MessageParcel | readFileDescriptor(): number | MessageSequence | readFileDescriptor(): number |
| MessageParcel | writeAshmem(ashmem: Ashmem): boolean | MessageSequence | writeAshmem(ashmem: Ashmem): void | | MessageParcel | writeAshmem(ashmem: Ashmem): boolean | MessageSequence | writeAshmem(ashmem: Ashmem): void |
| MessageParcel | readAshmem(): Ashmem | MessageSequence | readAshmem(): Ashmem | | MessageParcel | readAshmem(): Ashmem | MessageSequence | readAshmem(): Ashmem |
| MessageParcel | writeRawData(rawData: number[], size: number): boolean | MessageSequence | writeRawData(rawData: number[], size: number): void | | MessageParcel | writeRawData(rawData: number[], size: number): boolean | MessageSequence | writeRawData(rawData: number[], size: number): void |
| MessageParcel | readRawData(size: number): number[] | MessageSequence | readRawData(size: number): number[] | | MessageParcel | readRawData(size: number): number[] | MessageSequence | readRawData(size: number): number[] |
| Sequenceable | marshalling(dataOut: MessageParcel): boolean | Parcelable | marshalling(dataOut: MessageSequence): boolean | | Sequenceable | marshalling(dataOut: MessageParcel): boolean | Parcelable | marshalling(dataOut: MessageSequence): boolean |
| Sequenceable | unmarshalling(dataIn: MessageParcel) : boolean | Parcelable | unmarshalling(dataIn: MessageSequence) : boolean | | Sequenceable | unmarshalling(dataIn: MessageParcel) : boolean | Parcelable | unmarshalling(dataIn: MessageSequence) : boolean |
| SendRequestResult | errCode: number | RequestResult | errCode: number | | SendRequestResult | errCode: number | RequestResult | errCode: number |
| SendRequestResult | code: number | RequestResult | code: number | | SendRequestResult | code: number | RequestResult | code: number |
| SendRequestResult | data: MessageParcel | RequestResult | data: MessageSequence | | SendRequestResult | data: MessageParcel | RequestResult | data: MessageSequence |
| SendRequestResult | reply: MessageParcel | RequestResult | reply: MessageSequence | | SendRequestResult | reply: MessageParcel | RequestResult | reply: MessageSequence |
| IRemoteObject | queryLocalInterface(descriptor: string): IRemoteBroker | NA | getLocalInterface(descriptor: string): IRemoteBroker | | IRemoteObject | queryLocalInterface(descriptor: string): IRemoteBroker | NA | getLocalInterface(descriptor: string): IRemoteBroker |
| IRemoteObject | getInterfaceDescriptor(): string | NA | getDescriptor(): string | | IRemoteObject | getInterfaceDescriptor(): string | NA | getDescriptor(): string |
| IRemoteObject | addDeathRecipient(recipient: DeathRecipient, flags: number): boolean | NA | registerDeathRecipient(recipient: DeathRecipient, flags: number): void | | IRemoteObject | addDeathRecipient(recipient: DeathRecipient, flags: number): boolean | NA | registerDeathRecipient(recipient: DeathRecipient, flags: number): void |
| IRemoteObject | removeDeathRecipient(recipient: DeathRecipient, flags: number): boolean | NA | unregisterDeathRecipient(recipient: DeathRecipient, flags: number): void | | IRemoteObject | removeDeathRecipient(recipient: DeathRecipient, flags: number): boolean | NA | unregisterDeathRecipient(recipient: DeathRecipient, flags: number): void |
| IRemoteObject | NA | NA | sendMessageRequest(code: number, data: MessageSequence, reply: MessageSequence, options: MessageOption): Promise<RequestResult> | | IRemoteObject | NA | NA | sendMessageRequest(code: number, data: MessageSequence, reply: MessageSequence, options: MessageOption): Promise<RequestResult> |
| IRemoteObject | sendRequest(code: number, data: MessageParcel, reply: MessageParcel, options: MessageOption, callback: AsyncCallback<SendRequestResult>): void | NA | sendMessageRequest(code: number, data: MessageSequence, reply: MessageSequence, options: MessageOption,callback: AsyncCallback<RequestResult>): void | | IRemoteObject | sendRequest(code: number, data: MessageParcel, reply: MessageParcel, options: MessageOption, callback: AsyncCallback<SendRequestResult>): void | NA | sendMessageRequest(code: number, data: MessageSequence, reply: MessageSequence, options: MessageOption,callback: AsyncCallback<RequestResult>): void |
| MessageOption | NA | NA | isAsync(): boolean | | MessageOption | NA | NA | isAsync(): boolean |
| MessageOption | NA | NA | setAsync(async: boolean): void | | MessageOption | NA | NA | setAsync(async: boolean): void |
| MessageOption | NA | NA | constructor(async?: boolean) | | MessageOption | NA | NA | constructor(async?: boolean) |
| RemoteObject | queryLocalInterface(descriptor: string): IRemoteBroker | NA | getLocalInterface(descriptor: string): IRemoteBroker | | RemoteObject | queryLocalInterface(descriptor: string): IRemoteBroker | NA | getLocalInterface(descriptor: string): IRemoteBroker |
| RemoteObject | attachLocalInterface(localInterface: IRemoteBroker, descriptor: string): void | NA | modifyLocalInterface(localInterface: IRemoteBroker, descriptor: string): void | | RemoteObject | attachLocalInterface(localInterface: IRemoteBroker, descriptor: string): void | NA | modifyLocalInterface(localInterface: IRemoteBroker, descriptor: string): void |
| RemoteObject | getInterfaceDescriptor(): string | NA | getDescriptor(): string | | RemoteObject | getInterfaceDescriptor(): string | NA | getDescriptor(): string |
| RemoteObject | onRemoteRequestEx(code : number, data : MessageParcel, reply: MessageParcel, options : MessageOption): boolean&nbsp;\|&nbsp;Promise<boolean> | NA | onRemoteMessageRequest(code: number, data: MessageSequence, reply: MessageSequence, options: MessageOption): boolean&nbsp;\|&nbsp;Promise<boolean> | | RemoteObject | onRemoteRequestEx(code : number, data : MessageParcel, reply: MessageParcel, options : MessageOption): boolean&nbsp;\|&nbsp;Promise<boolean> | NA | onRemoteMessageRequest(code: number, data: MessageSequence, reply: MessageSequence, options: MessageOption): boolean&nbsp;\|&nbsp;Promise<boolean> |
| RemoteObject | sendRequest(code: number, data: MessageParcel, reply: MessageParcel, options: MessageOption): Promise<SendRequestResult> | NA | sendMessageRequest(code: number, data: MessageSequence, reply: MessageSequence, options: MessageOption): Promise<RequestResult> | | RemoteObject | sendRequest(code: number, data: MessageParcel, reply: MessageParcel, options: MessageOption): Promise<SendRequestResult> | NA | sendMessageRequest(code: number, data: MessageSequence, reply: MessageSequence, options: MessageOption): Promise<RequestResult> |
| RemoteObject | sendRequest(code: number, data: MessageParcel, reply: MessageParcel, options: MessageOption, callback: AsyncCallback<SendRequestResult>): void | NA | sendMessageRequest(code: number, data: MessageSequence, reply: MessageSequence, options: MessageOption, callback: AsyncCallback<RequestResult>): void | | RemoteObject | sendRequest(code: number, data: MessageParcel, reply: MessageParcel, options: MessageOption, callback: AsyncCallback<SendRequestResult>): void | NA | sendMessageRequest(code: number, data: MessageSequence, reply: MessageSequence, options: MessageOption, callback: AsyncCallback<RequestResult>): void |
| RemoteProxy | queryLocalInterface(interface: string): IRemoteBroker | NA | getLocalInterface(descriptor: string): IRemoteBroker | | RemoteProxy | queryLocalInterface(interface: string): IRemoteBroker | NA | getLocalInterface(descriptor: string): IRemoteBroker |
| RemoteProxy | getInterfaceDescriptor(): string | NA | getDescriptor(): string | | RemoteProxy | getInterfaceDescriptor(): string | NA | getDescriptor(): string |
| RemoteProxy | addDeathRecipient(recipient: DeathRecipient, flags: number): boolean | NA | registerDeathRecipient(recipient: DeathRecipient, flags: number): void | | RemoteProxy | addDeathRecipient(recipient: DeathRecipient, flags: number): boolean | NA | registerDeathRecipient(recipient: DeathRecipient, flags: number): void |
| RemoteProxy | removeDeathRecipient(recipient: DeathRecipient, flags: number): boolean | NA | unregisterDeathRecipient(recipient: DeathRecipient, flags: number): void | | RemoteProxy | removeDeathRecipient(recipient: DeathRecipient, flags: number): boolean | NA | unregisterDeathRecipient(recipient: DeathRecipient, flags: number): void |
| RemoteProxy | NA | NA | sendMessageRequest(code: number, data: MessageSequence, reply: MessageSequence, options: MessageOption): Promise<RequestResult> | | RemoteProxy | NA | NA | sendMessageRequest(code: number, data: MessageSequence, reply: MessageSequence, options: MessageOption): Promise<RequestResult> |
| RemoteProxy | sendRequest(code: number, data: MessageParcel, reply: MessageParcel, options: MessageOption, callback: AsyncCallback<SendRequestResult>): void | NA | sendMessageRequest(code: number, data: MessageSequence, reply: MessageSequence, options: MessageOption, callback: AsyncCallback<RequestResult>): void | | RemoteProxy | sendRequest(code: number, data: MessageParcel, reply: MessageParcel, options: MessageOption, callback: AsyncCallback<SendRequestResult>): void | NA | sendMessageRequest(code: number, data: MessageSequence, reply: MessageSequence, options: MessageOption, callback: AsyncCallback<RequestResult>): void |
| IPCSkeleton | static flushCommands(object: IRemoteObject): number | NA | static flushCmdBuffer(object: IRemoteObject): void | | IPCSkeleton | static flushCommands(object: IRemoteObject): number | NA | static flushCmdBuffer(object: IRemoteObject): void |
| IPCSkeleton | static setCallingIdentity(identity: string): boolean | NA | static restoreCallingIdentity(identity: string): void | | IPCSkeleton | static setCallingIdentity(identity: string): boolean | NA | static restoreCallingIdentity(identity: string): void |
| Ashmem | static createAshmem(name: string, size: number): Ashmem | NA | static create(name: string, size: number): Ashmem | | Ashmem | static createAshmem(name: string, size: number): Ashmem | NA | static create(name: string, size: number): Ashmem |
| Ashmem | static createAshmemFromExisting(ashmem: Ashmem): Ashmem | NA | static create(ashmem: Ashmem): Ashmem | | Ashmem | static createAshmemFromExisting(ashmem: Ashmem): Ashmem | NA | static create(ashmem: Ashmem): Ashmem |
| Ashmem | mapAshmem(mapType: number): boolean | NA | mapTypedAshmem(mapType: number): void | | Ashmem | mapAshmem(mapType: number): boolean | NA | mapTypedAshmem(mapType: number): void |
| Ashmem | mapReadAndWriteAshmem(): boolean | NA | mapReadWriteAshmem(): void | | Ashmem | mapReadAndWriteAshmem(): boolean | NA | mapReadWriteAshmem(): void |
| Ashmem | mapReadOnlyAshmem(): boolean | NA | mapReadonlyAshmem(): void | | Ashmem | mapReadOnlyAshmem(): boolean | NA | mapReadonlyAshmem(): void |
| Ashmem | setProtection(protectionType: number): boolean | NA | setProtectionType(protectionType: number): void | | Ashmem | setProtection(protectionType: number): boolean | NA | setProtectionType(protectionType: number): void |
| Ashmem | writeToAshmem(buf: number[], size: number, offset: number): boolean | NA | writeAshmem(buf: number[], size: number, offset: number): void | | Ashmem | writeToAshmem(buf: number[], size: number, offset: number): boolean | NA | writeAshmem(buf: number[], size: number, offset: number): void |
| Ashmem | readFromAshmem(size: number, offset: number): number[] | NA | readAshmem(size: number, offset: number): number[] | | Ashmem | readFromAshmem(size: number, offset: number): number[] | NA | readAshmem(size: number, offset: number): number[] |
#### 适配指导 #### 适配指导
新增的接口以抛异常的方式返回错误码及对应的错误信息,以MessageParcel中的create接口为例,使用示例代码如下: 新增的接口以抛异常的方式返回错误码及对应的错误信息,以MessageParcel中的create接口为例,使用示例代码如下:
```js ```js
import rpc from '@ohos.rpc' import rpc from '@ohos.rpc'
try { try {
var data = rpc.MessageParcel.create(); var data = rpc.MessageParcel.create();
data.reclaim(); data.reclaim();
} catch (error) { } catch (error) {
console.info("create meassageParcel failed, errorCode = " + error.errCode); console.info("create meassageParcel failed, errorCode = " + error.errCode);
console.info("create meassageParcel failed, errorMessage = " + error.errorMessage); console.info("create meassageParcel failed, errorMessage = " + error.errorMessage);
} }
``` ```
更多接口的示例代码可参考[RPC通信API文档](../../../application-dev/reference/apis/js-apis-rpc.md) 更多接口的示例代码可参考[RPC通信API文档](../../../application-dev/reference/apis/js-apis-rpc.md)
\ No newline at end of file
# 定制子系统ChangeLog # 定制子系统ChangeLog
OpenHarmony 3.2.8.3 版本相较于OpenHarmony 3.2.8.1版本,定制子系统的API变更如下:
## cl.Customization.1 企业设备管理模块名称变更 ## cl.Customization.1 企业设备管理模块名称变更
从Opeharmonny 3.2.8.3版本开始,将"@ohos.enterpriseDeviceManager.d.ts"改为"@ohos.enterprise.adminManager.d.ts",开发者需要根据以下说明对应用进行适配。 从Opeharmonny 3.2.8.3版本开始,将"@ohos.enterpriseDeviceManager.d.ts"改为"@ohos.enterprise.adminManager.d.ts",开发者需要根据以下说明对应用进行适配。
......
# 上传下载子系统ChangeLog # 上传下载子系统ChangeLog
OpenHarmony 3.2.8.1版本相较于OpenHarmony 3.2.beta3版本,request子系统的API变更如下
## cl.request.1 错误码定义及API部分接口名称变更 ## cl.request.1 错误码定义及API部分接口名称变更
- 新增上传下载接口的[错误码](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/errorcodes/errorcode-request.md)处理。 - 新增上传下载接口的[错误码](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/errorcodes/errorcode-request.md)处理。
......
# 资源调度子系统ChangeLog # 资源调度子系统ChangeLog
## cl.resourceschedule.backgroundTaskManager ## cl.resourceschedule.backgroundTaskManager
对资源调度子系统backgroundTaskManager仓原有接口进行整改,原有API8及之前的接口全部废弃,原有API9接口删除,需要使用新的API9接口。新的API9接口符合错误码规范。 对资源调度子系统backgroundTaskManager仓原有接口进行整改,原有API8及之前的接口全部废弃,原有API9接口删除,需要使用新的API9接口。新的API9接口符合错误码规范。
**变更影响** **变更影响**
基于OpenHarmony3.2.8.2及之后的SDK版本开发的应用,需适配API9的模块和接口,以及的API异常处理返回方式,否则会影响原有业务逻辑。 基于OpenHarmony3.2.8.2及之后的SDK版本开发的应用,需适配API9的模块和接口,以及的API异常处理返回方式,否则会影响原有业务逻辑。
**关键接口/组件变更** **关键接口/组件变更**
以下方法、属性、枚举和常量均从API9变更。废弃@ohos.backgroundTaskManager.d.ts文件,新增@ohos.resourceschedule.backgroundTaskManager.d.ts文件,将相关接口变更至对应的文件。 以下方法、属性、枚举和常量均从API9变更。废弃@ohos.backgroundTaskManager.d.ts文件,新增@ohos.resourceschedule.backgroundTaskManager.d.ts文件,将相关接口变更至对应的文件。
| 类名 | 接口类型 | 接口声明 | 说明 | | 类名 | 接口类型 | 接口声明 | 说明 |
| -- | -- | -- | -- | | -- | -- | -- | -- |
| backgroundTaskManager | namespace | declare namespace backgroundTaskManager | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager | namespace | declare namespace backgroundTaskManager | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager | method | function resetAllEfficiencyResources(): void; | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager | method | function resetAllEfficiencyResources(): void; | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager | method | function applyEfficiencyResources(request: EfficiencyResourcesRequest): bool; | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts,修改为function applyEfficiencyResources(request: EfficiencyResourcesRequest): void; | | backgroundTaskManager | method | function applyEfficiencyResources(request: EfficiencyResourcesRequest): bool; | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts,修改为function applyEfficiencyResources(request: EfficiencyResourcesRequest): void; |
| backgroundTaskManager | method | function stopBackgroundRunning(context: Context): Promise<void>; | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager | method | function stopBackgroundRunning(context: Context): Promise<void>; | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager | method | function stopBackgroundRunning(context: Context, callback: AsyncCallback<void>): void; | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager | method | function stopBackgroundRunning(context: Context, callback: AsyncCallback<void>): void; | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager | method | function startBackgroundRunning(context: Context, bgMode: BackgroundMode, wantAgent: WantAgent): Promise<void>; | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager | method | function startBackgroundRunning(context: Context, bgMode: BackgroundMode, wantAgent: WantAgent): Promise<void>; | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager | method | function startBackgroundRunning(context: Context, bgMode: BackgroundMode, wantAgent: WantAgent, callback: AsyncCallback<void>): void; | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager | method | function startBackgroundRunning(context: Context, bgMode: BackgroundMode, wantAgent: WantAgent, callback: AsyncCallback<void>): void; | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager | method | function requestSuspendDelay(reason: string, callback: Callback<void>): DelaySuspendInfo; | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager | method | function requestSuspendDelay(reason: string, callback: Callback<void>): DelaySuspendInfo; | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager | method | function getRemainingDelayTime(requestId: number): Promise<number>; | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager | method | function getRemainingDelayTime(requestId: number): Promise<number>; | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager | method | function getRemainingDelayTime(requestId: number, callback: AsyncCallback<number>): void; | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager | method | function getRemainingDelayTime(requestId: number, callback: AsyncCallback<number>): void; | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager | method | function cancelSuspendDelay(requestId: number): void; | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager | method | function cancelSuspendDelay(requestId: number): void; | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.BackgroundMode | enum | export enum BackgroundMode | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.BackgroundMode | enum | export enum BackgroundMode | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.BackgroundMode | enum | DATA_TRANSFER = 1 | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.BackgroundMode | enum | DATA_TRANSFER = 1 | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.BackgroundMode | enum | AUDIO_PLAYBACK = 2 | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.BackgroundMode | enum | AUDIO_PLAYBACK = 2 | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.BackgroundMode | enum | AUDIO_RECORDING = 3 | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.BackgroundMode | enum | AUDIO_RECORDING = 3 | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.BackgroundMode | enum | LOCATION = 4 | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.BackgroundMode | enum | LOCATION = 4 | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.BackgroundMode | enum | BLUETOOTH_INTERACTION = 5 | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.BackgroundMode | enum | BLUETOOTH_INTERACTION = 5 | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.BackgroundMode | enum | MULTI_DEVICE_CONNECTION = 6 | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.BackgroundMode | enum | MULTI_DEVICE_CONNECTION = 6 | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.BackgroundMode | enum | WIFI_INTERACTION = 7 | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.BackgroundMode | enum | WIFI_INTERACTION = 7 | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.BackgroundMode | enum | VOIP = 8 | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.BackgroundMode | enum | VOIP = 8 | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.BackgroundMode | enum | TASK_KEEPING = 9 | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.BackgroundMode | enum | TASK_KEEPING = 9 | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.DelaySuspendInfo | interface | interface DelaySuspendInfo | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.DelaySuspendInfo | interface | interface DelaySuspendInfo | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.DelaySuspendInfo | field | requestId: number | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.DelaySuspendInfo | field | requestId: number | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.DelaySuspendInfo | field | actualDelayTime: number | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.DelaySuspendInfo | field | actualDelayTime: number | 接口从API9开始废弃,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.ResourceType | enum | export enum ResourceType | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.ResourceType | enum | export enum ResourceType | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.ResourceType | enum | CPU = 1 | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.ResourceType | enum | CPU = 1 | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.ResourceType | enum | COMMON_EVENT = 1 << 1 | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.ResourceType | enum | COMMON_EVENT = 1 << 1 | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.ResourceType | enum | TIMER = 1 << 2 | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.ResourceType | enum | TIMER = 1 << 2 | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.ResourceType | enum | WORK_SCHEDULER = 1 << 3 | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.ResourceType | enum | WORK_SCHEDULER = 1 << 3 | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.ResourceType | enum | BLUETOOTH = 1 << 4 | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.ResourceType | enum | BLUETOOTH = 1 << 4 | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.ResourceType | enum | GPS = 1 << 5 | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.ResourceType | enum | GPS = 1 << 5 | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.ResourceType | enum | AUDIO = 1 << 6 | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.ResourceType | enum | AUDIO = 1 << 6 | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.EfficiencyResourcesRequest | interface | export interface EfficiencyResourcesRequest | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.EfficiencyResourcesRequest | interface | export interface EfficiencyResourcesRequest | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.EfficiencyResourcesRequest | field | reason: string | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.EfficiencyResourcesRequest | field | reason: string | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.EfficiencyResourcesRequest | field | isProcess?: bool | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.EfficiencyResourcesRequest | field | isProcess?: bool | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.EfficiencyResourcesRequest | field | isPersist?: bool | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.EfficiencyResourcesRequest | field | isPersist?: bool | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.EfficiencyResourcesRequest | field | timeOut: number | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.EfficiencyResourcesRequest | field | timeOut: number | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.EfficiencyResourcesRequest | field | isApply: bool | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.EfficiencyResourcesRequest | field | isApply: bool | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
| backgroundTaskManager.EfficiencyResourcesRequest | field | resourceTypes: number | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts | | backgroundTaskManager.EfficiencyResourcesRequest | field | resourceTypes: number | 接口API9变更,移植到ohos.resourceschedule.backgroundTaskManager.d.ts |
**适配指导**<br> **适配指导**<br>
导入backgroundTaskManager模块。 导入backgroundTaskManager模块。
``` ```
import bundle form '@ohos.resourceschedule.backgroundTaskManager' import bundle form '@ohos.resourceschedule.backgroundTaskManager'
``` ```
此外还需要适配异常处理,具体参考[backgroundTaskManager接口文档](../../../application-dev/reference/apis/js-apis-resourceschedule-backgroundTaskManager.md) 此外还需要适配异常处理,具体参考[backgroundTaskManager接口文档](../../../application-dev/reference/apis/js-apis-resourceschedule-backgroundTaskManager.md)
## c2.resourceschedule.usageStatistics ## c2.resourceschedule.usageStatistics
对资源调度子系统deviceUsageStatistics仓原有接口进行整改,原有API8及之前的接口全部废弃,原有API9接口删除,需要使用新的API9接口。新的API9接口符合错误码规范。 对资源调度子系统deviceUsageStatistics仓原有接口进行整改,原有API8及之前的接口全部废弃,原有API9接口删除,需要使用新的API9接口。新的API9接口符合错误码规范。
**变更影响** **变更影响**
基于OpenHarmony3.2.8.2及之后的SDK版本开发的应用,需适配API9的模块和接口,以及的API异常处理返回方式,否则会影响原有业务逻辑。 基于OpenHarmony3.2.8.2及之后的SDK版本开发的应用,需适配API9的模块和接口,以及的API异常处理返回方式,否则会影响原有业务逻辑。
**关键接口/组件变更** **关键接口/组件变更**
以下方法、属性、枚举和常量均从API9变更,废弃@ohos.bundleState.d.ts文件,新增@ohos.resourceschedule.usageStatistics.d.ts文件,类名也将从bundleState变更为usageStatistics。 以下方法、属性、枚举和常量均从API9变更,废弃@ohos.bundleState.d.ts文件,新增@ohos.resourceschedule.usageStatistics.d.ts文件,类名也将从bundleState变更为usageStatistics。
| 类名 | 接口类型 | 方法/属性/枚举/常量 | 变更类型 | | 类名 | 接口类型 | 方法/属性/枚举/常量 | 变更类型 |
| ----------------------------------------- | --------- | ------------------------------------------------------------ | ------------------------------------------------------------ | | ----------------------------------------- | --------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
| bundleState | method | function isIdleState(bundleName: string, callback: AsyncCallback<boolean>): void; | 废弃,移动到usageStatistics.isIdleState | | bundleState | method | function isIdleState(bundleName: string, callback: AsyncCallback<boolean>): void; | 废弃,移动到usageStatistics.isIdleState |
| bundleState | method | function isIdleState(bundleName: string): Promise<boolean>; | 废弃,移动到usageStatistics.isIdleState | | bundleState | method | function isIdleState(bundleName: string): Promise<boolean>; | 废弃,移动到usageStatistics.isIdleState |
| bundleState | method | function queryAppUsagePriorityGroup(callback: AsyncCallback<number>): void; | 废弃,修改为function queryAppGroup(callback: AsyncCallback<number>): void; | | bundleState | method | function queryAppUsagePriorityGroup(callback: AsyncCallback<number>): void; | 废弃,修改为function queryAppGroup(callback: AsyncCallback<number>): void; |
| bundleState | method | function queryAppUsagePriorityGroup(): Promise<number>; | 废弃,修改为function queryAppGroup(): Promise<number>; | | bundleState | method | function queryAppUsagePriorityGroup(): Promise<number>; | 废弃,修改为function queryAppGroup(): Promise<number>; |
| bundleState | method | function queryBundleStateInfos(begin: number, end: number, callback: AsyncCallback<BundleActiveInfoResponse>): void; | 废弃,修改为function queryBundleStatsInfos(begin: number, end: number, callback: AsyncCallback<BundleStatsMap>): void; | | bundleState | method | function queryBundleStateInfos(begin: number, end: number, callback: AsyncCallback<BundleActiveInfoResponse>): void; | 废弃,修改为function queryBundleStatsInfos(begin: number, end: number, callback: AsyncCallback<BundleStatsMap>): void; |
| bundleState | method | function queryBundleStateInfos(begin: number, end: number): Promise<BundleActiveInfoResponse>; | 废弃, 修改为function queryBundleStatsInfos(begin: number, end: number): Promise<BundleStatsMap>; | | bundleState | method | function queryBundleStateInfos(begin: number, end: number): Promise<BundleActiveInfoResponse>; | 废弃, 修改为function queryBundleStatsInfos(begin: number, end: number): Promise<BundleStatsMap>; |
| bundleState | method | function queryBundleStateInfoByInterval(byInterval: IntervalType, begin: number, end: number): Promise<Array<BundleStateInfo>>; | 废弃,修改为function queryBundleStatsInfoByInterval(byInterval: IntervalType, begin: number, end: number): Promise<Array<BundleStatsInfo>>; | | bundleState | method | function queryBundleStateInfoByInterval(byInterval: IntervalType, begin: number, end: number): Promise<Array<BundleStateInfo>>; | 废弃,修改为function queryBundleStatsInfoByInterval(byInterval: IntervalType, begin: number, end: number): Promise<Array<BundleStatsInfo>>; |
| bundleState | method | function queryBundleStateInfoByInterval(byInterval: IntervalType, begin: number, end: number, callback: AsyncCallback<Array<BundleStateInfo>>): void; | 废弃,修改为function queryBundleStatsInfoByInterval(byInterval: IntervalType, begin: number, end: number, callback: AsyncCallback<Array<BundleStatsInfo>>): void; | | bundleState | method | function queryBundleStateInfoByInterval(byInterval: IntervalType, begin: number, end: number, callback: AsyncCallback<Array<BundleStateInfo>>): void; | 废弃,修改为function queryBundleStatsInfoByInterval(byInterval: IntervalType, begin: number, end: number, callback: AsyncCallback<Array<BundleStatsInfo>>): void; |
| bundleState | method | function queryBundleActiveStates(begin: number, end: number): Promise<Array<BundleActiveState>>; | 废弃,修改为function queryBundleEvents(begin: number, end: number): Promise<Array<BundleEvents>>; | | bundleState | method | function queryBundleActiveStates(begin: number, end: number): Promise<Array<BundleActiveState>>; | 废弃,修改为function queryBundleEvents(begin: number, end: number): Promise<Array<BundleEvents>>; |
| bundleState | method | function queryBundleActiveStates(begin: number, end: number, callback: AsyncCallback<Array<BundleActiveState>>): void; | 废弃,修改为function queryBundleEvents(begin: number, end: number, callback: AsyncCallback<Array<BundleEvents>>): void; | | bundleState | method | function queryBundleActiveStates(begin: number, end: number, callback: AsyncCallback<Array<BundleActiveState>>): void; | 废弃,修改为function queryBundleEvents(begin: number, end: number, callback: AsyncCallback<Array<BundleEvents>>): void; |
| bundleState | method | function queryCurrentBundleActiveStates(begin: number, end: number): Promise<Array<BundleActiveState>>; | 废弃,修改为function queryCurrentBundleEvents(begin: number, end: number): Promise<Array<BundleEvents>>; | | bundleState | method | function queryCurrentBundleActiveStates(begin: number, end: number): Promise<Array<BundleActiveState>>; | 废弃,修改为function queryCurrentBundleEvents(begin: number, end: number): Promise<Array<BundleEvents>>; |
| bundleState | method | function queryCurrentBundleActiveStates(begin: number, end: number, callback: AsyncCallback<Array<BundleActiveState>>): void; | 废弃,修改为function queryCurrentBundleEvents(begin: number, end: number, callback: AsyncCallback<Array<BundleEvents>>): void; | | bundleState | method | function queryCurrentBundleActiveStates(begin: number, end: number, callback: AsyncCallback<Array<BundleActiveState>>): void; | 废弃,修改为function queryCurrentBundleEvents(begin: number, end: number, callback: AsyncCallback<Array<BundleEvents>>): void; |
| bundleState | method | function getRecentlyUsedModules(maxNum?: number): Promise<Array<BundleActiveModuleInfo>>; | 废弃,修改为两个接口function QueryModuleUsageRecords(maxNum: number): Promise<Array<HapModuleInfo>>; function QueryModuleUsageRecords(): Promise<Array<HapModuleInfo>>; | | bundleState | method | function getRecentlyUsedModules(maxNum?: number): Promise<Array<BundleActiveModuleInfo>>; | 废弃,修改为两个接口function QueryModuleUsageRecords(maxNum: number): Promise<Array<HapModuleInfo>>; function QueryModuleUsageRecords(): Promise<Array<HapModuleInfo>>; |
| bundleState | method | function getRecentlyUsedModules(maxNum?: number, callback: AsyncCallback<Array<BundleActiveModuleInfo>>): void; | 废弃,修改为两个接口function QueryModuleUsageRecords(maxNum: number, callback: AsyncCallback<Array<HapModuleInfo>>): void; function QueryModuleUsageRecords(callback: AsyncCallback<Array<HapModuleInfo>>): void; | | bundleState | method | function getRecentlyUsedModules(maxNum?: number, callback: AsyncCallback<Array<BundleActiveModuleInfo>>): void; | 废弃,修改为两个接口function QueryModuleUsageRecords(maxNum: number, callback: AsyncCallback<Array<HapModuleInfo>>): void; function QueryModuleUsageRecords(callback: AsyncCallback<Array<HapModuleInfo>>): void; |
| bundleState | method | function queryAppUsagePriorityGroup(bundleName? : string): Promise<number>; | 废弃,修改为function queryAppGroup(bundleName: string): Promise<number>; | | bundleState | method | function queryAppUsagePriorityGroup(bundleName? : string): Promise<number>; | 废弃,修改为function queryAppGroup(bundleName: string): Promise<number>; |
| bundleState | method | function queryAppUsagePriorityGroup(bundleName? : string, callback: AsyncCallback<number>): void; | 废弃,修改为function queryAppGroup(bundleName: string, callback: AsyncCallback<number>): void; | | bundleState | method | function queryAppUsagePriorityGroup(bundleName? : string, callback: AsyncCallback<number>): void; | 废弃,修改为function queryAppGroup(bundleName: string, callback: AsyncCallback<number>): void; |
| bundleState | method | function setBundleGroup(bundleName: string, newGroup: GroupType, callback: AsyncCallback<void>): void; | 废弃,修改为function setAppGroup(bundleName: string, newGroup: GroupType, callback: AsyncCallback<void>): void; | | bundleState | method | function setBundleGroup(bundleName: string, newGroup: GroupType, callback: AsyncCallback<void>): void; | 废弃,修改为function setAppGroup(bundleName: string, newGroup: GroupType, callback: AsyncCallback<void>): void; |
| bundleState | method | function setBundleGroup(bundleName: string, newGroup: GroupType): Promise<void>; | 废弃,修改为function setAppGroup(bundleName: string, newGroup: GroupType): Promise<void>; | | bundleState | method | function setBundleGroup(bundleName: string, newGroup: GroupType): Promise<void>; | 废弃,修改为function setAppGroup(bundleName: string, newGroup: GroupType): Promise<void>; |
| bundleState | method | function registerGroupCallBack(callback: Callback<BundleActiveGroupCallbackInfo>, callback: AsyncCallback<void>): void; | 废弃,修改为function registerAppGroupCallBack(callback: Callback<AppGroupCallbackInfo>, callback: AsyncCallback<void>): void; | | bundleState | method | function registerGroupCallBack(callback: Callback<BundleActiveGroupCallbackInfo>, callback: AsyncCallback<void>): void; | 废弃,修改为function registerAppGroupCallBack(callback: Callback<AppGroupCallbackInfo>, callback: AsyncCallback<void>): void; |
| bundleState | method | function registerGroupCallBack(callback: Callback<BundleActiveGroupCallbackInfo>): Promise<void>; | 废弃,修改为function registerAppGroupCallBack(callback: Callback<AppGroupCallbackInfo>): Promise<void>; | | bundleState | method | function registerGroupCallBack(callback: Callback<BundleActiveGroupCallbackInfo>): Promise<void>; | 废弃,修改为function registerAppGroupCallBack(callback: Callback<AppGroupCallbackInfo>): Promise<void>; |
| bundleState | method | function unRegisterGroupCallBack(callback: AsyncCallback<void>): void; | 变更,修改为function unregisterAppGroupCallBack(): Promise<void>; | | bundleState | method | function unRegisterGroupCallBack(callback: AsyncCallback<void>): void; | 变更,修改为function unregisterAppGroupCallBack(): Promise<void>; |
| bundleState | method | function unRegisterGroupCallBack(): Promise<void>; | 变更,修改为function unregisterAppGroupCallBack(): Promise<void>; | | bundleState | method | function unRegisterGroupCallBack(): Promise<void>; | 变更,修改为function unregisterAppGroupCallBack(): Promise<void>; |
| bundleState | method | function queryBundleActiveEventStates(begin: number, end: number, callback: AsyncCallback<Array<BundleActiveEventState>>): void; | 变更,修改为function queryDeviceEventStats(begin: number, end: number, callback: AsyncCallback<Array<DeviceEventStats>>): void; | | bundleState | method | function queryBundleActiveEventStates(begin: number, end: number, callback: AsyncCallback<Array<BundleActiveEventState>>): void; | 变更,修改为function queryDeviceEventStats(begin: number, end: number, callback: AsyncCallback<Array<DeviceEventStats>>): void; |
| bundleState | method | function queryBundleActiveEventStates(begin: number, end: number): Promise<Array<BundleActiveEventState>>; | 接口从API9变更,修改为function queryDeviceEventStats(begin: number, end: number): Promise<Array<DeviceEventStats>>; | | bundleState | method | function queryBundleActiveEventStates(begin: number, end: number): Promise<Array<BundleActiveEventState>>; | 接口从API9变更,修改为function queryDeviceEventStats(begin: number, end: number): Promise<Array<DeviceEventStats>>; |
| bundleState | method | function queryAppNotificationNumber(begin: number, end: number, callback: AsyncCallback<Array<BundleActiveEventState>>): void; | 接口从API9变更,修改为function queryNotificationEventStats(begin: number, end: number, callback: AsyncCallback<Array<NotificationEventStats >>): void; | | bundleState | method | function queryAppNotificationNumber(begin: number, end: number, callback: AsyncCallback<Array<BundleActiveEventState>>): void; | 接口从API9变更,修改为function queryNotificationEventStats(begin: number, end: number, callback: AsyncCallback<Array<NotificationEventStats >>): void; |
| bundleState | method | function queryAppNotificationNumber(begin: number, end: number): Promise<Array<BundleActiveEventState>>; | 接口从API9变更,修改为function queryNotificationEventStats(begin: number, end: number): Promise<Array<NotificationEventStats >>; | | bundleState | method | function queryAppNotificationNumber(begin: number, end: number): Promise<Array<BundleActiveEventState>>; | 接口从API9变更,修改为function queryNotificationEventStats(begin: number, end: number): Promise<Array<NotificationEventStats >>; |
| bundleState.BundleActiveGroupCallbackInfo | interface | interface BundleActiveGroupCallbackInfo | 变更,修改为usageStatistics.AppGroupCallbackInfo | | bundleState.BundleActiveGroupCallbackInfo | interface | interface BundleActiveGroupCallbackInfo | 变更,修改为usageStatistics.AppGroupCallbackInfo |
| bundleState.BundleActiveGroupCallbackInfo | field | bundleName: string | 变更,移动到usageStatistics.AppGroupCallbackInfo | | bundleState.BundleActiveGroupCallbackInfo | field | bundleName: string | 变更,移动到usageStatistics.AppGroupCallbackInfo |
| bundleState.BundleActiveGroupCallbackInfo | field | changeReason: number | 变更,移动到usageStatistics.AppGroupCallbackInfo | | bundleState.BundleActiveGroupCallbackInfo | field | changeReason: number | 变更,移动到usageStatistics.AppGroupCallbackInfo |
| bundleState.BundleActiveGroupCallbackInfo | field | userId: number | 变更,移动到usageStatistics.AppGroupCallbackInfo | | bundleState.BundleActiveGroupCallbackInfo | field | userId: number | 变更,移动到usageStatistics.AppGroupCallbackInfo |
| bundleState.BundleActiveGroupCallbackInfo | field | appUsageNewGroup: number | 废弃,修改为appNewGroup | | bundleState.BundleActiveGroupCallbackInfo | field | appUsageNewGroup: number | 废弃,修改为appNewGroup |
| bundleState.BundleActiveGroupCallbackInfo | field | appUsageOldGroup: number | 废弃,修改为appOldGroup | | bundleState.BundleActiveGroupCallbackInfo | field | appUsageOldGroup: number | 废弃,修改为appOldGroup |
| bundleState.BundleActiveEventState | interface | interface BundleActiveEventState | 废弃,修改为usageStatistics.DeviceEventStats | | bundleState.BundleActiveEventState | interface | interface BundleActiveEventState | 废弃,修改为usageStatistics.DeviceEventStats |
| bundleState.BundleActiveEventState | field | count: number | 变更,移动到usageStatistics.DeviceEventStats | | bundleState.BundleActiveEventState | field | count: number | 变更,移动到usageStatistics.DeviceEventStats |
| bundleState.BundleActiveEventState | field | eventId: number | 变更,移动到usageStatistics.DeviceEventStats | | bundleState.BundleActiveEventState | field | eventId: number | 变更,移动到usageStatistics.DeviceEventStats |
| bundleState.BundleActiveEventState | field | name: string | 变更,移动到usageStatistics.DeviceEventStats | | bundleState.BundleActiveEventState | field | name: string | 变更,移动到usageStatistics.DeviceEventStats |
| bundleState.BundleActiveModuleInfo | interface | interface BundleActiveModuleInfo | 接口从API9变更,修改为usageStatistics.HapModuleInfo | | bundleState.BundleActiveModuleInfo | interface | interface BundleActiveModuleInfo | 接口从API9变更,修改为usageStatistics.HapModuleInfo |
| bundleState.BundleActiveModuleInfo | field | formRecords: Array<BundleActiveFormInfo> | 变更,修改为formRecords: Array<HapModuleInfo> | | bundleState.BundleActiveModuleInfo | field | formRecords: Array<BundleActiveFormInfo> | 变更,修改为formRecords: Array<HapModuleInfo> |
| bundleState.BundleActiveModuleInfo | field | lastModuleUsedTime: number | 变更,移动到usageStatistics.HapModuleInfo | | bundleState.BundleActiveModuleInfo | field | lastModuleUsedTime: number | 变更,移动到usageStatistics.HapModuleInfo |
| bundleState.BundleActiveModuleInfo | field | launchedCount: number | 变更,移动到usageStatistics.HapModuleInfo | | bundleState.BundleActiveModuleInfo | field | launchedCount: number | 变更,移动到usageStatistics.HapModuleInfo |
| bundleState.BundleActiveModuleInfo | field | abilityIconId?: number | 变更,移动到usageStatistics.HapModuleInfo | | bundleState.BundleActiveModuleInfo | field | abilityIconId?: number | 变更,移动到usageStatistics.HapModuleInfo |
| bundleState.BundleActiveModuleInfo | field | abilityDescriptionId?: number | 变更,移动到usageStatistics.HapModuleInfo | | bundleState.BundleActiveModuleInfo | field | abilityDescriptionId?: number | 变更,移动到usageStatistics.HapModuleInfo |
| bundleState.BundleActiveModuleInfo | field | abilityLableId?: number | 变更,移动到usageStatistics.HapModuleInfo | | bundleState.BundleActiveModuleInfo | field | abilityLableId?: number | 变更,移动到usageStatistics.HapModuleInfo |
| bundleState.BundleActiveModuleInfo | field | descriptionId?: number; | 变更,移动到usageStatistics.HapModuleInfo | | bundleState.BundleActiveModuleInfo | field | descriptionId?: number; | 变更,移动到usageStatistics.HapModuleInfo |
| bundleState.BundleActiveModuleInfo | field | labelId?: number | 变更,移动到usageStatistics.HapModuleInfo | | bundleState.BundleActiveModuleInfo | field | labelId?: number | 变更,移动到usageStatistics.HapModuleInfo |
| bundleState.BundleActiveModuleInfo | field | appLabelId?: number | 变更,移动到usageStatistics.HapModuleInfo | | bundleState.BundleActiveModuleInfo | field | appLabelId?: number | 变更,移动到usageStatistics.HapModuleInfo |
| bundleState.BundleActiveModuleInfo | field | abilityName?: string | 变更,移动到usageStatistics.HapModuleInfo | | bundleState.BundleActiveModuleInfo | field | abilityName?: string | 变更,移动到usageStatistics.HapModuleInfo |
| bundleState.BundleActiveModuleInfo | field | moduleName: string | 变更,移动到usageStatistics.HapModuleInfo | | bundleState.BundleActiveModuleInfo | field | moduleName: string | 变更,移动到usageStatistics.HapModuleInfo |
| bundleState.BundleActiveModuleInfo | field | bundleName: string | 变更,移动到usageStatistics.HapModuleInfo | | bundleState.BundleActiveModuleInfo | field | bundleName: string | 变更,移动到usageStatistics.HapModuleInfo |
| bundleState.BundleActiveModuleInfo | field | deviceId?: string | 变更,移动到usageStatistics.HapModuleInfo | | bundleState.BundleActiveModuleInfo | field | deviceId?: string | 变更,移动到usageStatistics.HapModuleInfo |
| bundleState.GroupType | enum | enum GroupType | 变更,移动到usageStatistics.GroupType | | bundleState.GroupType | enum | enum GroupType | 变更,移动到usageStatistics.GroupType |
| bundleState.GroupType | enum | ACTIVE_GROUP_ALIVE | 废弃,修改为ALIVE_GROUP | | bundleState.GroupType | enum | ACTIVE_GROUP_ALIVE | 废弃,修改为ALIVE_GROUP |
| bundleState.GroupType | enum | ACTIVE_GROUP_DAILY | 废弃,修改为DAILY_GROUP | | bundleState.GroupType | enum | ACTIVE_GROUP_DAILY | 废弃,修改为DAILY_GROUP |
| bundleState.GroupType | enum | ACTIVE_GROUP_FIXED | 废弃,修改为FIXED_GROUP | | bundleState.GroupType | enum | ACTIVE_GROUP_FIXED | 废弃,修改为FIXED_GROUP |
| bundleState.GroupType | enum | ACTIVE_GROUP_RARE | 废弃,修改为RARE_GROUP | | bundleState.GroupType | enum | ACTIVE_GROUP_RARE | 废弃,修改为RARE_GROUP |
| bundleState.GroupType | enum | ACTIVE_GROUP_LIMIT | 废弃,修改为LIMITED_GROUP | | bundleState.GroupType | enum | ACTIVE_GROUP_LIMIT | 废弃,修改为LIMITED_GROUP |
| bundleState.GroupType | enum | ACTIVE_GROUP_NEVER | 废弃,修改为NEVER_GROUP | | bundleState.GroupType | enum | ACTIVE_GROUP_NEVER | 废弃,修改为NEVER_GROUP |
| bundleState.IntervalType | enum | enum IntervalType | 废弃,移动到usageStatistics.IntervalType | | bundleState.IntervalType | enum | enum IntervalType | 废弃,移动到usageStatistics.IntervalType |
| bundleState.IntervalType | enum | BY_OPTIMIZED | 废弃,移动到usageStatistics.IntervalType | | bundleState.IntervalType | enum | BY_OPTIMIZED | 废弃,移动到usageStatistics.IntervalType |
| bundleState.IntervalType | enum | BY_DAILY | 废弃,移动到usageStatistics.IntervalType | | bundleState.IntervalType | enum | BY_DAILY | 废弃,移动到usageStatistics.IntervalType |
| bundleState.IntervalType | enum | BY_WEEKLY | 废弃,移动到usageStatistics.IntervalType | | bundleState.IntervalType | enum | BY_WEEKLY | 废弃,移动到usageStatistics.IntervalType |
| bundleState.IntervalType | enum | BY_MONTHLY | 废弃,移动到usageStatistics.IntervalType | | bundleState.IntervalType | enum | BY_MONTHLY | 废弃,移动到usageStatistics.IntervalType |
| bundleState.IntervalType | enum | BY_ANNUALLY | 废弃,移动到usageStatistics.IntervalType | | bundleState.IntervalType | enum | BY_ANNUALLY | 废弃,移动到usageStatistics.IntervalType |
| bundleState.BundleActiveInfoResponse | interface | interface BundleActiveInfoResponse | 废弃,修改为usageStatistics.BundleStatsMap | | bundleState.BundleActiveInfoResponse | interface | interface BundleActiveInfoResponse | 废弃,修改为usageStatistics.BundleStatsMap |
| bundleState.BundleActiveState | interface | interface BundleActiveState | 废弃,修改为usageStatistics.BundleEvents | | bundleState.BundleActiveState | interface | interface BundleActiveState | 废弃,修改为usageStatistics.BundleEvents |
| bundleState.BundleActiveState | field | stateType?: number | 废弃,修改为eventId | | bundleState.BundleActiveState | field | stateType?: number | 废弃,修改为eventId |
| bundleState.BundleActiveState | field | stateOccurredTime?: number | 废弃,修改为eventOccurredTime | | bundleState.BundleActiveState | field | stateOccurredTime?: number | 废弃,修改为eventOccurredTime |
| bundleState.BundleActiveState | field | nameOfClass?: string | 废弃,移动到usageStatistics.BundleEvents | | bundleState.BundleActiveState | field | nameOfClass?: string | 废弃,移动到usageStatistics.BundleEvents |
| bundleState.BundleActiveState | field | indexOfLink?: string | 废弃,移动到usageStatistics.BundleEvents | | bundleState.BundleActiveState | field | indexOfLink?: string | 废弃,移动到usageStatistics.BundleEvents |
| bundleState.BundleActiveState | field | bundleName?: string | 废弃,移动到usageStatistics.BundleEvents | | bundleState.BundleActiveState | field | bundleName?: string | 废弃,移动到usageStatistics.BundleEvents |
| bundleState.BundleActiveState | field | appUsagePriorityGroup?: number | 废弃,修改为appGroup | | bundleState.BundleActiveState | field | appUsagePriorityGroup?: number | 废弃,修改为appGroup |
| bundleState.BundleStateInfo | interface | interface BundleStateInfo | 废弃,修改为usageStatistics.BundleStatsInfo | | bundleState.BundleStateInfo | interface | interface BundleStateInfo | 废弃,修改为usageStatistics.BundleStatsInfo |
| bundleState.BundleStateInfo | method | merge(toMerge: BundleStateInfo): void | 废弃 | | bundleState.BundleStateInfo | method | merge(toMerge: BundleStateInfo): void | 废弃 |
| bundleState.BundleStateInfo | field | infosEndTime?: number | 废弃,移动到usageStatistics.BundleStatsInfo | | bundleState.BundleStateInfo | field | infosEndTime?: number | 废弃,移动到usageStatistics.BundleStatsInfo |
| bundleState.BundleStateInfo | field | infosBeginTime?: number | 废弃,移动到usageStatistics.BundleStatsInfo | | bundleState.BundleStateInfo | field | infosBeginTime?: number | 废弃,移动到usageStatistics.BundleStatsInfo |
| bundleState.BundleStateInfo | field | fgAbilityPrevAccessTime?: number | 废弃,移动到usageStatistics.BundleStatsInfo | | bundleState.BundleStateInfo | field | fgAbilityPrevAccessTime?: number | 废弃,移动到usageStatistics.BundleStatsInfo |
| bundleState.BundleStateInfo | field | fgAbilityAccessTotalTime?: number | 废弃,移动到usageStatistics.BundleStatsInfo | | bundleState.BundleStateInfo | field | fgAbilityAccessTotalTime?: number | 废弃,移动到usageStatistics.BundleStatsInfo |
| bundleState.BundleStateInfo | field | bundleName?: string | 废弃,移动到usageStatistics.BundleStatsInfo | | bundleState.BundleStateInfo | field | bundleName?: string | 废弃,移动到usageStatistics.BundleStatsInfo |
| bundleState.BundleStateInfo | field | abilitySeenTotalTime?: number | 废弃,移动到usageStatistics.BundleStatsInfo | | bundleState.BundleStateInfo | field | abilitySeenTotalTime?: number | 废弃,移动到usageStatistics.BundleStatsInfo |
| bundleState.BundleStateInfo | field | abilityPrevSeenTime?: number | 废弃,移动到usageStatistics.BundleStatsInfo | | bundleState.BundleStateInfo | field | abilityPrevSeenTime?: number | 废弃,移动到usageStatistics.BundleStatsInfo |
| bundleState.BundleStateInfo | field | abilityPrevAccessTime?: number | 废弃,移动到usageStatistics.BundleStatsInfo | | bundleState.BundleStateInfo | field | abilityPrevAccessTime?: number | 废弃,移动到usageStatistics.BundleStatsInfo |
| bundleState.BundleStateInfo | field | abilityInFgTotalTime?: number | 废弃,移动到usageStatistics.BundleStatsInfo | | bundleState.BundleStateInfo | field | abilityInFgTotalTime?: number | 废弃,移动到usageStatistics.BundleStatsInfo |
| bundleState.BundleStateInfo | field | id: number | 废弃,移动到usageStatistics.BundleStatsInfo | | bundleState.BundleStateInfo | field | id: number | 废弃,移动到usageStatistics.BundleStatsInfo |
| bundleState | namespace | declare namespace bundleState | 废弃,修改为usageStatistics,移植到ohos.resourceschedule.usageStatistics.d.ts | | bundleState | namespace | declare namespace bundleState | 废弃,修改为usageStatistics,移植到ohos.resourceschedule.usageStatistics.d.ts |
**适配指导**<br> **适配指导**<br>
导入usageStatistics模块。 导入usageStatistics模块。
``` ```
import bundle form '@ohos.resourceschedule.usageStatistics' import bundle form '@ohos.resourceschedule.usageStatistics'
``` ```
此外还需要适配异常处理,具体参考[usageStatistics接口文档](../../../application-dev/reference/apis/js-apis-resourceschedule-deviceUsageStatistics.md) 此外还需要适配异常处理,具体参考[usageStatistics接口文档](../../../application-dev/reference/apis/js-apis-resourceschedule-deviceUsageStatistics.md)
## c3.resourceschedule.workScheduler ## c3.resourceschedule.workScheduler
对资源调度子系统workScheduler仓原有接口进行整改,原有API9接口变更为新的API9接口。新的API9接口符合错误码规范。 对资源调度子系统workScheduler仓原有接口进行整改,原有API9接口变更为新的API9接口。新的API9接口符合错误码规范。
**变更影响** **变更影响**
基于OpenHarmony3.2.8.2及之后的SDK版本开发的应用,需适配API9的模块和接口,以及的API异常处理返回方式,否则会影响原有业务逻辑。 基于OpenHarmony3.2.8.2及之后的SDK版本开发的应用,需适配API9的模块和接口,以及的API异常处理返回方式,否则会影响原有业务逻辑。
**关键接口/组件变更** **关键接口/组件变更**
以下方法、属性、枚举和常量均从API9变更。废弃@ohos.workScheduler.d.ts文件,新增@ohos.resourceschedule.workScheduler.d.ts文件,将相关接口变更至对应的文件中。 以下方法、属性、枚举和常量均从API9变更。废弃@ohos.workScheduler.d.ts文件,新增@ohos.resourceschedule.workScheduler.d.ts文件,将相关接口变更至对应的文件中。
| 类名 | 接口类型 | 接口声明 | 变更类型 | | 类名 | 接口类型 | 接口声明 | 变更类型 |
| -- | -- | -- | -- | | -- | -- | -- | -- |
| workScheduler | namespace | declare namespace workScheduler | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler | namespace | declare namespace workScheduler | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | interface | export interface WorkInfo | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.WorkInfo | interface | export interface WorkInfo | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | parameters?: {[key: string]: any} | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.WorkInfo | field | parameters?: {[key: string]: any} | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | idleWaitTime?: number | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.WorkInfo | field | idleWaitTime?: number | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | isDeepIdle?: boolean | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.WorkInfo | field | isDeepIdle?: boolean | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | repeatCount?: number | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.WorkInfo | field | repeatCount?: number | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | isRepeat?: boolean | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.WorkInfo | field | isRepeat?: boolean | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | repeatCycleTime?: number | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.WorkInfo | field | repeatCycleTime?: number | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | storageRequest?: StorageRequest | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.WorkInfo | field | storageRequest?: StorageRequest | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | batteryStatus?: BatteryStatus | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.WorkInfo | field | batteryStatus?: BatteryStatus | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | batteryLevel?: number | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.WorkInfo | field | batteryLevel?: number | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | chargerType?: ChargingType | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.WorkInfo | field | chargerType?: ChargingType | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | isCharging?: boolean | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.WorkInfo | field | isCharging?: boolean | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | networkType?: NetworkType | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.WorkInfo | field | networkType?: NetworkType | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | isPersisted?: boolean | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.WorkInfo | field | isPersisted?: boolean | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | abilityName: string | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.WorkInfo | field | abilityName: string | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | bundleName: string | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.WorkInfo | field | bundleName: string | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.WorkInfo | field | workId: number | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.WorkInfo | field | workId: number | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler | method | function isLastWorkTimeOut(workId: number): Promise; | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler | method | function isLastWorkTimeOut(workId: number): Promise; | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler | method | function isLastWorkTimeOut(workId: number, callback: AsyncCallback<void>): boolean; | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler | method | function isLastWorkTimeOut(workId: number, callback: AsyncCallback<void>): boolean; | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler | method | function stopAndClearWorks(): boolean; | 接口API8变更,移植到ohos.resourceschedule.workScheduler.d.ts,修改为function stopAndClearWorks(): boolean; | | workScheduler | method | function stopAndClearWorks(): boolean; | 接口API8变更,移植到ohos.resourceschedule.workScheduler.d.ts,修改为function stopAndClearWorks(): boolean; |
| workScheduler | method | function obtainAllWorks(): Promise<Array<WorkInfo>>; | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler | method | function obtainAllWorks(): Promise<Array<WorkInfo>>; | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler | method | function obtainAllWorks(callback: AsyncCallback<void>): Array<WorkInfo>; | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler | method | function obtainAllWorks(callback: AsyncCallback<void>): Array<WorkInfo>; | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler | method | function getWorkStatus(workId: number): Promise<WorkInfo>; | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler | method | function getWorkStatus(workId: number): Promise<WorkInfo>; | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler | method | function getWorkStatus(workId: number, callback: AsyncCallback<WorkInfo>): void; | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler | method | function getWorkStatus(workId: number, callback: AsyncCallback<WorkInfo>): void; | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler | method | function stopWork(work: WorkInfo, needCancel?: boolean): boolean; | 接口API8变更,移植到ohos.resourceschedule.workScheduler.d.ts,修改为function stopWork(work: WorkInfo, needCancel?: boolean): void; | | workScheduler | method | function stopWork(work: WorkInfo, needCancel?: boolean): boolean; | 接口API8变更,移植到ohos.resourceschedule.workScheduler.d.ts,修改为function stopWork(work: WorkInfo, needCancel?: boolean): void; |
| workScheduler | method | function startWork(work: WorkInfo): boolean; | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts,修改为function startWork(work: WorkInfo): void; | | workScheduler | method | function startWork(work: WorkInfo): boolean; | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts,修改为function startWork(work: WorkInfo): void; |
| workScheduler.NetworkType | enum | export enum NetworkType | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.NetworkType | enum | export enum NetworkType | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.NetworkType | enum | NETWORK_TYPE_ANY = 0 | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.NetworkType | enum | NETWORK_TYPE_ANY = 0 | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.NetworkType | enum | NETWORK_TYPE_MOBILE | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.NetworkType | enum | NETWORK_TYPE_MOBILE | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.NetworkType | enum | NETWORK_TYPE_WIFI | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.NetworkType | enum | NETWORK_TYPE_WIFI | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.NetworkType | enum | NETWORK_TYPE_BLUETOOTH | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.NetworkType | enum | NETWORK_TYPE_BLUETOOTH | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.NetworkType | enum | NETWORK_TYPE_WIFI_P2P | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.NetworkType | enum | NETWORK_TYPE_WIFI_P2P | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.NetworkType | enum | NETWORK_TYPE_ETHERNET | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.NetworkType | enum | NETWORK_TYPE_ETHERNET | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.ChargingType | enum | export enum ChargingType | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.ChargingType | enum | export enum ChargingType | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.ChargingType | enum | CHARGING_PLUGGED_ANY = 0 | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.ChargingType | enum | CHARGING_PLUGGED_ANY = 0 | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.ChargingType | enum | CHARGING_PLUGGED_AC | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.ChargingType | enum | CHARGING_PLUGGED_AC | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.ChargingType | enum | CHARGING_PLUGGED_USB | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.ChargingType | enum | CHARGING_PLUGGED_USB | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.ChargingType | enum | CHARGING_PLUGGED_WIRELESS | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.ChargingType | enum | CHARGING_PLUGGED_WIRELESS | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.BatteryStatus | enum | export enum BatteryStatus | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.BatteryStatus | enum | export enum BatteryStatus | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.BatteryStatus | enum | BATTERY_STATUS_LOW = 0 | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.BatteryStatus | enum | BATTERY_STATUS_LOW = 0 | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.BatteryStatus | enum | BATTERY_STATUS_OKAY | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.BatteryStatus | enum | BATTERY_STATUS_OKAY | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.BatteryStatus | enum | BATTERY_STATUS_LOW_OR_OKAY | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.BatteryStatus | enum | BATTERY_STATUS_LOW_OR_OKAY | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.StorageRequest | enum | export enum StorageRequest | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.StorageRequest | enum | export enum StorageRequest | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.BatteryStatus | enum | STORAGE_LEVEL_LOW = 0 | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.BatteryStatus | enum | STORAGE_LEVEL_LOW = 0 | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.BatteryStatus | enum | STORAGE_LEVEL_OKAY | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.BatteryStatus | enum | STORAGE_LEVEL_OKAY | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
| workScheduler.BatteryStatus | enum | STORAGE_LEVEL_LOW_OR_OKAY | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts | | workScheduler.BatteryStatus | enum | STORAGE_LEVEL_LOW_OR_OKAY | 接口API9变更,移植到ohos.resourceschedule.workScheduler.d.ts |
**适配指导**<br> **适配指导**<br>
导入workScheduler模块。 导入workScheduler模块。
``` ```
import bundle form '@ohos.resourceschedule.workScheduler' import bundle form '@ohos.resourceschedule.workScheduler'
``` ```
此外还需要适配异常处理,具体参考[workScheduler接口文档](../../../application-dev/reference/apis/js-apis-resourceschedule-workScheduler.md) 此外还需要适配异常处理,具体参考[workScheduler接口文档](../../../application-dev/reference/apis/js-apis-resourceschedule-workScheduler.md)
## c4.resourceschedule.reminderAgent ## c4.resourceschedule.reminderAgent
对资源调度子系统提醒代理原有接口进行整改,原有API8及之前的接口全部废弃,原有API9接口删除,需要使用新的API9接口。新的API9接口符合错误码规范。 对资源调度子系统提醒代理原有接口进行整改,原有API8及之前的接口全部废弃,原有API9接口删除,需要使用新的API9接口。新的API9接口符合错误码规范。
**变更影响** **变更影响**
基于OpenHarmony3.2.8.2及之后的SDK版本开发的应用,需适配API9的模块和接口,以及的API异常处理返回方式,否则会影响原有业务逻辑。 基于OpenHarmony3.2.8.2及之后的SDK版本开发的应用,需适配API9的模块和接口,以及的API异常处理返回方式,否则会影响原有业务逻辑。
**关键接口/组件变更** **关键接口/组件变更**
以下方法、属性、枚举和常量均从API9变更,废弃@ohos.reminderAgent.d.ts文件,新增@ohos.reminderAgentManager.d.ts文件,类名也将从reminderAgent变更为reminderAgentManager。 以下方法、属性、枚举和常量均从API9变更,废弃@ohos.reminderAgent.d.ts文件,新增@ohos.reminderAgentManager.d.ts文件,类名也将从reminderAgent变更为reminderAgentManager。
| 类名 | 接口类型 | 方法/属性/枚举/常量 | 变更类型 | | 类名 | 接口类型 | 方法/属性/枚举/常量 | 变更类型 |
| --------------------- | ----------- | ------------------------------------------------------------ | ------------------------------------------------------------ | | --------------------- | ----------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
| reminderAgent | method | publishReminder(reminderReq: ReminderRequest, callback: AsyncCallback<number>): void; | 废弃,移动到reminderAgentManager | | reminderAgent | method | publishReminder(reminderReq: ReminderRequest, callback: AsyncCallback<number>): void; | 废弃,移动到reminderAgentManager |
| reminderAgent | method | publishReminder(reminderReq: ReminderRequest): Promise<number>; | 废弃,移动到reminderAgentManager | | reminderAgent | method | publishReminder(reminderReq: ReminderRequest): Promise<number>; | 废弃,移动到reminderAgentManager |
| reminderAgent | method | cancelReminder(reminderId: number, callback: AsyncCallback<void>): void; | 废弃,移动到reminderAgentManager | | reminderAgent | method | cancelReminder(reminderId: number, callback: AsyncCallback<void>): void; | 废弃,移动到reminderAgentManager |
| reminderAgent | method | cancelReminder(reminderId: number): Promise<void>; | 废弃,移动到reminderAgentManager | | reminderAgent | method | cancelReminder(reminderId: number): Promise<void>; | 废弃,移动到reminderAgentManager |
| reminderAgent | method | getValidReminders(callback: AsyncCallback<Array<ReminderRequest>>): void; | 废弃,移动到reminderAgentManager | | reminderAgent | method | getValidReminders(callback: AsyncCallback<Array<ReminderRequest>>): void; | 废弃,移动到reminderAgentManager |
| reminderAgent | method | getValidReminders(): Promise<Array<ReminderRequest>>; | 废弃,移动到reminderAgentManager | | reminderAgent | method | getValidReminders(): Promise<Array<ReminderRequest>>; | 废弃,移动到reminderAgentManager |
| reminderAgent | method | cancelAllReminders(callback: AsyncCallback<void>): void; | 废弃,移动到reminderAgentManager | | reminderAgent | method | cancelAllReminders(callback: AsyncCallback<void>): void; | 废弃,移动到reminderAgentManager |
| reminderAgent | method | cancelAllReminders(): Promise<void>; | 废弃,移动到reminderAgentManager | | reminderAgent | method | cancelAllReminders(): Promise<void>; | 废弃,移动到reminderAgentManager |
| reminderAgent | method | addNotificationSlot(slot: NotificationSlot, callback: AsyncCallback<void>): void; | 废弃,移动到reminderAgentManager | | reminderAgent | method | addNotificationSlot(slot: NotificationSlot, callback: AsyncCallback<void>): void; | 废弃,移动到reminderAgentManager |
| reminderAgent | method | addNotificationSlot(slot: NotificationSlot): Promise<void>; | 废弃,移动到reminderAgentManager | | reminderAgent | method | addNotificationSlot(slot: NotificationSlot): Promise<void>; | 废弃,移动到reminderAgentManager |
| reminderAgent | method | removeNotificationSlot(slotType: notification.SlotType, callback: AsyncCallback<void>): void; | 废弃,移动到reminderAgentManager | | reminderAgent | method | removeNotificationSlot(slotType: notification.SlotType, callback: AsyncCallback<void>): void; | 废弃,移动到reminderAgentManager |
| reminderAgent | method | removeNotificationSlot(slotType: notification.SlotType): Promise<void>; | 废弃,移动到reminderAgentManager | | reminderAgent | method | removeNotificationSlot(slotType: notification.SlotType): Promise<void>; | 废弃,移动到reminderAgentManager |
| reminderAgent.ActionButtonType | enum | ACTION_BUTTON_TYPE_CLOSE | 废弃,移动到reminderAgentManager.ActionButtonType | | reminderAgent.ActionButtonType | enum | ACTION_BUTTON_TYPE_CLOSE | 废弃,移动到reminderAgentManager.ActionButtonType |
| reminderAgent.ActionButtonType | enum | ACTION_BUTTON_TYPE_SNOOZE | 废弃,移动到reminderAgentManager.ActionButtonType | | reminderAgent.ActionButtonType | enum | ACTION_BUTTON_TYPE_SNOOZE | 废弃,移动到reminderAgentManager.ActionButtonType |
| reminderAgent.ReminderType | enum | REMINDER_TYPE_TIMER | 废弃,移动到reminderAgentManager.ReminderType | | reminderAgent.ReminderType | enum | REMINDER_TYPE_TIMER | 废弃,移动到reminderAgentManager.ReminderType |
| reminderAgent.ReminderType | enum | REMINDER_TYPE_CALENDAR | 废弃,移动到reminderAgentManager.ReminderType | | reminderAgent.ReminderType | enum | REMINDER_TYPE_CALENDAR | 废弃,移动到reminderAgentManager.ReminderType |
| reminderAgent.ReminderType | enum | REMINDER_TYPE_CALENDAR | 废弃,移动到reminderAgentManager.ReminderType | | reminderAgent.ReminderType | enum | REMINDER_TYPE_CALENDAR | 废弃,移动到reminderAgentManager.ReminderType |
| reminderAgent.ActionButton | field | title:string | 废弃,移动到reminderAgentManager.ActionButton | | reminderAgent.ActionButton | field | title:string | 废弃,移动到reminderAgentManager.ActionButton |
| reminderAgent.ActionButton | field | type:ActionButtonType | 废弃,移动到reminderAgentManager.ActionButton | | reminderAgent.ActionButton | field | type:ActionButtonType | 废弃,移动到reminderAgentManager.ActionButton |
| reminderAgent.WantAgent | field | pkgName:string | 废弃,移动到reminderAgentManager.WantAgent | | reminderAgent.WantAgent | field | pkgName:string | 废弃,移动到reminderAgentManager.WantAgent |
| reminderAgent.WantAgent | field | abilityName:string | 废弃,移动到reminderAgentManager.WantAgent | | reminderAgent.WantAgent | field | abilityName:string | 废弃,移动到reminderAgentManager.WantAgent |
| reminderAgent.MaxScreenWantAgent | field | pkgName:string | 废弃,移动到reminderAgentManager.MaxScreenWantAgent | | reminderAgent.MaxScreenWantAgent | field | pkgName:string | 废弃,移动到reminderAgentManager.MaxScreenWantAgent |
| reminderAgent.MaxScreenWantAgent | field | abilityName:string | 废弃,移动到reminderAgentManager.MaxScreenWantAgent | | reminderAgent.MaxScreenWantAgent | field | abilityName:string | 废弃,移动到reminderAgentManager.MaxScreenWantAgent |
| reminderAgent.ReminderRequest | field | reminderType:ReminderType | 废弃,移动到reminderAgentManager.ReminderRequest | | reminderAgent.ReminderRequest | field | reminderType:ReminderType | 废弃,移动到reminderAgentManager.ReminderRequest |
| reminderAgent.ReminderRequest | field | actionButton?:ActionButton | 废弃,移动到reminderAgentManager.ReminderRequest | | reminderAgent.ReminderRequest | field | actionButton?:ActionButton | 废弃,移动到reminderAgentManager.ReminderRequest |
| reminderAgent.ReminderRequest | field | wantAgent?:WantAgent | 废弃,移动到reminderAgentManager.ReminderRequest | | reminderAgent.ReminderRequest | field | wantAgent?:WantAgent | 废弃,移动到reminderAgentManager.ReminderRequest |
| reminderAgent.ReminderRequest | field | maxScreenWantAgent?:MaxScreenWantAgent | 废弃,移动到reminderAgentManager.ReminderRequest | | reminderAgent.ReminderRequest | field | maxScreenWantAgent?:MaxScreenWantAgent | 废弃,移动到reminderAgentManager.ReminderRequest |
| reminderAgent.ReminderRequest | field | ringDuration?:number | 废弃,移动到reminderAgentManager.ReminderRequest | | reminderAgent.ReminderRequest | field | ringDuration?:number | 废弃,移动到reminderAgentManager.ReminderRequest |
| reminderAgent.ReminderRequest | field | snoozeTimes?:number | 废弃,移动到reminderAgentManager.ReminderRequest | | reminderAgent.ReminderRequest | field | snoozeTimes?:number | 废弃,移动到reminderAgentManager.ReminderRequest |
| reminderAgent.ReminderRequest | field | timeInterval?:number | 废弃,移动到reminderAgentManager.ReminderRequest | | reminderAgent.ReminderRequest | field | timeInterval?:number | 废弃,移动到reminderAgentManager.ReminderRequest |
| reminderAgent.ReminderRequest | field | title?:string | 废弃,移动到reminderAgentManager.ReminderRequest | | reminderAgent.ReminderRequest | field | title?:string | 废弃,移动到reminderAgentManager.ReminderRequest |
| reminderAgent.ReminderRequest | field | content?:string | 废弃,移动到reminderAgentManager.ReminderRequest | | reminderAgent.ReminderRequest | field | content?:string | 废弃,移动到reminderAgentManager.ReminderRequest |
| reminderAgent.ReminderRequest | field | expiredContent?:string | 废弃,移动到reminderAgentManager.ReminderRequest | | reminderAgent.ReminderRequest | field | expiredContent?:string | 废弃,移动到reminderAgentManager.ReminderRequest |
| reminderAgent.ReminderRequest | field | snoozeContent?:string | 废弃,移动到reminderAgentManager.ReminderRequest | | reminderAgent.ReminderRequest | field | snoozeContent?:string | 废弃,移动到reminderAgentManager.ReminderRequest |
| reminderAgent.ReminderRequest | field | notificationId?:number | 废弃,移动到reminderAgentManager.ReminderRequest | | reminderAgent.ReminderRequest | field | notificationId?:number | 废弃,移动到reminderAgentManager.ReminderRequest |
| reminderAgent.ReminderRequest | field | slotType?: notification.SlotType | 废弃,移动到reminderAgentManager.ReminderRequest | | reminderAgent.ReminderRequest | field | slotType?: notification.SlotType | 废弃,移动到reminderAgentManager.ReminderRequest |
| reminderAgent.ReminderRequestCalendar | field | dateTime:LocalDateTime | 废弃,移动到reminderAgentManager.ReminderRequestCalendar | | reminderAgent.ReminderRequestCalendar | field | dateTime:LocalDateTime | 废弃,移动到reminderAgentManager.ReminderRequestCalendar |
| reminderAgent.ReminderRequestCalendar | field | repeatMonths?:Array<number> | 废弃,移动到reminderAgentManager.ReminderRequestCalendar | | reminderAgent.ReminderRequestCalendar | field | repeatMonths?:Array<number> | 废弃,移动到reminderAgentManager.ReminderRequestCalendar |
| reminderAgent.ReminderRequestCalendar | field | repeatDays?:Array<number> | 废弃,移动到reminderAgentManager.ReminderRequestCalendar | | reminderAgent.ReminderRequestCalendar | field | repeatDays?:Array<number> | 废弃,移动到reminderAgentManager.ReminderRequestCalendar |
| reminderAgent.ReminderRequestAlarm | field | hour:number | 废弃,移动到reminderAgentManager.ReminderRequestAlarm | | reminderAgent.ReminderRequestAlarm | field | hour:number | 废弃,移动到reminderAgentManager.ReminderRequestAlarm |
| reminderAgent.ReminderRequestAlarm | field | minute:number | 废弃,移动到reminderAgentManager.ReminderRequestAlarm | | reminderAgent.ReminderRequestAlarm | field | minute:number | 废弃,移动到reminderAgentManager.ReminderRequestAlarm |
| reminderAgent.ReminderRequestAlarm | field | daysOfWeek?:Array<number> | 废弃,移动到reminderAgentManager.ReminderRequestAlarm | | reminderAgent.ReminderRequestAlarm | field | daysOfWeek?:Array<number> | 废弃,移动到reminderAgentManager.ReminderRequestAlarm |
| reminderAgent.ReminderRequestTimer | field | triggerTimeInSeconds:number | 废弃,移动到reminderAgentManager.ReminderRequestTimer | | reminderAgent.ReminderRequestTimer | field | triggerTimeInSeconds:number | 废弃,移动到reminderAgentManager.ReminderRequestTimer |
| reminderAgent.LocalDateTime | field | year:number | 废弃,移动到reminderAgentManager.LocalDateTime | | reminderAgent.LocalDateTime | field | year:number | 废弃,移动到reminderAgentManager.LocalDateTime |
| reminderAgent.LocalDateTime | field | month:number | 废弃,移动到reminderAgentManager.LocalDateTime | | reminderAgent.LocalDateTime | field | month:number | 废弃,移动到reminderAgentManager.LocalDateTime |
| reminderAgent.LocalDateTime | field | day:number | 废弃,移动到reminderAgentManager.LocalDateTime | | reminderAgent.LocalDateTime | field | day:number | 废弃,移动到reminderAgentManager.LocalDateTime |
| reminderAgent.LocalDateTime | field | hour:number | 废弃,移动到reminderAgentManager.LocalDateTime | | reminderAgent.LocalDateTime | field | hour:number | 废弃,移动到reminderAgentManager.LocalDateTime |
| reminderAgent.LocalDateTime | field | minute:number | 废弃,移动到reminderAgentManager.LocalDateTime | | reminderAgent.LocalDateTime | field | minute:number | 废弃,移动到reminderAgentManager.LocalDateTime |
| reminderAgent.LocalDateTime | field | second?:number | 废弃,移动到reminderAgentManager.LocalDateTime | | reminderAgent.LocalDateTime | field | second?:number | 废弃,移动到reminderAgentManager.LocalDateTime |
**适配指导**<br> **适配指导**<br>
导入reminderAgentManager模块。 导入reminderAgentManager模块。
``` ```
import bundle form '@ohos.reminderAgentManager' import bundle form '@ohos.reminderAgentManager'
``` ```
此外还需要适配异常处理,具体参考[reminderAgentManager接口文档](../../../application-dev/reference/apis/js-apis-reminderAgentManager.md) 此外还需要适配异常处理,具体参考[reminderAgentManager接口文档](../../../application-dev/reference/apis/js-apis-reminderAgentManager.md)
# 电话子系统ChangeLog # 电话子系统ChangeLog
## cl.telephony.1 sms模块SystemAPI接口入参变更 ## cl.telephony.1 sms模块SystemAPI接口入参变更
已发布的部分电话子系统sms短信模块SystemAPI传入参数发生变化,不符合OpenHarmony接口规范。从API9开始做出以下变更: 已发布的部分电话子系统sms短信模块SystemAPI传入参数发生变化,不符合OpenHarmony接口规范。从API9开始做出以下变更:
isImsSmsSupported接口新增一个传入参数slotId,表示卡槽号。 isImsSmsSupported接口新增一个传入参数slotId,表示卡槽号。
**变更影响** **变更影响**
基于此前版本开发的应用,需适配变更js接口的入参,否则会影响原有功能。 基于此前版本开发的应用,需适配变更js接口的入参,否则会影响原有功能。
**关键的接口/组件变更** **关键的接口/组件变更**
- 涉及接口 - 涉及接口
isImsSmsSupported(callback: AsyncCallback<boolean>): void; isImsSmsSupported(callback: AsyncCallback<boolean>): void;
isImsSmsSupported(): Promise<boolean>; isImsSmsSupported(): Promise<boolean>;
- 变更前: - 变更前:
```js ```js
function isImsSmsSupported(callback: AsyncCallback<boolean>): void; function isImsSmsSupported(callback: AsyncCallback<boolean>): void;
function isImsSmsSupported(): Promise<boolean>; function isImsSmsSupported(): Promise<boolean>;
``` ```
- 变更后: - 变更后:
```js ```js
function isImsSmsSupported(slotId: number, callback: AsyncCallback<boolean>): void; function isImsSmsSupported(slotId: number, callback: AsyncCallback<boolean>): void;
function isImsSmsSupported(slotId: number): Promise<boolean>; function isImsSmsSupported(slotId: number): Promise<boolean>;
``` ```
**适配指导** **适配指导**
新增一个入参,示例代码如下: 新增一个入参,示例代码如下:
callback方式 callback方式
```js ```js
let slotId = 0; let slotId = 0;
sms.isImsSmsSupported(slotId, (err, data) => { sms.isImsSmsSupported(slotId, (err, data) => {
console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
}); });
``` ```
promise方式 promise方式
```js ```js
let slotId = 0; let slotId = 0;
let promise = sms.isImsSmsSupported(slotId); let promise = sms.isImsSmsSupported(slotId);
promise.then(data => { promise.then(data => {
console.log(`isImsSmsSupported success, promise: data->${JSON.stringify(data)}`); console.log(`isImsSmsSupported success, promise: data->${JSON.stringify(data)}`);
}).catch(err => { }).catch(err => {
console.error(`isImsSmsSupported failed, promise: err->${JSON.stringify(err)}`); console.error(`isImsSmsSupported failed, promise: err->${JSON.stringify(err)}`);
}); });
``` ```
# 主题框架changeLog # 主题框架changeLog
## cl.theme.1 API9接口支持异常处理 ## cl.theme.1 API9接口支持异常处理
下列模块内部接口使用业务逻辑返回值表示错误信息,不符合OpenHarmony接口错误码规范。在API9进行变更。 下列模块内部接口使用业务逻辑返回值表示错误信息,不符合OpenHarmony接口错误码规范。在API9进行变更。
- 壁纸管理服务:@ohos.wallpaper.d.ts - 壁纸管理服务:@ohos.wallpaper.d.ts
- 锁屏管理服务:@ohos.screenLock.d.ts - 锁屏管理服务:@ohos.screenLock.d.ts
以上模块中的接口变更为: 以上模块中的接口变更为:
同步接口:通过抛出异常的方式返回错误信息。 同步接口:通过抛出异常的方式返回错误信息。
异步接口:参数检查错误同步抛出,业务逻辑错误通过AsyncCallback或Promise的error对象抛出。 异步接口:参数检查错误同步抛出,业务逻辑错误通过AsyncCallback或Promise的error对象抛出。
**变更影响** **变更影响**
基于此前版本开发的应用,需适配接口的错误信息返回方式,否则会影响原有业务逻辑。 基于此前版本开发的应用,需适配接口的错误信息返回方式,否则会影响原有业务逻辑。
**关键接口/组件变更** **关键接口/组件变更**
以下标记为壁纸管理服务接口废除: 以下标记为壁纸管理服务接口废除:
- getColors(wallpaperType: WallpaperType, callback: AsyncCallback<Array<RgbaColor>>): void; - getColors(wallpaperType: WallpaperType, callback: AsyncCallback<Array<RgbaColor>>): void;
- getColors(wallpaperType: WallpaperType): Promise<Array<RgbaColor>>; - getColors(wallpaperType: WallpaperType): Promise<Array<RgbaColor>>;
- getId(wallpaperType: WallpaperType, callback: AsyncCallback<number>): void; - getId(wallpaperType: WallpaperType, callback: AsyncCallback<number>): void;
- getId(wallpaperType: WallpaperType): Promise<number>; - getId(wallpaperType: WallpaperType): Promise<number>;
- getMinHeight(callback: AsyncCallback<number>): void; - getMinHeight(callback: AsyncCallback<number>): void;
- getMinHeight(): Promise<number>; - getMinHeight(): Promise<number>;
- getMinWidth(callback: AsyncCallback<number>): void; - getMinWidth(callback: AsyncCallback<number>): void;
- getMinWidth(): Promise<number>; - getMinWidth(): Promise<number>;
- isChangePermitted(callback: AsyncCallback<boolean>): void; - isChangePermitted(callback: AsyncCallback<boolean>): void;
- isChangePermitted(): Promise<boolean>; - isChangePermitted(): Promise<boolean>;
- isOperationAllowed(callback: AsyncCallback<boolean>): void; - isOperationAllowed(callback: AsyncCallback<boolean>): void;
- isOperationAllowed(): Promise<boolean>; - isOperationAllowed(): Promise<boolean>;
- reset(wallpaperType: WallpaperType, callback: AsyncCallback<void>): void; - reset(wallpaperType: WallpaperType, callback: AsyncCallback<void>): void;
- reset(wallpaperType: WallpaperType): Promise<void>; - reset(wallpaperType: WallpaperType): Promise<void>;
- setWallpaper(source: string | image.PixelMap, wallpaperType: WallpaperType, callback: AsyncCallback<void>): void; - setWallpaper(source: string | image.PixelMap, wallpaperType: WallpaperType, callback: AsyncCallback<void>): void;
- setWallpaper(source: string | image.PixelMap, wallpaperType: WallpaperType): Promise<void>; - setWallpaper(source: string | image.PixelMap, wallpaperType: WallpaperType): Promise<void>;
- getFile(wallpaperType: WallpaperType, callback: AsyncCallback<number>): void; - getFile(wallpaperType: WallpaperType, callback: AsyncCallback<number>): void;
- getFile(wallpaperType: WallpaperType): Promise<number>; - getFile(wallpaperType: WallpaperType): Promise<number>;
- getPixelMap(wallpaperType: WallpaperType, callback: AsyncCallback<image.PixelMap>): void; - getPixelMap(wallpaperType: WallpaperType, callback: AsyncCallback<image.PixelMap>): void;
- getPixelMap(wallpaperType: WallpaperType): Promise<image.PixelMap>; - getPixelMap(wallpaperType: WallpaperType): Promise<image.PixelMap>;
壁纸管理服务替代接口如下: 壁纸管理服务替代接口如下:
- getColorsSync(wallpaperType: WallpaperType): Array<RgbaColor>; - getColorsSync(wallpaperType: WallpaperType): Array<RgbaColor>;
- getIdSync(wallpaperType: WallpaperType): number; - getIdSync(wallpaperType: WallpaperType): number;
- getMinHeightSync(): number; - getMinHeightSync(): number;
- getMinWidthSync(): number; - getMinWidthSync(): number;
- isChangeAllowed(): boolean; - isChangeAllowed(): boolean;
- isUserChangeAllowed(): boolean; - isUserChangeAllowed(): boolean;
- restore(wallpaperType: WallpaperType, callback: AsyncCallback<void>): void; - restore(wallpaperType: WallpaperType, callback: AsyncCallback<void>): void;
- restore(wallpaperType: WallpaperType): Promise<void>; - restore(wallpaperType: WallpaperType): Promise<void>;
- setImage(source: string | image.PixelMap, wallpaperType: WallpaperType, callback: AsyncCallback<void>): void; - setImage(source: string | image.PixelMap, wallpaperType: WallpaperType, callback: AsyncCallback<void>): void;
- setImage(source: string | image.PixelMap, wallpaperType: WallpaperType): Promise<void>; - setImage(source: string | image.PixelMap, wallpaperType: WallpaperType): Promise<void>;
- getFileSync(wallpaperType: WallpaperType): number; - getFileSync(wallpaperType: WallpaperType): number;
- getImage(wallpaperType: WallpaperType, callback: AsyncCallback<image.PixelMap>): void; - getImage(wallpaperType: WallpaperType, callback: AsyncCallback<image.PixelMap>): void;
- getImage(wallpaperType: WallpaperType): Promise<image.PixelMap>; - getImage(wallpaperType: WallpaperType): Promise<image.PixelMap>;
以下标记为壁纸管理服务接口变更: 以下标记为壁纸管理服务接口变更:
- on(type: 'colorChange', callback: (colors: Array<RgbaColor>, wallpaperType: WallpaperType) => void): void - on(type: 'colorChange', callback: (colors: Array<RgbaColor>, wallpaperType: WallpaperType) => void): void
- off(type: 'colorChange', callback?: (colors: Array<RgbaColor>, wallpaperType: WallpaperType) => void): void - off(type: 'colorChange', callback?: (colors: Array<RgbaColor>, wallpaperType: WallpaperType) => void): void
以下标记为锁屏管理服务接口废除: 以下标记为锁屏管理服务接口废除:
- isScreenLocked(callback: AsyncCallback<boolean>): void; - isScreenLocked(callback: AsyncCallback<boolean>): void;
- isScreenLocked(): Promise<boolean>; - isScreenLocked(): Promise<boolean>;
- isSecureMode(callback: AsyncCallback<boolean>): void; - isSecureMode(callback: AsyncCallback<boolean>): void;
- isSecureMode(): Promise<boolean>; - isSecureMode(): Promise<boolean>;
- unlockScreen(callback: AsyncCallback<void>): void; - unlockScreen(callback: AsyncCallback<void>): void;
- unlockScreen(): Promise<void>; - unlockScreen(): Promise<void>;
锁屏管理服务替代接口如下: 锁屏管理服务替代接口如下:
- isLocked(): boolean; - isLocked(): boolean;
- isSecure(): boolean; - isSecure(): boolean;
- unlock(callback: AsyncCallback<boolean>): void; - unlock(callback: AsyncCallback<boolean>): void;
- unlock():Promise<boolean>; - unlock():Promise<boolean>;
以下标记为锁屏管理服务接口删除: 以下标记为锁屏管理服务接口删除:
- lockScreen(callback: AsyncCallback<void>): void; - lockScreen(callback: AsyncCallback<void>): void;
- lockScreen(): Promise<void>; - lockScreen(): Promise<void>;
以下标记为锁屏管理服务接口新增: 以下标记为锁屏管理服务接口新增:
- lock(callback: AsyncCallback<boolean>): void; - lock(callback: AsyncCallback<boolean>): void;
- lock():Promise<boolean>; - lock():Promise<boolean>;
以下标记为锁屏管理服务接口变更: 以下标记为锁屏管理服务接口变更:
- onSystemEvent(callback: Callback<SystemEvent>): boolean; - onSystemEvent(callback: Callback<SystemEvent>): boolean;
- sendScreenLockEvent(event: String, parameter: number, callback: AsyncCallback<boolean>): void; - sendScreenLockEvent(event: String, parameter: number, callback: AsyncCallback<boolean>): void;
- sendScreenLockEvent(event: String, parameter: number): Promise<boolean>; - sendScreenLockEvent(event: String, parameter: number): Promise<boolean>;
**壁纸管理服务适配指导** **壁纸管理服务适配指导**
异步接口以getImage为例,示例代码如下: 异步接口以getImage为例,示例代码如下:
```ts ```ts
import pointer from '@ohos.wallpaper'; import pointer from '@ohos.wallpaper';
try { try {
wallpaper.getImage(wallpaper.WallpaperType.WALLPAPER_SYSTEM).then((data) => { wallpaper.getImage(wallpaper.WallpaperType.WALLPAPER_SYSTEM).then((data) => {
console.log(`success to getImage: ${JSON.stringify(data)}`); console.log(`success to getImage: ${JSON.stringify(data)}`);
}).catch((error) => { }).catch((error) => {
console.error(`failed to getImage because: ${JSON.stringify(error)}`); console.error(`failed to getImage because: ${JSON.stringify(error)}`);
}); });
} catch (err) { } catch (err) {
console.error(`failed to getImage because: ${JSON.stringify(err)}`); console.error(`failed to getImage because: ${JSON.stringify(err)}`);
} }
``` ```
同步接口以getFileSync为例,示例代码如下: 同步接口以getFileSync为例,示例代码如下:
```ts ```ts
import pointer from '@ohos.wallpaper'; import pointer from '@ohos.wallpaper';
try { try {
let file = wallpaper.getFileSync(wallpaper.WallpaperType.WALLPAPER_SYSTEM); let file = wallpaper.getFileSync(wallpaper.WallpaperType.WALLPAPER_SYSTEM);
} catch (err) { } catch (err) {
console.error(`failed to getFileSync because: ${err.message}`); console.error(`failed to getFileSync because: ${err.message}`);
} }
``` ```
**锁屏管理服务适配指导** **锁屏管理服务适配指导**
异步接口以lock为例,示例代码如下: 异步接口以lock为例,示例代码如下:
```ts ```ts
import screenLock from '@ohos.screenlock'; import screenLock from '@ohos.screenlock';
try { try {
screenLock.lock((err, data) => { screenLock.lock((err, data) => {
if (err) { if (err) {
console.error(`Failed to lock the screen, because: ${err.message}`); console.error(`Failed to lock the screen, because: ${err.message}`);
return; return;
} }
console.info(`lock the screen successfully. result: ${data}`); console.info(`lock the screen successfully. result: ${data}`);
}); });
} catch (err) { } catch (err) {
console.error(`Failed to lock the screen, because: ${err.message}`); console.error(`Failed to lock the screen, because: ${err.message}`);
} }
``` ```
同步接口以onSystemEvent为例,示例代码如下: 同步接口以onSystemEvent为例,示例代码如下:
```ts ```ts
import screenLock from '@ohos.screenlock'; import screenLock from '@ohos.screenlock';
try { try {
let isSuccess = screenLock.onSystemEvent((event) => { let isSuccess = screenLock.onSystemEvent((event) => {
console.log(`Register the system event which related to screenlock successfully. eventType: ${event.eventType}`) console.log(`Register the system event which related to screenlock successfully. eventType: ${event.eventType}`)
}); });
} catch (err) { } catch (err) {
console.error(`Failed to register the system event which related to screenlock, because: ${err.message}`) console.error(`Failed to register the system event which related to screenlock, because: ${err.message}`)
} }
``` ```
# wantAgent的JS API变更Changelog # wantAgent的JS API变更Changelog
OpenHarmony 3.2.9.1 sp8版本相较于OpenHarmony 3.2.8.1版本,wantAgent的API变更如下
## cl.url.1.trigger类接口变更 ## cl.url.1.trigger类接口变更
trigger(agent: WantAgent, triggerInfo: TriggerInfo, callback?: Callback<CompleteData>): void ; trigger(agent: WantAgent, triggerInfo: TriggerInfo, callback?: Callback<CompleteData>): void ;
...@@ -71,7 +69,7 @@ function getWantAgentCallback(err, data) { ...@@ -71,7 +69,7 @@ function getWantAgentCallback(err, data) {
//getUid回调 //getUid回调
function triggerCallback(err, data) { function triggerCallback(err, data) {
if(err) { if(err) {
console.info('getUid failed!' + err.code + err.message); console.info('getUid failed!' + JSON.stringify(err.code) + JSON.stringify(err.message));
} else { } else {
console.info('getUid ok!' + JSON.stringify(data)); console.info('getUid ok!' + JSON.stringify(data));
} }
...@@ -79,12 +77,12 @@ function getWantAgentCallback(err, data) { ...@@ -79,12 +77,12 @@ function getWantAgentCallback(err, data) {
try { try {
WantAgent.trigger(wantAgent, triggerInfo, triggerCallback); WantAgent.trigger(wantAgent, triggerInfo, triggerCallback);
} catch(err) { } catch(err) {
console.info('getUid failed!' + err.code + err.message); console.info('getUid failed!' + JSON.stringify(err.code) + JSON.stringify(err.message));
} }
} }
try{ try{
WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback); WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback);
} catch(err){ } catch(err){
console.info('getWantAgent failed!' + err.code + err.message); console.info('getWantAgent failed!' + JSON.stringify(err.code) + JSON.stringify(err.message));
} }
``` ```
# web子系统ChangeLog # web子系统ChangeLog
OpenHarmony 3.2.9.1 sp8版本相较于OpenHarmony 3.2.8.1版本,web的API变更如下
## cl.web.1 删除无用错误码 ## cl.web.1 删除无用错误码
web子系统webviewController接口存在变更: web子系统webviewController接口存在变更:
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
**变更影响** **变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现environment模块支持错误码处理,需注意错误码处理的使用。 基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现environment模块支持错误码处理,需注意错误码处理的使用。[相关适配指导参考](../v3.2-beta4/changelogs-filemanagement.md)
**关键接口/组件变更** **关键接口/组件变更**
...@@ -28,7 +28,7 @@ import environment from '@ohos.file.environment'; ...@@ -28,7 +28,7 @@ import environment from '@ohos.file.environment';
**变更影响** **变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现securityLabel模块支持错误码处理,需注意错误码处理的使用。 基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现securityLabel模块支持错误码处理,需注意错误码处理的使用。[相关适配指导参考](../v3.2-beta4/changelogs-filemanagement.md)
**关键接口/组件变更** **关键接口/组件变更**
...@@ -62,7 +62,7 @@ fs模块下Stat接口ino属性类型变更,由number变更为bigint,以适 ...@@ -62,7 +62,7 @@ fs模块下Stat接口ino属性类型变更,由number变更为bigint,以适
**变更影响** **变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现fileAccess模块支持错误码处理,需注意错误码处理的使用。 基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现fileAccess模块支持错误码处理,需注意错误码处理的使用。[相关适配指导参考](../v3.2-beta4/changelogs-filemanagement.md)
**关键接口/组件变更** **关键接口/组件变更**
...@@ -84,7 +84,7 @@ import fileAccess from '@ohos.file.fileAccess'; ...@@ -84,7 +84,7 @@ import fileAccess from '@ohos.file.fileAccess';
**变更影响** **变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现fileExtensionInfo模块支持错误码处理,需注意错误码处理的使用。 基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现fileExtensionInfo模块支持错误码处理,需注意错误码处理的使用。[相关适配指导参考](../v3.2-beta4/changelogs-filemanagement.md)
**关键接口/组件变更** **关键接口/组件变更**
...@@ -106,7 +106,7 @@ import fileExtensionInfo from '@ohos.file.fileExtensionInfo'; ...@@ -106,7 +106,7 @@ import fileExtensionInfo from '@ohos.file.fileExtensionInfo';
**变更影响** **变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现storageStatistics模块支持错误码处理,需注意错误码处理的使用。 基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现storageStatistics模块支持错误码处理,需注意错误码处理的使用。[相关适配指导参考](../v3.2-beta4/changelogs-filemanagement.md)
**关键接口/组件变更** **关键接口/组件变更**
...@@ -128,7 +128,7 @@ import storageStatistics from '@ohos.file.storageStatistics'; ...@@ -128,7 +128,7 @@ import storageStatistics from '@ohos.file.storageStatistics';
**变更影响** **变更影响**
基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现volumeManager模块支持错误码处理,需注意错误码处理的使用。 基于此前版本开发的应用,需注意d.ts位置的变更及import模块名的变更。现volumeManager模块支持错误码处理,需注意错误码处理的使用。[相关适配指导参考](../v3.2-beta4/changelogs-filemanagement.md)
**关键接口/组件变更** **关键接口/组件变更**
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册