智能客服
你问我答,随时在线为你解决问题
面向全场景多设备,HarmonyOS 提供了一站式应用开发平台( DevEco Studio )、ArkTS 编程语言和 ArkUI 框架,帮助开发者以更简洁、更自然的方式开发高性能应用,并提升界面开发效率。为了给开发者提供全方位的支持,帮助开发者更加轻松地进行应用开发,HarmonyOS 提供了丰富的赋能套件。开发者可以通过快速入门的指引一步步完成第一个 HarmonyOS 应用开发。
在 HarmonyOS 应用开发中,优先选择 ArkTS 语言。ArkTS 是 HarmonyOS 生态的应用开发语言,它在 TypeScript 生态基础上进一步扩展,提供了简洁自然的声明式语法、组件化机制、数据-UI自动关联等能力,让开发者可以更简洁、更自然的开发高性能应用。
开发者可以使用 ArkUI 的 UI 组件绘制应用界面。ArkUI 是一套构建分布式应用界面的声明式 UI 开发框架,它提供了丰富的 UI 组件、动画、交互事件、实时界面预览工具等,可以帮助我们快速入门 HarmonyOS 应用开发。ArkUI 提供了规则图形绘制和用户自定义绘制,通过调用 ArkUI 规则图形组件、事件,可以快速实现应用界面,提升 HarmonyOS 应用界面开发效率。

开发套件是万物互联时代的鸿蒙生态加速器,包含 HarmonyOS 应用/服务从设计、开发、测试、上架所需的关键技术和产品。
在正式开发前,开发者需要搭建好开发环境,包括开发工具 DevEco Studio 安装、新工程的创建。DevEco Studio 是面向 HarmonyOS应用及元服务开发者提供的集成开发环境,能够支持项目工程管理、智能代码编辑、一键编译和构建、多端双向实时预览、性能调优、多端设备模拟仿真等。

DevEco Studio 支持多种品类的应用/服务开发,预置了丰富的工程模板,如 Empty Ability、Native C++、[CloudDev]Empty Ability等模板。开发者可以根据工程向导轻松创建适应于各类设备的工程,并自动生成对应的代码和资源模板。同时,DevEco Studio 还提供了多种编程语言供开发者进行应用/服务开发,包括 ArkTS、JS 和 C/C++。

HarmonyOS 提供了丰富的赋能套件,为开发者提供全方位的支持,帮助开发者更加轻松地进行 HarmonyOS 应用开发。开发者可以通过开发者联盟官网一站式获取 HarmonyOS 赋能套件,包括如下内容:
● 白皮书:白皮书全面阐释了鸿蒙生态下应用开发核心理念、关键能力以及创新体验,旨在帮助开发者快速、准确、全面的了解HarmonyOS 开发套件给开发者提供的能力全景和未来的愿景。
● 视频课程:视频课程包含了 HarmonyOS 第一课,开发者可以通过代码讲解的方式深入了解 HarmonyOS 的技术特性和能力,即学即练,从而更加深入地理解和掌握技术。
● Codelabs:Codelabs 是一种全新发布的场景化案例,它们的数量丰富,分层分级,并且结合了最佳实践,为开发者提供了丰富的学习资源和实践经验。
● 开发指南:开发指南的内容包括相关概念的定义、原理机制的解释、详细的开发步骤以及调试验证的指导等,帮助开发者全面掌握HarmonyOS UI 的能力和开发流程。
● API 参考:API 参考为开发者提供了清晰的功能描述、详细的参数说明、完善的权限信息以及规范的示例代码,能够帮助开发者更快地理解和使用 HarmonyOS 的 API。
● 最佳实践:最佳实践涵盖了应用架构、性能优化、多端开发实例、流水线搭建等方面,旨在帮助开发者构建高体验的应用。
● 示例代码:示例代码是为重点功能或场景而提供的程序。HarmonyOS 提供了丰富的示例代码,帮助开发者理解如何实现特定功能和场景。
● FAQ:在 HarmonyOS 应用开发的全程中,我们还提供了 FAQ 作为支持,提高开发效率和开发质量。

HarmonyOS 提供了快速入门,手把手教学实践案例,零基础2小时完成第一个鸿蒙应用“手持弹幕”,通过分步详解与实操,了解应用开发的基础知识。

HarmonyOS 提供了完整设计规范,以及创新特性的适配规范,让开发者快速构建出 HarmonyOS 全场景设备的创新体验。不断更新的设计资源库,包含图标、色彩、文字、音效等丰富的资源,并且提供多种效率组件和界面模版,帮助快速准确地设计 HarmonyOS应用。
HarmonyOS 回归本源设计,从浩瀚宇宙中抽象出动态语言,模拟真实世界中的物理动力学,将万有引力融入到动效设计中。引入轻拟物美学风格,以真实生活中的质感,为用户带来全新交互体验。跨设备的超级终端一拖即连,万能卡片轻轻一滑即可获取所需信息,带来全场景智慧生活新体验。
HarmonyOS 是一款面向全场景智慧生活方式的分布式操作系统。在传统的单设备系统能力的基础上,HarmonyOS 提出了基于同一套系统能力、适配多种终端形态的分布式理念,能够支持手机、平板、PC 等多种终端设备。对消费者而言,HarmonyOS 能够将生活场景中的各类终端进行能力整合,实现不同终端设备之间的极速连接、能力互助、资源共享,匹配合适的设备、提供流畅的全场景体验。在 HarmonyOS 中,用户体验设计不仅仅是用户界面设计,更是涵盖了用户在整个使用过程中的感知、交互和情感体验。HarmonyOS 的设计指南包含完整的设计规范,以及创新特性的适配规范,包括应用架构、人机交互、视觉风格、动效、声音等多方面,为开发者提供了宝贵的参考。

在为 HarmonyOS 的多种设备进行通用性设计和开发时,开发者可以从如下方面进行考虑:
● 开发布局:HarmonyOS 提供了9中常见的布局,包括线性布局(Row/Column)、层叠布局(Stack)、弹性布局(Flex)等,详细的布局介绍可以参考布局概述。组件按照布局的要求依次排列,构成应用的页面。在声明式UI中,所有的页面都是由自定义组件构成,开发者可以根据自己的需求,选择合适的布局进行页面开发。
● 人机交互:交互是应用和产品之间沟通的桥梁,一致性且符合当前状态的交互方式,能够创造出令人愉悦、高效的用户体验。HarmonyOS 支持多种交互事件,包括手势等。在设计和开发应用时,不仅需要考虑到应用具有使用多种输入方式的可能性,还需要考虑实际的应用特性及用户行为习惯,以此来选择对应的交互事件,确保用户能够在各种不同情况下都能轻松、高效地完成操作。
● 动效:动效对用户体验极其重要,他不仅能够引导用户进行下一步操作,增加用户的互动感,还能使界面过度自然流畅,缓解页面等待带来的不适感。ArkUI提供了多种类型的动画接口,包括属性动画、转场动画、组件动画等,详细分类可以参考动画概述。
● 声音:声音设计以提升用户听觉体验及优化信息传达方式为主要目的,在人机交互中提供反馈信息,并增强用户的感官与情感体验。
● 无障碍设计:无障碍设计强调在现代社会,需要充分考虑具有不同程度生理伤残缺陷者和正常活动能力衰退者即老年人的使用需求,配备能够满足这些服务功能与装置,营造一个充满关怀 ,切实保障人们安全、方便、舒适的现代生活环境。
● 分布式设计:HarmonyOS 是面向未来全场景智慧生活方式的分布式操作系统。HarmonyOS 将生活场景中的各类终端进行能力整合,形成“One Super Device”,以实现不同终端设备之间的极速连接、多端协同、资源共享,匹配合适的设备、提供流畅的全场景体验。
在万物智联时代重要机遇期,HarmonyOS 系统结合移动生态发展的趋势,将生活场景中的各类终端进行能力整合,实现不同终端设备之间的极速连接、能力互助、资源共享,匹配合适的设备、提供流畅的全场景体验,基于此提出了 HarmonyOS 生态核心技术理念:一次开发,多端部署;可分可合,自由流转。
一次开发,多端部署
HarmonyOS 面向多终端提供了“一次开发,多端部署”的能力,即一套代码工程,一次开发上架,多端按需部署。“一多”分别从界面级、功能级、工程级三个维度进行适配兼容,解决了页面适配、功能兼容和按需部署的问题,为开发者降低了界面开发、功能开发、部署安装的成本,真正实现了一次开发,多端部署,在跨设备之间实现生态共享。“一多”让开发者可以基于一次开发,快速构建不同类型终端上的应用,降低开发成本,提高开发效率。

可分可合,自由流转
在 HarmonyOS 中,将跨多设备的分布式操作统称为流转。流转能力打破设备界限,多设备联动,使用户应用程序可分可合、可流转,实现如邮件跨设备编辑、多设备协同健身、多屏游戏等分布式业务。根据使用场景的不同,流转分为跨端迁移和多端协同两种具体场景。
● 跨端迁移是指当用户在一个设备上发起操作,并切换到另一个设备上继续操作时,用户能够马上在新的设备上继续当前的操作。
● 多端协同是指多个设备上的软件和硬件能力相互协同,作为一个整体为用户提供比单设备更加高效、沉浸的体验。
流转为开发者提供更广的使用场景和更新的产品视角,强化产品优势,实现体验升级。更多关于自由流转的内容可参考自由流转。

在设计与开发过程中,经常需要图标、文字、音效等资源,开发者可以在设计资源中寻找对应的资源文件。在 HarmonyOS 的设计资源中,可以找到字体、图标等通用资源,还能发现多种效率组件和界面模版,让开发者可以快速设计 HarmonyOS 应用。
良好的架构设计能够确保系统具有良好的可扩展性、可维护性和可测试性,同时满足性能和安全方面的需求。在进行应用架构设计时,开发者可以以下几个方面进行架构设计:
● 分层架构设计:将应用划分为产品定制层、基础特性层和公共能力层,可以降低层间的依赖性,从而提升代码的可维护性。通过分层架构设计进一步明确了每层的职责和层间的交互机制,为开发者呈现了一个清晰且结构化的开发框架。
● 模块化设计:将应用分解为多个功能模块,其中每个模块负责执行特定的功能。通过模块化设计提高了代码的可理解性和可复用性,使应用的扩展和维护变得更为简便,同时降低了系统各部分之间的耦合度。
● 应用导航设计:将应用划分为多功能模块后,通过 Navigation 导航设计,完成业务模块之间的解耦,实现不同业务模块之间的页面跳转交互。
● 应用并发设计:根据不同的业务需求和场景,选择合适的并发方案,可以有效提升应用的并发处理能力和性能,保障线程安全,确保系统的稳定性和可靠性。
● 应用切面编程设计:HarmonyOS 主要通过插桩机制来实现切面编程,应用切面编程设计可以实现对业务逻辑的各个部分进行隔离,降低它们之间的耦合度,提高程序的可维护性和可重用性,同时提高了开发的效率。
为了提升应用的用户体验,HarmonyOS 提供了 UX、安全隐私、功耗、性能、兼容性、稳定性等多维度的应用体验标准和建议,帮助开发者更好地理解用户需求和行为,设计出更符合用户习惯和喜好的应用界面和功能,减少应用错误的发生率,提高设计质量和运行稳定性。
应用UX体验建议:应用 UX 体验建议从影响用户体验的各个维度定义了相应的 UX 质量建议,规定了应用需达到的 UX 基础体验建议,以保证应用良好的交互体验。
应用安全隐私体验建议:应用安全隐私体验标准旨在提升应用的用户体验,规范应用全生命周期的安全、隐私行为。
应用功耗体验建议:应用功耗体验标准旨在提升应用的功耗热体验,规范应用全生命周期软硬件资源合理使用。
应用性能体验建议:应用性能体验标准旨在优化 HarmonyOS 应用性能,打造安全可靠、值得信赖、健康的绿色应用生态环境体系,不断提升用户体验,寻找应用设计的改进点。
应用基础功能和兼容性体验建议:应用性能体验标准旨在牵引应用的稳定性改进,构建稳定和体验良好的应用生态。
应用稳定性体验建议:应用稳定性指应用在持续操作时间内出错的概率,例如一天时间内会出错 1 次或几次。应用软件的稳定性严重影响着应用的用户体验,为构筑良好用户体验,须建立一套应用稳定性质量管控体系。应用稳定性标准规定了HarmonyOS 应用的稳定性体验建议。
应用质量包括应用的性能、功耗、隐私与安全等多个维度。在设计时,开发者需要充分考虑应用质量的相关设计,以打造一款高质量的应用,为用户带来愉悦的使用体验,充分发挥高端设备的优势,保障用户的隐私安全。
性能
应用运行期间可能出现响应慢、动画播放不流畅、列表拖动卡顿、应用崩溃或耗电量过高、发烫、交互延迟等现象,这些现象表明应用可能存在性能问题,需要对应用程序进行性能体验设计和优化,使应用程序更高效、更稳定。关于性能体验设计,HarmonyOS 针对不同的场景提供了相应的设计方案及其参考,如界面渲染性能优化等。
同时,DevEco Studio 包含性能调优工具 DevEco Profiler,能够帮助开发者找出应用中的性能问题。关于 DevEco Profiler 的更多内容可以参考 DevEco Profiler 性能调优概述。

功耗
功耗设计是在满足功能、性能要求的前提下,尽量降低能耗的设计方法。通过合理的功耗设计,可以降低应用对设备电量的消耗,延长设备的续航时间,提高用户体验。同时,功耗设计也有助于减少设备发热问题,提升设备的稳定性和可靠性。开发者借助HarmonyOS 提供的省电模式、深色模式和 LTPO 技术等能力,实现应用的低功耗设计。
隐私与安全
隐私是用户的基本权利,开发者应该保护好用户的隐私。如果需要采集个人数据时,应清晰、明确地告知用户,并确保告知用户的个人信息将被如何使用。在应用的设计阶段,就需要考虑隐私保护,并在产品开发过程中始终遵守隐私保护设计规范,保证应用的隐私合规和数据安全。有关用户隐私保护的信息,请参考隐私设计。

应用安全是保障应用使用过程和结果的安全。针对应用在使用过程中可能出现计算、传输数据的泄露和失窃,通过其他安全工具或策略来消除隐患。应用安全设计,可以保障应用程序的完整性、可用性和保密性,避免信息泄露、数据损坏等安全问题。更多有关应用安全的设计,请参考应用数据安全、应用安全编码实践等。
HarmonyOS 为开发者提供了丰富的工具、能力,并对应用框架、应用服务、系统、媒体、图形等领域的重点开放能力提供了开发指导,助力开发者快速完成应用的开发。
应用框架提供了基础框架,相关 Kit 开放能力包括 Ability Kit(程序框架服务)、ArkUI(方舟 UI 框架)等。
● ArkData (方舟数据管理)为开发者提供数据存储、数据管理和数据同步能力,比如联系人应用数据可以保存到数据库中,提供数据库的安全、可靠以及共享访问等管理机制,也支持与手表同步联系人信息。
● Ability Kit(程序框架服务)提供了应用程序开发和运行的应用模型,是系统为开发者提供的应用程序所需能力的抽象提炼,它提供了应用程序必备的组件和运行机制。有了应用模型,开发者可以基于一套统一的模型进行应用开发,使应用开发更简单、高效。
● ArkWeb(方舟 Web )提供了 Web 组件,用于在应用程序中显示 Web 页面内容,为开发者提供页面加载、页面交互、页面调试等能力。
● Core File Kit(文件基础服务)为开发者提供一套访问和管理应用文件和用户文件的能力。帮助用户更高效地管理、查找和备份各类文件,使用户能够轻松应对各种文件管理的需求。
● Background Task Kit(后台任务开发服务)为开发者提供了后台任务管理的能力,开发者可以根据实际场景来选择合适的后台任务,以降低设备耗电速度、保障用户使用流畅度。
系统为开发者提供了硬件、操作系统内核相关的能力,包括 Basic Services Kit(基础服务)、Remote Communication Kit(远场通信服务)、Asset Store Kit(关键资产存储开发套件)等。
● Basic Services Kit(基础服务)作为基础服务套件,为应用开发者提供常用的基础能力。比如常用的剪贴板读写、文件上传下载、文件压缩、文件打印、进程间/线程间通信、设备管理、应用账号管理等能力都由本Kit提供。
● Remote Communication Kit(远场通信服务)是华为提供的HTTP发起数据请求的 NAPI 封装。应用通过 Remote Communication Kit 可便捷快速地向服务器发起数据请求。
● Asset Store Kit(关键资产存储开发套件)包含了关键资产存储服务( ASSET )开放的接口能力集合,提供了用户短敏感数据的安全存储及管理能力。其中,短敏感数据可以是密码类(账号/密码)、Token 类(应用凭据)、其他关键明文(如银行卡号)等长度较短的用户敏感数据。
● Crypto Architecture Kit(加解密算法框架服务)提供了加解密、签名验签、消息验证码、哈希、安全随机数、密钥派生等相关功能。开发者可以通过调用加解密算法框架服务,忽略底层不同三方算法库的差异,实现迅捷开发。
● Data Loss Prevention Kit(数据防泄漏服务,简称为 DLP )是系统提供的系统级的数据防泄漏解决方案,提供文件权限管理、加密存储、授权访问等能力,数据所有者可以基于账号认证对机密文件进行权限配置,允许拥有只读、编辑、拥有者权限,随后机密文件会通过密文存储,在支持DLP机制的设备上可以通过端云协调进行认证授权,获取对数据的访问和修改的能力。
媒体提供音频、视频、相机等简单有效的媒体组件开发接口,使得应用开发者轻松使用系统的多媒体资源。
● Audio Kit(音频服务)针对提供场景化的音频播放、录制接口,帮助开发者快速构建音频高清采集及沉浸式播放能力。
● Media Kit(媒体服务)提供了AVPlayer和AVRecorder用于播放、录制音视频。在 Media Kit 的开发指导中,将介绍各种涉及音频、视频播放或录制功能场景的开发方式,指导开发者如何使用系统提供的音视频API实现对应功能。
● Media Library Kit(媒体文件管理服务)提供了管理相册和媒体文件的能力,包括照片和视频,帮助你的应用快速构建图片视频展示和播放能力。
● AVSession Kit(Audio & Video Session Kit,音视频播控服务)是系统提供的音视频管控服务,用于统一管理系统中所有音视频行为,帮助开发者快速构建音视频统一展示和控制能力。
● AVCodec kit(Audio & Video Codec Kit,音视频编解码服务)是媒体系统中的音视频的编解码,媒体文件的解析,封装,媒体数据输入等原子能力。
图形主要包括图形、AR引擎服务、图形加速服务等能力,让开发者可以便捷、高效地绘制与显示图形。
● AR Engine( AR 引擎服务)是一个用于在HarmonyOS上构建增强现实应用的引擎,提供了运动跟踪、环境跟踪和命中检测等空间计算能力。通过这些能力,可让您的应用实现虚拟世界与现实世界的融合,为您的应用提供全新的视觉体验和交互方式。
● ArkGraphics 2D(方舟 2D 图形服务 )主要提供图形绘制与显示相关的能力。开发者可以基于一套统一的图形接口进行应用开发,使应用开发更简单、高效。
● ArkGraphics 3D (方舟 3D 图形服务)基于轻量级的3D引擎以及渲染管线为开发者提供基础3D场景绘制能力,供开发者便捷、高效地构建3D场景并完成渲染。
● Graphics Accelerate Kit(图形加速服务)作为软硬件协同的系统级图形加速解决方案,帮助游戏应用快速构建超帧、ABR(自适应稳态渲染)等游戏渲染加速能力,解决游戏运行不流畅、卡顿掉帧、长时间运行导致发热发烫等痛点体验问题。
● XEngine Kit(GPU加速引擎服务)提供基于马良 GPU 的性能提升方案,包括 GPU/AI 超分能力、自适应 VRS、Subpass Shading 等,通过业界领先算法以及软硬芯底层优化,让用户拥有更高性能、更低功耗的 3D 游戏/应用、AR/VR 体验。
HarmonyOS SDK 为应用提供一系列开放能力,可以帮助开发者完善应用。开发者可以不断丰富应用的功能,提高用户体验和满意度。
● Account Kit(华为账号服务)提供了简单、安全的登录授权功能,方便用户快捷登录。用户不必输入账号、密码和繁琐验证,就可以通过“华为账号登录”快速登录,即刻使用您的App。
● Location Kit(定位服务)提供快速、精准地获取用户位置信息的能力,构建全球定位服务能力,助力发展全球业务。
● Map Kit(地图服务)提供强大而便捷的地图服务能力,助力实现个性化地图呈现与交互,轻松完成地图构建工作。通过地图服务可以轻松地在自己的 HarmonyOS 应用中加入地图相关的功能,包括:地图呈现、地图交互、在地图上绘制等功能。
● IAP Kit(应用内支付服务)为应用提供便捷的应用内支付体验和简便的接入流程。应用内支付服务接入简单方便,能够根据用户账号服务地所在国家/地区自动展示本地化的语言和货币价格,大大降低支付渠道、全球化合规等开发引入和产品上线环节的投入。
● Push Kit(推送服务)是华为提供的消息推送平台,建立了从云端到终端的消息推送通道。所有 HarmonyOS 应用可通过集成 Push Kit,实现向应用实时推送消息,使消息易见,构筑良好的用户关系,提升用户的感知度和活跃度。

AI主要包括基础语音服务、基础视觉服务、自然语言理解服务等,为开发者提供了强大的工具,帮助开发者有效地开发和实现人工智能的相关应用。
● Core Speech Kit(基础语音服务)集成了语音类基础 AI 能力,包括文本转语音( TextToSpeech )及语音识别(SpeechRecognizer)能力,便于用户与设备进行互动,实现将实时输入的语音与文本之间相互转换。
● Core Vision Kit(基础视觉服务)是机器视觉相关的基础能力,例如通用文字识别(即 OCR,Optical Character Recognition,也称为光学字符识别)、人脸检测、人脸比对以及主体分割等能力。
● Natural Language Kit(自然语言理解服务)提供了多项文本语义理解相关的基础能力,帮助开发者更好地处理和分析文本数据。
● Intents Kit(意图框架服务)是 HarmonyOS 级的意图标准体系 ,意图连接了应用/元服务内的业务功能。
● Speech Kit(场景化语音服务)集成了语音类 AI 能力,包括朗读控件( TextReader )能力,便于用户与设备进行互动,为用户实现朗读文章。
DevEco Testing 是一款专项集成测试工具,提供了多项测试能力。DevEco Testing 将测试能力以测试服务卡片形式的呈现给用户,无需复杂的配置,即可一键执行测试任务,同时提供了测试报告和分析,辅助开发者发现应用和产品问题,提升应用质量。在HarmonyOS 中,提供多种测试能力,包括单元测试、UI 测试和专项测试。关于评估应用的质量,HarmonyOS 提供了性能、安全、基础功能兼容性、稳定性、功耗和 UX 这 6 大核心质量维度相关测试建议。
