news 2026/8/27 13:02:02

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

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
鸿蒙开发入门:deviceConfig内部结构

deviceConfig内部结构

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

deviceConfig对象内部结构

表1deviceConfig对象内部结构说明

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

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

deviceConfig设备对象内部结构

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

属性名称含义数据类型是否可缺省
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对象的内部结构

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

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

securityConfig对象的内部结构

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

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

domainSettings对象内部结构

表5domainSettings对象内部结构说明

属性名称含义数据类型是否可缺省
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零基础入门学习指南》

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/27 13:00:33

技术立身,进阶Android,成为行业领跑者!

背景 工作2-3年后,许多人会进入一种迷茫的状态,感觉自己已经掌握了当前工作的所有基本技能,似乎失去了前进的动力。 这种迷茫源于对当前职业阶段的认识不足。我个人也经历过这个阶段,深感Android开发似乎已经没有新挑战了&#xf…

作者头像 李华
网站建设 2026/8/27 12:59:22

程序员那么卷,就业那么难,为什么你还当一名程序员

前言 这是很早之前看到的一个问题,那时候应该也和今年的情形一样,只不过没有现在这么严重,因为以前只是企业一方面的问题导致的裁员潮流;而到了2023年就不仅仅是因为疫情之类的原因导致企业不景气的问题,更多的是程序员…

作者头像 李华
网站建设 2026/8/27 12:58:14

最新29刷网课平台系统源码+爱学习+搭建教程

最新源码如下 下面链接源码作废了 货源对接,代理开通,货源推荐,邀请码lastdance,点击前往 29网课框架源码合集分享,刷网课模板搭建教程_29网课近期上新php文件-CSDN博客 一、页面展示 1.前台 登录界面 注册界面 2…

作者头像 李华
网站建设 2026/8/27 12:55:29

FloodFill算法

1.前言 来看下图: floodfill解决的是一个大区域里有很多小区域,找出性质相同的连通块(上下左右连)。做法无非是从左往右扫描过程中发现低谷的时候,来一次深度或宽度优先遍历,一个地方走不通回溯到上一个位置继续遍历。 2.图像渲染…

作者头像 李华