鸿蒙实战:为何选择此时入局
移动开发市场正在发生深刻变化,HarmonyOS 已稳居全球第三大移动应用生态位置。对于希望拓展职业边界的 Android 或 iOS 开发者来说,学习鸿蒙不再是一个可选项,而是提升竞争力的必答题。本课程以业内极具代表性的短视频应用为实战对象,旨在帮助学员彻底掌握 HarmonyOS 的核心开发能力。我们摒弃了枯燥的理论宣讲,直接从实战角度出发,解决在华为设备上构建高性能、原生体验应用时遇到的具体技术难题。在当前鸿蒙生态极速扩张的大背景下,系统地掌握这套技术栈,将使你具备独立承接鸿蒙端业务开发的能力,从而在职场竞争中占据更有利的位置。
学习路径与基础要求
本课程适合拥有任意一门主流编程语言基础(如 Java、Kotlin、Swift 或 Python),但尚未深入接触鸿蒙开发体系的初学者或转行者。课程安排遵循“基础组件—核心 API—全案实战”的科学递进逻辑。建议初学者优先攻克前端的 UI 声明式开发章节,这是构建鸿蒙应用交互界面的基石;随后重点研习网络请求、本地数据持久化及音视频解码处理等模块,这些是实现短视频核心功能的关键技术点;最后通过完整的项目案例,将所有知识点串联起来,深入理解应用的生命周期管理与整体架构设计。课程覆盖了鸿蒙 9 大主题核心技术,确保你学到的技能既扎实又具前瞻性,能够应对实际开发中的各类挑战。
实战产出与资料配合方法
系统完成本门课程后,你将具备独立设计并实现一款功能完整的 HarmonyOS 短视频应用的能力,涵盖视频流加载、上下滑切换逻辑、用户交互反馈及后台数据处理等核心功能。这不仅让你熟练掌握 ArkTS 语言与 DevEco Studio 开发工具,更培养了从零搭建复杂应用的项目化思维。资料包提供了详尽的学习指引与关键代码片段,建议读者务必避免“只看不练”的学习陷阱。基础薄弱的读者应逐行对照资料源码进行复现与调试,确保每一个步骤都理解透彻;而有经验的开发者则可尝试在资料基础上拓展新功能,例如集成直播连麦或即时通讯模块,以此检验并巩固所学,真正实现从理论认知到独立实战能力的转化。
课程目录
├── 1-课程概述,知己,知彼/ │ ├── [ 14M] 1-1 课程介绍-为什么要学习HarmonyOS? │ ├── [ 14M] 1-2 效果展示-HarmonyOS应用初体验 │ └── [ 11M] 1-3 课程安排-明确学习路线 ├── 2-初探HarmonyOS/ │ ├── [ 11M] 2-1 学习HarmonyOS之前我需要哪些前置知识储备? │ ├── [ 12M] 2-2 HarmonyOS是如何诞生的? │ ├── [ 10M] 2-3 HarmonyOS有哪些特性? │ ├── [ 14M] 2-4 全视角了解HarmonyOS之HarmonyOS架构 │ └── [3.2M] 2-5 -本章小结 ├── 3-开发环境全流程搭建,工欲善其事必先利其器/ │ ├── [7.5M] 3-1 开发第一步-从注册华为账号开始 │ ├── [7.7M] 3-2 如何下载安装开发工具DevEco Studio? │ ├── [9.2M] 3-3 如何设置开发工具DevEco Studio? │ ├── [6.2M] 3-4 热身必做-熟悉DevEco Studio常用功能及技巧 │ └── [3.2M] 3-5 -本章小结 ├── 4-HarmonyOS应用之“Hello World”,积跬步,行万里/ │ ├── [ 16M] 4-1 如何创建一个HarmonyOS新应用之“Hello World” │ ├── [ 29M] 4-2 怎样使用模拟器运行HarmonyOS应用 │ ├── [ 14M] 4-3 怎样使用远程真机中运行HarmonyOS应用 │ ├── [5.9M] 4-4 怎样使用本地真机中运行HarmonyOS应用 │ ├── [8.9M] 4-5 怎样使用预览器预览HarmonyOS应用 │ └── [ 10M] 4-6 本章小结 ├── 5-再探HarmonyOS应用结构/ │ ├── [ 21M] 5-1 鸿蒙OS真的是套壳Android吗? │ ├── [7.0M] 5-2 进入鸿蒙的世界-HarmonyOS应用结构之APP详解 │ ├── [8.9M] 5-3 HarmonyOS应用结构核心必知必会-Ability │ ├── [4.5M] 5-4 HarmonyOS应用结构文件详解-库文件&资源文件&配置文件 │ ├── [3.8M] 5-5 有必要详解的HarmonyOS应用结构之pack.info文件 │ └── [6.8M] 5-6 本章小结 ├── 6-鸿蒙应用开发必备基础能力-HarmonyOS的核心概念及常用组件/ │ ├── [7.3M] 6-1 如何理解HarmonyOS独有的Ability框架? │ ├── [ 11M] 6-2 初识Ability三种类型之Page Ability │ ├── [ 12M] 6-3 深入理解Page Ability的生命周期 │ ├── [ 50M] 6-4 Page之间的导航要如何实现? │ ├── [ 15M] 6-5 再识Ability三种类型之Service Ability │ ├── [3.5M] 6-6 深入理解Service Ability的生命周期 │ ├── [146M] 6-7 如何实现Service的创建、启动和连接? │ ├── [8.1M] 6-8 终识Ability三种类型之Data Ability │ ├── [ 37M] 6-9 深入理解Ability框架必用信息载体-lntent │ ├── [7.5M] 6- 10 HarmonyOS常用UI组件有哪些? │ ├── [ 68M] 6- 11 常用UI组件Text全面介绍及实操 │ ├── [ 19M] 6- 12 常用UI组件Image全面介绍及实操 │ ├── [7.1M] 6- 13 常用UI组件Slider全面介绍及实操 │ ├── [ 32M] 6- 14 常用UI组件Button全面介绍及实操 │ ├── [ 88M] 6- 15 常用UI组件PageSlider全面介绍及实操 │ ├── [ 19M] 6- 16 常用UI组件ScrollViewr全面介绍及实操 │ ├── [ 52M] 6-17 常用UI组件ListContainer全面介绍及实操 │ ├── [ 32M] 6- 18 常用UI组件TabList全面介绍及实操 │ ├── [ 57M] 6- 19 常用UI组件ToastDialog全面介绍及实操 │ ├── [ 39M] 6-20 常用UI组件CommonDialog全面介绍及实操 │ └── [4.8M] 6- 21 本章小结 ├── 7-鸿蒙应用开发必备基础能力-6种常用布局及技巧/ │ ├── [ 14M] 7-1 HarmonyOS应用开发必备的6种布局方式 │ ├── [ 28M] 7-2 使用DirectionalLayout布局实现水平或者垂直方向排布 │ ├── [ 54M] 7-3 使用DependentLayout布局实现相对位置的排布 │ ├── [ 13M] 7-4 使用StackLayout布局如何实现以层叠的方式显示视图 │ ├── [ 19M] 7-5 使用TableLayout布局使用表格的方式划分子组件 │ ├── [ 23M] 7-6 PositionLayout布局通过指定准确的xy坐标值显示组件 │ ├── [ 51M] 7-7 AdaptiveBoxLayout布局实现在不同屏幕尺寸设备上的自适应布局能力 │ └── [4.3M] 7-8 本章小结 ├── 8-开启实战第一步,短视频App需求分析及设计/ │ ├── [ 24M] 8-1 市面常见短视频平台有哪些功能? │ ├── [ 15M] 8-2 我们要实现哪些功能? │ ├── [4.3M] 8-3 HarmonyOS系统下短视频App整体架构应该如何设计? │ ├── [ 10M] 8-4 HarmonyOS短视频App之前台的设计 │ ├── [5.6M] 8-5 HarmonyOS短视频App之后台的设计 │ ├── [9.5M] 8-6 HarmonyOS应用的数据要如何存储? │ └── [4.1M] 8-7 本章小结 ├── 9-核心要素构建之短视频App原型设计与实现/ │ ├── [8.3M] 9-1 HarmonyOS短视频APP原型设计与实现 -应用初始化 │ ├── [ 53M] 9-2 HarmonyOS短视频APP原型设计与实现 – 欢迎页面 │ ├── [ 16M] 9-3 HarmonyOS短视频APP原型设计与实现 -注册登录 │ ├── [ 34M] 9-4 HarmonyOS短视频APP原型设计与实现 -App首页 │ ├── [ 17M] 9-5 HarmonyOS短视频APP原型设计与实现 -导航栏 │ ├── [ 40M] 9-6 HarmonyOS短视频APP原型设计与实现 -发布视频 │ ├── [ 99M] 9-7 HarmonyOS短视频APP原型设计与实现 -“我的” 页面 │ └── [4.6M] 9-8 本章小结 ├── 10-短视频App个人管理模块设计与实现(从UI布局到逻辑处理)/ │ ├── @更多it资源 www. │ ├── [ 19M] 10-1 美化欢迎界面 │ ├── [ 66M] 10-2 基于TextField组件搭建用户注册前台 │ ├── [ 68M] 10-3 基于ScrollView组件、TableLayout布局实现相册页面(上) │ ├── [ 72M] 10-4 基于ScrollView组件、TableLayout布局实现相册页面(下) │ ├── [ 67M] 10-5 基于ZSONArray组件解析本地图片资源列表 │ ├── [ 66M] 10-6 实现本地图片资源获取的工具类CommonUtil │ ├── [ 78M] 10-7 选取本地图片资源作为用户头像 │ ├── [ 62M] 10-8 通过onResult方式获取头像选择的结果 │ ├── [ 25M] 10-9 用户登录校验 │ ├── [ 46M] 10- 10 导航到首页或者提示 │ ├── [ 49M] 10- 11 初始化基于ORM的数据库 │ ├── [ 60M] 10- 12 基于ORM实现存储用户注册数据(上) │ ├── [ 35M] 10- 13 基于ORM实现存储用户注册数据(下) │ └── [4.1M] 10- 14 本章小结 ├── 11-独家特制HarmonyOS视频、图像及相机开发详解,提升鸿蒙开发核心竞争力/ │ ├── [3.6M] 11-1 如今市场火爆的音视频技术在鸿蒙系统中怎样实现? │ ├── [149M] 11-2 快速入门媒体编解码能力查询开发 │ ├── [ 96M] 11-3 鸿蒙音视频基础:掌握视频编解码开发 │ ├── [ 60M] 11-4 掌握视频播放核心技能(上) │ ├── [ 81M] 11-5 掌握视频播放核心技能(下) │ ├── [ 79M] 11-6 掌握媒体开发技能-元数据开发 │ ├── [ 58M] 11-7 掌握媒体开发技能-媒体存储数据操作(上) │ ├── [ 94M] 11-8 掌握媒体开发技能-媒体存储数据操作(下) │ ├── [ 53M] 11-9 掌握媒体开发技能-视频与图像缩略图获取(上) │ ├── [ 84M] 11- 10 掌握媒体开发技能-视频与图像缩略图获取(下) │ ├── [ 65M] 11- 11 掌握图像编解码开发能力(上) │ ├── [ 84M] 11- 12 掌握图像编解码开发能力(下) │ ├── [ 69M] 11- 13 掌握位图操作开发能力 │ ├── [ 91M] 11- 14 掌握图像属性解码开发 │ ├── [8.0M] 11- 15 相机开发概述 │ ├── [ 83M] 11- 16 实战相机开发的基本使用(一)- 相机创建 │ ├── [105M] 11- 17 实战相机开发的基本使用(二) – 相机配置 │ ├── [ 35M] 11- 18 实战相机开发的基本使用(三)- 启动循环帧捕获 │ └── [5.0M] 11- 19 本章小节 ├── 12-实战短视频App核心功能-视频管理模块/ │ ├── 【更多it资源 www.】 │ ├── [ 14M] 12-1 定义视频播放器的生命周期接口IVideoPlayerLifecycle │ ├── [ 17M] 12-2 定义视频播放器的状态枚举类PlayerStatusEnum及StatusChangeListener │ ├── [ 40M] 12-3 定义视频播放器的接口IVideoPlayer │ ├── [866K] 12-4 实现视频播放器的生命周期VideoPlayerLifecycle │ ├── [ 95M] 12-5 基于Player、Surface实现视频播放器(一) │ ├── [ 68M] 12-6 基于Player、Surface实现视频播放器(二) │ ├── [ 74M] 12-7 基于Player、Surface实现视频播放器(三) │ ├── [ 65M] 12-8 基于Player、Surface实现视频播放器(四) │ ├── [ 43M] 12-9 定义绑定视频播放器信息的接口IVideoPlayerInfoBinding │ ├── [ 62M] 12-10 基于自定义布局实现播放器界面PlayerView(上) │ ├── [ 60M] 12-11 基于自定义布局实现播放器界面PlayerView(下) │ ├── [144M] 12-12 基于自定义布局、AnimatorProperty实现加载动画界面PlayerLoading │ ├── [ 83M] 12-13 基于自定义布局、Slider实现视频控制器界面PlayerController(一) │ ├── [101M] 12-14 基于自定义布局、Slider实现视频控制器界面PlayerController(二) │ ├── [126M] 12-15 基于自定义布局、Slider实现视频控制器界面PlayerController(三) │ ├── [ 21M] 12-16 基于自定义布局、Slider实现视频控制器界面PlayerController(四) │ ├── [ 57M] 12- 17 基于ORM实现视频信息存储 │ ├── [ 33M] 12- 18 基于JSON文件的视频列表读取 │ ├── [ 74M] 12-19 基于PageSlider组件实现滑动切换视频功能(一)-引入PageSlider继承PageSliderProvider │ ├── [ 98M] 12-20 基于PageSlider组件实现滑动切换视频功能(二)-初始化PageSlider数据源并使用PageSliderProvider │ ├── [ 77M] 12-21 基于PageSlider组件实现滑动切换视频功能(三)-问题排查及解决 │ ├── [ 19M] 12- 22 导航栏样式调整 │ ├── [ 85M] 12- 23 基于Image组件实现圆形头像 │ ├── [ 68M] 12- 24 视频发布页面整体布局设计 │ ├── [ 36M] 12-25 基于ScrollView组件、TableLayout布局实现视频选择页面(一)-视频选择页面的布局设计 │ ├── [152M] 12-26 基于ScrollView组件、TableLayout布局实现视频选择页面(二)-定义VideoSelectionAbilitySlice │ ├── [ 33M] 12-27 基于ScrollView组件、TableLayout布局实现视频选择页面(三)-跳转到视频选择页面及返回 │ ├── [ 43M] 12-28 基于ScrollView组件、TableLayout布局实现视频选择页面(四)-视频的发布 │ ├── [ 20M] 12-29 基于ScrollView组件、TableLayout布局实现视频选择页面(五)-问题排查及解决 │ ├── [ 26M] 12- 30 基ToastDialog实现发布校验与提示 │ └── [2.9M] 12- 31 -本章小结 ├── 13-实战短视频App功能全实现- 视频展示模块/ │ ├── [ 94M] 13-1 我的界面整体布局(一)-我的页面的布局设计 │ ├── [ 32M] 13-2 我的界面整体布局(二)-实现个人信息展示 │ ├── [ 28M] 13-3 我的界面整体布局(三)-基于PixelMapElement实现背景图 │ ├── [4.0M] 13-4 我的界面整体布局(四)-运行效果展示 │ ├── [ 12M] 13-5 基于ListContainer组件的我的展示视频发布列表功能(一)-定义ListContainer组件 │ ├── [9.3M] 13-6 基于ListContainer组件的我的展示视频发布列表功能(二)-初始化视频列表 │ ├── [ 33M] 13-7 基于ListContainer组件的我的展示视频发布列表功能(三)-初始化分类页签及实现TabList选择事件 │ ├── [ 20M] 13-8 基于ListContainer组件的我的展示视频发布列表功能(四)-实现构造函数 │ ├── [ 60M] 13-9 基于ListContainer组件的我的展示视频发布列表功能(五)-定义视频列表数据项布局 │ ├── [ 32M] 13-10 基于ListContainer组件的我的展示视频发布列表功能(六)-实现getComponent方法 │ ├── [ 50M] 13-11 基于ListContainer组件的我的展示视频发布列表功能(七)-使用VideoListItemProvider │ ├── [ 86M] 13-12 基于CommonDialog实现编辑界面(上)-定义编辑界面 │ ├── [ 32M] 13-13 基于CommonDialog实现编辑界面(下)-使用编辑界面 │ ├── [ 18M] 13- 14 删除视频 │ ├── [ 42M] 13-15 基于Image组件实现视频点赞、取消点赞功能(一)-视频播放界面操作区布局设计 │ ├── [ 22M] 13-16 基于Image组件实现视频点赞、取消点赞功能(二)-实现视频点赞按钮及点赞量的显示 │ ├── [ 15M] 13-17 基于Image组件实现视频点赞、取消点赞功能(三)-处理视频点赞及取消点赞事件_音频 │ ├── [ 17M] 13-18 基于Image组件实现视频点赞、取消点赞功能(四)-问题排查及解决 │ ├── [ 24M] 13- 19 基于ORM实现点赞信息存储(一)-定义实体并注册 │ ├── [ 26M] 13-20 基于ORM实现点赞信息存储(二)-创建Repository │ ├── [ 29M] 13- 21 基于ORM实现点赞信息存储(三)-处理点赞数据 │ ├── [ 11M] 13-22 基于ListContainer组件的我的展示视频点赞列表功能(一)-定义点赞列表数据项布局 │ ├── [ 16M] 13-23 基于ListContainer组件的我的展示视频点赞列表功能(二)-继承BaseItemProvider │ ├── [ 28M] 13-24 基于ListContainer组件的我的展示视频点赞列表功能(三)-使用VideoListThumbsUpItemProvider │ ├── [ 57M] 13- 25 基于Image组件实现视频收藏、取消收藏功能 │ ├── [ 77M] 13- 26 基于ORM实现收藏信息存储 │ ├── [ 57M] 13-27 基于ListContainer组件的我的展示视频收藏列表功能 │ ├── [ 59M] 13- 28 基于Button组件实现关注、取关功能 │ ├── [ 73M] 13- 29 基于ORM实现关注信息存储 │ ├── [ 24M] 13-30 基于ListContainer组件的我的展示关注列表功能(一)-定义关注列表数据项布局 │ ├── [ 28M] 13-31 基于ListContainer组件的我的展示关注列表功能(二)-继承BaseItemProvider │ ├── [ 35M] 13-32 基于ListContainer组件的我的展示关注列表功能(三)-使用UserFollowItemProvider │ ├── [ 22M] 13-33 基于CommonDialog组件实现评论窗口功能(一)-增加评论等组件 │ ├── [ 28M] 13-34 基于CommonDialog组件实现评论窗口功能(二)-继承CommonDialog │ ├── [ 41M] 13-35 基于CommonDialog组件实现评论窗口功能(三)-自定义评论窗口布局 │ ├── [ 30M] 13-36 基于CommonDialog组件实现评论窗口功能(四)-获取组件 │ ├── [ 39M] 13-37 基于CommonDialog组件实现评论窗口功能(五)-自定义数据项布局 │ ├── [ 18M] 13-38 基于CommonDialog组件实现评论窗口功能(六)-实现CommentListItemProvider │ ├── [ 12M] 13-39 基于CommonDialog组件实现评论窗口功能(七)-使用CommentListItemProvider并处理评论事件 │ ├── [ 32M] 13-40 基于CommonDialog组件实现评论窗口功能(八)-使用评论窗口 │ ├── [ 16M] 13-41 基于CommonDialog组件实现评论窗口功能(九)-问题排查及解决 │ ├── [ 42M] 13- 42 基于ORM实现评论信息存储 │ ├── [ 21M] 13- 43 实现简易版播放器(上)-创建页面及布局 │ ├── [ 90M] 13- 44 实现简易版播放器(下)-实现播放界面 │ ├── [ 36M] 13- 45 实现播放预览 │ ├── [ 12M] 13- 46 设置沉浸式用户体验 │ └── [3.5M] 13- 47 -本章小结 ├── 14-总结与展望/ │ ├── [8.4M] 14-1 总结与展望-总结 │ └── [8.9M] 14-2 总结与展望-展望 └── 资料代码/






