【云驻共创】华为云HMS Core 助力鸿蒙(HarmonyOS)开发(不看后悔哦)
1. HarmonyOS是什么?
HarmonyOS是一款面向未来,面向全场景的分布式操作系统。不同于安卓系统和IOS系统。HarmonyOS系统期望的是打造一个 1+8+N 的大生态,如下图所示,让万物互联给消费者带来实实在在的好处。
2. HarmonyOS的系统架构是啥?
通过上一节的介绍我们了解到HarmonyOS是一款可以实现万物互联的分布式操作系统。要想了解它的实现机制还是需要先了解HarmonyOS的系统架构。如下图2所示:
从图2可以看出HarmonyOS系统分为四层:
- 内核层:HarmonyOS系统采用多内核的设置,以满足不同的设备需要,比如;如果你的设备是手机则可以使用Linux Kernet内核,如果你的设备是咖啡机,则可以选用较小的LiteOS内核。上层KAL内核抽象层是为了屏蔽内核的差异
- 系统服务层:系统服务层是HarmonyOS系统实现分布式功能的核心层。按照功能粒度可以划分为分布式任务调度,分布式数据管理,分布式软总线。在使用时可以按照功能粒度进行裁剪。通过该层可以实现硬件互助和资源共享
- 框架层:框架层有Ability框架以及UI框架,其中Ability框架这是应用开发的核心,后面会详细介绍。
- 应用层:应用层包括系统应用和很多第三方的应用。
3.HarmonyOS系统如何保证安全?
任何一个操作系统,安全需求永远要放在一个不可忽视的位置上。 那么,HarmonyOS是如何保证安全的呢?其安全措施主要体现在如下三个方面:
- 分布式多端系统身份认证
- 在分布式终端构筑可信运行环境
- 分布式数据在跨终端流动过程中,对数据进行分类管理。
4.Ability以及UI框架了解下
基于鸿蒙操作系统可以进行应用开发以及设备开发。应用开发主要采用Java ,C#等语言,而设备开发的话主要采用C以及C++语言来实现。
这里以应用开发进行展开说明。不过在介绍应用开发之前首先让我们来认识下Ability。
4.1. Ability
Ability是代表应用所具有能力的一种抽象,一个应用可以具有多种能力,也就是可以包含多个Ability。应用可以以Ability为单位进行部署。 Ability分为两种类型:
- FA(Feature Ability): 只支持Page Ability,也就是说只支持配置页面的能力,一个Page由一个或多个AbilitySlice组成。如果要自定义一个Page Ability的话则需要继承Ability。如果要自定义一个Page AbilitySlice的话则需要继承AbilitySlice。
- PA (Particle Ablilty):支持Service Ability和Data Ability。Service用于提供后台运行任务的能力,Data用于对外部提供统一的数据访问抽象。举个例子:我想在手机后台一直播放音乐,那么就可以使用Service Ability。
4.2.UI框架
UI框架主要分为Java UI框架和JavaScript UI框架。其中:
- Java UI框架:包括布局(XML)、组件(Text、Button、Image …)
- JavaScript UI框架:包括类似于HTML的布局语言(HarmonyOS Markup Language)简称鸿蒙系统的标记语言以及组件(Text、Button等等)。
了解完了基础的开发知识之后,接下来就是开始正式的HarmonyOS应用开发了。
5.正式开始开发
5.1.安装及配置过程
工欲善其事必先利其器,开发之前首先就是将开发环境配置好。
- 下载及安装DevEco Studio。下载地址是:https://developer.harmonyos.com/cn/develop/deveco-studio,如下图所示:
具体操作请参见下载与安装软件。
3. 配置DevEco Studio,您需要完成设置网络代理及下载HarmonyOS SDK等相关操作。具体操作请参见配置开发环境。
6. 编写一个简单HelloWorld来验证下
6.1. 创建一个新工程
6.1.1. 打开DevEco Studio,在欢迎页点击Create Project,创建一个新工程。如下图4所示:
6.1.2. 根据工程创建向导,选择需要的Ability工程模板,然后点击Next。关于工程模板的介绍和支持的设备类型,这里以Java为例
1.3 填写工程相关信息,Device Type选择Phone,Language选择Java ,其他保持默认值即可,点击Finish。如下图所示:
2. 项目结构如下图所示:
其中:
.gradle:Gradle配置文件,由系统自动生成,一般情况下不需要进行修改。
entry:默认启动模块(主模块),开发者用于编写源码文件以及开发资源文件的目录。
entry>libs:用于存放entry模块的依赖文件。
entry>src>main>Java:用于存放Java源码。
entry>src>main>resources:用于存放应用/服务所用到的资源文件,如图形、多媒体、字符串、布局文件等。
7.HMS Core
HMS (HUAWEI Mobile Service) 华为移动服务:是一个开放的生态,助力开发者进行应用创新。它包括两个部分
- HMS Apps
- HMS Core & Connect
下面就分别介绍下: - HMS Core 它主要为开发者提供应用领域、系统领域、媒体领域、安全领域等多个领域的开放能力和工具支撑。
它包括App Service (应用服务),Graphics (地图服务),AI 等等。
那么问题来了,在哪里可以找到HMS Core呢?答案就是在华为云。
找到产品—>移动应用服务—> HMS Core。
点击HMS Core可以找到,可以找到很多服务,这里以推送服务为例。
如果我们想新建一个推送服务的话,可以查看文档,按照文档中的开发流程进行开发。
总结
本文以 华为云 HMS Core 助力鸿蒙开发视频为基础。首先介绍了鸿蒙系统的基本概念以及系统架构,接着介绍如何创建一个鸿蒙应用。最后说到了HMS Core的使用。希望对读者朋友们有所帮助。
本文整理自华为云社区【内容共创】活动第12期。
查看活动详情:https://bbs.huaweicloud.cn/blogs/325315
相关任务详情:华为云 HMS Core 助力鸿蒙开发
- 点赞
- 收藏
- 关注作者
评论(0)