OpenHarmony标准设备应用开发实战(一)——HelloWorld

news2024/9/23 11:22:25

本文主要内容包括三个方面:
1. 应用编译环境准备;
2. Hello Openharmony 页面编写;
3. 安装应用到标准设备上面。下面就让我们从零开始学习 OpenHarmony 标准设备应用开发。

一、应用开发环境准备

1.1 下载 DevEco Studio 3.0 Beta2 版本

链接:https://developer.harmonyos.com/cn/develop/deveco-studio#download_beta

1.2 配置 SDK

参考配置 OpenHarmony-SDK

https://gitee.com/openharmony/docs/blob/OpenHarmony-3.1-Beta/zh-cn/application-dev/quick-start/configuring-openharmony-sdk.md

二、Hello Openharmony 页面编写

2.1 新建 eTS 工程

2.1.1 打开 DevEco Studio,创建一个新工程,在 DevEco Studio 中点击 File -> New Project,选择模板 Standard:Empty Ability。

2.1.2 进入配置工程界面,Language 选择 eTS 语言,Project Type 选择 Application,其他参数根据实际需要设置即可,最后点击 Finish 即创建成功。

备注:创建成功的项目,包结构说明参考链接:

https://gitee.com/openharmony/docs/blob/OpenHarmony-3.1-Beta/zh-cn/application-dev/quick-start/package-structure.md

2.2 编写 Hello Openharmony 页面

2.2.1 打开“index.ets”文件

工程创建完成后,在 Project 窗口,点击“entry > src > main > ets > MainAbility > pages”,打开“index.ets”文件,项目结构如下图所示。

2.2.2 在“index.ets”中编写并设置页面组件的属性和样式

“index.ets”页面由 Flex 容器组件、Text 组件和 Button 组件构成。示例代码如下所示:

@Entry
@Component
struct Index {
  build() {
    Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Center, justifyContent: FlexAlign.Center }) {
      Text('Hello World')
        .fontSize(50)
        .fontWeight(FontWeight.Bold)
      Button() {
        Text('next page')
          .fontSize(25)
          .fontWeight(FontWeight.Bold)
      }.type(ButtonType.Capsule)
      .margin({
        top: 20
      })
      .backgroundColor('#0D9FFB')
      .onClick(() => {
        routePage()
      })
    }
    .width('100%')
    .height('100%')
  }
}

2.2.3 相关语法说明

• @Entry 装饰的自定义组件用作页面的默认入口组件,加载页面时,将首先创建并呈现 @Entry 装饰的自定义组件。详细信息可以参考官网文档:

https://gitee.com/openharmony/docs/blob/OpenHarmony-3.1-Beta/zh-cn/application-dev/ui/ts-component-based-entry.md

• @Component 装饰的 struct 表示该结构体具有组件化能力,能够成为一个独立的组件,这种类型的组件也称为自定义组件。详细信息可以参考官网文档:

https://gitee.com/openharmony/docs/blob/OpenHarmony-3.1-Beta/zh-cn/application-dev/ui/ts-component-based-component.md

• @Builder 装饰器定义了一个如何渲染自定义组件的方法。此装饰器提供了一个修饰方法,其目的是和 build 函数一致。@Builder 装饰器装饰的方法的语法规范与 build 函数也保持一致。详细信息可以参考官网链接:

https://gitee.com/openharmony/docs/blob/OpenHarmony-3.1-Beta/zh-cn/application-dev/ui/ts-component-based-builder.md

2.2.4 预览器运行项目

点击右侧的 Previewer 按钮效果,如下图所示:

预览器链接:https://developer.harmonyos.com/cn/docs/documentation/doc-guides/previewer-0000001054328973#ZH-CN_TOPIC_000

三、安装应用

3.1 配置应用签名信息

配置应用签名信息 参考链接:https://gitee.com/openharmony/docs/blob/OpenHarmony-3.1-Beta/zh-cn/application-dev/quick-start/configuring-openharmony-app-signature.m0001056725592__section16523172216252

d#%E7%94%9F%E6%88%90%E5%AF%86%E9%92%A5%E5%92%8C%E8%AF%81%E4%B9%A6%E8%AF%B7%E6%B1%82%E6%96%87%E4%BB%B6

3.2 点击“Build Haps”

在 bulid 目录下生成 signed 签名后的 hap 包,hap 包生成路径如下图所示:

3.3 安装应用

打开 OpenHarmony SDK 路径 \toolchains 文件夹下,执行如下 hdc_std 命令,其中 path 为 hap 的绝对路径。有如下信息,即表明安装成功。

hdc_std install -r path\entry-debug-standard-ark-signed.hap

鸿蒙全栈开发全新学习指南

也为了积极培养鸿蒙生态人才,让大家都能学习到鸿蒙开发最新的技术,针对一些在职人员、0基础小白、应届生/计算机专业、鸿蒙爱好者等人群,整理了一套纯血版鸿蒙(HarmonyOS Next)全栈开发技术的学习路线【包含了大厂APP实战项目开发】

本路线共分为四个阶段:

第一阶段:鸿蒙初中级开发必备技能

在这里插入图片描述

第二阶段:鸿蒙南北双向高工技能基础:gitee.com/MNxiaona/733GH

第三阶段:应用开发中高级就业技术

第四阶段:全网首发-工业级南向设备开发就业技术:gitee.com/MNxiaona/733GH

《鸿蒙 (Harmony OS)开发学习手册》(共计892页)

如何快速入门?

1.基本概念
2.构建第一个ArkTS应用
3.……

开发基础知识:gitee.com/MNxiaona/733GH

1.应用基础知识
2.配置文件
3.应用数据管理
4.应用安全管理
5.应用隐私保护
6.三方应用调用管控机制
7.资源分类与访问
8.学习ArkTS语言
9.……

基于ArkTS 开发

1.Ability开发
2.UI开发
3.公共事件与通知
4.窗口管理
5.媒体
6.安全
7.网络与链接
8.电话服务
9.数据管理
10.后台任务(Background Task)管理
11.设备管理
12.设备使用信息统计
13.DFX
14.国际化开发
15.折叠屏系列
16.……

鸿蒙开发面试真题(含参考答案):gitee.com/MNxiaona/733GH

鸿蒙入门教学视频:

美团APP实战开发教学:gitee.com/MNxiaona/733GH

写在最后

  • 如果你觉得这篇内容对你还蛮有帮助,我想邀请你帮我三个小忙:
  • 点赞,转发,有你们的 『点赞和评论』,才是我创造的动力。
  • 关注小编,同时可以期待后续文章ing🚀,不定期分享原创知识。
  • 想要获取更多完整鸿蒙最新学习资源,请移步前往小编:gitee.com/MNxiaona/733GH

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

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

相关文章

3SRB2516-ASEMI适配大功率充电桩3SRB2516

编辑:ll 3SRB2516-ASEMI适配大功率充电桩3SRB2516 型号:3SRB2516 品牌:ASEMI 封装:SGBJ-5 正向电流(Id):25A 反向耐压(VRRM):1600V 正向浪涌电流&…

海外静态IP:全球互联的稳定之选

在全球化的商业环境中,企业与个人对于网络的依赖日益加深,而一个稳定、可靠的海外静态IP成为了连接世界的关键。本文将从五个方面深入探讨海外静态IP的重要性、应用场景、技术优势、市场趋势以及选择时的考量因素。 一、海外静态IP的重要性 静态IP地址是…

耐克、肯德基、美宝莲…六大品牌的经典广告语是如何诞生的?

近期,创意翻译公司franklyfluent推出了一个名为“Hard to Make, Easy to Break”的创意户外活动,展示了创意和文字艺术在品牌翻译中的重要性。 “Hard to Make, Easy to Break”的活动于2024年5月份在英国正式发布。这些移动广告牌出现在伦敦的各个体育…

【算法学习】拓扑排序

文章目录 拓扑排序课程表 拓扑排序 算法原理: 1.先找出图中入度为0的点,将该点加入到队列中 2.队列不为空时,拿出队头元素加入到最终结果 3.再遍历该点的邻接阵,将连接该点的点的入度全部减减 4.判断减减的点是否为入度为0&#…

渗压计与水位计的区别:监测工具的关键用途解析

在土木工程和水利工程领域,渗压计和水位计是两种重要的监测工具。它们虽然在外观和一些基本功能上可能相似,但其实各有专长,适用于不同的监测需求。了解它们的区别对于正确选择和应用这些工具至关重要本文将探讨渗压计和水位计的主要区别&…

【挑战全网】最全高德地图充电桩接入指南,流量必火!

分享《一套免费开源充电桩物联网系统,是可以立马拿去商用的!》 一、和高德直接互联互通的优势: 1、高德官方直接互联互通,提供给合作商户独立发展自主权,不依赖任何第三方平台; 2、自己控制电站的上线、下线、修改电…

2024年开抖店都需要做哪些准备?这些条件缺一不可

大家好,我是电商花花。 作为目前国内最受欢迎的短视频电商平台,抖音将成为众多创业者的首选平台。 在往年我们都知道抖音小店市场很多,红利很大,利润大,不少人都通过抖音小店实现了脱贫,也有部分上班族获…

VC++6.0 常用的文件对话框和目录选择对话框

1,文件对话框 //1,弹出文件打开对话框CString strFileName "";char szFilter[] {"exe files(*.exe)|*.exe|All Files(*.*)|*.*|"};CFileDialog dlg(TRUE,NULL,NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,szFilter,NULL);if(dlg.DoModal() …

三清互联:公司已形成“研发-创新-增收-研发”良性循环

三清互联自创立之初便以电力物联网感知层终端及成套设备的研发、设计、生产和销售为核心,致力于为电力行业提供前沿的技术解决方案。多年来,公司主营业务、主要产品及经营模式均保持稳定,不断在电力物联网感知层领域深化探索与创新。 初创期的…

品鉴中的礼仪习俗:如何遵循正确的红酒品鉴礼仪

在品鉴云仓酒庄雷盛红酒时,遵循正确的礼仪习俗不仅能展现个人的修养,还能更好地领略葡萄酒的风味。下面我们将探讨红酒品鉴中的礼仪习俗。 首先,当我们拿起酒杯时,应该注意不要晃动酒杯,以免扰动其中的酒液。同时&…

运营商二次放号查询接口如何对接

运营商二次放号查询接口又叫手机二次放号检测接口,指的是输入手机号和日期,查看在该日期之前是不是二次放号。那么运营商二次放号查询接口如何对接呢? 这边我找到了一家叫数脉API的公司,他们刚好有这个接口,首先注册账…

nmap端口扫描工具——Win10

Nmap安装流程: Nmap官网链接:Download the Free Nmap Security Scanner for Linux/Mac/Windows Nmap参考文档链接:https://nmap.org/book/toc.html Nmap使用流程: Nmap软件主页面: 中文版: nmap -T4 -…

JavaWeb-学习笔记

第一章 Tomcat 介绍 前言 使用Tomcat服务器,必须先安装JDK,因为Tomcat使用的是java语言开发的。 在系统环境变量中,必须包含**%JAVA_HOME%\bin**。否则Tomcat无法启动 环境变量配置: 此电脑 --> 右键 --> 属性高级系统…

代码随想录Day 47|Leetcode|Python|392.判断子序列 ● 115.不同的子序列

392.判断子序列 给定字符串 s 和 t ,判断 s 是否为 t 的子序列。 字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace"是"abcde"的…

Lobe Chat–在线AI对话聊天机器人,一键部署,免费开源

现代化设计的开源 ChatGPT/LLMs 聊天应用与开发框架 支持语音合成、多模态、可扩展的(function call)插件系统 一键免费拥有你自己的 ChatGPT/Gemini/Claude/Ollama 应用 项目演示 支持多种模型接口 支持语音输入输出 支持云端同步 丰富多彩非常实用的应…

第二证券今日投资参考:美宣布对华电动汽车等加征关税 AI应用或加速落地

昨日,两市股指早盘一度拉升,随后震动回落,盘中保持窄幅震动收拾走势。截至收盘,沪指微跌0.07%报3145.77点,深证成指跌0.05%报9668.73点,创业板指跌0.26%报1855.6点,北证50指数涨0.74%&#xff1…

istio资源字段参考文档

virtual service: Istio / Virtual ServiceConfiguration affecting label/content routing, sni routing, etc.https://istio.io/latest/docs/reference/config/networking/virtual-service/

opencv4.8.0 GPU版本各平台编译

一、opencv4.8.0 ubuntu22.04上编译: 用cmake进行编译,需要配置三次。选中world选项,输入opencv_contrib_module路径。 ubuntu22.04上编译: cmake \ -D CMAKE_BUILD_TYPERELEASE \ -D CMAKE_INSTALL_PREFIX/usr/local \ -D BUILD_opencv_p…

1:硬件测试面试

1:板级测试 . JTAG和Boundary Scan 对于硬件板级测试,我使⽤JTAG和Boundary Scan技术进⾏⾃动化测试。这些技术可以帮助我访问PCB 上的芯⽚引脚,从⽽进⾏信号测量、连通性测试和故障诊断。 2:整机测试 3:测试准备 4…

(Java面试题——基础版)JVM、JRE和JDK的关系

JVM Java Virtual Machine是Java虚拟机 ,Java程序需要运行在虚拟机上 ,不同的平台有自己的虚拟机 ,因此Java语言可以 实现跨平台。JVM 负责将 Java 字节码(即编译后的 .class 文件)翻译成特定平台上的机器码&#xff0…