鸿蒙应用开发从入门到实战(二):DevEco Studio工具安装
鸿蒙应用开发从入门到实战二DevEco Studio工具安装前言在上一篇《鸿蒙应用开发从入门到实战一初识鸿蒙与开发环境搭建》中我们了解了鸿蒙系统的核心特性和应用开发的基本概念。现在我们要进入实战环节——安装DevEco Studio。这是华为官方推出的专业IDE集成了HarmonyOS应用开发所需的一切工具。本文将手把手带你完成安装流程并包含两个可运行的代码示例让你在安装后立刻上手测试环境。## 一、DevEco Studio简介DevEco Studio基于IntelliJ IDEA社区版开发支持Java、JS、TS和C等多种语言提供代码编辑、调试、模拟器、性能分析等一站式功能。它专为HarmonyOS应用设计支持FAFeature Ability和PAParticle Ability开发模式。### 1.1 系统要求- 操作系统Windows 10/1164位、macOS 10.14、Ubuntu 18.04± 内存至少8GB推荐16GB- 硬盘至少30GB可用空间- 分辨率1920x1080或更高## 二、下载DevEco Studio### 2.1 官方下载渠道访问华为开发者联盟官网https://developer.harmonyos.com点击“开发工具” - “DevEco Studio”。选择与操作系统匹配的版本。注意请选择“HarmonyOS 3.1”或更高版本以支持最新API。### 2.2 版本选择建议- 对于初学者建议下载最新稳定版如DevEco Studio 3.1.0.500- 对于企业项目建议使用LTS长期支持版本- 下载文件Windows版约1.2GBmacOS版约800MBLinux版约1GB## 三、安装步骤Windows示例### 3.1 安装JDK可选DevEco Studio内置JDK 11但如果你已有JDK 8可跳过此步。推荐使用内置版本避免版本冲突。### 3.2 开始安装1. 双击下载的devecostudio-windows-3.1.0.500.exe2. 选择安装路径建议不要含中文和空格如D:\DevEcoStudio3. 勾选“创建桌面快捷方式”和“添加到右键菜单”4. 等待安装完成约5-10分钟### 3.3 首次启动配置首次启动时会提示选择UI主题Darcula或Light建议选择Darcula护眼。然后会进入SDK管理器自动下载HarmonyOS SDK约2GB请保持网络畅通。## 四、配置开发环境### 4.1 安装模拟器在DevEco Studio启动后点击工具栏“Tools” - “Device Manager”。选择“Local Emulator”点击“Create Emulator”选择设备类型如Phone - P40 Pro系统版本推荐API 9或10。下载系统镜像约1.5GB创建完成后即可启动模拟器。### 4.2 配置代理可选若网络环境受限需要配置代理File-Settings-Appearance Behavior-System Settings-HTTP Proxy填写代理地址和端口。## 五、创建第一个鸿蒙应用可运行代码示例1现在我们用DevEco Studio创建一个简单的“Hello World”应用并运行在模拟器上。### 5.1 新建项目- 点击“Create New Project”- 选择“Empty Ability”模板- 项目名称HelloHarmonyOS- 包名com.example.hello- 保存路径D:\HarmonyOS_Projects- 语言选择Java或ArkTS这里用Java演示### 5.2 编写代码打开entry/src/main/java/com/example/hello/MainAbilitySlice.java替换为以下代码javapackage com.example.hello;import ohos.aafwk.ability.AbilitySlice;import ohos.aafwk.content.Intent;import ohos.agp.components.Button;import ohos.agp.components.Text;import ohos.agp.components.Component;import ohos.agp.window.dialog.ToastDialog;public class MainAbilitySlice extends AbilitySlice { Override public void onStart(Intent intent) { super.onStart(intent); // 设置布局一个文本和一个按钮 super.setUIContent(ResourceTable.Layout_ability_main); // 获取界面组件 Text helloText (Text) findComponentById(ResourceTable.Id_hello_text); Button clickBtn (Button) findComponentById(ResourceTable.Id_click_btn); // 设置按钮点击事件 clickBtn.setClickedListener(new Component.ClickedListener() { Override public void onClick(Component component) { // 弹出Toast提示 new ToastDialog(getContext()) .setText(你好鸿蒙) .setDuration(2000) .show(); // 修改文本内容 helloText.setText(你点击了按钮); } }); } Override public void onActive() { super.onActive(); } Override public void onForeground(Intent intent) { super.onForeground(intent); }}### 5.3 修改布局文件打开entry/src/main/resources/base/layout/ability_main.xml替换为xml?xml version1.0 encodingutf-8?DirectionalLayout xmlns:ohoshttp://schemas.huawei.com/res/ohos ohos:heightmatch_parent ohos:widthmatch_parent ohos:orientationvertical ohos:padding32 Text ohos:id$id:hello_text ohos:heightmatch_content ohos:widthmatch_content ohos:text欢迎使用鸿蒙应用 ohos:text_size28fp ohos:center_in_parenttrue ohos:layout_alignmenthorizontal_center ohos:margin_bottom20vp/ Button ohos:id$id:click_btn ohos:heightmatch_content ohos:widthmatch_content ohos:text点击我 ohos:text_size20fp ohos:padding12 ohos:layout_alignmenthorizontal_center ohos:background_element#007AFF ohos:text_color#FFFFFF//DirectionalLayout### 5.4 运行测试- 点击工具栏的绿色三角形按钮或按ShiftF10- 选择之前创建的模拟器如P40 Pro API 9- 等待构建和部署首次较慢约3分钟- 模拟器启动后点击“点击我”按钮应看到Toast弹窗“你好鸿蒙”## 六、调试与日志查看可运行代码示例2在实际开发中打印日志是调试的重要手段。下面演示如何在鸿蒙应用中使用HiLog日志系统。### 6.1 添加日志代码继续在MainAbilitySlice.java中添加以下代码javapackage com.example.hello;import ohos.aafwk.ability.AbilitySlice;import ohos.aafwk.content.Intent;import ohos.agp.components.Button;import ohos.agp.components.Text;import ohos.agp.components.Component;import ohos.agp.window.dialog.ToastDialog;import ohos.hiviewdfx.HiLog; // 引入HiLog类import ohos.hiviewdfx.HiLogLabel; // 引入HiLog标签类public class MainAbilitySlice extends AbilitySlice { // 定义日志标签第一个参数是类型LOG_CORE表示核心日志第二个是域名自定义第三个是标签名 private static final HiLogLabel LABEL new HiLogLabel(HiLog.LOG_CORE, 0x00201, HelloDemo); Override public void onStart(Intent intent) { super.onStart(intent); super.setUIContent(ResourceTable.Layout_ability_main); Text helloText (Text) findComponentById(ResourceTable.Id_hello_text); Button clickBtn (Button) findComponentById(ResourceTable.Id_click_btn); // 打印一条信息日志 HiLog.info(LABEL, 应用已启动开始处理界面初始化); clickBtn.setClickedListener(new Component.ClickedListener() { Override public void onClick(Component component) { // 打印调试日志 HiLog.debug(LABEL, 用户点击了按钮当前时间戳: %{public}d, System.currentTimeMillis()); new ToastDialog(getContext()) .setText(你好鸿蒙) .setDuration(2000) .show(); helloText.setText(你点击了按钮); // 打印警告日志 HiLog.warn(LABEL, 按钮被点击文本已更新); } }); } Override public void onActive() { super.onActive(); HiLog.info(LABEL, AbilitySlice进入活动状态); } Override public void onForeground(Intent intent) { super.onForeground(intent); HiLog.info(LABEL, AbilitySlice回到前台); }}### 6.2 查看日志- 在DevEco Studio底部点击“Log”或“HiLog”面板- 选择“Filter”为HelloDemo即可看到我们打印的日志- 运行应用并点击按钮日志面板会显示类似01-01 12:34:56.789 12345-12345 I HelloDemo: 应用已启动开始处理界面初始化 01-01 12:34:58.123 12345-12345 D HelloDemo: 用户点击了按钮当前时间戳: 1704123456789 01-01 12:34:58.124 12345-12345 W HelloDemo: 按钮被点击文本已更新### 6.3 日志级别说明HiLog支持五种级别-HiLog.debug调试信息仅在Debug模式输出-HiLog.info一般信息-HiLog.warn警告-HiLog.error错误-HiLog.fatal致命错误使用%{public}d之类的格式化占位符可以安全打印变量私有数据用%{private}s。## 七、常见问题与解决方案| 问题现象 | 可能原因 | 解决方法 ||---------|---------|---------|| 安装后无法启动 | 缺少VC运行库 | 安装Visual C Redistributable 2015 || 模拟器启动失败 | 内存不足或显卡驱动问题 | 关闭其他应用更新显卡驱动 || 构建报错“找不到符号” | 代码或资源文件错误 | 检查包名、资源ID是否正确 || 日志不显示 | 过滤器设置错误 | 确认Filter标签名与代码一致 |## 八、总结本文详细介绍了DevEco Studio的下载、安装、配置过程并通过两个完整的可运行代码示例带你实践了鸿蒙应用从创建到调试的全流程。第一个示例演示了基础的UI交互按钮点击与Toast弹窗第二个示例引入了HiLog日志系统这是调试复杂应用的关键工具。安装和配置开发环境是鸿蒙应用开发的第一步也是最重要的一步。通过本文的实战演练你应该已经掌握了1. 如何正确安装DevEco Studio并配置SDK2. 如何创建第一个鸿蒙应用并运行在模拟器上3. 如何使用HiLog进行日志调试在下一篇《鸿蒙应用开发从入门到实战三Ability与生命周期》中我们将深入探讨鸿蒙应用的核心——Ability组件包括Page Ability和Service Ability的生命周期管理敬请期待

相关新闻

如何用AntiDupl高效清理电脑中的重复图片:新手完全指南

如何用AntiDupl高效清理电脑中的重复图片:新手完全指南

如何用AntiDupl高效清理电脑中的重复图片:新手完全指南 【免费下载链接】AntiDupl A program to search similar and defect pictures on the disk 项目地址: https://gitcode.com/gh_mirrors/an/AntiDupl 你是否曾经因为电脑里堆积如山的重复图片而感到困扰…

2026/10/27 6:25:23 阅读更多 →
如何快速搭建企业级权限管理系统:RuoYi-Vue完整指南

如何快速搭建企业级权限管理系统:RuoYi-Vue完整指南

如何快速搭建企业级权限管理系统:RuoYi-Vue完整指南 【免费下载链接】RuoYi-Vue :tada: (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue & Element 的前后端分离权限管理系统,同时提供了 Vue3 的版本 …

2026/10/24 19:20:02 阅读更多 →
告别像素化:Ai2Psd实现AI到PSD的矢量完美转换方案

告别像素化:Ai2Psd实现AI到PSD的矢量完美转换方案

告别像素化:Ai2Psd实现AI到PSD的矢量完美转换方案 【免费下载链接】ai-to-psd A script for prepare export of vector objects from Adobe Illustrator to Photoshop 项目地址: https://gitcode.com/gh_mirrors/ai/ai-to-psd 还在为Adobe Illustrator文件转…

2026/10/20 17:07:28 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/10/26 12:00:21 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/10/27 4:06:49 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/10/26 4:52:12 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/10/26 12:00:21 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/10/27 6:20:47 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/10/27 4:06:50 阅读更多 →

日新闻

周新闻

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/26 12:00:19 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/25 13:21:54 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/26 8:34:37 阅读更多 →