当前位置: 首页 > article >正文

鸿蒙开发入门之Hello World

正所谓“工欲善其事,必先利其器”。搭建HarmonyOS开发环境需要满足以下基本条件。

• 操作系统:64位的Windows或macOS系统

• 内存:8GB及以上

• 硬盘:100GB及以上

• 分辨率:1280*800像素及以上

一、DevEco Studio简介

HUAWEI DevEco Studio(获取工具请单击链接下载,以下简称DevEco Studio)是基于IntelliJ IDEA Community开源版本打造,为运行在HarmonyOS系统上的应用和元服务(以下简称应用/元服务)提供一站式的开发平台。

作为一款开发工具,除了具有基本的代码开发、编译构建及调测等功能外,DevEco Studio还具有如下特点:

  • 高效智能代码编辑:支持ArkTS、JS、C/C++等语言的代码高亮、代码智能补齐、代码错误检查、代码自动跳转、代码格式化、代码查找等功能,提升代码编写效率。更多详细信息,请参考代码编辑。

  • 多端双向实时预览:支持UI界面代码的双向预览、实时预览、动态预览、组件预览以及多端设备预览,便于快速查看代码运行效果。更多详细信息,请参考界面预览。

  • 多端设备模拟仿真:提供HarmonyOS本地模拟器,支持Phone等设备的模拟仿真,便捷获取调试环境。更多详细信息,请参考使用模拟器运行应用/元服务。

  • DevEco Profiler性能调优:提供实时监控能力和场景化调优模板,便于全方位的设备资源监测,采集数据覆盖多个维度,为开发者带来高效、直通代码行的调优体验。

二、快速开始

开发鸿蒙应用需要使用华为开发的集成开发环境 HUAWEI DevEco Studio,如果还没有安装DevEco Studio,可以到官网:下载中心 | 华为开发者联盟-HarmonyOS开发者官网,共建鸿蒙生态选择对应的版本下载并安装。

图片


安装完成后,打开DevEco Studio。

图片

三、创建和运行Hello World

身为开发者,第一课永远从 Hello World 开始。

图片

3.1 创建Hello World

打开DevEco Studio,在欢迎页单击Create Project,创建一个新工程。根据工程创建向导,选择创建Application或Atomic Service。选择Empty Ability模板,然后单击Next。

图片


配置项目参数。修改项目名称(Project name)为 QuickStart,其余保持默认即可。点击【Finish】按钮完成配置。

图片


项目创建成功后的界面。

图片


早期的HarmonyOS支持使用Stage模型和FA模型两种模型来创建ArkTS工程。不过从版本9开始,HarmonyOS仅支持使用Stage模型创建的ArkTS工程,也即是我们现在看到的工程结构。

Stage模型的ArkTS工程结构主要由AppScope、entry、hvigor、build-profile.json5以及hvigorfile.ts文件构成,说明如下。

  • AppScope > app.json5:应用的全局配置信息。

  • entry:应用/服务模块,会编译构建生成一个HAP。

  • oh_modules:存放应用/服务模块的第三方库依赖信息。

  • src > main > ets:用于存放ArkTS源码。

  • src > main > ets > entryability:应用/服务的入口文件。

  • src > main > ets > pages:应用/服务业务页面。

  • src > main > resources:存放应用/服务用到的资源文件,如图片、多媒体、字符串、布局文件等。

  • src > main > module.json5:模块配置文件,包含HAP配置信息、应用配置信息。

  • build-profile.json5:模块信息、编译配置文件,包括targets、buildOption配置等。

  • hvigorfile.ts:模块级编译构建任务脚本。

  • oh-package.json5:三方包声明文件的入口以及包名配置。

  • build-profile.json5:应用级配置信息,包括签名、产品配置等。

  • hvigorfile.ts:应用级编译构建任务脚本。

对于我们初学者来说,目前只需关注一个文件:entry/src/main/ets/pages/Index.ets,它包含页面布局元素。

图片


其中,@Component 装饰器用于定义和管理自定义组件,build() 函数用于定义组件的 UI 结构。组件使用 struct 关键字定义。@Entry 装饰的 @Component 是 UI 页面的入口,在单个 UI 页面中,最多使用 @Entry 定义一个自定义组件。

Text 组件展现一段文本,文本内容来自 @State 装饰器标记的响应式状态变量 message。使用 id() 为它创建唯一标识符,fontSize() 定义字号,fontWeight 定义字重。

alignRules 属性用于指定子元素相对于父容器的对齐规则,仅当父容器为 RelativeContainer 时有效。这里设置 Text 组件横向居中,纵向也居中。

点击右侧边缘的【Preview】按钮可以预览页面效果。

图片


点击右侧的【…】小按钮,弹出设备的参数设置面板,可以调节语言、分辨率等设备参数。

图片


预览时有一个细节需要注意,需要选中 @Entry 所在的文件,预览器才能顺利打开。否则,你会看到一个空白的预览面板。

3.2 运行Hello World

搭载HarmonyOS系统的真机与电脑连接。点击File > Project Structure… > Project > SigningConfigs界面勾选“Support HarmonyOS”和“Automatically generate signature”,点击界面提示的“Sign In”,使用华为账号登录。等待自动签名完成后,点击“OK”即可。

图片


当然,我们也可以使用本地模拟器来运行HarmonyOS应用,如果还没有创建模拟器,可以先创建一个。

图片


不过需要注意的是,在使用本地模拟器运行HarmonyOS应用时,需要注意DevEco Studio的版本和设备镜像的版本保持一致,否则可能出现提示“compatibleSdkVersion and releaseType of the app do not match the apiVersion and releaseType on the device.”错误信息。

图片


ps:由于HarmonyOS NEXT的发布,国内掀起了一股HarmonyOS开发的热潮,如果大家对红米开发感兴趣,推荐一本之前的书,此书也是基于NEXT版本写的,值得参考。

图片


参考:

  • 华为开发者联盟-HarmonyOS开发者官网,共建鸿蒙生态

  • DevEco Studio 5.0.0-AI辅助编程(Beta)-华为开发者联盟


http://www.kler.cn/a/514811.html

相关文章:

  • GPT 结束语设计 以nanogpt为例
  • 深度学习笔记——循环神经网络RNN
  • 下载ovkml文件的数据
  • 高效安全文件传输新选择!群晖NAS如何实现无公网IP下的SFTP远程连接
  • 如何实现亿级用户在线状态统计?
  • 华为EC6110T-海思Hi3798MV310_安卓9.0_通刷-强刷固件包
  • 炸场硅谷,大模型“蒸汽机”迎来“瓦特时刻”
  • 论文速读|Multi-Modal Disordered Representation Learning Network for TBPS.AAAI24
  • 错误记录(二)virtualbox连共享文件夹
  • 09_异步加载_单例模式_常量类配置_不可销毁
  • Spring MVC(二)
  • Unreal Engine 5 C++ Advanced Action RPG 十一章笔记
  • CSS语言的学习路线
  • 【蓝桥杯】43693.日期问题
  • 【Unity3D实现雨下在窗户上的效果】
  • OpenEuler学习笔记(九):安装 OpenEuler后配置和优化
  • 【Leetcode 每日一题】1561. 你可以获得的最大硬币数目
  • 数据库事务详解
  • 分支与循环(下)
  • 汽车制造行业案例 | 发动机在制造品管理全解析(附解决方案模板)
  • fastapi 博客系统模型分析
  • 考研408笔记之数据结构(六)——查找
  • go语言gui窗口应用之fyne框架-动态添加、删除一行控件(逐行注释)
  • Django的models.model如何使用
  • LoRA面试篇
  • AIGC浪潮下,图文内容社区数据指标体系如何构建?