news 2026/5/14 14:48:54

鸿蒙开发入门:从环境搭建到第一个ArkTS应用,30分钟上手

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
鸿蒙开发入门:从环境搭建到第一个ArkTS应用,30分钟上手

鸿蒙开发入门:从环境搭建到第一个ArkTS应用,30分钟上手

对新手来说,鸿蒙开发的“入门门槛”往往卡在“环境装不上”“语法搞不懂”——但只要找对方法,30分钟就能从0跑通第一个ArkTS应用。本文聚焦DevEco Studio安装、API 9配置、ArkTS基础语法,搭配进阶版Hello World案例,帮你快速上手鸿蒙开发。

一、第一步:10分钟搞定DevEco Studio环境

鸿蒙开发的核心工具是DevEco Studio(类似Android Studio),环境搭建只需3步:

1. 下载安装包

从华为开发者联盟官网下载DevEco Studio(选择对应系统版本,建议选4.0及以上版本,适配API 9)。

2. 安装与配置SDK

  • 安装时默认勾选“HarmonyOS SDK”,安装完成后启动软件;
  • 首次启动会自动下载API 9的SDK(若未自动下载,可在Settings > Appearance & Behavior > System Settings > HarmonyOS SDK中手动勾选“API 9”并下载)。

3. 验证环境

创建新项目时,若能选择“Phone”设备、“API 9”版本,则环境搭建成功。

二、ArkTS基础语法:5分钟掌握核心要点

ArkTS是鸿蒙开发的主力语言,基于TypeScript扩展,核心语法和前端很像,新手只需记住3个关键点:

1. 组件化开发

ArkTS用**@Component定义组件,用build()**方法写UI结构:

// 定义一个简单组件@Componentstruct HelloComponent{build(){// 文本组件Text('Hello HarmonyOS').fontSize(30)// 设置字体大小.fontColor('#0066cc')// 设置字体颜色}}

2. 状态管理

用**@State**定义响应式变量,变量变化时UI自动更新:

@Componentstruct CountComponent{// 响应式状态变量@Statecount:number=0;build(){Column(){// 垂直布局容器Text(`当前计数:${this.count}`)Button('点击加1').onClick(()=>{// 点击事件this.count++;})}}}

3. 布局容器

常用Column(垂直布局)Row(水平布局)、**Flex(弹性布局)**管理组件位置,替代传统的CSS布局:

Column({space:20,alignItems:ItemAlign.Center}){// 垂直布局,组件间距20,居中对齐Text('标题')Row({justifyContent:FlexAlign.SpaceAround}){// 水平布局,组件均匀分布Button('按钮1')Button('按钮2')}}.width('100%')// 宽度占满父容器.height('100%')// 高度占满父容器

三、实战:15分钟写一个进阶版Hello World

我们写一个带“点击计数+动态问候”的Hello World应用,步骤如下:

1. 创建项目

打开DevEco Studio,选择“Create Project”,依次选择:

  • 模板:“Empty Ability”;
  • 设备:“Phone”;
  • API版本:“9”;
  • 项目名称:“HelloHarmony”;
  • 语言:“ArkTS”。

2. 编写核心代码

打开entry/src/main/ets/pages/Index.ets,替换为以下代码:

@Entry// 标记为入口组件@Componentstruct HelloHarmony{// 响应式状态:用户名、点击次数@Stateusername:string='鸿蒙开发者';@StateclickCount:number=0;build(){Column({space:30,// 组件间距alignItems:ItemAlign.Center,// 水平居中justifyContent:FlexAlign.Center// 垂直居中}).width('100%').height('100%'){// 问候文本Text(`你好,${this.username}!`).fontSize(35).fontWeight(FontWeight.Bold)// 计数文本Text(`你已点击:${this.clickCount}`).fontSize(20).fontColor('#666')// 按钮:点击计数+修改用户名Button('点击互动').width(150).height(50).backgroundColor('#0066cc').fontColor('#fff').onClick(()=>{this.clickCount++;// 点击3次后修改用户名if(this.clickCount===3){this.username='ArkTS爱好者';}})}}}

3. 运行应用

  • 选择模拟器(DevEco Studio自带“Phone”模拟器,启动后自动加载);
  • 点击右上角“Run”按钮,等待编译完成,模拟器会显示应用界面:
    • 初始显示“你好,鸿蒙开发者!”;
    • 点击按钮,计数增加;
    • 点击3次后,用户名变为“ArkTS爱好者”。

四、新手避坑:2个常见问题

  1. 模拟器启动失败:检查电脑是否开启虚拟化(BIOS中开启VT-x/AMD-V),或重启DevEco Studio;
  2. 语法报错:确保项目选择的是“ArkTS”语言,而非“JavaScript”,且API版本为9。

总结

鸿蒙开发入门并不难:DevEco Studio环境搭建10分钟搞定,ArkTS核心语法和前端高度相似,再通过一个小案例就能快速上手。后续可以尝试扩展功能(比如添加输入框修改用户名),逐步熟悉鸿蒙的组件库和API。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/9 15:27:15

真实污水处理项目中的S7-1200实战经验

西门子PLC1200真实项目案例程序十 KTp1200屏画面 十电路图 博途V16 V17版,模拟量输入输出处理,液位设置处理,流量处理,双设备轮换,modbus通讯控制变频器,事件记录,污水处理设备程序最近刚完成某…

作者头像 李华
网站建设 2026/5/13 17:15:11

JavaScript 常见算法复杂度总结(大O表示法)

大O表示法具体含义总结表时间复杂度详解大O表示名称含义示例增长曲线执行时间(n1000)假设O(1)常数时间执行时间不随输入规模变化数组索引访问、哈希表查找水平线1单位时间O(log n)对数时间执行时间随输入规模对数增长二分查找、平衡树操作缓慢上升曲线10单位时间O(√n)平方根时…

作者头像 李华
网站建设 2026/5/8 13:45:25

第六章 染色体变异

第七章细菌和病毒的遗传第八章基因的表达与调控第九章基因工程和基因组学第十章基因突变第十一章细胞质遗传第十二章遗传与发育第十三章数量性状遗传第十四章群体遗传与进化

作者头像 李华
网站建设 2026/5/11 14:15:01

TIME_WAIT详解

一、为什么需要 TIME_WAIT?虽然连接看起来已经可以结束了,但 TCP 设计这个状态主要是为了解决两个核心问题:1. 确保最后一个 ACK 能够到达对方在 TCP 四次挥手中,主动关闭方发送完最后一个确认包(ACK)后&am…

作者头像 李华
网站建设 2026/5/12 23:15:26

buuctf中的picoctf_2018_rop chain

首先checksec检查保护机制:-32位程序-开启了栈不可执行机制然后使用反汇编工具IDA进行分析:看到了vuln函数和左边的win1,win2函数及flag函数,第一眼看到就觉得能够从这些函数中获取flag,但实际行不行呢,先一…

作者头像 李华
网站建设 2026/5/10 4:14:51

MuJoCo: 开源的高性能物理仿真引擎

文章目录🔍 核心特点1. **高效且准确的物理建模**2. **丰富的物理对象与执行器支持**3. **高性能求解与数值方法**4. **易用的建模与可视化**5. **高性能底层实现**🛠️ 典型应用场景📦 使用方式(简要)📚 学…

作者头像 李华