HUAWEI DevEco Studio(以下简称DevEco Studio)是面向华为终端全场景多设备的一站式集成开发环境(IDE),为开发者提供工程模板创建、开发、编译、调试、测试、发布等E2E的HarmonyOS应用开发服务。通过使用DevEco Studio,开发者可以更高效的开发具备HarmonyOS分布式能力的应用,进而提升创新效率。2021年3月,DevEco Studio又迎来更新,2.1 Beta3版本强势来袭。
新版本的到来,究竟能给广大HarmonyOS应用开发者带来哪些不一样的体验?让我们在文中一一揭晓。
亮点一:预览器新增双向预览功能
在HarmonyOS应用开发过程中,开发者可通过点击“Previewer”,查看应用的UI界面效果。当开发者发现UI界面的布局显示不符合预期时(eg:控件的宽度不符合设定值、控件不显示等),需要逐一排查UI界面中布局或控件的异常。
为了提高排查的效率,DevEco Studio 2.1 Beta3在已有的 “实时预览”和“动态预览”基础上,全新解锁了双向预览功能。
实时预览:只要在布局文件中保存了修改的源代码,在预览器中就可以实时查看布局效果。
动态预览:在预览器界面,可以在预览器中操作应用的交互动作,如点击事件、跳转、滑动等,与应用运行在真机设备上的交互体验一致。
所谓双向预览,即支持代码编辑器、预览器界面(含属性列表)两者之间的联动,便于快速定位控件,从而提升解决UI界面问题的效率。开发者可通过在预览器界面,点击
图标的方式,打开双向预览功能。
具体联动效果如下:
①通过预览器界面中的属性列表,修改属性或样式后,代码编辑器中的源码会同步修改,并实时刷新预览器界面;
②同样的,如果在代码编辑器中修改源码,将会实时刷新预览器界面及属性列表。
但值得注意的是,若碰到以下情况,则不支持修改其属性:
hml布局代码里使用了数据绑定的属性;
xml布局代码里使用了资源引用的属性;
UI界面设置了动画效果。
温馨提示:不同的API Version版本,预览器支持的功能略有不同,具体差异如下:
亮点二:预览器新增Java UI界面的数据模拟功能
在预览场景中,由于代码的运行环境与真机设备上的运行环境不同,调用部分接口时无法获取到有效的返回值。开发者若想根据返回值做出不同的UI界面展现,则需手动反复修改代码逻辑,以验证不同UI界面效果。
**为了减少修改,DevEco Studio提供PreviewMock数据模拟功能,即在不改变业务运行逻辑的前提下,模拟API或者业务代码中的各种method(不包括构造方法)的返回值和对象中的Field(不包括final字段)的值。**这样开发者就可以在预览时,查看到不同返回值带来的界面变化。
不过值得注意的是,DevEco Studio 2.1 Beta3当前仅支持Java UI界面的PreviewMock数据模拟功能。与此同时,要想使用PreviewMock数据模拟功能,需先在模块的build.gradle中添加相关依赖,并重新同步工程。
(图:在build.gradle中添加PreviewMock的依赖)
除了上述的两大亮点功能,在Java UI界面预览方面,开发者在预览Ability或AbilitySlice时,保存修改后的代码,即可做到实时预览;在JS UI界面预览方面,开发者可直接选择某一个page(页面)进行实时动态预览。
亮点三:编辑器新增config.json可视化配置功能
作为HarmonyOS应用开发的入门选手,你是否为了了解配置项的含义,而反复查阅HarmonyOS官网的资料文档?为了减少开发者反复切换界面查阅资料文档的行为,DevEco Studio 2.1 Beta3新增了可视化配置功能。
开发者可通过打开config.json文件,点击
按钮,打开设置界面,查看该项目所需填写的重要属性及其含义,完善应用名称、应用版本号、应用类型、Ability、设备类型、应用权限等配置项。
然而,在开发过程中,可能存在配置项层级过多的场景,例如:配置“Module › Ablilities › Meta Data › Merge Rule › Replace”字段时,用户可通过搜索框快速定位到该属性,点击add按钮,输入相关合并规则,触发系统在config.json文件中自动创建配置项的树型结构,完成合并规则的配置,节省配置时间。
亮点四:编辑器新增资源创建向导功能
开发者在创建带限定词的资源目录时,需考虑限定词的取值、不同限定词相互搭配时的先后顺序等,稍有偏差则会导致应用在运行时,HarmonyOS检测不到合适的资源,无法呈现预期效果。
为了降低开发者在创建带限定词的资源目录时的出错机率,DevEco Studio 2.1 Beta3新增了资源创建向导功能,用户根据界面提示进行选择或输入,即可完成资源目录及文件的创建,无需思索各种限定词之间的组合关系。
除了上述的两大亮点功能,DevEco Studio 2.1 Beta3 在编辑器方面,还做了其它优化,具体优化细节如下:
亮点五:新增Java测试框架
为了减化繁琐的人工测试环节,DevEco Studio 2.1 Beta3 新增了Java测试框架,提供java代码白盒测试能力,帮助开发者高效编写和执行测试用例,保障应用基础质量。
在开发阶段,开发者可借助由Java测试框架提供的IAbilityDelegator,进行APP组件操控测试(如:启动/关闭FA、获取界面UI元素、注入UI点击事件等),及时发现UI交互问题。或使用JUnit 4语法范式,编写测试用例、调用系统接口,获得API返回值或触发业务流程,根据接口返回值或业务状态,判断业务逻辑的正确性。
Java测试框架在真机或远程模拟器设备上运行的前提:
①远程模拟器需注册开发者账号并完成实名认证;
②真机设备需搭载HarmonyOS操作系统,并打开调试模式,且有相应的签名文件。
亮点六:新增了5个手机(Phone)工程模板
DevEco Studio支持手机(Phone)、平板(Tablet)、车机(Car)、智慧屏(TV)、智能穿戴(Wearable)、轻量级智能穿戴(Lite Wearable)和智慧视觉 (Smart Vision)七种设备的HarmonyOS应用开发,支持Java、JS和C/C++编程语言。
为了方便开发者的使用,DevEco Studio提供了多设备类型、不同开发语言的Ability模板。本次的新版本,在原有的基础上,新增了5个手机(Phone)工程模板,目前手机(Phone)工程模板共19个。开发者们可根据工程向导,挑选合适的模板,轻松创建适用于各类设备的工程,并自动生成对应的代码和资源模板。
除了以上的六大亮点,DevEco Studio 2.1 Beta3还能给广大开发者带来哪些细节的优化?
在开发者打开历史工程时,DevEco Studio 2.1 Beta3会提示开发者将历史工程进行升级适配,点击提示中的“Update”,即可一键自动化修改工程中的配置信息,省去开发者逐一修改相关配置的烦恼。
只有一项优化,那怎能行?DevEco Studio 2.1 Beta3还在不少细节上进行了优化。下面请看细节清单:
①升级IntelliJ IDEA底座至IntelliJ IDEA Community Edition 2020.2.4版本(温馨提示:由于底座升级,开发者需要手工升级不可用的三方插件,避免出现已安装的三方插件不兼容情况)
②在调试阶段,开发者可设置hap包的安装方式。若选择覆盖安装,则会保留已安装应用内的缓存数据,无需重装应用后再重新构建相关数据,方便调试。
③解决了部分开发者下载Node.js缓慢或者失败的问题。通过集成Node.js并预置华为公有云的npm仓,进一步缩短搭建HarmonyOS应用开发环境的时间。
④已适配支持macOS11.2.2版本。
⑤解决了XML里面的drawable的资源无法联想的问题。
六大新增亮点,六项细节优化
一次次的迭代升级,只为服务每一个你
DevEco Studio愿携手广大开发者,共建HarmonyOS生态
下载链接:https://developer.harmonyos.com/cn/develop/deveco-studio#download