0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

鴻蒙開發(fā):【Stage模型應(yīng)用配置文件】

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-06-15 09:15 ? 次閱讀

Stage模型應(yīng)用配置文件

應(yīng)用配置文件中包含應(yīng)用配置信息、應(yīng)用組件信息、權(quán)限信息、開發(fā)者自定義信息等,這些信息在編譯構(gòu)建、分發(fā)和運行解決分別提供給編譯工具、應(yīng)用市場和操作系統(tǒng)使用。

在基于Stage模型開發(fā)的應(yīng)用項目代碼下,都存在app.json5(一個)及module.json5(一個或多個)兩種配置文件,常用配置項請參見[應(yīng)用/組件級配置]。

應(yīng)用/組件級配置

在開發(fā)應(yīng)用時,需要配置應(yīng)用的一些標(biāo)簽,例如應(yīng)用的包名、圖標(biāo)等標(biāo)識特征的屬性。本文描述了在開發(fā)應(yīng)用需要配置的一些關(guān)鍵標(biāo)簽。

應(yīng)用包名配置

應(yīng)用需要在工程的AppScope目錄下的[app.json5配置文件]中配置bundleName標(biāo)簽,該標(biāo)簽用于標(biāo)識應(yīng)用的唯一性。推薦采用反域名形式命名(如com.example.demo,建議第一級為域名后綴com,第二級為廠商/個人名,第三級為應(yīng)用名,也可以多級)。

圖標(biāo)和標(biāo)簽配置

圖標(biāo)和標(biāo)簽通常一起配置,可以分為應(yīng)用圖標(biāo)、應(yīng)用標(biāo)簽和入口圖標(biāo)、入口標(biāo)簽,分別對應(yīng)[app.json5配置文件]和[module.json5配置文件]中的icon和label標(biāo)簽。

應(yīng)用圖標(biāo)和標(biāo)簽通常用于標(biāo)識整個應(yīng)用,可以在標(biāo)識應(yīng)用的界面使用該類型圖標(biāo)和標(biāo)簽。比如:

  • 設(shè)置應(yīng)用中,需要展示應(yīng)用列表時
  • 在隱私管理中,需要展示應(yīng)用申請的權(quán)限時
  • 在狀態(tài)欄顯示通知消息時

入口圖標(biāo)和標(biāo)簽是應(yīng)用安裝完成后可以在設(shè)備桌面上顯示出來的,如下圖所示。入口圖標(biāo)是以[UIAbility]為粒度,支持同一個應(yīng)用存在多個入口圖標(biāo)和入口標(biāo)簽,點擊后進(jìn)入對應(yīng)的UIAbility界面。比如:

  • 桌面上需要顯示圖標(biāo)時
  • 最近任務(wù)列表中顯示時

圖1 圖標(biāo)和標(biāo)簽

application-component-configuration-stage

應(yīng)用圖標(biāo)和標(biāo)簽配置

應(yīng)用圖標(biāo)需要在工程的AppScope目錄下的[app.json5配置文件]中配置icon標(biāo)簽。應(yīng)用圖標(biāo)需配置為圖片的資源索引,配置完成后,該圖片即為應(yīng)用的圖標(biāo)。

應(yīng)用標(biāo)簽需要在工程的AppScope模塊下的[app.json5配置文件]中配置label標(biāo)簽。標(biāo)識應(yīng)用對用戶顯示的名稱,需要配置為字符串資源的索引。

{
  "app": {
    "icon": "$media:app_icon",
    "label": "$string:app_name"
    ...
  }
}

入口圖標(biāo)和標(biāo)簽配置

入口圖標(biāo)和標(biāo)簽配置方式

Stage模型支持對組件配置入口圖標(biāo)和入口標(biāo)簽。入口圖標(biāo)和入口標(biāo)簽會顯示在桌面上。

入口圖標(biāo)需要在[module.json5配置文件]中配置,在abilities標(biāo)簽下面有icon標(biāo)簽。例如希望在桌面上顯示該UIAbility的圖標(biāo),則需要在skills標(biāo)簽下面的entities中添加"entity.system.home"、actions中添加"ohos.want.action.home"。同一個應(yīng)用有多個UIAbility配置上述字段時,桌面上會顯示出多個圖標(biāo),分別對應(yīng)各自的UIAbility。

{
  "module": {
    ...
    "abilities": [
      {
        "icon": "$media:icon",
        "label": "$string:EntryAbility_label",
        "skills": [
          {
            "entities": [
              "entity.system.home"
            ],
            "actions": [
              "ohos.want.action.home"
            ]
          }
        ],
      }
    ]
  }
}

入口圖標(biāo)和標(biāo)簽管控規(guī)則

系統(tǒng)對無圖標(biāo)應(yīng)用實施嚴(yán)格管控,防止一些惡意應(yīng)用故意配置無入口圖標(biāo),導(dǎo)致用戶找不到軟件所在的位置,無法操作卸載應(yīng)用,在一定程度上保證用戶終端設(shè)備的安全。

如果應(yīng)用確需隱藏入口圖標(biāo),需要配置AllowAppDesktopIconHide應(yīng)用特權(quán)。詳細(xì)的入口圖標(biāo)及入口標(biāo)簽的顯示規(guī)則如下。

  • HAP中包含UIAbility

    • 在module.json5配置文件的abilities標(biāo)簽中設(shè)置了入口圖標(biāo)
      • 該應(yīng)用沒有隱藏圖標(biāo)的特權(quán)
        • 系統(tǒng)將使用該UIAbility配置的icon作為入口圖標(biāo),并顯示在桌面上。用戶點擊該圖標(biāo),頁面跳轉(zhuǎn)到該UIAbility首頁。
        • 系統(tǒng)將使用該UIAbility配置的label作為入口標(biāo)簽,并顯示在桌面上,如果沒有配置label,系統(tǒng)將使用app.json5中的label作為入口標(biāo)簽,并顯示在桌面上。
      • 該應(yīng)用具有隱藏圖標(biāo)的特權(quán)
        • 桌面應(yīng)用查詢時不返回應(yīng)用信息,不會在桌面上顯示對應(yīng)的入口圖標(biāo)和標(biāo)簽。
    • 在module.json5配置文件的abilities標(biāo)簽中未設(shè)置入口圖標(biāo)
      • 該應(yīng)用沒有隱藏圖標(biāo)的特權(quán)
        • 系統(tǒng)將使用app.json5中的icon作為入口圖標(biāo),并顯示在桌面上。用戶點擊該圖標(biāo),頁面跳轉(zhuǎn)到應(yīng)用管理中對應(yīng)的應(yīng)用詳情頁面,如下圖所示。
        • 系統(tǒng)將使用app.json5中的label作為入口標(biāo)簽,并顯示在桌面上。
      • 該應(yīng)用具有隱藏圖標(biāo)的特權(quán)
        • 桌面應(yīng)用查詢時不返回應(yīng)用信息,不會在桌面上顯示對應(yīng)的入口圖標(biāo)和標(biāo)簽。
  • HAP中不包含UIAbility

    • 該應(yīng)用沒有隱藏圖標(biāo)的特權(quán)
      • 系統(tǒng)將使用app.json5中的icon作為入口圖標(biāo),并顯示在桌面上。用戶點擊該圖標(biāo),頁面跳轉(zhuǎn)到應(yīng)用管理中對應(yīng)的應(yīng)用詳情頁面,如下圖所示。
      • 系統(tǒng)將使用app.json5中的label作為入口標(biāo)簽,并顯示在桌面上。
    • 該應(yīng)用具有隱藏圖標(biāo)的特權(quán)
      • 桌面應(yīng)用查詢時不返回應(yīng)用信息,不會在桌面上顯示對應(yīng)的入口圖標(biāo)和標(biāo)簽。
      • 開發(fā)前請熟悉鴻蒙開發(fā)指導(dǎo)文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]點擊或者復(fù)制轉(zhuǎn)到。

    鴻蒙文檔.png
    圖2 應(yīng)用的詳情頁示意圖
    應(yīng)用的詳情頁例圖

應(yīng)用版本聲明配置

應(yīng)用版本聲明需要在工程的AppScope目錄下的[app.json5配置文件]中配置versionCode標(biāo)簽和versionName標(biāo)簽。versionCode用于標(biāo)識應(yīng)用的版本號,該標(biāo)簽值為32位非負(fù)整數(shù)。此數(shù)字僅用于確定某個版本是否比另一個版本更新,數(shù)值越大表示版本越高。versionName標(biāo)簽標(biāo)識版本號的文字描述。

Module支持的設(shè)備類型配置

Module支持的設(shè)備類型需要在[module.json5配置文件]中配置[deviceTypes標(biāo)簽],如果deviceTypes標(biāo)簽中添加了某種設(shè)備,則表明當(dāng)前的Module支持在該設(shè)備上運行。

Module權(quán)限配置

Module訪問系統(tǒng)或其他應(yīng)用受保護(hù)部分所需的權(quán)限信息需要在[module.json5配置文件]中配置[requestPermissions標(biāo)簽]。該標(biāo)簽用于聲明需要申請權(quán)限的名稱、申請權(quán)限的原因以及權(quán)限使用的場景。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 文件
    +關(guān)注

    關(guān)注

    1

    文章

    551

    瀏覽量

    24559
  • 模型
    +關(guān)注

    關(guān)注

    1

    文章

    3030

    瀏覽量

    48346
  • 鴻蒙
    +關(guān)注

    關(guān)注

    56

    文章

    2267

    瀏覽量

    42481
收藏 人收藏

    評論

    相關(guān)推薦

    鴻蒙Stage模型--概述

    Stage模型:HarmonyOS 3.1 Develper Preview版本開始新增的模型,是目前主推且會長期演進(jìn)的模型。在該模型中,由
    的頭像 發(fā)表于 01-29 13:59 ?1069次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>Stage</b><b class='flag-5'>模型</b>--概述

    鴻蒙OS開發(fā)案例:【Stage模型卡片】

    本示例展示了Stage模型卡片提供方的創(chuàng)建與使用。
    的頭像 發(fā)表于 04-09 17:13 ?828次閱讀
    <b class='flag-5'>鴻蒙</b>OS<b class='flag-5'>開發(fā)</b>案例:【<b class='flag-5'>Stage</b><b class='flag-5'>模型</b>卡片】

    Stage模型深入解讀

    基于Stage模型開發(fā)應(yīng)用,下面將會從應(yīng)用組件、進(jìn)程模型、線程模型、任務(wù)模型、后臺運行機制、應(yīng)
    發(fā)表于 03-15 10:32

    鴻蒙元服務(wù)萬能卡片開發(fā)-stage模型和fa模型的卡片區(qū)別

    。 module.json5:Stage模型模塊配置文件。主要包含HAP包的配置信息、應(yīng)用/服務(wù)在具體設(shè)備上的配置信息以及應(yīng)用/服務(wù)的全局
    發(fā)表于 05-22 14:20

    建議收藏!Harmony應(yīng)用配置文件概述(Stage模型

    一. 應(yīng)用配置文件 每個應(yīng)用項目必須在項目的代碼目錄下加入配置文件,這些配置文件會向編譯工具、操作系統(tǒng)和應(yīng)用市場提供應(yīng)用的基本信息。 在基于Stage
    發(fā)表于 09-11 18:20

    ICD配置文件的詳細(xì)介紹和配置內(nèi)容的詳細(xì)概述

    配置文件配置文件是利用SCL語言描述變電站設(shè)備對象模型后生成的文件,用于在不同廠商的配置工具之間交換配置
    的頭像 發(fā)表于 06-02 11:16 ?1.7w次閱讀
    ICD<b class='flag-5'>配置文件</b>的詳細(xì)介紹和<b class='flag-5'>配置</b>內(nèi)容的詳細(xì)概述

    labview讀寫配置文件實例分享

    labview讀寫配置文件實例分享
    發(fā)表于 11-01 16:05 ?45次下載

    KT142C語音芯片配置文件總是不起作用?配置文件的問題集中歸納

    KT142C語音芯片配置文件總是不起作用?配置文件的問題集中歸納
    的頭像 發(fā)表于 10-20 15:04 ?444次閱讀
    KT142C語音芯片<b class='flag-5'>配置文件</b>總是不起作用?<b class='flag-5'>配置文件</b>的問題集中歸納

    springboot的全局配置文件有幾種

    Spring Boot是一種快速開發(fā)框架,其通過提供配置文件來實現(xiàn)對應(yīng)用程序的配置。全局配置文件在Spring Boot中起著非常重要的作用,可以用于
    的頭像 發(fā)表于 12-03 15:28 ?1319次閱讀

    php的配置文件是什么

    PHP的配置文件是一種用于配置PHP解釋器的文本文件。它包含了一系列的指令和選項,用于影響PHP的行為和性能。通過修改配置文件,可以改變PHP解釋器的默認(rèn)行為,從而滿足不同的需求。 在
    的頭像 發(fā)表于 12-04 15:55 ?1343次閱讀

    鴻蒙OS元服務(wù)開發(fā):【(Stage模型)設(shè)置應(yīng)用主窗口】

    Stage模型下,應(yīng)用主窗口由UIAbility創(chuàng)建并維護(hù)生命周期。在UIAbility的onWindowStageCreate回調(diào)中,通過WindowStage獲取應(yīng)用主窗口,即可對其進(jìn)行屬性設(shè)置等操作。還可以在應(yīng)用配置文件
    的頭像 發(fā)表于 04-03 18:28 ?1086次閱讀
    <b class='flag-5'>鴻蒙</b>OS元服務(wù)<b class='flag-5'>開發(fā)</b>:【(<b class='flag-5'>Stage</b><b class='flag-5'>模型</b>)設(shè)置應(yīng)用主窗口】

    鴻蒙開發(fā):任務(wù)(Mission)與啟動模式

    配置;在Stage模型下,通過[module.json5配置文件]中的“l(fā)aunchType”屬性配置。
    的頭像 發(fā)表于 06-14 11:31 ?288次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b>:任務(wù)(Mission)與啟動模式

    鴻蒙開發(fā)Ability Kit程序框架服務(wù):FA模型應(yīng)用配置文件

    應(yīng)用配置文件中包含應(yīng)用配置信息、應(yīng)用組件信息、權(quán)限信息、開發(fā)者自定義信息等,這些信息在編譯構(gòu)建、分發(fā)和運行解決分別提供給編譯工具、應(yīng)用市場和操作系統(tǒng)使用。
    的頭像 發(fā)表于 06-24 14:49 ?184次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b>Ability Kit程序框架服務(wù):FA<b class='flag-5'>模型</b>應(yīng)用<b class='flag-5'>配置文件</b>

    鴻蒙開發(fā)Ability Kit程序框架服務(wù):FA模型切換Stage模型指導(dǎo) 配置文件差異

    、deviceConfig和module三部分組成,app標(biāo)簽用于配置應(yīng)用級別的屬性,如果一個應(yīng)用有多個Module,需要由開發(fā)者保證各個config.json文件中app標(biāo)簽配置的一
    的頭像 發(fā)表于 06-27 09:50 ?298次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b>Ability Kit程序框架服務(wù):FA<b class='flag-5'>模型</b>切換<b class='flag-5'>Stage</b><b class='flag-5'>模型</b>指導(dǎo) <b class='flag-5'>配置文件</b>差異

    鴻蒙開發(fā)Ability Kit程序框架服務(wù):FA模型切換Stage模型指導(dǎo) module的切換

    從FA模型切換到Stage模型時,開發(fā)者需要將config.json文件module標(biāo)簽下的配置
    的頭像 發(fā)表于 06-27 14:16 ?292次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b>Ability Kit程序框架服務(wù):FA<b class='flag-5'>模型</b>切換<b class='flag-5'>Stage</b><b class='flag-5'>模型</b>指導(dǎo) module的切換