华为端云一体化开发 (起步1.0)(HarmonyOS学习第七课)

官方文献:

为丰富HarmonyOS对云端开发的支持、实现端云联动,DevEco Studio推出了云开发功能,开发者在创建工程时选择云开发模板,即可在DevEco Studio内同时完成HarmonyOS应用/元服务的端侧与云侧开发,体验端云一体化协同开发。

注意

使用云开发功能,需同时满足如下条件:

相比于传统开发模式,云开发模式具备成本低、效率高、门槛低等优势,具体区别见下表。

区别点

传统开发模式

云开发模式

开发工具

端侧与云侧各需一套开发工具,云侧需自建服务器,工具成本高。

DevEco Studio一套开发工具即可支撑端侧与云侧同时开发,无需搭建服务器,工具成本低。

开发人员

  • 端侧与云侧要求不同的开发语言,技能要求高。
  • 需多人投入,且开发人员之间需持续、准确沟通,人力与沟通成本高、效率低。
  • 依托AppGallery Connect(以下简称AGC)Serverless云服务开放的接口,端侧开发人员也能轻松开发云侧代码,大大降低开发门槛。
  • 开发人员数量少,降低人力成本,提高沟通效率。

运维

需自行构建运营与运维能力,成本高、负担重。

直接接入AGC Serverless云服务,实现免运维,无运维成本或资源浪费。

云开发特性

云开发特性主要包含了如下功能。

主要功能

描述

端云一体化开发

您可以在DevEco Studio中同时开发与调试应用的端侧代码与云侧代码。

  • 端开发主要是开发、调试应用端侧的业务代码。
  • 云开发即为应用开发云侧工程,目前包含云函数与云数据库工程。
    • 云函数:支持在DevEco Studio中创建函数、编写函数代码、调试函数、部署函数到AGC云端。
    • 云数据库:支持在DevEco Studio中创建对象类型、在对象类型中添加数据条目、部署云数据库到AGC云端。

一键部署云工程

云工程开发完毕后,您可在DevEco Studio中将其一键部署至AGC云端。

端云一体化组件

DevEco Studio还为您提供多种端云一体化组件。集成端云一体化组件后,您只需进行简单配置即可向应用用户提供登录、支付等多种功能。

当前仅支持端云一体化登录组件,用于向应用用户提供登录、登出功能,目前支持帐号密码登录、手机验证码登录、以及邮箱验证码登录。

开发流程

HarmonyOS应用端云一体化开发流程如下图所示。

序号

阶段

任务

说明

1

创建端云一体化开发工程

选择云开发模板

  • HarmonyOS应用工程:支持选择通用云开发模板或商城模板。
  • 元服务工程:仅支持选择通用云开发模板。

配置工程信息

配置工程名称、类型等基本信息。

关联云开发资源

在进行云开发之前,您需为工程关联所需的资源:在DevEco Studio中选择您的华为开发者帐号加入的开发者团队,将该团队在AGC的同包名应用关联到当前工程。

上述云开发资源关联成功、工程创建完毕后,DevEco Studio会为您的工程自动执行一些初始化配置:

  • 为工程关联的AGC项目自动开通云开发相关的Serverless服务(认证服务、云函数、云数据库、云托管、API网关、云存储)。
  • 为端侧工程自动集成agconnect-services.json配置文件以及相关Serverless服务最新版本的HarmonyOS SDK,同时会自动集成端云一体化登录组件的最新SDK。
  • 云侧工程云函数节点下会自动引入依赖的云数据库的最新版本Node.js Server SDK,以实现在端侧访问云数据库。

2

端云一体化开发与调试

端侧开发与调试

  • 端侧代码开发:在端侧工程下,开发、调试应用端侧业务代码。
  • 端云一体化组件开发:DevEco Studio还为您提供多种端云一体化组件。集成端云一体化组件后,您只需进行简单配置即可向应用用户提供登录、支付等功能(当前仅支持端云一体化登录组件)。

云侧开发与调试

在云侧工程下开发、调试与部署云服务:

  • 开发云函数,包括创建函数、调试函数、将函数部署到AGC云端。
  • 开发云数据库,包括创建对象类型、在对象类型中添加数据条目、部署云数据库。

3

端侧发布与云侧部署

打包并发布应用

将端侧工程进行打包,生成APP,后续即可在AGC进行应用上架。

一键部署云工程

云工程开发完毕后,您可在DevEco Studio中将其一键部署至AGC云端。

起步

首先我们需要先创建一个AGC账号:

链接地址: AppGallery Connect (huawei.com) 点击注册即可

需要进行实名认证等一系列的操作就不过多阐述。

项目创建

 添加应用

开启云数据库-云存储-认证服务的开关认证服务

启用认证服务,云数据库,云存储等。

                                                            

直接点击开通即可

不用管直接下一步

创建项目

打开编辑器

新建项目

 注意!!

 进行登录

查找到我们刚才创建的项目就算成功了!!

运行

我们使用模拟器运行查看效果

主页面出现我们添加的服务等 即可。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/24014.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

论文代码解读STPGNN

1.前言 本次代码文章来自于《2024-AAAI-Spatio-Temporal Pivotal Graph Neural Networks for Traffic Flow Forecasting》,基本模型结构如下图所示: 文章讲解视频链接 代码开源链接 接下来就开始代码解读了。 2.代码解读 class nconv(nn.Module):de…

NDIS Filter开发-网络数据的传输

和NIC小端口驱动不同的是,无需考虑网络数据具体是如何传输的,只需要针对NBL进行处理即可。Filter驱动程序可以启动发送请求和接收指示,或“过滤”其他驱动程序的请求和指示。Filter模块堆叠在微型端口适配器上。 驱动程序堆栈中的Filter模块…

谷粒商城实战(033 业务-秒杀功能4-高并发问题解决方案sentinel 1)

Java项目《谷粒商城》架构师级Java项目实战,对标阿里P6-P7,全网最强 总时长 104:45:00 共408P 此文章包含第326p-第p331的内容 关注的问题 sentinel(哨兵) sentinel来实现熔断、降级、限流等操作 腾讯开源的tendis&#xff0c…

ctfshow web

【nl】难了 <?php show_source(__FILE__); error_reporting(0); if(strlen($_GET[1])<4){echo shell_exec($_GET[1]); } else{echo "hack!!!"; } ?> //by Firebasky //by Firebasky ?1>nl //先写个文件 ?1*>b //这样子会把所有文件名写在b里…

JSON 无法序列化

JSON 无法序列化通常出现在尝试将某些类型的数据转换为 JSON 字符串时&#xff0c;这些数据类型可能包含不可序列化的内容。 JSON 序列化器通常无法处理特定类型的数据&#xff0c;例如日期时间对象、自定义类实例等。在将数据转换为 JSON 字符串之前&#xff0c;确保所有数据都…

「动态规划」如何求地下城游戏中,最低初始健康点数是多少?

174. 地下城游戏https://leetcode.cn/problems/dungeon-game/description/ 恶魔们抓住了公主并将她关在了地下城dungeon的右下角。地下城是由m x n个房间组成的二维网格。我们英勇的骑士最初被安置在左上角的房间里&#xff0c;他必须穿过地下城并通过对抗恶魔来拯救公主。骑士…

【Text2SQL 论文】C3:使用 ChatGPT 实现 zero-shot Text2SQL

论文&#xff1a;C3: Zero-shot Text-to-SQL with ChatGPT ⭐⭐⭐⭐ arXiv:2307.07306&#xff0c;浙大 Code&#xff1a;C3SQL | GitHub 一、论文速读 使用 ChatGPT 来解决 Text2SQL 任务时&#xff0c;few-shots ICL 的 setting 需要输入大量的 tokens&#xff0c;这有点昂贵…

MacOS M系列芯片一键配置多个不同版本的JDK

第一步&#xff1a;下载JDK。 官网下载地址&#xff1a;Java Archive | Oracle 选择自己想要下载的版本&#xff0c;一般来说下载一个jdk8和一个jdk11就够用了。 M系列芯片选择这两个&#xff0c;第一个是压缩包&#xff0c;第二个是dmg可以安装的。 第二步&#xff1a;编辑…

eclipse插件开发(二)RCP第三方库的引入方式

RCP第三方库的引入 最近在RCP开发过程中遇到JSON串与对象互转的问题&#xff0c;如何像spring开发模式一样引入第三方库呢&#xff1f;eclipse插件开发中用到p2库&#xff0c;但也支持maven库的引入。关键在于.target这个关键文件。 .target 文件用于定义一个目标平台&#x…

民主测评要做些什么?

民主测评&#xff0c;作为一种重要的民主管理工具&#xff0c;旨在通过广泛征求群众意见&#xff0c;对特定对象或事项进行客观、公正的评价。它不仅是推动民主参与、民主监督的重要手段&#xff0c;也是提升治理效能、促进社会和谐的有效途径。以下将详细介绍民主测评的主要过…

如何以非交互方式将参数传递给交互式脚本

文章目录 问题回答1. 使用 Here Document2. 使用 echo 管道传递3. 使用文件描述符4. 使用 expect 工具 参考 问题 我有一个 Bash 脚本&#xff0c;它使用 read 命令以交互方式读取命令参数&#xff0c;例如 yes/no 选项。是否有一种方法可以在非交互式脚本中调用这个脚本&…

Chrome 源码阅读:跟踪一个鼠标事件的流程

我们通过在关键节点打断点的方式&#xff0c;去分析一个鼠标事件的流程。 我们知道chromium是多进程模型&#xff0c;那么&#xff0c;我们可以推测&#xff1a;一个鼠标消息先从主进程产生&#xff0c;再通过跨进程通信发送给渲染进程&#xff0c;渲染进程再发送给WebFrame&a…

【FAS】《CN103106397B》

原文 CN103106397B-基于亮瞳效应的人脸活体检测方法-授权-2013.01.19 华南理工大学 方法 / 点评 核心方法用的是传统的形态学和模板匹配&#xff0c;亮点是双红外发射器做差分 差分&#xff1a;所述FPGA芯片控制两组红外光源&#xff08;一近一远&#xff09;交替亮灭&…

RDMA (2)

iWARP(RDMA)怎么工作的 招式1:bypass内核 非iWARP时,当应用向网络适配器发出读或者写命令时,命令穿过用户空间以及内核空间,因此需要在用户空间和内核空间间进行切换。 iWARP使用RDMA,让应用直接将命令送达到网络适配器。这规避了对内核的调用,减少了开销和延迟。 招式2…

【Kubernetes】三证集齐 Kubernetes实现资源超卖(附镜像包)

目录 插叙前言一、思考和原理二、实现步骤0. 资料包1. TLS证书签发2. 使用 certmanager 生成签发证书3. 获取secret的内容 并替换CA_BUNDLE4.部署svc deploy 三、测试验证1. 观察pod情况2. 给node 打上不需要超售的标签【可以让master节点资源不超卖】3. 资源实现超卖4. 删除还…

IP域名关系的研究与系统设计(学习某知名测绘系统)

IP域名关系库管理包括域名库检索和whois库检索&#xff0c;详情如下。 域名库检索支持以下5项功能&#xff1a; 1.通过过滤器检索 筛选条件包含IP地址、口令、工具名称、可利用的漏洞编号、创建时间&#xff1b; 2.通过关键字检索 在查询框中输入域名库名称的部分关键词&a…

计算机组成结构—IO系统概述

目录 一、I/O 系统的发展 1. 早期阶段 2. 接口模块和 DMA 阶段 3. 通道结构阶段 4. 处理机阶段 二、I/O 系统的组成 1. I/O 软件 2. I/O 硬件 三、I/O 设备 1. I/O 设备分类 2. I/O 设备的组成 在计算机中&#xff0c;除 CPU 和主存两大模块之外&#xff0c;第三个重…

Apple开发者应用商店(AppStore)描述文件及ADHOC描述文件生成

创建AD HOC描述文件 1.选中Profiles,然后点击加号创建 2.创建已注册设备可安装描述文件 3.选择要注册的id 4.选择证书 5.选择设备 6.输入文件名,点击生成 7.生成成功,点击下载

Java使用OpenCV计算两张图片相似度

业务&#xff1a;找出两个表的重复的图片。 图片在表里存的是二进制值&#xff0c;存在大量由于一些特殊情况例如扫描有差异&#xff0c;导致图片存的二进制值不同&#xff0c;但图片其实是一样来的。 所以找出两个表重复相同的图片&#xff0c;不可能只是单纯的比较二进制值…

flask招聘数据分析及展示平台-计算机毕业设计源码39292

目 录 摘要 1 绪论 1.1研究意义 1.2国内外研究进展 1.3flask框架介绍 2 1.4论文结构与章节安排 3 2 招聘数据分析及展示平台分析 4 2.1 可行性分析 4 2.2 系统流程分析 4 2.2.1数据增加流程 5 2.3.2数据修改流程 5 2.3.3数据删除流程 5 2.3 系统功能分析 5 2.3.1 功能性分…