本帖最后由 sunsili 于 2021-11-27 00:20 编辑
为了方便开发者正确获取内容,本导读基于HarmonyOS 通用开发历程对相关资源进行了分类,并对 原子化服务、 设备相关的差异化开发历程进行了说明。 开发者可以使用HUAWEI DevEco Studio( 点击链接获取工具)开发HarmonyOS用户应用程序。HUAWEI DevEco Studio是面向华为终端全场景多设备的一站式集成开发环境(IDE)。 通用开发历程各类设备(手机/平板、智能穿戴、智慧屏等)通用的用户应用程序开发历程如下表所示。 [td] | | | 认识HarmonyOS | - 了解HarmonyOS的系统定位、架构、技术特性等。
- 了解HarmonyOS应用开发的基本概念和基础知识。
| | 准备开发环境 | - 安装开发工具,并配置相关开发环境。
- 快速构建首个应用,熟悉HarmonyOS应用开发流程。
| | 开发Ability | Ability是HarmonyOS应用程序的重要组成部分,分为FA(Feature Ability)和PA(Particle Ability)两种类型: 进行HarmonyOS应用开发,首先要了解Ability如何使用。 | | 开发UI | FA需要提供UI用于与用户进行交互,HarmonyOS提供了Java UI和JS UI两种UI框架:Java UI提供了细粒度的UI编程接口,使应用开发更加灵活;JS UI提供了相对高层的UI描述,使应用开发更加简单。
说明
针对轻量级智能穿戴(Lite Wearable),现阶段只使用JS语言进行应用开发,详见 轻量级智能穿戴开发。
| | 开发业务功能 | - 媒体:视频、音频、图像、相机等功能的开发。
- 安全:权限、生物特征识别等功能的开发。
- AI:图像超分、语音识别、码生成等功能的开发。
- 网络连接:NFC、蓝牙、WLAN等功能的开发。
- 设备管理:传感器、控制类小器件、位置等功能的开发。
- 数据管理:数据库、分布式数据/文件服务、数据搜索等功能的开发。
- 线程:线程管理、线程间通信等功能的开发。
- IDL:声明系统服务和Ability对外提供的服务接口,并生成相关代码。
| | 调试应用 | 如果需要在真机设备上调试应用,则在编译前需要先申请调试证书,并配置签名信息。以便于在编译构建时,生成带签名信息的HAP。 如果在模拟器上调试应用,则不需要签名,直接编译构建HAP即可。 | | 发布应用 | 如果需要发布到应用市场,需要申请发布证书,并对APP进行签名,再申请上架。 | |
原子化服务开发历程HarmonyOS除支持传统方式的需要安装的应用外,还支持提供特定功能的免安装的应用(即原子化服务),供用户在合适的场景、合适的设备上便捷使用。 原子化服务相对于传统方式的需要安装的应用更加轻量,同时提供更丰富的入口、更精准的分发。原子化服务的详细介绍请参见“ 原子化服务”。 其基本开发历程如下表所示。 表1 原子化服务基本开发流程[td] | | | 了解HarmonyOS | 了解HarmonyOS的系统定位、技术特性、应用开发的基本概念和基础知识,熟悉HarmonyOS应用开发通用流程。 | | 设计原子化服务 | 在设计阶段,需要满足原子化服务的设计规范,包括图标、卡片、分布式等规范。 | | 掌握原子化服务约束 | 了解原子化服务之间的调用管控机制。 | | 开发原子化服务基础体验 | 了解原子化服务总体开发规则、如何开发服务卡片等基础体验。 | | 开发原子化服务分布式体验 | 了解如何开发流转、分享等分布式体验。 | |
设备差异化开发历程相对于 通用开发历程,智能穿戴、智慧屏存在一些特殊应用开发场景,其补充指导如下表所示。 [td] | | | 智能穿戴 | 对于智能穿戴,应用可以通过HarmonyOS提供的接口实现音频、传感器、网络连接、UI交互、消息提醒等常规业务的开发。开发者也可以根据智能穿戴的特点,打造针对智能穿戴的独特应用。 | | 智慧屏 | 基于HarmonyOS,开发者可以开发智慧屏应用,提供丰富的分布式多媒体体验。应用可以通过HarmonyOS的API实现多媒体业务、网络访问、UI开发等能力。 | | 路由器 | 对于路由器,应用可以通过HarmonyOS提供的接口实现管理智能设备,如获取智能设备信息、订阅智能设备数据变化、控制智能设备等业务的开发。开发者也可以根据家庭多设备联动的特点,打造针对全屋智能的独特应用。 | |
代码示例工程针对HarmonyOS的重点功能提供了对应的示例代码,如Ability、UI、设备管理、AI、数据、数据管理等,具体请参考 代码示例工程。
开发者教程针对重点功能或场景的开发者教程如下表所示。 [td] | | | 效率提升套件 | | 基于HarmonyOS Java UI,使用元数据绑定框架,实现UI和数据源的绑定。 | 卡片 | | 基于HarmonyOS Java UI,实现简易的时钟卡片应用。 | | 基于HarmonyOS JS UI,实现桌面卡片数据的可视化。 | Java UI | | 介绍如何使用HarmonyOS实现一个简单的计算器应用。 | 安全 | | 基于HarmonyOS生物特征识别和相机子系统,实现人脸识别和相机拍照功能。 | 设备管理 | | 使用Bluetooth Low Energy(低功耗蓝牙)实现设备间通信。 | | 基于HarmonyOS位置相关接口,获取设备实时位置,调用HarmonyOS方向传感器,获取方向信息。 | 通用组件 | | 使用WebView组件实现应用与Web页面间的通信。 | | 通过一个圆形抽奖转盘演示HarmonyOS自定义组件的实现。 | | 使用JS实现一款简单的HarmonyOS购物应用。 | | 基于HarmonyOS Java UI,实现常见组件或者布局。 | AI | | 基于AI通用文字识别能力,检测和识别文档翻拍、街景翻拍等图片中的文字。 | | 基于AI语音播报能力,朗读输入的文字内容。 | 数据库 | | 基于分布式数据接口,实现多种设备上一致的数据访问体验。 | | 基于Data Ability的关系型数据库和数据管理能力,实现数据库相关应用服务的快速开发。 | | 基于轻量级偏好数据库,实现存储在本地应用数据的访问及操作。 | 媒体 | | 基于HarmonyOS Player,实现音频的播放、管理控制和采集。 | | 基于HarmonyOS编解码能力,实现Camera实时预览流的播放。 | | 基于图片处理能力,实现一个图片编辑模板。 | | 基于HarmonyOS图像编解码,实现图片的旋转、剪裁、缩放、镜像。 | | 基于HarmonyOS Player,实现视频文件的播放。 | 分布式 | | 基于分布式数据服务和传感器模块,实现智能穿戴和手机间数据同步以及心率等健康数据的获取。 | | 基于分布式数据服务和Service Ability,实现多设备间数据同步以及收到异常数据后拉起应用。 | | 基于分布式能力,实现地图导航信息在手机-车机-智能穿戴设备之间流转。 | | 基于分布式能力,将手机作为智慧屏的虚拟控制器,控制文字输入和遥控播放。 | | 基于分布式能力,将手机作为智慧屏的虚拟手柄终端,组成全新的多人娱乐场景。 | | 基于跨设备迁移和分布式文件能力,实现邮件的跨设备编辑和附件的调用。 | | 基于分布式文件系统和AI语音识别功能,实现一款分布式语音照相机。 | | 基于分布式调度的能力,实现远程FA的启动。 | | 基于分布式能力和IDL跨进程通信,实现视频跨设备播放、控制。 | | 基于HarmonyOS应用中Service Ability和Page Ability的使用,实现跨设备FA拉起。 | | 基于分布式能力,实现一个多屏互动、跨设备协同的亲子早教系统。 |
视频课程 [td] | | | 介绍HarmonyOS定义及特点。 | | 介绍HarmonyOS系统架构以及FA/PA原理。 | | 介绍HarmonyOS整体架构和理念,关键技术(分布式关键技术/安全和隐私/UX),应用程序框架,以及开放能力和工具平台。 | | 介绍HarmonyOS应用程序框架,HarmonyOS分布式软总线、任务调度,分布式数据管理、安全和隐私设和UX体验设计等内容。 | | HarmonyOS系列课程,快速上手HarmonyOS应用开发。 | | HarmonyOS开发者实战经验和案例分享。 |
|