0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

多层面深度分析【HarmonyOS NEXT】开发者内容

jf_46214456 来源: jf_46214456 作者: jf_46214456 2024-01-30 15:51 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

一、IDE工具层面

DevEco Studio作为专门用于开发鸿蒙操作系统HarmonyOS)的应用程序的集成开发环境(IDE),提供一个清晰、直观的用户界面,使得开发人员可以更容易地进行编码、调试和测试我们的应用。新的版本里,在调试和测试方面做了很大的提升,尤其对NDK,使用C或者C++语言实现应用的关键功能的开发项目,在跨语言调用上,不管ArkTS调用C和C++,还是反过来在C和C++上调用ArkTS,它能很容易找到内存泄漏的点,在调优方面,将专家级调优经验,开发成工具,以泳道图的方式直观展现,通过组件耗时情况,可以准确定位到卡顿的点,进而优化!

二、SDK方面

作为支撑鸿蒙原生应用开发的技术源动力,HarmonyOS SDK将系统级能力全面对外开放,覆盖了应用框架、应用服务、系统、媒体、图形、AI六大领域的开发能力。

1、应用框架(Application Framework):

  • 提供基础的应用开发框架,包含了应用生命周期管理、用户界面渲染、事件处理等基本功能。
  • 包括Ability Kit、ArkUI、ArkTS等,这些工具和库用于构建应用程序的基本结构。

2、应用服务(Application Services):

  • 为应用程序提供了一系列的服务,以增强其功能和用户体验。
  • 包含Account Kit、App Linking Kit、Message Kit等,用于实现账户管理、数据同步、消息推送等服务。

3、系统(System):

  • 涉及操作系统级别的服务和功能,比如网络、安全性、设备硬件控制等。
  • 包括Network Kit、Security Kit、System Service Kit等,提供了网络连接、数据加密、系统服务等功能。

4、媒体(Media):

  • 提供音频、视频处理能力,以及图像捕捉和渲染的功能。
  • 包含Audio Kit、Camera Kit、Media Kit等,支持应用进行媒体内容的创建、编辑和播放。

5、图形(Graphics):

  • 提供2D/3D图形渲染、动画、和视觉效果的工具。
  • 包括Canvas Kit、Graphic Accelerate Kit、Vector Graphic Kit等,帮助开发者创建图形丰富的用户界面和动画效果。

6、AI(Artificial Intelligence):

  • 包含人工智能功能,如机器学习语音识别、图像识别等。
  • 包括AI Engine、Machine Learning Kit、HiAI Foundation等,使应用能够实现智能化的操作和处理。

三、Next版鸿蒙原生应用新特性:更纯净、更智能、更精致、更易用

1、更纯净

首先,利用Core File Kit, L ocation Kit等安全控件,可以免用户授权使用能力,做过前面版本的鸿蒙应用开发的小伙伴们都有体验,访问图片/视频、音频、文件、联系人、相机、电话、头像、扫码等等敏感信息的时候,都必须需要获得用户的授权,需要用户手动点击授权按钮,程序才能继续进行后面操作,但这点在Next版本后的鸿蒙应用开发改善了,比如用户在应用里保存图片,只要点击“保存”,就默认用户同意授权了,可直接保存到系统相册,无需授予应用任何权限,应用无法越过用户访问任何公共文件,即保证了安全,也让用户操作不被中断,更流畅丝滑。另外,Account Kit全局支持未成年保护模式,所有应用自动生效,场景1:设备给未成年人专用,在设备登录未成年帐号,场景2:家长设备给未成年人临时使用,家长设置未成年使用,在上面两种场景下打开相关应用,默认进入青少年模式,进入这个模式后,很多不应该小朋友使用的app都将用不了,外面可以根据设置指定哪些能给用,哪些不能给用,这些开发赋能,让鸿蒙操作学堂环境更纯净!

2、更智能

通过Media Library Kit控件,手机可以智能推荐用户要选择的照片,比如需要上传身份证的时候,打开相册上传,可以通过输入“身份证”这样的关键字,鸿蒙系统会自动图片识别,自动筛选出身份证的图片供选择,不用我们自己去找!在比如Push Kit控件,让同一事件推送的多个消息自动聚合在一起,让用户高效获取价值信息,提升用户的体验。

3、更精致

ArkUI提供的控件,提升了空间层次感,模拟真实世界的空间层次,提供精致细腻的视效动效,使能鸿蒙原生应用高端精致。

4、更易用

使用 Live View Kit (实况窗),打造鸿蒙原生应用全新体验,这个实况窗,实质就是让展示信息的地方,更加多样化了,比如,实况窗可将打车、外卖配送等进展呈现在熄屏、锁屏、通知中心、状态栏,桌面卡片等多个入口,无论手机处于那个状态,用户只需扫一眼即可了解最新打车、外卖进度,无需反复打开应用查看,减少用户等待过程的焦虑,让手机更加易用。又比如,使用Scan Kit 软硬芯协同,提供鸿蒙原生应用统一的、系统级的扫码能力,可以把扫码图标常驻桌面,打开扫描界面不用去找对应的app,扫描时系统自动识别是什么app的二维码,自动对接到对应app,让手机使用更方便。

四、在开发层面

1、应用架构上采用三层模式

因为鸿蒙是针对多设备的操作系统,所以开发工程上,建议把基本不需要修改的代码放到工程的公共能力基础层,然后根据各种设备的不同,拆分出很多特性代码模块,放在特性层,最上面的一层是针对不同设备的皮肤,有可能随时改变的代码,放在产品层。整体上就把项目从下到上工程划分为,公共基础能力层,特性层以及产品层。

2、一次开发,多端部署

随着终端设备形态日益多样化,分布式技术逐渐打破单一硬件边界,一个应用或服务,可以在不同的硬件设备之间随意调用、互助共享,让用户享受无缝的全场景体验。而作为应用开发者,广泛的设备类型也能为应用带来广大的潜在用户群体。但是如果一个应用需要在多个设备上提供同样的内容,则需要适配不同的屏幕尺寸和硬件,开发成本较高。Harmony 系统面向多终端提供了“一次开发,多端部署”(简称为“一多”)的能力,让开发者可以基于一种设计,高效构建多端可运行的应用。说的直白一点,就是以前我们可能会针对不同设备,开发不同的app来支持,pc端一套pc代码,移动端对应一套移动端代码,手表又会重新开发手表的对应的程序,再不济,也是一套应用里边含有几套对应不同设备的独立的UI代码,但是现在鸿蒙系统上做应用开发不用这门麻烦了,“一多”就非常完美解决这个问题,它能做到开发阶段应考虑不同类型设备间最大程度的复用代码,整个代码工程最终构建出一个APP包,但这个APP包可以分发适配到各种不同设备中正常运行。

3、UI框架采用MVVM模式

ArkUI采取MVVM = Model + View + ViewModel模式:
  • (1)Model层:存储数据和相关逻辑的模型。它表示组件或其他相关业务逻辑之间传输的数据。Model是对原始数据的进一步处理。
  • (2)View层:在ArkUI中通常是@Components修饰组件渲染的UI。
  • (3)ViewModel层:在ArkUI中,ViewModel是存储在自定义组件的状态变量、LocalStorage和AppStorage中的数据。 采用MVVM(Model-View-ViewModel)
模式进行用户界面(UI)设计和开发,具有以下好处:
  • (1)提高可维护性:MVVM模式通过分离视图(UI)和业务逻辑(Model),使得代码更易于维护和扩展。ViewModel充当视图和模型之间的中介,减少了视图和模型之间的依赖。
  • (2)增强可测试性:由于业务逻辑被从视图中分离出来,因此可以独立于UI对业务逻辑进行测试,提高测试的便利性和覆盖面。
  • (3)提升代码复用率:ViewModel可以在不同的视图中重用,特别是在复杂的用户界面和共享功能中,这样可以减少重复的代码。
  • (4)简化数据绑定:MVVM模式允许自动数据绑定,这意味着视图可以直接从ViewModel获取数据,反之亦然。这简化了UI的动态更新,使得开发者不必手动操作DOM或监听数据变化。
  • (5)更好的分工协作:设计师可以专注于视图设计,而开发者可以专注于业务逻辑,从而使团队协作更加高效。
  • (6)改善性能:MVVM可以通过优化数据绑定和状态管理来提高应用程序的性能,特别是在处理大量动态数据更新的情况下。
  • (7)更好的用户体验:MVVM支持更丰富的交互设计,如实时数据更新,无需刷新页面即可响应用户的操作,从而提升用户体验。
  • (8)减轻UI线程压力:ViewModel可以在后台线程中处理数据逻辑,从而减少UI线程的工作量,使界面响应更加流畅。

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开发者
    +关注

    关注

    1

    文章

    738

    浏览量

    17930
  • 鸿蒙系统
    +关注

    关注

    183

    文章

    2642

    浏览量

    69378
  • HarmonyOS
    +关注

    关注

    80

    文章

    2147

    浏览量

    35623
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    元服务发布配置开发者服务信息

    您作为开发者的相关信息将面向元服务发布区域的用户公开,其中客服联系方式可能会提供给用户,用于咨询相关问题。 登录AppGallery Connect,点击“APP与元服务”。 选择要发布的元服务
    发表于 10-31 17:58

    QCon·上海站HarmonyOS开发者技术分论坛:共探鸿蒙开发新机遇

    论坛(以下简称“论坛”)成功举办,论坛聚焦 AI 实践落地与技术赋能,邀请多位华为技术专家深度解读并分享 HarmonyOS AI辅助开发能力、多设备适配解决方案、场景化赋能、性能调优、场景能力共建以及React Native性
    的头像 发表于 10-24 15:59 729次阅读
    QCon·上海站<b class='flag-5'>HarmonyOS</b><b class='flag-5'>开发者</b>技术分论坛:共探鸿蒙<b class='flag-5'>开发</b>新机遇

    第三届大会回顾第6期 | HarmonyOS NEXT原生智能,助力应用低成本生而智能

    原生智能是HarmonyOS NEXT的核心能力之一,通过将人工智能(AI)技术与操作系统深度融合,实现了从底层到应用层的全面智能化。HarmonyOS
    的头像 发表于 07-14 18:04 917次阅读
    第三届大会回顾第6期 | <b class='flag-5'>HarmonyOS</b> <b class='flag-5'>NEXT</b>原生智能,助力应用低成本生而智能

    HarmonyOS 5】金融应用开发鸿蒙组件实践

    原生鸿蒙操作系统星河版,面向开发者开放申请,余承东宣布鸿蒙生态设备数达 8 亿台;建设银行、邮储银行等完成鸿蒙原生应用 Beta 版本开发。 2024 年 10 月 22 日: HarmonyOS
    的头像 发表于 07-11 18:20 773次阅读
    【<b class='flag-5'>HarmonyOS</b> 5】金融应用<b class='flag-5'>开发</b>鸿蒙组件实践

    HDC 2025开发者主题演讲精彩回顾

    开发者解决方案升级等内容,同时多位生态伙伴分享基于HarmonyOS的最新开发实践,为开发者提供切实可行的创新思路,进一步推动鸿蒙生态的繁荣
    的头像 发表于 07-09 11:20 1074次阅读

    华为正式启动HarmonyOS 6开发者Beta

    在2025年华为开发者大会(HDC)上,华为正式启动HarmonyOS 6开发者Beta,并全面展示一年多以来与合作伙伴共建鸿蒙生态的创新成果。
    的头像 发表于 06-24 15:42 657次阅读

    开发者即创世——HarmonyOS极客马拉松2025英雄召集令

    可运行的demo及部署文档,支持主流鸿蒙设备测试。 易用性及可维护性:代码简洁,结构清晰,遵循鸿蒙开发规范,代码注释与文档完整,便于其他开发者二次开发。 开放能力深度集成:适配最新
    发表于 05-12 10:16

    HarmonyOS NEXT 原生应用/元服务-性能分析基础耗时分析Time分析

    一、 函数耗时分析及优化 开发应用或元服务过程中,如果遇到卡顿、加载耗时等性能问题,开发者通常会关注相关函数执行的耗时情况。DevEco Profiler提供的Time场景分析任务,可
    发表于 02-25 14:31

    HarmonyOS NEXT 原生应用/元服务-DevEco Profiler性能问题定位深度录制

    开发者可针对不同的性能问题场景选择不同模式的分析任务,对应用/元服务进行深度分析。当前支持以下调优场景为: Launch:主要用于分析应用/
    发表于 02-24 16:06

    HarmonyOS 应用开发赋能套件:鸿蒙原生应用开发的 “神助攻”

    CdoeGenie即可体验。或通过访问“鸿蒙开发者官网”,点击右下角“智能客服”前往体验。 更多内容开发者可访问“鸿蒙开发者官网”,点击“探索”——>“
    发表于 02-17 16:37

    名单公布!【书籍评测活动NO.56】极速探索HarmonyOS NEXT:纯血鸿蒙应用开发实践

    新特性在实际项目中的应用,例如新的性能优化机制、HarmonyOS SDK开放能力集的开发集成等内容。 此外,本书还提供了开发过程中的故障排查技巧和最佳实践经验。无论是初学者还是有一定
    发表于 01-20 16:53

    AKI跨语言调用库神助攻C/C++代码迁移至HarmonyOS NEXT

    本帖最后由 HarmonyOS开发者社区 于 2025-1-3 15:41 编辑 随着HarmonyOS NEXT的发布,越来越多的应用加速推进鸿蒙化。在这一过程中,如何高效迁移
    发表于 01-02 17:08

    HarmonyOS第一课》焕新升级,赋能开发者快速掌握鸿蒙应用开发

    HarmonyOS第一课》焕新升级,赋能开发者快速掌握鸿蒙应用开发 随着HarmonyOS NEXT发布,鸿蒙生态日益壮大,广大
    发表于 01-02 14:24

    HarmonyOS开发指导类文档更新速递(下)

    伴随着HarmonyOS 5.0.0 Release、HarmonyOS 5.0.1 Release版本的发布,HarmonyOS官网文档也带来了不少上新内容。本期
    的头像 发表于 12-30 09:54 2224次阅读
    <b class='flag-5'>HarmonyOS</b><b class='flag-5'>开发</b>指导类文档更新速递(下)

    HarmonyOS开发指导类文档更新速递(上)

    伴随着HarmonyOS 5.0.0 Release版本的发布,HarmonyOS官网文档也带来了不少上新内容。本期HarmonyOS NEXT
    的头像 发表于 12-30 09:50 1807次阅读
    <b class='flag-5'>HarmonyOS</b><b class='flag-5'>开发</b>指导类文档更新速递(上)