作者:坚果 公众号:"大前端之旅" 华为云享专家,InfoQ签约作者,OpenHarmony布道师,电子发烧友鸿蒙MVP,阿里云专家博主,51CTO博客首席体验官,开源项目GVA成员之一,专注于大前端技术的分享,包括Flutter,小程序,安卓,VUE,JavaScript。
引言
因为个人的一些原因,好久也是没有碰OpenHarmony了,今天刚好有空,恰好也是调整好了自己的状态,所以就来开始继续更新了,然后这次开始,我也会从新开始将所有写过的东西,再进行一次梳理,至于为什么,可以说之前可能也写过一些,但是觉得不是那么完美,所以我觉得应该重新开始,好的,接下来开始吧。
因为我是做应用开发的,那么,我肯定会继续从应用开发入手,在此之前,我们需要做一些准备,所谓工欲善其事,必先利其器,OpenHarmony应用开发目前是支持Windows和macOS开发的,我们可以看一下自己的系统是否符合下面的要求。
系统要求
Windows操作系统:Windows10 64 位
- 内存:8GB 及以上
- 硬盘:100GB 及以上
- 分辨率:1280*800 像素及以上
macOS操作系统:macOS 10.15/11/12
- 内存:8GB 及以上
- 硬盘:100GB 及以上
- 分辨率:1280*800 像素及以上
下面是我的电脑的配置
,
然后我的分辨率是2560*1600,硬盘:1T,所以是满足条件的,可以进行开发的。
既然已经满足条件了,那么就需要做一些工具上的准备。和环境的准备
工具准备
DevEco Studio支持Windows系统,在开发OpenHarmony应用/服务前,需要准备OpenHarmony应用/服务的开发环境。环境准备流程如下所示:
img
如上图所示,搭建OpenHarmony应用/服务开发的环境包括软件安装、配置开发环境和运行HelloWorld三个环节,
接下来我们就开始这三个环节
软件安装
macOS环境
1.下载和安装DevEco Studio
进入HUAWEI DevEco Studio产品页,下载DevEco Studio 3.0 Beta3版本。
2.下载完成后,双击下载的“deveco-studio-xxxx.dmg”软件包。
3.在安装界面中,将“DevEco-Studio.app”拖拽到“Applications”中,等待安装完成。
Windows环境
1.进入HUAWEI DevEco Studio产品页,下载DevEco Studio 3.0 Beta3版本。
2.下载完成后,双击下载的“deveco-studio-xxxx.exe”,进入DevEco Studio安装向导,在如下界面选择安装路径,默认安装于C:Program Files路径下,也可以点击Browse...指定其他安装路径,然后点击Next。
3.在如下安装选项界面勾选DevEco Studio后,点击Next,直至安装完成。
点击放大
4.安装完成后,点击Finish完成安装。
点击放大
配置开发环境
下载OpenHarmony SDK
DevEco Studio通过SDK Manager统一管理SDK及工具链,OpenHarmony包含如下SDK包:
组件名称 | 说明 |
---|---|
JS | JS语言SDK包。 |
eTS | eTS(Extended TypeScript) SDK包。 |
Native | C 语言SDK包。 |
Toolchains | SDK工具链,OpenHarmony应用/服务开发必备工具集,包括编译、打包、签名、数据库管理等工具的集合。 |
Previewer | OpenHarmony应用预览器,可以在应用开发过程中查看界面UI布局效果。 |
1.运行已安装的DevEco Studio,首次使用,点击Agree,请选择Do not import settings,点击OK。
2.进入DevEco Studio操作向导页面,设置npm registry,DevEco Studio已预置对应的仓,直接点击Start using DevEco Studio进入下一步。
3.根据DevEco Studio操作向导指引下载SDK,默认存储路径为users目录,也可以选择其他不包含中文字符的路径,然后点击Next。
4.在弹出的SDK下载信息页面,点击Next,并在弹出的License Agreement窗口,点击Accept开始下载SDK。
等待OpenHarmony SDK及工具下载完成,点击Finish,界面会进入到DevEco Studio欢迎页。
创建并运行HelloWorld
开发环境配置好后,可以通过运行HelloWorld工程来验证环境设置是否正确。
创建一个新工程
1.在DevEco Studio的欢迎页,选择Create Project开始创建一个新工程。
2.根据工程创建向导,选择“Empty Ability”模板,点击Next。
img
3.点击Next,进入到工程配置阶段,需要根据向导配置工程的基本信息。我会对一些参数做出说明,
- Project name:工程的名称,可以自定义。
- Project type:工程的类型,标识该工程是一个传统方式的需要安装的应用(Application)或原子化服务(Atomic service),默认类型为Application。
说明
如果是创建的原子化服务,则:
- 原子化服务调试、运行时,在设备桌面上没有应用图标,请参考文末的配置签名信息。来启动原子化服务。
- 原子化服务是免安装的,config.json中自动添加installationFree字段,取值为“true”。
- 如果entry模块的installationFree字段为true,则其相关的所有hap模块的installationFree字段都默认为true;如果entry模块的installationFree字段为false,则其相关的所有hap模块可以配置为true或false。
- 编译构建App时,每个hap包大小不能超过10MB。
- Bundle name:软件包名称,默认情况下,应用ID也会使用该名称,应用发布时,应用ID需要唯一。如果“Project type”选择了Atomic service,则Bundle name的后缀名必须是.hmservice。
- Save location:工程文件本地存储路径。
- Compile API:编译的SDK版本。
- Model:FA模型,每个组件运行在单独的虚拟机实例中,适合有屏设备,适合开发原子化服务;Stage模型(仅Compile API为9及以上支持),多个应用组件运行在同一个虚拟机实例中,面向对象的开发方式,有屏、无屏设备均适用。
- Enable Super Visual:选择开发模式,部分模板支持低代码开发,可选择打开该开关。
- UI Syntax:UI的开发语言。
- Compatible API:兼容的SDK最低版本。
- Device type:该工程模板支持的设备类型。
- Show in service center: 是否在服务中心露出。
4.点击Finish,工具会自动生成示例代码和相关资源,等待工程创建完成。(api版本建议选8,否则可能出现安装失败的原因)
image-20220622225420126
运行HelloWorld
1.将搭载OpenHarmony标准系统的开发板与电脑连接。目前支持的有6种,我也会在文末列出,大家可以自行购买。
2.点击File > Project Structure > Project > Signing Configs界面勾选“Automatically generate signing”,等待自动签名完成即可,点击“OK”。如下图所示:
image-20220622225714227
3.在编辑窗口右上角的工具栏,点击
运行,等待编译完成即可便运行在设备上。
img
至此,恭喜你,你已经完成来第一步。接下来文末我会讲中途出现的几个问题列出,并提出解决办法
总结
通过本文,我们已经成功的配置了开发环境,运行了HelloWord,完成了第一步。向成功又迈出了一步。明天我们开始做点什么呢,大家可以在评论区告诉我。
参考
OpenHarmony开源项目
应用开发
报错
Error: : execute INSTALL task failed, component eTS: 3.1.5.5. Error: : Install eTS dependencies failed. Cause: Unable to run npm install. Solution: See https://developer.harmonyos.com/cn/docs/documentation/doc-guides/faq -development-environment-0000001168829643#section1311117111474
image-20220622224152238
这个时候不要慌张,点击Retry即可
配置签名信息
应用/服务在真机设备上运行,需要提前为应用/服务进行签名,DevEco Studio为开发者提供了自动化签名方案,可以一键完成应用/服务签名。具体操作如下:
点击File > Project Structure > Project > Signing Configs界面勾选“Automatically generate signing”,等待自动签名完成即可,点击“OK”。如下图所示:
说明
如果在config.json中配置了system_basic权限,可以点击Show Restricted Premissions查看使用的受限权限,然后在使用自动签名时,DevEco Studio会自动将受限权限添加到签名文件中。
img
运行应用/服务
安装OpenHarmony应用可以通过DevEco Studio安装,将设备连接上DevEco Studio后,点击
按钮即可安装。
img
支持的开发板
当前OpenHarmony社区支持以下6款开发板,具体介绍如下:
系统类型 | 开发板型号 | 芯片型号 | 主要能力 | 典型应用场景 | 开发板代码仓及社区每日构建版本获取地址 |
---|---|---|---|---|---|
标准系统 | Hi3516DV300 | Hi3516DV300 | Hi3516DV300是新一代Smart HD IP摄像机SOC,集成新一代ISP(Image Signal Processor)、H.265视频压缩编码器、高性能NNIE引擎,在低码率、高画质、智能处理和分析、低功耗等方面有较好的性能。 | 可用在带屏设备上,比如带屏冰箱、车机等。 | 代码仓:?device_soc_hisilicon ?device_board_hisilicon ?vendor_hisilicon 社区每日构建版本获取地址:?http://ci.openharmony.cn/dailys/dailybuilds |
标准系统 | 润和DAYU200 | RK3568 | 润和HH-SCDAYU200是基于Rockchip RK3568,集成双核心架构GPU以及高效能NPU;板载四核64位Cortex-A55 处理器采用22nm先进工艺,主频高达2.0GHz;支持蓝牙、Wi-Fi、音频、视频和摄像头等功能,拥有丰富的扩展接口,支持多种视频输入输出接口;配置双千兆自适应RJ45以太网口,可满足NVR、工业网关等多网口产品需求。 | 影音娱乐、智慧出行、智能家居,如烟机、烤箱、跑步机等。 | 代码仓:?device_soc_rockchip ?device_board_hihope ?vendor_hihope 社区每日构建版本获取地址:?http://ci.openharmony.cn/dailys/dailybuilds |
轻量 | 汇顶GR5515-STARTER-KIT | GR5515 | 支持Bluetooth 5.1的单模低功耗蓝牙SoC,多功能按键和LED指示灯。 | 智能硬件,如手表、手环、价格类标签。 | 代码仓:?device_soc_goodix ?device_board_goodix 社区每日构建版本获取地址:?http://ci.openharmony.cn/dailys/dailybuilds |
轻量 | 朗国LANGO200 | ASR582X | LANGO200 IOT开发板,集成了高性能的WIFI-BLE双模芯片ASR5822、外部存储芯片、语音播放芯片以及模数转换等,同时支持SPI等IOT设备常用外设接口,可外扩OLED显示屏、红外遥控等。 | 智能家居连接类模组。 | 代码仓:?device_soc_asrmicro ?device_board_lango ?vendor_asrmicro 社区每日构建版本获取地址:?http://ci.openharmony.cn/dailys/dailybuilds |
轻量 | 欧智通V200ZR | BES2600 | Multi-modal V200Z-R开发板是基于恒玄科技BES2600WM芯片的一款高性能、多功能、高性价比AIoT SoC开发板Multi-modal V200Z-R开发板,单模组集成四核ARM处理器(最高主频1GHz),集成双频WiFi 双模蓝牙,支持标准的802.11 a/b/g/n/协议,支持BT/BLE 5.2协议,内建多种容量的RAM(最大42MB)和Flash(最大32MB),支持MIPI DSI及CSI,适用于各种AIoT多模态VUI GUI交互硬件场景。 | 智能硬件带屏类模组产品,如音箱、手表等。 | 代码仓:?device_soc_bestechnic ?device_board_fnlink ?vendor_bestechnic 社区每日构建版本获取地址:?http://ci.openharmony.cn/dailys/dailybuilds |
轻量 | 小熊派BearPi-HM Nano | Hi3861 | BearPi-HM_Nano开发板是一块专门为OpenHarmony设计的开发板,板载高度集成的2.4GHz WiFi SoC芯片Hi3861,并板载NFC电路及标准的E53接口,标准的E53接口可扩展智能加湿器、智能台灯、智能安防、智能烟感等案例。 | 智慧路灯、智慧物流、人体红外等连接类设备。 | 代码仓:?device_soc_hisilicon ?device_board_bearpi ?vendor_bearpi 社区每日构建版本获取地址:[http://ci.openharmony.cn/dailys/dailybuilds]( |