一、什么是鸿蒙?

鸿蒙不仅仅是手机操作系统,它是一个面向万物互联时代的、全场景的分布式操作系统。其核心设计目标是:

  • 统一OS,弹性部署:一个操作系统内核,可以按需适配和部署到不同类型的设备上,从KB级别内存的智能穿戴设备到GB级别的手机、平板、电视、车机等。

  • 硬件互助,资源共享:不同设备上的鸿蒙系统可以方便地连接起来,形成一个“超级终端”,实现硬件能力的互助和资源共享。例如,手机上的视频通话可以无缝流转到电视上,用手机的摄像头、电视的屏幕和音响。

  • 一次开发,多端部署:开发者编写一次业务逻辑代码,通过简单的适配,就可以部署到多种鸿蒙设备上,极大地提高了开发效率。

二、鸿蒙应用开发的核心概念

1. 技术体系

鸿蒙应用开发主要涉及两大技术体系:

  • ArkTS: 这是鸿蒙应用开发的首选主力语言。它基于TypeScript,继承了TS的静态类型检查和面向对象特性,同时提供了声明式UI 开发范式,让UI开发更简洁、更高效。如果你有JavaScript/TypeScript或Flutter开发经验,会很快上手。

  • ArkUI: 鸿蒙的UI开发框架。它提供了丰富的组件(如按钮、文本、图像等)和布局,用于构建应用界面。ArkUI采用声明式语法,通过描述UI的状态和依赖关系,框架会自动处理UI的更新。

2. 应用模型

应用模型是应用运行的基石,它定义了应用的生命周期、进程模型、线程模型等。鸿蒙主要提供了两种应用模型:

  • Stage模型: 主推和未来的模型。它提供了AbilityStageWindowStage等类,作为应用组件和窗口的“舞台”,实现了组件级的隔离和能力共享,更适合复杂应用和跨设备迁移。新项目强烈建议使用Stage模型

  • FA模型: 传统模型。它提供了AbilityInternal Ability两种组件,功能相对简单,是早期的应用模型。目前主要为兼容旧应用而保留。

3. 核心组件
  • Ability: 应用所具备能力的抽象,也是应用程序的重要组成部分。一个应用由一个或多个Ability组成。

    • UIAbility: 包含UI界面,负责与用户交互。它是一个应用组件,拥有自己的生命周期(onCreateonWindowStageCreateonForegroundonBackgroundonDestroy等)。

    • ServiceAbilityDataAbility: 分别用于提供后台服务和无UI的数据访问能力(在Stage模型中,其功能被ExtensionAbility系列组件所取代)。

  • ExtensionAbility: Stage模型中的扩展组件。用于处理特定场景的任务,如卡片(FormExtensionAbility)、输入法、壁纸等。它是对Ability能力的扩展和细分。

4. 分布式能力

这是鸿蒙的“灵魂”。通过以下几个关键技术支持“超级终端”:

  • 分布式软总线: 如同在设备间架设了一条“高速公路”,屏蔽了底层不同设备的通信协议差异,让设备发现和连接变得极其简单。

  • 分布式数据管理: 允许应用在跨设备之间无缝地访问和共享数据,就像访问本地数据一样。

  • 分布式任务调度: 系统可以根据设备的位置、状态、能力等,将合适的任务(如接听电话、播放音乐)调度到最合适的设备上执行。

三、开发工具与环境搭建

  1. IDE: DevEco Studio

    • 这是官方提供的集成开发环境,基于IntelliJ IDEA,界面和操作与Android Studio非常相似。

    • 它集成了代码编辑、编译构建、调试、模拟器、应用签名和发布等功能。

  2. SDK: HarmonyOS SDK

    • 在DevEco Studio中下载和管理,包含了开发所需的所有API库、工具和文档。

  3. 模拟器: Device Manager

    • 提供多种设备的模拟器(手机、平板、手表、电视等),方便在没有真机的情况下进行调试。

  4. 语言: ArkTS(主力),同时也支持纯JS和C++(用于Native开发)

四、相关资料

官方参考资料https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/application-dev-guide

分类文档https://developer.huawei.com/consumer/cn/doc/

行业示例(有对应介绍,最底下有示例代码):https://developer.huawei.com/consumer/cn/doc/architecture-guides/practice-auto-app-architecture-v1-0000001903742656,我想尝试的还有美食

课程与考试https://developer.huawei.com/consumer/cn/training/

开发者学堂https://developer.huawei.com/consumer/cn/training/result?courseType=5&orderBy=1&type1List=101718934267126043

开发环境下载https://developer.huawei.com/consumer/cn/download/

界面布局https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/arkts-layout-development-overview

实际设备调试配置调试签名真机运行应用,开启硬件调试模式;但是这里要求版本一致,创建鸿蒙6的项目,平板还是鸿蒙5无法调试(参考下面我描述的设置项目和硬件一致);配置签名证书后才能正常调试;调试时硬件要处于解锁状态
 

Logo

作为“人工智能6S店”的官方数字引擎,为AI开发者与企业提供一个覆盖软硬件全栈、一站式门户。

更多推荐