一文读懂 HarmonyOS 7.0 带来的十大API重要升级
HarmonyOS 7.0 已于 2026 年 9 月 7 日正式发布,该版本在 HarmonyOS 6.1 基础上增强了若干特性,让鸿蒙系统变得更智能更好用,下面结合《鸿蒙HarmonyOS 6应用开发:从零基础到App上线》一书对 HarmonyOS 7.0 新特性中的常用部分逐一讲解。
一、ArkUI(方舟UI框架)
新增ArkUI组件级沉浸光感,提供的一套高品质视觉与动效体系,通过沉浸式系统新材质效果与空间动效的结合,为应用组件带来通透、精致的视觉表现。
新特性解释
沉浸光感是ArkUI提供的一套从“视觉层”到“感知层”的体验,将光影材质与交互动效表现相结合,帮助应用建立清晰的视觉层次,并在不同设备上保持和谐一致的观感。例如:用户展开菜单时,伴随着形变弹出打破生硬的规整边界,边缘流光勾勒着面板轮廓,将菜单的弹出操作转化为富有沉浸感的体验。
为什么要引入该特性?
APP的菜单、对话框等弹窗类组件原本有着各种的默认白色背景,打开弹窗类组件会直接覆盖APP的部分屏幕区域。如今有了组件级沉浸光感,开发者可给组件赋予轻盈通透的质感:材质滤镜、折射、高光、阴影等多层效果叠加,让底层内容透过材质层自然渗透,带来远超纯色背景的高端视觉表现。
鸿蒙一书的对应章节
《鸿蒙HarmonyOS 6应用开发:从零基础到App上线》一书的“2.2.3 运行配置文件module.json5”小节介绍了如何修改module.json5中的节点配置,那么系统升级到 HarmonyOS 7.0 后,读者可在module.json5内部添加下面的元数据配置,将metadata参数的name字段填“ohos.arkui.UIMaterial.state”,value字段填enable表示开启沉浸光感,那么该APP在运行时就会对弹窗类组件显示沉浸材质的半透明效果。
"metadata": [{
"name": "ohos.arkui.UIMaterial.state",
"value": "enable"
}]
二、Background Tasks Kit(后台任务开发服务)
提醒的倒计时实例对象新增参数重复周期(repeatInterval)和重复次数(repeatCount)。
新特性解释
ReminderRequestTimer是后台代理提醒reminderAgentManager的倒计时实例对象,用于设置提醒的时间。ReminderRequestTimer新增支持下列两个字段:
repeatInterval:重复周期,无默认值,单位为秒。未赋值时,无重复周期。需和repeatCount一起使用。
repeatCount:重复次数,默认值为0,无限次重复。需和repeatInterval一起使用。
为什么要引入该特性?
后台代理提醒对于倒计时场景原本只提供倒计时的秒数,即从几秒开始倒计时。可是原来倒计时只计数一次,倒计时一次结束后就发提醒,不会发第二次提醒。如今新增repeatInterval和repeatCount两个参数,不但支持设定倒计时的次数,还支持设置会在多长的周期内重复倒计时,从而拓宽了后台代理提醒的运用场合。
鸿蒙一书的对应章节
《鸿蒙HarmonyOS 6应用开发:从零基础到App上线》一书的“9.3.2 后台代理提醒”小节介绍了如何通过reminderAgentManager工具实现后台代理提醒功能,那么系统升级到 HarmonyOS 7.0 后,读者可针对倒计时提醒请求ReminderRequestTimer,额外设置repeatInterval和repeatCount两个参数,观察APP是否执行规定的倒计时重复提醒机制。
三、Core File Kit(文件基础服务)
新增listFileExt方法支持递归列出和自定义文件名过滤。可通过配置options中recursion参数实现递归列出所有文件的相对路径。
新特性解释
fileIo模块新增listFileExt和listFileExtSync两个方法,支持列出指定目录下的所有文件名,支持递归列出和自定义文件名过滤。
为什么要引入该特性?
fileIo模块原来已有listFile和listFileSync两个方法,但这两方法仅支持通过Filter类型定义固定的文件过滤配置项。而listFileExt和listFileExtSync两个方法支持新增的FileFilter类型,FileFilter,使得在过滤文件名时更加灵活。
鸿蒙一书的对应章节
《鸿蒙HarmonyOS 6应用开发:从零基础到App上线》一书的“7.3.2 读写文件”小节介绍了使用fileIo模块读写文件,那么系统升级到 HarmonyOS 7.0 后,读者可增加调用原来的listFileSync和新增的listFileExtSync方法,观察新方法是否在过滤文件名时更加方便。
四、Core File Kit(文件基础服务)
新增支持压缩解压缩模块,为应用提供数据压缩和解压缩的能力,可用于文件打包分发、减少存储占用、加速网络传输等场景。
新特性解释
C/C++代码新增支持文件归档类压缩解压缩,适用于将多个文件和目录打包为一个归档文件,或者从归档文件中提取文件到指定目录的场景。主要应用场景包括:
1、将多个文件或目录打包压缩为一个归档文件,便于存储和传输,涉及OH_Archive_Writer_OpenFile、OH_Archive_Writer_Add、OH_Archive_Writer_Close等接口。
2、解压缩归档文件,将压缩包中的文件提取到指定目录,涉及OH_Archive_Reader_OpenFile、OH_Archive_Reader_ExtractAllFile、OH_Archive_Reader_Close等接口。
为什么要引入该特性?
Basic Services Kit原本提供了基于ArkTS的@ohos.zlib (Zip模块),用于文件和数据的压缩解压缩。但该模块仅使用ArkTS开发,需使用zlib全套底层能力,在高性能场景下压缩和解压的速度较慢。
鸿蒙一书的对应章节
《鸿蒙HarmonyOS 6应用开发:从零基础到App上线》一书的“7.3.1 应用沙箱”小节介绍了如何识别APP内部的应用沙箱目录,那么系统升级到 HarmonyOS 7.0 后,读者可在进行NDK开发时,给C/C++代码按照下列步骤压缩归档文件,观察APP是否正确压缩了指定的文件目录。
1、调用OH_Archive_Writer_OpenFile创建归档写入器。
2、调用OH_Archive_Writer_Add向归档中添加文件或目录,支持同时添加多个文件或目录。
3、调用OH_Archive_Writer_Close完成归档写入并释放资源。
五、Core Vision Kit(基础视觉服务)
新增支持通过文本语意搜索图片的能力,即用户可以通过输入文本语意,从图片库中搜索匹配的图像结果。
新特性解释
新增文本搜索图片服务textSearchImage,提供基于文本语意的图片检索能力。用户可以通过输入文本语意,从图片库中搜索匹配的图像结果。该服务适用于图片检索、相册管理、内容推荐等场景。
为什么要引入该特性?
APP原本仅支持通过文本搜索文本,本次新增了通过文本搜索图片功能,通过输入文本关键词,从已插入的图片库中搜索匹配的图像结果,返回图片沙箱路径、作用域和相似度信息,从而能够快速地找到符合要求的图片文件。
鸿蒙一书的对应章节
《鸿蒙HarmonyOS 6应用开发:从零基础到App上线》一书的“7.3.3 图片选择器”小节介绍了如何通过photoAccessHelper工具跳到相册手工选取图片,那么系统升级到 HarmonyOS 7.0 后,读者可先在ETS代码开头添加下面的导包语句:
import { textSearchImage } from '@kit.CoreVisionKit';
再按照下列步骤实现文本搜索图片功能:
1、在aboutToAppear中调用textSearchImage.init()初始化文本搜索图片分析器服务。
2、调用textSearchImage.insertImage方法,将图片特征插入数据库。
3、调用textSearchImage.search方法,获取匹配的图像结果。
4、调用textSearchImage.deleteImage方法,从数据库中删除指定的图片数据。
5、在aboutToDisappear中调用textSearchImage.release()释放资源。
六、Image Kit(图像服务)
新增GIF图像元数据类、JFIF图像元数据类、TIFF图像元数据类、PNG图像元数据类以及AVIS图像元数据类,用于存储对应格式图像的元数据。
新特性解释
image模块新增GifMetadata作为GIF图像元数据类,新增JfifMetadata作为JFIF图像元数据类,新增TiffMetadata作为TIFF图像元数据类,新增PngMetadata作为PNG图像元数据类,新增AvisMetadata作为AVIS图像元数据类。上述新增对象用于存储图像的元数据,以执行后续的图像修改操作。
为什么要引入该特性?
image模块从 HarmonyOS 6.1 开始增加支持Heif格式的图像元数据,从 HarmonyOS 6.1.1 开始增加支持WebP格式的图像元数据。如今又增加支持GIF格式的图像元数据、JFIF格式的图像元数据、TIFF格式的图像元数据、PNG格式的图像元数据以及AVIS格式的图像元数据,从而支持更多格式的图像处理。
鸿蒙一书的对应章节
《鸿蒙HarmonyOS 6应用开发:从零基础到App上线》一书的“13.1.3 获取图片信息”小节介绍了如何使用image模块获取图片信息,那么系统升级到 HarmonyOS 7.0 后,读者还能调用image.GifMetadata的createInstance方法创建GIF图像元数据,调用image.JfifMetadata的createInstance方法创建JFIF图像元数据,调用image.TiffMetadata的createInstance方法创建TIFF图像元数据,调用image.PngMetadata的createInstance方法创建PNG图像元数据,调用image.AvisMetadata的createInstance方法创建AVIS图像元数据,然后观察能否正常读写上述格式的图像。
七、Map Kit(地图服务)
新增支持折线添加文字。
新特性解释
map模块新建折线后,可调用MapPolyline的addLineText方法给折线添加文字,通过removeLineText方法可删除折线文字。
为什么要引入该特性?
调用MapComponentController控制器的addPolyline方法可在地图上添加一条折线,但无法在折线上添加线条文字,使得每段折线的含义不甚明了。如今支持在折线上添加线条文字,方便用户理解各段折线的具体含义。
鸿蒙一书的对应章节
《鸿蒙HarmonyOS 6应用开发:从零基础到App上线》一书的“14.3.3 搜索地点信息”小节介绍了如何调用MapComponentController控制器的addPolyline方法在地图上添加一条折线,那么系统升级到 HarmonyOS 7.0 后,读者调用addPolyline方法方法获得折线实例后,再调用折线实例的addLineText添加折线的线条文本,观察地图上的折线是否增加显示指定的线条文本。
八、Media Kit(媒体服务)
新增支持广告插播能力,实现广告资源的播放以及广告事件的监听。
新特性解释
media模块新增createAVAdsController方法创建一个与播放器实例关联的广告播放控制器AVAdsController,再通过AVAdsController对象的下列方法管理广告资源(如添加和移除广告源、跳过当前广告、禁用剩余广告等):
addAdsMediaSource:向广告控制器添加广告媒体源,指定广告在主媒体资源播放进度中的插入位置。
removeAdsMediaSource:移除广告控制器中指定的广告媒体源。如果该广告正在播放,则等广告播放完后再移除。
skipCurrentAdsMediaSource:跳过当前正在播放的广告内容。
disableAllAdsMediaSource:禁用当前会话中剩余的广告内容播放,后续尚未播放的广告将不再播放。
release:释放AVAdsController对象。
为什么要引入该特性?
原本media模块可通过createAVPlayer方法创建音视频播放器,但播放器仅能播放指定的音视频内容,不能管理片头或者片尾的广告资源。如今新增了广告播放控制器AVAdsController,方便开发者给音视频内容定制广告媒体源。
鸿蒙一书的对应章节
《鸿蒙HarmonyOS 6应用开发:从零基础到App上线》一书的“13.3.2 播放音频”小节介绍了如何使用AVPlayer播放音视频文件,那么系统升级到 HarmonyOS 7.0 后,读者可调用createAVAdsController方法创建广告播放控制器,再通过广告控制器管理音视频文件的关联广告资源,观察广告画面是否正常播放和跳过。
九、Notification Kit(通知服务)
新增是否开启锁屏通知、横幅通知等字段。
新特性解释
notificationManager模块的NotificationSetting类型新增下列说明字段:
lockScreenEnabled:表示是否开启锁屏通知。
bannerEnabled:表示是否开启横幅通知。
badgeNumberEnabled:表示是否开启通知角标数字展示。
notificationEnabled:表示应用通知使能状态。
为什么要引入该特性?
原本APP开关锁屏通知、横幅通知要由用户到系统设置菜单中操作,但用户开关之后,APP无法得知哪些功能被用户开关。如今只要调用getNotificationSetting方法,即可获取应用的通知设置,包括锁屏通知、横幅通知、桌面角标、振动、铃声等开关状态,使得APP推送通知更有针对性。
鸿蒙一书的对应章节
《鸿蒙HarmonyOS 6应用开发:从零基础到App上线》一书的“9.2.3 消息渠道”小节介绍了如何按照渠道类型推送各自对应的消息,那么系统升级到 HarmonyOS 7.0 后,读者可调用getNotificationSetting方法,获取应用对于锁屏通知、横幅通知等功能的开关状态,观察是否准确获取这些功能的开关状态。
十、Scan Kit(扫码服务)
新增支持查询当前设备是否支持默认界面扫码,以及是否支持自定义界面扫码。
新特性解释
scanCore模块新增isDefaultScanSupported方法用于查询当前设备是否支持默认界面扫码,新增isCustomScanSupported方法用于查询当前设备是否支持自定义界面扫码。
为什么要引入该特性?
原本 Scan Kit 默认所有设备都支持默认界面扫码和自定义界面扫码,但随着鸿蒙系统的全面铺开,可能存在少数设备不支持默认界面扫码或者不支持自定义界面扫码的情况,为此新增isDefaultScanSupported和isCustomScanSupported两个方法,提前获取当前设备对默认界面扫码和自定义界面扫码的支持情况,以便后续有针对性地区别处理。
鸿蒙一书的对应章节
《鸿蒙HarmonyOS 6应用开发:从零基础到App上线》一书的“15.2.1 扫描二维码”小节介绍了如何通过scanCore和scanBarcode两个模块实现扫码功能,那么系统升级到 HarmonyOS 7.0 后,读者可在扫码前先调用isDefaultScanSupported和isCustomScanSupported两个方法,观察能否获取当前设备对默认界面扫码和自定义界面扫码的支持情况。
更多的鸿蒙应用开发技术参见《鸿蒙HarmonyOS 6应用开发:从零基础到App上线》

更多推荐




所有评论(0)