【愚公系列】2023年12月 HarmonyOS教学课程 041-Stage模型(概述和组件配置)

本文主要是介绍【愚公系列】2023年12月 HarmonyOS教学课程 041-Stage模型(概述和组件配置),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述

🏆 作者简介,愚公搬代码
🏆《头衔》:华为云特约编辑,华为云云享专家,华为开发者专家,华为产品云测专家,CSDN博客专家,CSDN商业化专家,阿里云专家博主,阿里云签约作者,腾讯云优秀博主,腾讯云内容共创官,掘金优秀博主,51CTO博客专家等。
🏆《近期荣誉》:2023年华为云十佳博主,2022年CSDN博客之星TOP2,2022年华为云十佳博主等。
🏆《博客内容》:.NET、Java、Python、Go、Node、前端、IOS、Android、鸿蒙、Linux、物联网、网络安全、大数据、人工智能、U3D游戏、小程序等相关领域知识。
🏆🎉欢迎 👍点赞✍评论⭐收藏

文章目录

  • 🚀一、Stage模型概述和组件
    • 🔎1.Stage模型概述
    • 🔎2.Stage模型组件配置
      • 🦋2.1 应用包名配置
      • 🦋2.2 应用图标和标签配置
      • 🦋2.3 入口图标和标签配置
      • 🦋2.4 应用版本声明配置
      • 🦋2.5 Module支持的设备类型配置
      • 🦋2.6 Module权限配置
  • 🚀感谢:给读者的一封信


🚀一、Stage模型概述和组件

🔎1.Stage模型概述

HarmonyOS的Stage模型是其应用程序的核心概念之一,它提供了一种灵活的方式来管理应用程序的生命周期和界面管理。

Stage模型由以下几个主要组件组成:

  1. 应用程序:每个应用程序被视为一个Stage,它可以包含一个或多个窗口,每个窗口都可以显示一个或多个界面。

  2. 窗口:窗口是应用程序中的一个独立区域,可以包含一个或多个界面。

  3. 界面:界面是窗口中的一个特定内容区域,用于显示应用程序的用户界面。每个界面都可以包含一个或多个组件。

  4. 组件:组件是界面中的可视化元素,例如按钮、文本框、图像等。通过组合不同的组件,可以构建出丰富多样的用户界面。

Stage模型的主要特点包括:

  1. 多窗口管理:一个应用程序可以同时管理多个窗口,每个窗口可以显示不同的界面内容,用户可以自由切换和操作窗口。

  2. 灵活布局:界面中的组件可以通过布局管理器进行灵活的排列和布局,以适应不同屏幕尺寸和设备方向的变化。

  3. 生命周期管理:应用程序和窗口都有自己的生命周期,可以响应不同的生命周期事件,例如创建、启动、暂停、恢复和销毁等。

通过Stage模型,HarmonyOS提供了一种统一的方式来管理应用程序的界面和生命周期,使开发者能够更容易地构建和管理复杂的应用程序。

在这里插入图片描述
Stage模型是HarmonyOS多端统一的应用开发框架中的一个核心概念,用于描述应用的界面层次结构和组件之间的关系。它主要包含UIAbility组件和ExtensionAbility组件、WindowStage、Context和AbilityStage。

  1. UIAbility组件和ExtensionAbility组件:

    • UIAbility组件是应用中负责绘制用户界面的组件,通过创建UIAbility组件可以实现应用的界面展示和用户交互的功能。
    • ExtensionAbility组件是一种非UI能力的组件,用于提供后台处理任务、访问系统资源、与外部设备交互等功能,与UIAbility组件相互配合完成应用的功能。
  2. WindowStage:

    • WindowStage是应用界面的顶层容器,它负责管理应用界面的显示和布局。
    • WindowStage可以包含一个或多个UIAbility组件,并负责协调它们之间的界面切换和交互。
  3. Context:

    • Context是应用界面的上下文环境,可以通过Context对象获取应用的资源、系统服务和应用数据等。
    • 在WindowStage中的每个UIAbility组件都对应一个Context对象,用于提供界面相关的上下文信息。
  4. AbilityStage:

    • AbilityStage是HarmonyOS应用的生命周期管理容器,它负责管理应用的各个阶段(如创建、启动、暂停、恢复、停止等)。
    • AbilityStage可以包含一个或多个WindowStage,用于管理多个应用界面的生命周期和切换。

🔎2.Stage模型组件配置

🦋2.1 应用包名配置

应用需要在工程的AppScope目录下的app.json5配置文件中配置bundleName标签。该标签用于标识应用的唯一性。推荐采用反域名形式命名,例如com.example.demo。建议第一级为域名后缀com,第二级为厂商/个人名,第三级为应用名,也可以多级。

在这里插入图片描述

🦋2.2 应用图标和标签配置

Stage模型的应用需要配置应用图标和应用标签。

  1. 应用图标:
    应用图标需要在工程的AppScope目录下的app.json5配置文件中配置icon标签。配置为图片资源的索引,配置完成后,该图片即为应用的图标。

  2. 应用标签:
    应用标签需要在工程的AppScope模块下的app.json5配置文件中配置label标签。用于标识应用对用户显示的名称,需要配置为字符串资源的索引。

应用图标和标签在设置应用中使用。例如,在应用列表中设置应用时,会显示出对应的图标和标签。
在这里插入图片描述
在这里插入图片描述

🦋2.3 入口图标和标签配置

入口图标需要在module.json5配置文件中进行配置。在abilities标签下面可以找到icon标签。例如,如果希望在桌面上显示该UIAbility的图标,则需要在skills标签下的entities中添加"entity.system.home",在actions标签中添加"action.system.home"。如果同一个应用有多个UIAbility,并且配置了上述字段,那么在桌面上会显示出多个图标,分别对应各自的UIAbility。

在这里插入图片描述
在这里插入图片描述

🦋2.4 应用版本声明配置

应用版本声明需要在工程的AppScope目录下的app.json5配置文件中配置以下标签:

  1. versionCode:用于标识应用的版本号,该标签值为32位非负整数。
  2. versionName:标识版本号的文字描述。

在这里插入图片描述

🦋2.5 Module支持的设备类型配置

Module支持的设备类型需要在module.json5配置文件中配置以下标签:

  1. deviceTypes:用于标识支持的设备类型。如果在deviceTypes标签中添加了某种设备,表示该Module能够在该设备上运行。

在这里插入图片描述

🦋2.6 Module权限配置

在module.json5配置文件中,需要使用requestPermission标签来配置Module访问系统或其他应用的受保护部分所需的权限信息。该标签用于声明需要申请的权限名称、申请权限的原因以及权限使用的场景。

在这里插入图片描述


🚀感谢:给读者的一封信

亲爱的读者,

我在这篇文章中投入了大量的心血和时间,希望为您提供有价值的内容。这篇文章包含了深入的研究和个人经验,我相信这些信息对您非常有帮助。

如果您觉得这篇文章对您有所帮助,我诚恳地请求您考虑赞赏1元钱的支持。这个金额不会对您的财务状况造成负担,但它会对我继续创作高质量的内容产生积极的影响。

我之所以写这篇文章,是因为我热爱分享有用的知识和见解。您的支持将帮助我继续这个使命,也鼓励我花更多的时间和精力创作更多有价值的内容。

如果您愿意支持我的创作,请扫描下面二维码,您的支持将不胜感激。同时,如果您有任何反馈或建议,也欢迎与我分享。

在这里插入图片描述

再次感谢您的阅读和支持!

最诚挚的问候, “愚公搬代码”

这篇关于【愚公系列】2023年12月 HarmonyOS教学课程 041-Stage模型(概述和组件配置)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/827072

相关文章

SpringBoot多环境配置数据读取方式

《SpringBoot多环境配置数据读取方式》SpringBoot通过环境隔离机制,支持properties/yaml/yml多格式配置,结合@Value、Environment和@Configura... 目录一、多环境配置的核心思路二、3种配置文件格式详解2.1 properties格式(传统格式)1.

Debian系和Redhat系防火墙配置方式

《Debian系和Redhat系防火墙配置方式》文章对比了Debian系UFW和Redhat系Firewalld防火墙的安装、启用禁用、端口管理、规则查看及注意事项,强调SSH端口需开放、规则持久化,... 目录Debian系UFW防火墙1. 安装2. 启用与禁用3. 基本命令4. 注意事项5. 示例配置R

PyCharm中配置PyQt的实现步骤

《PyCharm中配置PyQt的实现步骤》PyCharm是JetBrains推出的一款强大的PythonIDE,结合PyQt可以进行pythion高效开发桌面GUI应用程序,本文就来介绍一下PyCha... 目录1. 安装China编程PyQt1.PyQt 核心组件2. 基础 PyQt 应用程序结构3. 使用 Q

Redis MCP 安装与配置指南

《RedisMCP安装与配置指南》本文将详细介绍如何安装和配置RedisMCP,包括快速启动、源码安装、Docker安装、以及相关的配置参数和环境变量设置,感兴趣的朋友一起看看吧... 目录一、Redis MCP 简介二、安www.chinasem.cn装 Redis MCP 服务2.1 快速启动(推荐)2.

Spring Boot配置和使用两个数据源的实现步骤

《SpringBoot配置和使用两个数据源的实现步骤》本文详解SpringBoot配置双数据源方法,包含配置文件设置、Bean创建、事务管理器配置及@Qualifier注解使用,强调主数据源标记、代... 目录Spring Boot配置和使用两个数据源技术背景实现步骤1. 配置数据源信息2. 创建数据源Be

Olingo分析和实践之OData框架核心组件初始化(关键步骤)

《Olingo分析和实践之OData框架核心组件初始化(关键步骤)》ODataSpringBootService通过初始化OData实例和服务元数据,构建框架核心能力与数据模型结构,实现序列化、URI... 目录概述第一步:OData实例创建1.1 OData.newInstance() 详细分析1.1.1

Spring Boot Maven 插件如何构建可执行 JAR 的核心配置

《SpringBootMaven插件如何构建可执行JAR的核心配置》SpringBoot核心Maven插件,用于生成可执行JAR/WAR,内置服务器简化部署,支持热部署、多环境配置及依赖管理... 目录前言一、插件的核心功能与目标1.1 插件的定位1.2 插件的 Goals(目标)1.3 插件定位1.4 核

RabbitMQ消息总线方式刷新配置服务全过程

《RabbitMQ消息总线方式刷新配置服务全过程》SpringCloudBus通过消息总线与MQ实现微服务配置统一刷新,结合GitWebhooks自动触发更新,避免手动重启,提升效率与可靠性,适用于配... 目录前言介绍环境准备代码示例测试验证总结前言介绍在微服务架构中,为了更方便的向微服务实例广播消息,

nginx 负载均衡配置及如何解决重复登录问题

《nginx负载均衡配置及如何解决重复登录问题》文章详解Nginx源码安装与Docker部署,介绍四层/七层代理区别及负载均衡策略,通过ip_hash解决重复登录问题,对nginx负载均衡配置及如何... 目录一:源码安装:1.配置编译参数2.编译3.编译安装 二,四层代理和七层代理区别1.二者混合使用举例

Java JDK1.8 安装和环境配置教程详解

《JavaJDK1.8安装和环境配置教程详解》文章简要介绍了JDK1.8的安装流程,包括官网下载对应系统版本、安装时选择非系统盘路径、配置JAVA_HOME、CLASSPATH和Path环境变量,... 目录1.下载JDK2.安装JDK3.配置环境变量4.检验JDK官网下载地址:Java Downloads