快速上手 HarmonyOS 应用开发

一、DevEco Studio 安装与配置

1. DevEco Studio 简介

DevEco Studio 是 HarmonyOS 的一站式集成开发环境(IDE),提供了丰富的工具和功能,支持 HarmonyOS 应用开发的全流程。

2. DevEco Studio 下载与安装
  • 下载地址:华为开发者官网
  • 推荐版本:DevEco Studio 5.0.0 Release
  • 安装建议:使用官方原版,不建议使用汉化版。

二、DevEco Studio 快速上手

1. 启动 DevEco Studio
  • 双击 DevEco Studio 图标启动。
  • 选择 Do not import settings,点击 OK。(没用过的)
2. 创建新项目
  • 选择 Project > Create Project > Application > Empty Ability
  • 设置项目名称、保存位置及目标设备类型。
    在这里插入图片描述
  • 点击 Finish 完成项目创建。

三、运行 HelloWorld 项目

1. 运行方式
  • Previewer 预览模式:适用于静态页面开发,不支持网络通信和原生能力测试。
  • Local Emulator 本地模拟器:适用于大部分场景的调试和运行。
  • Local Device 本地真机:适用于特定机型测试。
2. 安装与配置本地模拟器
  1. 安装模拟器
  • 单击顶部工具栏Tools>Device Manager;选择Huawei_Phone手机模拟器,单击’Next’,进入模拟器系统下载页。
  1. 未开启Hyper-V问题:在这里插入图片描述
  • 找到命令提示符,以管理员的身份打开,执行:bcdedit /set hypervisorlaunchtype auto并重启电脑。
  1. 运行项目
  • 启动模拟器后,在项目工具栏点击 Run,将项目运行到模拟器中。(刚开始可以在预览模式内观看)

四、HarmonyOS 项目结构解析

1. 项目架构
  • APP Pack:应用发布形态,由一个或多个 HAP(Harmony Ability Package)包组成。
  • HAP:包含代码、资源、第三方库及配置文件,是 HarmonyOS 应用的核心模块。
2. 项目目录结构
目录/文件描述
AppScope存放全局资源文件。
entry应用的主模块,包含代码和资源。
oh_modules存放工程的依赖包。
build-profile.json5工程级配置信息。
hvigorfile.ts工程级编译构建任务脚本。

五、开发示例:HelloWorld 案例

在entry\src\main\ets\pages创建文件

代码示例
@Entry
@Component
struct Index {@State myTest: string = "world";build() {Column() {Text(`hello ${this.myTest}`).fontSize(50);Divider();Button("点我啊").onClick(() => {this.myTest = "ArkUI";}).height(50).width(200);}}
}
代码解析
组件/方法描述
@Entry将组件标记为 UI 页面入口。
@Component定义自定义组件。
@State标记状态变量,状态变化时自动刷新 UI。
build()不可缺少。
Column()布局组件,用于垂直排列内容。
Text()文本组件,用于显示文字内容。
Button()按钮组件,可设置点击事件。
.fontSize()设置字体大小。
.onClick()设置按钮点击事件处理逻辑。

凡是过去,皆为序章;凡是未来,皆有可期。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/65929.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java Web开发进阶——错误处理与日志管理

错误处理和日志管理是任何生产环境中不可或缺的一部分。在 Spring Boot 中,合理的错误处理机制不仅能够提升用户体验,还能帮助开发者快速定位问题;而有效的日志管理能够帮助团队监控应用运行状态,及时发现和解决问题。 1. 常见错误…

图解Git——分支的新建与合并《Pro Git》

⭐分支的新建与合并 先引入一个实际开发的工作流: 开发某个网站。为实现某个新的需求,创建一个分支。在这个分支上开展工作。 正在此时,你突然接到一个电话说有个很严重的问题需要紧急修补。你将按照如下方式来处理: 切换到你…

C#使用实体类Entity Framework Core操作mysql入门:从数据库反向生成模型2 处理连接字符串

初级代码游戏的专栏介绍与文章目录-CSDN博客 我的github:codetoys,所有代码都将会位于ctfc库中。已经放入库中我会指出在库中的位置。 这些代码大部分以Linux为目标但部分代码是纯C的,可以在任何平台上使用。 源码指引:github源…

【数据可视化-12】数据分析岗位招聘分析

🧑 博主简介:曾任某智慧城市类企业算法总监,目前在美国市场的物流公司从事高级算法工程师一职,深耕人工智能领域,精通python数据挖掘、可视化、机器学习等,发表过AI相关的专利并多次在AI类比赛中获奖。CSDN…

LeetCode 977 题:有序数组的平方

LeetCode 977 题&#xff1a;有序数组的平方 (Squares of a Sorted Array) LeetCode 第977题要求给定一个按非降序排列的整数数组 nums&#xff0c;返回每个数字的平方并按升序排列。 题目描述 给定一个整数数组 nums&#xff0c;它按非降序排列&#xff08;即 nums[i] < …

excel仅复制可见单元格,仅复制筛选后内容

背景 我们经常需要将内容分给不同的人&#xff0c;做完后需要合并 遇到情况如下 那是因为直接选择了整列&#xff0c;当然不可以了。 下面提供几种方法&#xff0c;应该都可以 直接选中要复制区域然后复制&#xff0c;不要选中最上面的列alt;选中可见单元格正常复制&#xff…

微信小程序实现拖拽盒子效果

要实现一个当前盒子高度由里面的盒子进行支配高度拖拽的效果 // wxml<view class"exmation-item" wx:elif"{{type4}}"> <view class"exmation-item-drag-box" id"drag-box"> <!-- 内容 --><view class"exm…

支持向量回归(SVR:Support Vector Regression)用于A股数据分析、预测

简单说明 支持向量回归是一种用来做预测的数学方法,属于「机器学习」的一种。 它的目标是找到一条「最合适的线」,能够大致描述数据点的趋势,并允许数据点离这条线有一定的误差(不要求所有点都完全落在这条线上)。 可以把它想象成:找到一条「宽带」或「隧道」,大部分…

透明部署、旁路逻辑串联的区别

背景 需讨论防火墙到底是串联&#xff0c;还是旁挂。 通常串联指的就是“透明部署”&#xff0c;旁挂指的就是“逻辑串联”。 透明部署&#xff08;串联&#xff09; 也称为透明模式或桥接模式&#xff0c;是一种安全设备的部署方式。在这种模式下&#xff0c;安全设备被串联…

LabVIEW水位监控系统

LabVIEW开发智能水位监控系统通过集成先进的传感技术与控制算法&#xff0c;为工业液体存储提供精确的水位调控&#xff0c;保证了生产过程的连续性与安全性。 项目背景 在化工和饮料生产等行业中&#xff0c;水位控制的准确性对保证生产安全和提高产品质量至关重要。传统的水…

深入浅出 Android AES 加密解密:从理论到实战

深入浅出 Android AES 加密解密&#xff1a;从理论到实战 在现代移动应用中&#xff0c;数据安全是不可忽视的一环。无论是用户隐私保护&#xff0c;还是敏感信息的存储与传输&#xff0c;加密技术都扮演着重要角色。本文将以 AES&#xff08;Advanced Encryption Standard&am…

hadoop-yarn常用命令

一、YARN命令介绍 1. YARN命令简介 YARN提供了一组命令行工具&#xff0c;用于管理和监控YARN应用程序和集群。 2. yarn application命令 (1) yarn application命令的基本语法 yarn application命令的基本语法如下&#xff1a; yarn application [genericOptions] [comma…

R语言的语法糖

R语言的语法糖 引言 在编程语言中&#xff0c;所谓的“语法糖”是指那些使得程序员能够以更简洁、直观的方式书写代码的语法形式。R语言作为一种用于统计分析和数据可视化的编程语言&#xff0c;具有丰富的功能和灵活的语法。本文将深入探讨R语言中的语法糖&#xff0c;帮助读…

React Fiber框架中的Render渲染阶段——workLoop(performUnitOfWork【beginWork与completeWork】)

触发渲染过程——renderRoot renderRoot 是一个函数&#xff0c;用于触发渲染工作。它通常会调用并递归地执行一系列的渲染任务&#xff0c;直到完成整个更新过程。这个过程包括执行 Fiber 树中的 beginWork 和 completeWork&#xff0c;以及渲染新状态或 DOM。 function ren…

【优先算法】思还故里闾,欲归道无因 - 前缀和

本篇博客给大家带来的是前缀和算法的知识点, 也是一样通过OJ题理解,掌握,应用该算法. &#x1f40e;文章专栏: 算法 &#x1f680;若有问题 评论区见 ❤ 欢迎大家点赞 评论 收藏 分享 如果你不知道分享给谁,那就分享给薯条. 你们的支持是我不断创作的动力 . 王子,公主请阅&…

亿道三防丨三防笔记本是什么意思?和普通笔记本的优势在哪里?

三防笔记本是什么意思&#xff1f;和普通笔记本的优势在哪里&#xff1f; 在现代社会中&#xff0c;笔记本电脑已经成为人们工作和生活中不可或缺的一部分。然而&#xff0c;在一些特殊行业或环境中&#xff0c;普通笔记本电脑由于其脆弱性和对环境条件的敏感性&#xff0c;往…

SOME/IP 协议详解——服务发现

文章目录 1. Introduction &#xff08;引言&#xff09;2. SOME/IP Service Discovery (SOME/IP-SD)2.1 General&#xff08;概述)2.2 SOME/IP-SD Message Format2.2.1 通用要求2.2.2 SOME/IP-SD Header2.2.3 Entry Format2.2.4 Options Format2.2.4.1 配置选项&#xff08;Co…

MATLAB语言的函数实现

MATLAB语言中的函数实现详解 引言 MATLAB&#xff08;矩阵实验室&#xff09;是一种高级语言和互动环境&#xff0c;广泛应用于数值计算、数据分析、可视化以及工程与科学计算等多个领域。MATLAB的强大之处在于其丰富的函数库以及用户自定义函数的能力。本文将深入探讨MATLAB…

Go语言之路————go环境的初始化

Go语言之路————go环境的初始化 前言一、Go的安装二、环境配置三、初始化一个新项目四、常用的一些指令 前言 我是一名多年Java开发人员&#xff0c;因为工作需要现在要学习go语言&#xff0c;Go语言之路是一个系列&#xff0c;记录着我从0开始接触Go&#xff0c;到后面能正…

鼠标过滤驱动

文章目录 概述代码参考资料 概述 其编写过程大体与键盘过滤驱动相似&#xff0c;只需要切换一下附加的目标设备以及创建的设备类型等。但在该操作后依然无法捕获到Vmware创建的win7操作系统的鼠标irp信息&#xff0c;于是通过在获取鼠标驱动&#xff0c;遍历其所有的设备进而附…