HarmonyOS-Java 三、config.json详解

config.json详细细节

  1. 应用的每个HAP的根目录下都存在一个config.json 配置文件
    1)应用全局配置信息,包含应用包名,生产厂商,版本号等基本信息
    2)应用在具体设备上的配置信息
    3)HAP包的配置信息,包含每个Ability必须定义的基本属性
    4)应用访问系统或其他应用受保护所需的权限
  2. config.json 文件
    1)属性:不分先后 唯一的
    2)值:可以是 (数值 字符串 布尔值 数组 对象 或者 null)
  3. config.json 文件内部结构
    app 应用的全局配置信息 每个模块都是一样的
    deviceConfig 在具体设备上的配置信息
    module HAP包配置信息
    每个模块这三块是缺一不可的

app:

{
  "app": { /*应用的全局配置信息*/
    "bundleName": "com.example.mydemo",  /*应用包名 唯一*/
    "vendor": "example",  /*是对应用开发商的描述*/
    "version": {   /*应用版本信息*/
      "code": 1000000,    /*版本号*/
      "name": "1.0.0"     /*版本名称*/
    }
  },
  "apiVersion": {  /*应用依赖鸿蒙API的版本*/
    "compatible": 5,   /*API 最小版本*/
    "target": 5       /*运行需要的版本*/
  }
}

2 deviceConfig

"deviceConfig": {},  //应用在具体设备上的信息

3 module

"module": {      /*HAP包配置信息 只对对应的HAP包生效*/
    "package": "com.example.mydemo",   /*包名*/
    "name": ".MyApplication",  /*主入口类*/
    "mainAbility": "com.example.mydemo.MainAbility",
    "deviceType": [  /*当前HAP包在什么设备上运行,可以指定多个*/
      "phone",
      "tv"
    ],
    "distro": {     /*发布相关*/
      "deliveryWithInstall": true,   /*能不能随着app安装而安装*/
      "moduleName": "entry",      /*模块名字*/
      "moduleType": "entry",      /*模块类型*/
      "installationFree": false
    },
    "abilities": [    /*HAP中所有的 Ability 都需要在这里注册*/
      {
        "skills": [     /*这个Ability 接受Intent的特征 系统启动的页面*/
          {
            "entities": [   /*类型*/
              "entity.system.home"   /*这个是鸿蒙系定义好的  系统主页 可以自定义*/
            ],
            "actions": [  /*行为*/
              "action.system.home"   /*去app 主页的行为  可以自定义*/
            ]
          }
        ],
        "orientation": "unspecified",  /*横屏竖屏*/
       /* "unspecified",  跟随系统
        "landscape",  横屏
        "portrait",   竖屏
        "followRecent" 跟随上一个页面*/
        "name": "com.example.mydemo.MainAbility",   /*Ability名称*/
        "icon": "$media:icon",    /*应用图标*/
        "description": "$string:mainability_description", /*描述*/
        "label": "$string:entry_MainAbility",  /*显示的名称*/
        "type": "page",   /*Ability类型*/
        "launchType": "standard"    /*Ability启动模式*/
        /*"singleton",   可以有多个实例
        "standard",       只有一个实例
        "singleMissio*/"
      }
    ]
}

开发完成 了解一下 打包的APP

  1. HAP的分类
    HAP可分为 entry 和feature 两种模块类型:
    1). entry: 应用的主模块。
    一个APP中,对于同一设备类型必须有且只有一个entry 类型的HAP,可以独立安装运行。
    2). feature: 应用的动态特性模块
    一个app 可以包含零个或多个 feature 类型的HAP

  2. HAP 的组成
    HAP是由代码Ability,资源 应用配置 第三方库 等,只由包含Ability的HAP才能独立运行
    1). Ability
    一个应用可以包含一个或多个 Ability 是应用所具备的能力
    Ability分为两种类型 FA(Feature Ability) 和 PA(Particle Ability)
    FA有UI界面,PA没有UI界面
    2). 库文件
    第三方代码 存放在libs目录。
    3). 资源文件
    资源文件(字符串 图片 音视频等)存放于resources 目录下
    4). 配置文件
    配置文件(config.json) 用于声明Ability,版本信息,以及应用所需权限等信息

  3. pack.info文件
    描述应用软件包中的每个HAP的属性,由IDE编译生成,应用市场根据该文件进行拆包和HAP的分类储存。
    HAP的具体属性包括:
    1)delivery-with-install:表示该HAP是否支持随应用安装
    2)name:HAP 文件名称
    3)module-type 模块类型 ,entry 或 feature
    4)device-type:表示支持该HAP运行的设备类型

上一篇: HarmonyOS-Java 二、创建布局文件

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,372评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,368评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,415评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,157评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,171评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,125评论 1 297
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,028评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,887评论 0 274
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,310评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,533评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,690评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,411评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,004评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,659评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,812评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,693评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,577评论 2 353