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

本文主要内容包括三个方面:
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

最近更新

  1. .Net Core WebAPI参数的传递方式

    2024-05-16 13:00:13       2 阅读
  2. QT--气泡框的实现

    2024-05-16 13:00:13       3 阅读
  3. LeetCode 968.监控二叉树 (hard)

    2024-05-16 13:00:13       2 阅读
  4. leetcode热题100.完全平方数(动态规划进阶)

    2024-05-16 13:00:13       2 阅读
  5. leetcode328-Odd Even Linked List

    2024-05-16 13:00:13       3 阅读
  6. C 语言设计模式(结构型)

    2024-05-16 13:00:13       2 阅读
  7. v-if 与 v-show(vue3条件渲染)

    2024-05-16 13:00:13       2 阅读
  8. kafka防止消息丢失配置

    2024-05-16 13:00:13       3 阅读

热门阅读

  1. LeetCode 22. 括号生成

    2024-05-16 13:00:13       5 阅读
  2. 循环、使用dict和set

    2024-05-16 13:00:13       4 阅读
  3. 使用 Gradle 自定义任务生成初始化 SQL 文件

    2024-05-16 13:00:13       4 阅读
  4. 数学建模(科普)

    2024-05-16 13:00:13       5 阅读
  5. IT行业的现状与未来:技术驱动下的新世界

    2024-05-16 13:00:13       4 阅读
  6. js 数组filter使用

    2024-05-16 13:00:13       5 阅读
  7. RIP、OSPF、BGP等协议及华为路由器配置总结

    2024-05-16 13:00:13       4 阅读
  8. 40-2 了解与安装堡垒机

    2024-05-16 13:00:13       2 阅读
  9. Leetcode 404:左叶子之和

    2024-05-16 13:00:13       3 阅读
  10. 力扣:131. 分割回文串

    2024-05-16 13:00:13       3 阅读
  11. 力扣 72. 编辑距离 python AC

    2024-05-16 13:00:13       4 阅读
  12. 课时126:awk实践_进阶知识_内置函数1

    2024-05-16 13:00:13       4 阅读