优酷鸿蒙开发实践 | 鸿蒙卡片开发

作者:苎麻

 如标题所述,我们将持续更新《优酷鸿蒙开发实践》系列文章。本文为系列首篇技术文章,后续文章包括:鸿蒙/Android混合打包技术实践,多屏互动技术实践等,欢迎持续关注【阿里巴巴移动技术】。”

背景

随着华为Harmony OS2.0的发布,各大厂商纷纷抢先与华为展开合作。优酷作为国内领先的长视频在线视听平台,与华为公司长期以来保持紧密的合作,共同为消费者带来优质的影音娱乐体验。因此,优酷技术团队也在第一时间投入对鸿蒙系统以及鸿蒙开发者SDK的研究。优酷技术团队经过多轮的头脑风暴,利用鸿蒙的某些新特性展开鸿蒙应用开发的尝试。

鸿蒙OS支持应用以Ability为单位进行部署。Ability分为两种类型:FA(Feature Ability)和PA(Particle Ability)。FA/PA是应用的基本组成单元,能够实现特定的业务功能。FA有UI界面,而PA无UI界面。

每种类型为开发者提供了不同的模板,以便实现不同的业务功能。

鸿蒙OS的应用软件包以APP Pack(Application Package)形式发布,它是由一个或多个HAP(HarmonyOS Ability Package)以及描述每个HAP属性的pack.info组成。HAP是Ability的部署包,HarmonyOS应用代码围绕Ability组件展开。

鸿蒙工程通过鸿蒙打包工具链打包后,其产物格式即为HAP。

当前,包含有鸿蒙FA/PA的优酷鸿蒙版已经在华为鸿蒙应用市场上架,鸿蒙混合包在应用市场上会显示为“含HarmonyOS服务”。如果App是100% Pure鸿蒙App,其Icon右下角会有HMOS字样。

在手机桌面上的优酷Icon轻轻上滑,会弹出一个鸿蒙卡片,向用户推荐最近的热剧,点击卡片能快速拉起半屏落地页显示更多信息,点击落地页则跳转到优酷客户端的相应落页面。

点击卡片上的图钉按钮,还可以将这个FA卡片固定在桌面上。

这个FA是100%利用鸿蒙API编写的,可以脱离优酷主客独立运行。由于FA卡片有极其严格的体积限制,而使用native的库体积则会过大。最终,我们的Widget 通过一个Webview,加载JS版本的前端网络库去请求优酷内部的网络接口,获取到数据后再使用鸿蒙的Native图形图像API去绘制Native界面。

这个桌面Widget与iOS桌面Widget的区别在于,它不依赖于优酷主客即可运作。即使优酷主客不被启动,卡片的数据也能够更新。

鸿蒙卡片的开发模式

在鸿蒙系统上,触摸优酷主客的应用图标向上滑动,可以唤起优酷的鸿蒙卡片。实现这一点需要卡片的实现代码与优酷主客做混合打包,一起提交到应用市场。

而如果要实现服务中心免安装使用,则需要卡片的独立包总大小要小于10M。这一体积限制使得很多Native 库都无法引入,否则无法将体积控制在红线之内。

最终,优酷鸿蒙卡片的代码放在一个工程中,方便跟优酷主客进行混合打包。同时,优酷鸿蒙卡片的代码仅依赖极少数的二、三方库(例如JSON解析、图片缓存等),以减小体积。

卡片样式

鸿蒙系统提供4中大小不同的卡片,根据占用桌面图标数量的不同&

CATIA CAA (Computer Aided Three-dimensional Interactive Application - Component Application Architecture) 是 CATIA 软件的开发平台,它可以用于开发自定义的功能模块和工具,扩展 CATIA 软件的能力。 以下是学习 CATIA CAA 的路径和资源推荐: 1. 确定学习目标和方向:首先需要明确自己的学习目标和方向,例如开发 CATIA CAA 插件、二次开发等。这样可以有针对性地选择学习资料和方法。 2. 学习基础知识:了解 CATIA 的基本概念和操作,掌握 CATIA CAA 的开发环境和工具。 3. 学习编程语言和工具:CATIA CAA 的主要编程语言是 C++,需要掌握 C++ 的基本语法和编程技巧,同时需要掌握一些常用的开发工具,例如 Visual Studio。 4. 学习 CATIA CAA API:掌握 CATIA CAA 的 API(应用程序接口),了解如何使用 API 来开发自定义的功能模块和工具。 5. 实践和项目:通过实践和参与项目,不断提高自己的技能和经验,掌握 CATIA CAA 的深入应用。 以下是一些推荐的书籍、论文和学习视频: 1. 《CATIA V5开发技术与实战》(李勇,王新亮著,机械工业出版社) 2. 《CATIA V5可视化编程与二次开发技术》(李建波,清华大学出版社) 3. 《CATIA V5 R20 for Designers》(Prof. Sham Tickoo,CADCIM Technologies) 4. 《CATIA V5 CAA 编程基础》(刘家礼,高等教育出版社) 5. 《CATIA知识体系与应用实践》(韩凤军等著,清华大学出版社) 6. 《CATIA CAA V5 - Developing C++ Plug-ins for CATIA》(Jonathan G. Katz,CreateSpace Independent Publishing Platform) 7. 《CATIA V5 CAA 编程指南》(陈志强,机械工业出版社) 8. 《CATIA CAA V5 R19 Documentation》(Dassault Systèmes) 9. 《CATIA V5 CAA 程序开发指南》(张小华,机械工业出版社) 10. 《CATIA CAA Programming Tutorial》(Dassault Systèmes) 11. 《CATIA CAA Tutorials》(Dassault Systèmes) 12. 《CATIA CAA Programming Fundamentals》(Dassault Systèmes) 13. 《CATIA V5教程视频-从入门到精通》(B站、优酷等视频网站上
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值