鸿蒙OS应用开发初体验

什么是HarmonyOS?

HarmonyOS(鸿蒙操作系统)是华为公司开发的一款基于微内核的分布式操作系统。它是一个面向物联网(IoT)时代的全场景操作系统,旨在为各种类型的设备提供统一的操作系统平台和开发框架。HarmonyOS 的目标是实现跨设备的无缝协同和高性能。

DevEco Studio

对标Android Studio,开发鸿蒙OS应用的IDE。

启动页面

img

Setup

img

img

HarmonyOS-SDK:鸿蒙操作系统软件开发工具包

  • Previewer:预览器
  • Toolchains:工具链

OpenHarmony-SDK:开源鸿蒙操作系统软件开发工具包

  • ArkTS:鸿蒙生态的应用开发语言。
  • JS:JavaScript
  • Previewer:预览器
  • Toolchains:工具链

img

Create Project

img

img

配置工程

img

项目名称、包名、存储路径、编译SDK版本、模型,语言、设备类型等。

工程目录结构

img

  • AppScope:存放应用全局所需要的资源文件。
  • entry:应用主模块,存放HarmonyOS应用的代码、资源等。
  • on_modules:工程依赖包,存放工程依赖的源文件。
  • build-profile.json5是工程级配置信息,包括签名、产品配置等。
  • hvigorfile.ts是工程级编译构建任务脚本,hvigor是基于任务管理机制实现的一款全新的自动化构建工具,主要提供任务注册编排,工程模型管理、配置管理等核心能力。
  • oh-package.json5是工程级依赖配置文件,用于记录引入包的配置信息。Device Manager

img

创建好的模拟器会出现在这里。

img

启动模拟器之后,会在设备列表中出现。

img

编译运行

img

编译运行,可以从通知栏看到输出的文件并不是apk,而是hap(Harmony Application Package的缩写)。是鸿蒙操作系统设计的应用程序包格式。

img

.hap 文件包含了应用程序的代码、资源和元数据等信息,用于在 HarmonyOS 设备上安装和运行应用程序。

img

整体开发流程跟Android基本无差,所以熟悉Android开发的同学上手基本没啥难度。

ArkTS

ArkTS是鸿蒙生态的应用开发语言。它在保持TypeScript(简称TS)基本语法风格的基础上,对TS的动态类型特性施加更严格的约束,引入静态类型。同时,提供了声明式UI、状态管理等相应的能力,让开发者可以以更简洁、更自然的方式开发高性能应用。 https://developer.harmonyos.com/cn/develop/arkts/

最简单例子:

@Entry
@Component
struct Index {
@State message: string = 'Hello World'build() {
Row() {
Column() {
Text(this.message)
.fontSize(50)
.fontWeight(FontWeight.Bold)
}
.width('100%')
}
.height('100%')
}
}

看起来非常简洁,采用的是声明式UI,写过Flutter的同学对声明式UI应该不会陌生。从最简单的例子初步了解下基本语法:

  • 装饰器,用于装饰类、结构、方法以及变量,并赋予其特殊的含义。如@Entry、@Component、@State都是装饰器。
  • 自定义组件:可复用的UI单元,可组合其他组件,如上述被@Component装饰的stuct Index。
  • UI 描述:以声明式的方式来描述UI的结构,如上述的build()方法中的代码块。
  • 系统组件:ArkUI框架中默认内置的基础和容器组件,可直接被开发者调用,比如示例中的Row、Column、Text。
  • 属性方法:组件可以通过链式调用配置多项属性,如fontSize()、width()、height()、backgroundColor()等。
  • 事件方法:组件可以通过链式调用设置多个事件的响应逻辑,本例代码不涉及,可以进一步学习文档。

这里就不是Android熟悉的java或kotlin语言了,编程语言变成了类JavaScript的前端语言,这意味着我们需要适应用前端的思想去开发鸿蒙应用,比如状态管理。

总结

本文纯初体验遥遥领先背后的鸿蒙操作系统,基于开发者平台提供的IDE、鸿蒙生态的开发语言ArkTS,通过模拟器运行起来了鸿蒙OS版HelloWorld。对于已经有移动开发经验的同学来说上手可以说非常快,官方文档也非常详尽,ArkTS语法也非常简洁易学,如果大家对华为生态的应用开发感兴趣或者想深入学习借鉴华为做OS和物联网的思路,鸿蒙系统就是一个标杆。

最后

分享一份是来自华为内部最新的《鸿蒙零基础入门学习指南》内容如下,完整文档可以扫描二维码免费领取!!!

## 《鸿蒙零基础入门学习指南》

本文档适用于HarmonyOS应用开发的初学者。通过构建一个简单的具有页面跳转/返回功能的应用,快速了解工程目录的主要文件,熟悉HarmonyOS应用开发流程。

目录

在这里插入图片描述

一、快速入门

  • 开发准备
  • 构建第一个ArkTS应用(Stage模型)
  • 构建第一个ArkTS应用(FA模型)
  • 构建第一个JS应用(FA模型)

在这里插入图片描述

二、开发基础知识

  • 应用程序包基础知识
  • 应用配置文件(Stage模型)
  • 应用配置文件概述(FA模型)

在这里插入图片描述

三、资源分类与访问

  • 资源分类与访问
  • 创建资源目录和资源文件
  • 资源访问

在这里插入图片描述

四、学习ArkTs语言

  • 初识ArkTS语言
  • 基本语法
  • 状态管理
  • 其他状态管理
  • 渲染控制

在这里插入图片描述

  • 47
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值