华为云HMS Core 助力鸿蒙开发

Posted 码农飞哥

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了华为云HMS Core 助力鸿蒙开发相关的知识,希望对你有一定的参考价值。

前言

今天看了一期 华为云 HMS Core 助力鸿蒙开发的视频。内容干货满满。下面就视频的内容做一下学习记录。

名词说明

文中涉及到的相关名词
鸿蒙OS == HarmonyOS

HarmonyOS是什么

HarmonyOS是一款面向未来,面向全场景的分布式操作系统。不同于安卓系统和ios系统。HarmonyOS系统期望的是打造一个 1+8+N 的大生态,如下图1所示,让万物互联给消费者带来实实在在的好处。

HarmonyOS的系统架构是啥?

通过上一节的介绍我们了解到HarmonyOS是一款可以实现万物互联的分布式操作系统。要想了解它的实现机制还是需要先了解HarmonyOS的系统架构。如下图2所示:

从图2可以看出HarmonyOS系统分为四层:

  1. 内核层:HarmonyOS系统采用多内核的设置,以满足不同的设备需要,比如;如果你的设备是手机则可以使用Linux Kernet内核,如果你的设备是咖啡机,则可以选用较小的LiteOS内核。上层KAL内核抽象层是为了屏蔽内核的差异
  2. 系统服务层:系统服务层是HarmonyOS系统实现分布式功能的核心层。按照功能粒度可以划分为分布式任务调度,分布式数据管理,分布式软总线。在使用时可以按照功能粒度进行裁剪。通过该层可以实现硬件互助和资源共享
  3. 框架层:框架层有Ability框架以及UI框架,其中Ability框架这是应用开发的核心,后面会详细介绍。
  4. 应用层:应用层包括系统应用和很多第三方的应用。

HarmonyOS系统如何保证安全?

任何一个操作系统,安全需求永远要放在一个不可忽视的位置上。 那么,HarmonyOS是如何保证安全的呢?其安全措施主要体现在如下三个方面:

  1. 分布式多端系统身份认证
  2. 在分布式终端构筑可信运行环境
  3. 分布式数据在跨终端流动过程中,对数据进行分类管理。

Ability以及UI框架了解下

基于鸿蒙操作系统可以进行应用开发以及设备开发。应用开发主要采用Java ,C#等语言,而设备开发的话主要采用C以及C++语言来实现。
这里以应用开发进行展开说明。不过在介绍应用开发之前首先让我们来认识下Ability。

Ability

Ability是代表应用所具有能力的一种抽象,一个应用可以具有多种能力,也就是可以包含多个Ability。应用可以以Ability为单位进行部署。 Ability分为两种类型:

  1. FA(Feature Ability): 只支持Page Ability,也就是说只支持配置页面的能力,一个Page由一个或多个AbilitySlice组成。如果要自定义一个Page Ability的话则需要继承Ability。如果要自定义一个Page AbilitySlice的话则需要继承AbilitySlice。
  2. PA (Particle Ablilty):支持Service Ability和Data Ability。Service用于提供后台运行任务的能力,Data用于对外部提供统一的数据访问抽象。举个例子:我想在手机后台一直播放音乐,那么就可以使用Service Ability。

UI框架

UI框架主要分为Java UI框架和javascript UI框架。其中:

  1. Java UI框架:包括布局(XML)、组件(Text、Button、Image …)
  2. JavaScript UI框架:包括类似于html的布局语言(HarmonyOS Markup Language)简称鸿蒙系统的标记语言以及组件(Text、Button等等)。

了解完了基础的开发知识之后,接下来就是开始正式的HarmonyOS应用开发了。

正式开始开发

安装及配置过程

工欲善其事必先利其器,开发之前首先就是将开发环境配置好。

  1. 下载及安装DevEco Studio。下载地址是:https://developer.harmonyos.com/cn/develop/deveco-studio,如下图3所示:

具体操作请参见下载与安装软件
3. 配置DevEco Studio,您需要完成设置网络代理及下载HarmonyOS SDK等相关操作。具体操作请参见配置开发环境。

编写一个简单HelloWorld来验证下

  1. 创建一个新工程
    1.1. 打开DevEco Studio,在欢迎页点击Create Project,创建一个新工程。如下图4所示:
    1.2. 根据工程创建向导,选择需要的Ability工程模板,然后点击Next。关于工程模板的介绍和支持的设备类型,这里以Java为例

    1.3 填写工程相关信息,Device Type选择Phone,Language选择Java ,其他保持默认值即可,点击Finish。如下图5所示:
  2. 项目结构如下图6所示:

其中:
.gradle:Gradle配置文件,由系统自动生成,一般情况下不需要进行修改。
entry:默认启动模块(主模块),开发者用于编写源码文件以及开发资源文件的目录。
entry>libs:用于存放entry模块的依赖文件。
entry>src>main>Java:用于存放Java源码。
entry>src>main>resources:用于存放应用/服务所用到的资源文件,如图形、多媒体、字符串、布局文件等。

HMS Core

HMS (HUAWEI Mobile Service) 华为移动服务:是一个开放的生态,助力开发者进行应用创新。它包括两个部分

  1. HMS Apps
  2. HMS Core & Connect
    下面就分别介绍下:
  3. HMS Core 它主要为开发者提供应用领域、系统领域、媒体领域、安全领域等多个领域的开放能力和工具支撑。
    它包括App Service (应用服务),Graphics (地图服务),AI 等等。

那么问题来了,在哪里可以找到HMS Core呢?答案就是在华为云
找到产品—>移动应用服务—> HMS Core。

点击HMS Core可以找到,可以找到很多服务,这里以推送服务为例。

如果我们想新建一个推送服务的话,可以查看文档,按照文档中的开发流程进行开发。

总结

本文以 华为云 HMS Core 助力鸿蒙开发视频为基础。首先介绍了鸿蒙系统的基本概念以及系统架构,接着介绍如何创建一个鸿蒙应用。最后说到了HMS Core的使用。希望对读者朋友们有所帮助。

以上是关于华为云HMS Core 助力鸿蒙开发的主要内容,如果未能解决你的问题,请参考以下文章

2020华为开发者大会9月10日举行:HMS服务鸿蒙系统及EMUI 11三大看点

热点 | 华为开发者大会即将开幕

华为2019开发者大会内容小记

谷歌修改APP格式,华为鸿蒙完善生态难度更大

hms core

浅析HMS Core开放能力在鸿蒙生态中的应用