HarmonyOS应用/元服务发布流程

在发布HarmonyOS应用/元服务前,建议您在本地进行调试,以查看和验证应用/元服务运行效果,减少发布过程中可能遇到的问题。

华为支持您使用HUAWEI DevEco Studio自动化签名的方式对应用/元服务进行调试,总体流程如下。

  1. 配置签名信息:为了确保应用/元服务的完整性,HarmonyOS通过数字证书(.cer文件)和Profile文件(.p7b文件)来对应用/元服务进行管控,只有签名过的应用/元服务才能安装到真机设备上运行。
  2. 设置调试类型:DevEco Studio支持调试多种代码,您可以根据使用的代码类型选择合适的调试类型。默认调试类型为Detect Automatically,可以根据工程类型,自动启动对应的调试器。
  3. 设置HAP安装方式:您可以通过设置HAP安装方式,决定每次调试时,是否清除缓存数据。默认每次调试都清除缓存数据,如果需要保留,可以更改设置。
  4. 启动调试。

注意:
自动化签名的调试方式要求您的网络可以访问Internet。如果您的应用/元服务调试时无法联网,可以在AGC中申请调试证书和Profile后,再通过手动签名的方式进行调试,具体步骤请参见手动签名方式调试HarmonyOS应用/元服务。

配置签名信息

为了确保应用/元服务的完整性,HarmonyOS通过数字证书(.cer文件)和Profile文件(.p7b文件)来对应用/元服务进行管控,只有签名过的应用/元服务才能安装到真机设备上运行。DevEco Studio为您提供了自动签名方案,帮助您高效进行调试。

  1. 连接真机,真机连接成功后如下图所示。

    如果同时连接多个设备,则使用自动化签名时,会同时将这多个设备的信息写到证书文件中。

  1. 菜单选择“File > Project Structure”,在“Project Structure”界面导航选择“Project”,选择“Signing Configs”页签,勾选“Automatically generate signature” (如果是API 8和9工程,需同时勾选“Support HarmonyOS”)。如果未登录,先点击“Sign In”进行登录。

需要注意的是,API版本4至7的工程区分调试签名和发布签名,请在“Signing Configs”界面选择“Debug”页签,然后再配置签名信息。

签名完成后,界面信息如下。

API Version 8~9:

API Version 4~7:

设置调试类型

DevEco Studio支持多种调试类型,不同调试类型支持调试的代码类型也不同,具体对应关系如下表所示。

调试类型支持调试的代码
Detect Automatically新建工程默认调试器选项,根据调试的工程类型,自动启动对应的调试器。API 4~9 Version 支持。
Js Only* 调试ArkTS代码,API Version 7~9支持。* 调试JS代码,API Version 4~9支持。
Native Only仅调试C/C++代码,API Version 4~9支持。
Dual(Js + Native)调试C/C++工程的ArkTS/JS和C/C++代码,API Version 8~9支持。
Java Only仅调试Java代码,API Version 4~7支持。
Dual(Js + Java)调试JS FA调用Java PA场景的JS和Java代码,API Version 4~7支持。
Dual(Java + Native)调试C/C++工程的Java和C/C++代码,API Version 4~7支持。

工程默认调试类型为“Detect Automatically”,您可以根据使用的API 版本和调试的代码类型设置不同的调试类型。设置方法如下:

  1. 菜单选择“Run > Edit Configurations”,进入“Run/Debug Configurations”界面。
  2. 选择相应的模块,选择“Debugger”页签,“Debug type”选择所需调试类型,点击“OK”。

API Version 8~9:

API Version 4~7:

设置HAP安装方式

调试时,HAP在设备上有两种安装方式:

  • 方式一(默认安装方式):卸载应用/元服务后,重新安装。此方式将清除设备上所有缓存数据。
  • 方式二:采用覆盖安装。此方式将保留应用/元服务的缓存数据。
  1. 菜单选择“Run > Edit Configurations”,进入“Run/Debug Configurations”界面。
  2. 选择相应的模块,选择“General”页签。勾选“Keep Application Data”则调整为覆盖安装方式。

如果一个工程在同一个设备存在多个模板(例如手机设备上,存在entry和feature模块),且模块间存在调用关系,那么在调试时需要安装多个模块的hap包到设备上。此时,需要在“Deploy Multi Hap”页签中勾选“Deploy Multi Hap Packages”,启动调试时,DevEco Studio会将所有的模块都安装到设备上。DevEco Studio V3.1 Release开始支持。

对于API Version 4至7的工程,请在“General”页签勾选“Deploy Multi Hap Packages”。

启动调试


2. 如果需要设置断点,在待设置代码行号区域点击鼠标左键。
设置断点后,调试将在断点处中断,并高亮显示该行代码。

启动调试后,可以在调试器中对代码进行更细的调试,相关功能如下表所示。

为了能让大家更好的学习鸿蒙(HarmonyOS NEXT)开发技术,这边特意整理了《鸿蒙开发学习手册》(共计890页),希望对大家有所帮助:https://qr21.cn/FV7h05

《鸿蒙开发学习手册》:

如何快速入门:https://qr21.cn/FV7h05

  1. 基本概念
  2. 构建第一个ArkTS应用
  3. ……

开发基础知识:https://qr21.cn/FV7h05

  1. 应用基础知识
  2. 配置文件
  3. 应用数据管理
  4. 应用安全管理
  5. 应用隐私保护
  6. 三方应用调用管控机制
  7. 资源分类与访问
  8. 学习ArkTS语言
  9. ……

基于ArkTS 开发:https://qr21.cn/FV7h05

  1. Ability开发
  2. UI开发
  3. 公共事件与通知
  4. 窗口管理
  5. 媒体
  6. 安全
  7. 网络与链接
  8. 电话服务
  9. 数据管理
  10. 后台任务(Background Task)管理
  11. 设备管理
  12. 设备使用信息统计
  13. DFX
  14. 国际化开发
  15. 折叠屏系列
  16. ……

鸿蒙开发面试真题(含参考答案):https://qr18.cn/F781PH

鸿蒙开发面试大盘集篇(共计319页):https://qr18.cn/F781PH

1.项目开发必备面试题
2.性能优化方向
3.架构方向
4.鸿蒙开发系统底层方向
5.鸿蒙音视频开发方向
6.鸿蒙车载开发方向
7.鸿蒙南向开发方向

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

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

相关文章

H12-831_338

多选题338、某园区部署OSPF实现网络互通,其中R2的LSDB如图所示。以下关于该LSDB信息的描述,错误的有哪些项? A.此时R4不能访间地址10.1.35.5/24,因为R4所在的Area l内没有泛洪R3-R5互联网段路由信息 B.Area l内无3类LSA,有7类1SA…

【LVGL-键盘部件,实体按键控制】

LVGL-二维码库 ■ LVGL-键盘部件■ 示例一:键盘弹窗提示■ 示例二:设置键盘模式■ 综合示例: ■ LVGL-实体按键控制■ 简介 ■ LVGL-键盘部件 ■ 示例一:键盘弹窗提示 lv_keyboard_set_popovers(kb,true);■ 示例二:设…

前端 CSS 经典:grid 栅格布局

前言:Grid 布局是将容器划分成"行"和"列",产生单元格,然后将"项目"分配给划分好的单元格,因为有行和列,可以看作是二维布局。 一 术语 1. 容器 采用网格布局的区域,也就是…

Chakra UI:重塑React组件开发的未来

随着前端开发技术的不断演进,React已经成为了一个不可或缺的开源JavaScript库,用于构建用户界面。然而,虽然React提供了构建用户界面的强大工具,但在组件的可访问性、可重复使用性和可组合性方面仍存在挑战。Chakra UI正是一个为解…

上位机图像处理和嵌入式模块部署(qmacvisual区域提取)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 在图像处理中,有两部分比较重要,一个是区域分割,一个是区域提取。区域分割,比较好理解,…

MFC标签设计工具 图片控件上,移动鼠标显示图片控件内的鼠标xy的水平和垂直辅助线要在标签模板上加上文字、条型码、二维码 找准坐标和字体大小 源码

需求:要在标签模板上加上文字、条型码、二维码 找准坐标和字体大小 我生成标签时,需要对齐和 调文字字体大小。这工具微调 能快速知道位置 和字体大小。 标签设计(点击图片,上下左右箭头移动 或-调字体) 已经够用了,滚动条还没完…

Jmeter 从登录接口提取cookie 并 跨线程组调用cookie (超详细)

文章目录 一、开始前的准备二、 业务场景介绍三、从登录接口提取cookies四、跨线程组调用cookies 一、开始前的准备 1、安装Jmeter,参考文章:JMeter 3.1 和JMeterPlugin的下载安装 2、设置配置文件使Cookie管理器保存cookie信息。 修改apache-jmeter-x…

PPT没保存怎么恢复?3个方法(更新版)!

“我刚做完一个PPT,正准备保存的时候电脑没电自动关机了,打开电脑后才发现我的PPT没保存。这可怎么办?还有机会恢复吗?” 在日常办公和学习中,PowerPoint是制作演示文稿的重要工具。我们会在各种场景下使用它。但有时候…

目标检测+车道线识别+追踪

一种方法: 车道线检测-canny边缘检测-霍夫变换 一、什么是霍夫变换 霍夫变换(Hough Transform)是一种在图像处理和计算机视觉中广泛使用的特征检测技术,主要用于识别图像中的几何形状,尤其是直线、圆和椭圆等常见形状…

ssm小区车库停车系统开发mysql数据库web结构java编程计算机网页源码eclipse项目

一、源码特点 ssm小区车库停车系统是一套完善的信息系统,结合springMVC框架完成本系统,对理解JSP java编程开发语言有帮助系统采用SSM框架(MVC模式开发),系统具有完整的源代码和数据库,系统主要采用B/S模…

持续集成与版本控制的相关概念

目录 一、持续集成 1.1 持续集成基本概念 1.1.1 持续集成的含义 1.1.1.1 持续集成流程是依赖产品版本迭代和版本分支而产生的 1.1.1.2 持续集成流程中包含的内容 1.1.2 传统打包模式说明 1.1.2.1 传统打包模式概述 1.1.2.2 传统打包模式问题 1.1.3 持续集成模式 1.1.…

day70 Mybatis使用mapper重构xml文件重新修改商品管理系统

day67 基于mysql数据库jdbcDruidjar包连接的商品管理用户购物系统-CSDN博客 1多表操作 2动态SQL 项目中使用的为商品管理系统的表 一 查询商品信息 编号,名称,单价,库存,类别 1表:商品表,类别表 n对1…

java图书管理系统(简易)

实现的基本功能: 登录时,需要输入姓名,然后选择作为管理者还是普通用户。选择成功后选择想要实现的功能。管理者的目录下方有有五个功能,而普通用户有4个功能,如下图 首先我们要建立Book这个类,里面包含书…

sqlite跨数据库复制表

1.方法1 要将 SQLite 数据库中的一个表复制到另一个数据库,您可以按照以下步骤操作: 备份原始表的SQL定义和数据: 使用 sqlite3 命令行工具或任何SQLite图形界面工具,您可以执行以下SQL命令来导出表的SQL定义和数据&#xff1a…

算法打卡day19

今日任务: 1)235. 二叉搜索树的最近公共祖先 2)701.二叉搜索树中的插入操作 3)450.删除二叉搜索树中的节点 235. 二叉搜索树的最近公共祖先 题目链接:235. 二叉搜索树的最近公共祖先 - 力扣(LeetCode&…

Adobe推出20多个,企业版生成式AI定制、微调服务

3月27日,全球多媒体领导者Adobe在拉斯维加斯召开“Summit 2024”大会,重磅推出了Firefly Services。 Firefly Services提供了20 多个生成式AI和创意API服务,支持企业自有数据对模型进行定制、微调,同时可以与PS、Illustrator、Ex…

华为开源自研AI框架昇思MindSpore应用案例:梯度累加

目录 一、环境准备1.进入ModelArts官网2.使用CodeLab体验Notebook实例 二、案例实现 梯度累加的训练算法,目的是为了解决由于内存不足,导致Batch size过大神经网络无法训练,或者网络模型过大无法加载的OOM(Out Of Memory&#xff…

Learn OpenGL 26 视差贴图

什么是视差贴图 视差贴图(Parallax Mapping)技术和法线贴图差不多,但它有着不同的原则。和法线贴图一样视差贴图能够极大提升表面细节,使之具有深度感。它也是利用了视错觉,然而对深度有着更好的表达,与法线贴图一起用能够产生难…

uniapp写小程序如何实现分包

众所众知小程序上传的过程中对包的大小有限制,正常情况下不允许当个包超过2M,所以需要分包 需要再pages.json这个文件夹中进行配置 "pages": [{"path": "pages/index/index","style": {"navigationBarTit…

备考ICA----Istio实验11---为多个主机配置TLS Istio Ingress Gateway实验

备考ICA----Istio实验11—为多个主机配置TLS Istio Ingress Gateway实验 1. 部署应用 kubectl apply -f istio/samples/helloworld/helloworld.yaml -l servicehelloworld kubectl apply -f istio/samples/helloworld/helloworld.yaml -l versionv12. 证书准备 接上一个实验…