HarmonyOS首个api17 release已经正式发布了。这次的更新DevEco增加了很多重大特性,系统能力也有所增强。DevEco现在支持创建api17的应用了,模拟器也首次支持阔折叠手机以及2in1设备,我们先来看看DevEco有哪些新特性。
有更多的ACL权限支持通过自动签名快速申请
鸿蒙相比于其它手机系统,一个重要的特性就是在权限方面,管理更加严格了。部分ACL权限仅对少量符合特殊场景的应用开放使用,而且使用这些权限,需提交审核,审核通过后才能正常使用。而在开发阶段,我们可以通过自动签名来申请这些权限。
- ohos.permission.USE_FRAUD_CALL_LOG_PICKER
- ohos.permission.USE_FRAUD_MESSAGES_PICKER
- ohos.permission.ACCESS_DISK_PHY_INFO
- ohos.permission.SET_PAC_URL
- ohos.permission.PERSONAL_MANAGE_RESTRICTIONS
- ohos.permission.START_PROVISIONING_MESSAGE
- ohos.permission.PRELOAD_FILE
- ohos.permission.kernel.ALLOW_WRITABLE_CODE_MEMORY
- ohos.permission.kernel.DISABLE_CODE_MEMORY_PROTECTION
- ohos.permission.kernel.ALLOW_EXECUTABLE_FORT_MEMORY
- ohos.permission.GET_WIFI_PEERS_MAC
- ohos.permission.READ_WRITE_DESKTOP_DIRECTORY
- ohos.permission.MANAGE_PASTEBOARD_APP_SHARE_OPTION
- ohos.permission.MANAGE_UDMF_APP_SHARE_OPTION
- ohos.permission.FILE_ACCESS_PERSIST
- ohos.permission.READ_WRITE_USER_FILE
- ohos.permission.READ_WRITE_USB_DEV
- ohos.permission.SHORT_TERM_WRITE_IMAGEVIDEO
- ohos.permission.INPUT_MONITORING
- ohos.permission.INTERCEPT_INPUT_EVENT
- ohos.permission.SYSTEM_FLOAT_WINDOW
- ohos.permission.READ_AUDIO
- ohos.permission.READ_IMAGEVIDEO
- ohos.permission.WRITE_AUDIO
- ohos.permission.WRITE_IMAGEVIDEO
- ohos.permission.ACCESS_DDK_USB
- ohos.permission.ACCESS_DDK_HID
- ohos.permission.READ_PASTEBOARD
- ohos.permission.READ_CONTACTS
- ohos.permission.WRITE_CONTACTS
- ohos.permission.ACCESS_VIRTUAL_SCREEN
- ohos.permission.PERSISTENT_BLUETOOTH_PEERS_MAC
- ohos.permission.kernel.DISABLE_GOTPLT_RO_PROTECTION
- ohos.permission.MANAGE_APN_SETTING
其中前32个是之前版本就支持的,最后2个权限是这次新增加的。
自动监听WebView进程并转发端口
这个能力实在是太重要了,还记得在前面的版本中,开发webview时,被webview调试所支配的烦恼吗。每一个前端同事都会问一个问题,这个H5页面怎么在浏览器里面调试呀,你说要配hdc,使用hdc查询app的进程id,再用进程id连接devtool。前端同事听得云里雾里的,怎么这么麻烦,怎么app重新打开又不行了,你又解释说重新打开,app的进程id变了,要重新查询进程id进行连接。这次的更新,这个问题终于解决了,再也不用手动查询进程进行连接了。我们在运行配置中开启自动webview调试后,运行app,DevEco就会自动获取进程id进行连接了,操作步骤单击Run > Edit Configurations,在General中,勾选Auto WebView Debug。
模拟器首次支持阔折叠手机和PC/2in1电脑
在之前的版本中,模拟器仅支持手机(折叠屏)和平板,虽然创建项目时,可以选择2in1设备,但模拟器没有2in1设备,真机电脑也没有上市,导致对2in1设备感兴趣的开发者,仅能在预览中体验,非常的不友好。而像最近上市的阔折叠手机,要想体验适配,也只能买真机了。这次DevEco的更新,模拟器中已经支持阔折叠手机和2in1电脑了。阔折叠界面效果如下
2in1电脑模拟器界面效果如下
系统能力的增强
- 指定窗口大小
支持通过startAbility的属性StartOptions来指定创建新窗口的大小(minWindowWidth、minWindowHeight、maxWindowWidth、maxWindowHeight)。在2in1设备上,app可以限制窗口大小,避免用户托动窗口时,窗口过小或过大,导致界面显示异常。
- AR Engine新增深度估计
AR Engine提供的深度估计功能通过算法输出深度图数据(物体表面离相机的距离组成的图)和深度置信度图信息,为开发者提供环境三维感知能力。该技术应用场景可应用于例如测量、体积估算、场景重建等获取空间物体深度信息,基于此信息完成一些空间计算任务,比如计算物体体积等。
- ArkUI针对2in1能力的增强
针对PC/2in1设备的窗口管理新增支持主窗的尺寸记忆功能,针对PC/2in1设备和平板设备的窗口管理新增支持设置子窗或悬浮窗窗口边缘阴影的模糊半径,针对PC/2in1设备和平板设备的窗口管理新增支持设置子窗口在其父窗口处于拖拽移动或拖拽缩放过程时,该子窗口是否支持跨多个屏幕同时显示。
- 新增File Manager Service Kit
File Manager Service Kit(文件管理服务)为开发者提供文件管理相关能力,开发者通过File Manager Service Kit完成文件删除到回收站、获取文件图标等功能,满足用户对文件管理的多样性诉求。