鸿蒙开发入门:deviceConfig内部结构

2023-12-19

deviceConfig内部结构

deviceConfig包含设备上的应用配置信息,可以包含default、tv、car、wearable等属性。default标签内的配置适用于所有通用设备,其他设备类型如果有特殊的需求,则需要在该设备类型的标签下进行配置。

deviceConfig对象内部结构

表1 deviceConfig对象内部结构说明

属性名称 含义 数据类型 是否可缺省
default 能够使用全部系统能力的HarmonyOS设备。 对象 可缺省,缺省值为空。
tablet 标识平板特有的应用配置信息。 对象 可缺省,缺省值为空。
tv 标识智慧屏特有的应用配置信息。 对象 可缺省,缺省值为空。
car 标识车机特有的应用配置信息。 对象 可缺省,缺省值为空。
wearable 标识智能穿戴特有的应用配置信息。 对象 可缺省,缺省值为空。

上表中各类设备对象的内部结构说明请见表2。

deviceConfig设备对象内部结构

表2 deviceConfig设备对象内部结构说明

属性名称 含义 数据类型 是否可缺省
process 标识应用或者Ability的进程名。如果在deviceConfig标签下配置了process标签,则该应用的所有Ability都运行在这个进程中。如果在abilities标签下也为某个Ability配置了process标签,则该Ability就运行在这个进程中。该标签最大长度为31。 字符串 可缺省,缺省值为空。
keepAlive 标识应用是否始终保持运行状态,仅支持系统应用配置,三方应用配置不生效。该标签为布尔类型,可缺省,缺省值为false,如果配置为true,应用将始终保持为运行状态,并在系统启动的时候被系统驱动起来,应用进程退出后,系统也会重新启动应用进程。 布尔值 可缺省,缺省值为false。
supportBackup 标识应用是否支持备份和恢复。如果配置为"false",则不支持为该应用执行备份或恢复操作。 布尔值 可缺省,缺省值为false。
compressNativeLibs 标识libs库是否以压缩存储的方式打包到HAP。如果配置为"false",则libs库以不压缩的方式存储,HAP在安装时无需解压libs,运行时会直接从HAP内加载libs库。 布尔值 可缺省,缺省值为true。
network 标识网络安全性配置。该标签允许应用通过配置文件的安全声明来自定义其网络安全,无需修改应用代码。 对象 可缺省,缺省值为空。

network对象的内部结构

表3 network对象的内部结构说明

属性名称 含义 数据类型 是否可缺省
cleartextTraffic 标识是否允许应用使用明文网络流量(例如,明文HTTP)。true:允许应用使用明文流量的请求。false:拒绝应用使用明文流量的请求。 布尔值 可缺省,缺省值为false。
securityConfig 标识应用的网络安全配置信息。 对象 可缺省,缺省为空。

securityConfig对象的内部结构

表4 securityConfig对象的内部结构说明

属性名称 含义 数据类型 是否可缺省
domainSettings 标识自定义的网域范围的安全配置,支持多层嵌套,即一个domainSettings对象中允许嵌套更小网域范围的domainSettings对象。 对象类型 可缺省,缺省为空。

domainSettings对象内部结构

表5 domainSettings对象内部结构说明

属性名称 含义 数据类型 是否可缺省
cleartextPermitted 标识自定义的网域范围内是否允许明文流量传输。当cleartextTraffic和security同时存在时,自定义网域是否允许明文流量传输以cleartextPermitted的取值为准。true:允许明文流量传输。false:拒绝明文流量传输。 布尔类型 可缺省,缺省值为空。
domains 标识域名配置信息,包含两个参数:subdomains和name。subdomains(布尔类型):表示是否包含子域名。如果为"true",此网域规则将与相应网域及所有子网域(包括子网域的子网域)匹配。否则,该规则仅适用于精确匹配项。name(字符串):表示域名名称。 对象数组 可缺省,缺省值为空。

deviceConfig示例

"deviceConfig": {  "default": {    "process": "com.example.test.example",    "supportBackup": false,    "network": {      "cleartextTraffic": true,      "securityConfig": {        "domainSettings": {          "cleartextPermitted": true,          "domains": [            {              "subdomains": true,              "name": "example.ohos.com"            }          ]        }      }    }  }}

最后

这里整理了一份《鸿蒙零基础入门学习指南》,希望能对那些想要学习鸿蒙,但是有没有方向的人提供一点帮助。本文档适用于HarmonyOS应用开发的初学者(由于文档内容过多,因此为了避免影响到大家的阅读体验,在此只以截图展示部分内容,详细完整版的看文末有免费的获取方式!)

《鸿蒙零基础入门学习指南》

目录

在这里插入图片描述

一、快速入门

适用于HarmonyOS应用开发的初学者。通过构建一个简单的具有页面跳转/返回功能的应用,快速了解工程目录的主要文件,熟悉HarmonyOS应用开发流程。

  • 开发准备
    • 基本概念
    • 工具准备
  • 构建第一个ArkTS应用(Stage模型)
  • 构建第一个ArkTS应用(FA模型)
  • 构建第一个JS应用(FA模型)

在这里插入图片描述

二、开发基础知识

  • 应用程序包基础知识
    • 应用程序包概述
    • 应用程序包结构
    • 应用程序包多HAP机制
    • 应用程序包安装和卸载流程
    • 应用程序包更新流程
    • 共享包
    • 应用程序包快速修复
  • 应用配置文件(Stage模型)
    • 应用配置文件概述(Stage模型)
    • app.json5配置文件
    • module.json5配置文件
  • 应用配置文件概述(FA模型)
    • 应用配置文件概述(FA模型)
    • app对象内部结构
    • deviceConfig内部结构
    • module对象内部结构

在这里插入图片描述

三、资源分类与访问

应用开发过程中,经常需要用到颜色、字体、间距、图片等资源,在不同的设备或配置中,这些资源的值可能不同。

  • 资源分类与访问
    • 资源分类
    • 资源目录
    • 资源组目录
  • 创建资源目录和资源文件
    • 创建资源目录和资源文件
    • 创建资源目录
    • 创建资源文件
  • 资源访问
    • 应用资源
    • 系统资源
    • 资源匹配
      在这里插入图片描述

四、学习ArkTs语言

ArkTS是HarmonyOS优选的主力应用开发语言。ArkTS围绕应用开发在 TypeScript (简称TS)生态基础上做了进一步扩展,继承了TS的所有特性,是TS的超集。因此,在学习ArkTS语言之前,建议开发者具备TS语言开发能力。

  • 初识ArkTS语言
  • 基本语法
    • 基本语法概述
    • 声明式UI描述
    • 自定义组件
  • 状态管理
  • 其他状态管理
    • 其他状态管理概述
    • @Watch装饰器:状态变量更改通知
    • $$语法:内置组件双向同步
  • 渲染控制
    • 渲染控制概述
    • if/else:条件渲染
    • ForEach:循环渲染
    • LazyForEach:数据懒加载

在这里插入图片描述

扫描下方二维码免费领取,《鸿蒙5.0零基础入门学习指南》

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

鸿蒙开发入门:deviceConfig内部结构 的相关文章

随机推荐

  • 从后端到前端 Yii2 高级应用程序

    我正在尝试将一些控制器从前端链接到后端 几个小时后我不知道问题出在哪里 Backend file main php urlManager gt enablePrettyUrl gt false showScriptName gt false
  • C 中类型转换时的运算符优先级

    下面的代码给出了正确的乘法结果 int var0 245895 int var1 478565 long long val 0 val long long var0 var1 但这篇文章给出了错误的结果 int var0 245895 in
  • MatTable 上的多个过滤器

    我一直在尝试应用多列过滤 即列标题中的文本输入将仅过滤列的内容 到目前为止 我已经能够通过覆盖来使其工作filterPredicate of MatTableDataSource但是一旦我覆盖跨列的默认过滤就不再起作用 export cla
  • firefox flex 不会随着滚动条而增长

    我遇到了特定于 Firefox 的问题 据我所知 在 Chrome 中 如果你有 flex 0 0 auto overflow auto 当 y 方向溢出时 它会占用滚动条的额外宽度 一切都很好 但在 Firefox 中 它不会考虑额外的宽
  • 在 Promise 中断言函数调用

    我正在为异步 Node js 函数编写一些测试 该函数使用 Mocha Chai 和 Sinon 库返回承诺 假设这是我的功能 function foo params return mkdir params then dir gt writ
  • JBoss数据库连接池

    我是 jboss 的新手 我被要求将 jboss 连接池机制与现有的 Web 应用程序合并 考虑到 Web 应用程序数据库层已正确编写 即所有结果集 语句和连接在不需要时正确关闭 在正确配置 jboss 数据源后 我必须在 Web 应用程序
  • Android 中的静电安全吗?

    我在代码中使用一个静态类来定义一个静态字段 我在 Activity onStop onStart 调用之间重用该静态字段 这是一个场景 用户点击 授权 按钮 静态数据初始化 活动停止并调用 Web 浏览器 浏览器执行回调 Activity恢
  • 从客户端检索 Kafka 代理属性

    我想知道是否有一种方法可以使用 shell 命令检索 kafka 代理的所有配置属性 例如 类似的东西 kafka configs sh zookeeper broker ip 2181 entity type brokers descri
  • 无法将工件从中央 IntelliJ 传输到中央 IntelliJ

    我的 Spring boot 项目使用 Maven 当我使用 IntelliJ Community 构建它时 出现错误 无法将工件 com jolira hickory pom 1 0 0 从 转移到中央 https repo maven
  • scanf("%[^\n]",name); 的区别和 scanf(" %[^\n]",名称);

    这不是一个错字 对于那些没有注意到的人来说 第二个上有一个空格 第一个上没有空格 当我做作业时 我会遇到这样的情况 include
  • JSplitPane + MiGLayout:如何启用自动调整大小

    我在这里做错了 我想在 JFrame 中的 JPanel 中的 JSplitPane 中有两个 JButton 其中按钮填充 JSplitPane 这是调整 JFrame 大小时得到的结果 按钮保持正常大小 并且 JSplitPane 不允
  • 无法在 Windows 7 上注册 Sybase 15 ASE OLE DB 驱动程序

    我正在尝试在我的 Windows 7 计算机上设置 Sybase 15 ASE OLE DB 驱动程序 我的 32 位 ODBC 数据源管理器 C Windows SysWOW64 odbcad32 exe 的 驱动程序 选项卡中已列出了
  • 使用 Eclipselink Moxy 如何将 xml 内容映射到与值不同的名称?

    在我的 Xml 中我有
  • 【华为数据之道学习笔记】5-9图模型设计

    图模型作为当前流行的信息处理加工技术 自提出以来 迅速在 学术界和工业界得到了普及 在智能推荐 决策分析等方面有着广泛的应用 图模型由节点和边组成 节点表示实体或概念 边则由属性或关 系构成 实体指的是具有可区别性且独立存在的某种事物 如某
  • 压缩炸弹,Java怎么防止

    压缩炸弹 Java怎么防止 什么是压缩炸弹 会有什么危害 什么是压缩炸弹 压缩炸弹 ZIP 一个压缩包只有几十KB 但是解压缩后有几十GB 甚至可以去到几百TB 直接撑爆硬盘 或者是在解压过程中CPU飙到100 造成服务器宕机 虽然系统功能
  • Redis设计与实现之Lua 脚本

    目录 一 Lua 脚本 1 初始化 Lua 环境 2 脚本的安全性 3 脚本的执行 4 EVAL 命令的实现 定义 Lua 函数 执行 Lua 函数 5 EVALSHA 命令的实现 二 小结 一 Lua 脚本 Lua 脚本功能是 Reids
  • 鸿蒙崛起,高校加入培养大军

    前言 近日 华为消费者业务CEO余承东宣布 明年华为将推出鸿蒙原生应用与原生体验的产品 标志着鸿蒙生态正式迈入发展的快车道 与此同时 国内主流的App已经开始着手研发纯鸿蒙系统版本 高校也积极参与 加入鸿蒙的培养大军 鸿蒙 作为华为推动的自
  • Flutter完整开发实战详解(一、Dart语言和Flutter基础)

    前言 在如今的 Fultter 大潮下 本系列是让你看完会安心的文章 本系列将完整讲述 如何快速从0开发一个完整的 Flutter APP 配套高完成度 Flutter 开源项目 GSYGithubAppFlutter 同时也会提供一些Fl
  • 机器学习笔记 - 用于时间序列分析的深度学习技术

    一 简述 过去 时间序列分析采用自回归综合移动平均线等传统统计方法 然而 随着深度学习的出现 研究人员探索了各种神经网络架构来建模和预测时间序列数据 深度学习技术 例如 LSTM 长短期记忆 卷积神经网络和自动编码器 已经在时间序列预测 异
  • 鸿蒙开发入门:deviceConfig内部结构

    deviceConfig内部结构 deviceConfig包含设备上的应用配置信息 可以包含default tv car wearable等属性 default标签内的配置适用于所有通用设备 其他设备类型如果有特殊的需求 则需要在该设备类型