国产睡熟迷奷白丝护士系列精品,中文色字幕网站,免费h网站在线观看的,亚洲开心激情在线

      <sup id="hb9fh"></sup>
          1. 千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機構(gòu)

            手機站
            千鋒教育

            千鋒學習站 | 隨時隨地免費學

            千鋒教育

            掃一掃進入千鋒手機站

            領(lǐng)取全套視頻
            千鋒教育

            關(guān)注千鋒學習站小程序
            隨時隨地免費學習課程

            當前位置:首頁  >  技術(shù)干貨  > 千鋒教育鴻蒙(HarmonyOS)開發(fā)教程:module.json5配置文件

            千鋒教育鴻蒙(HarmonyOS)開發(fā)教程:module.json5配置文件

            來源:千鋒教育
            發(fā)布人:千鋒
            時間: 2023-11-18 15:53:22 1700294002

            先通過一個示例,整體認識一下module.json5配置文件。

            {
            "module": {
            "name": "entry",
            "type": "entry",
            "description": "$string:module_desc",
            "mainElement": "EntryAbility",
            "deviceTypes": [
            "default",
            "tablet"
            ],
            "deliveryWithInstall": true,
            "installationFree": false,
            "pages": "$profile:main_pages",
            "virtualMachine": "ark",
            "metadata": [
            {
            "name": "string",
            "value": "string",
            "resource": "$profile:distributionFilter_config"
            }
            ],
            "abilities": [
            {
            "name": "EntryAbility",
            "srcEntry": "./ets/entryability/EntryAbility.ts",
            "description": "$string:EntryAbility_desc",
            "icon": "$media:icon",
            "label": "$string:EntryAbility_label",
            "startWindowIcon": "$media:icon",
            "startWindowBackground": "$color:start_window_background",
            "exported": true,
            "skills": [
            {
            "entities": [
            "entity.system.home"
            ],
            "actions": [
            "ohos.want.action.home"
            ]
            }
            ]
            }
            ],
            "requestPermissions": [
            {
            "name": "ohos.abilitydemo.permission.PROVIDER",
            "reason": "$string:reason",
            "usedScene": {
            "abilities": [
            "FormAbility"
            ],
            "when": "inuse"
            }
            }
            ]
            }
            }

             module.json5配置文件包含以下標簽。

            表1 module.json5配置文件配置標簽說明

            QQ截圖20231118153921

            deviceTypes標簽

            表2 deviceType標簽配置說明

            微信截圖_20231118153956

            deviceTypes示例:

            {
            "module": {
            "name": "myHapName",
            "type": "feature",
            "deviceTypes" : [
            "tablet"
            ]
            }
            }

             pages標簽

            該標簽是一個profile文件資源,用于指定描述頁面信息的配置文件。

            {
            "module": {
            // ...
            "pages": "$profile:main_pages", // 通過profile下的資源文件配置
            }
            }

             在開發(fā)視圖的resources/base/profile下面定義配置文件main_pages.json,其中文件名(main_pages)可自定義,需要和前文中pages標簽指定的信息對應(yīng),配置文件中列舉了當前應(yīng)用組件中的頁面信息。

            表3 pages配置文件標簽說明

            微信截圖_20231118154128

            {
            "src": [
            "pages/index/mainPage",
            "pages/second/payment",
            "pages/third/shopping_cart",
            "pages/four/owner"
            ]
            }

             metadata標簽

            該標簽標識HAP的自定義元信息,標簽值為數(shù)組類型,包含name,value,resource三個子標簽。

            表5 metadata標簽說明

            微信截圖_20231118154214

            {
            "module": {
            "metadata": [{
            "name": "module_metadata",
            "value": "a test demo for module metadata",
            "resource": "$profile:shortcuts_config",
            }],

            "abilities": [{
            "metadata": [{
            "name": "ability_metadata",
            "value": "a test demo for ability",
            "resource": "$profile:config_file"
            },
            {
            "name": "ability_metadata_2",
            "value": "a string test",
            "resource": "$profile:config_file"
            }],
            }],

            "extensionAbilities": [{
            "metadata": [{
            "name": "extensionAbility_metadata",
            "value": "a test for extensionAbility",
            "resource": "$profile:config_file"
            },
            {
            "name": "extensionAbility_metadata_2",
            "value": "a string test",
            "resource": "$profile:config_file"
            }],
            }]
            }
            }

             abilities標簽

            abilities標簽描述UIAbility組件的配置信息,標簽值為數(shù)組類型,該標簽下的配置只對當前UIAbility生效。

            表6 abilities標簽說明

            QQ截圖20231118154350

            abilities示例:

            {
            "abilities": [{
            "name": "EntryAbility",
            "srcEntry": "./ets/entryability/EntryAbility.ts",
            "launchType":"singleton",
            "description": "$string:description_main_ability",
            "icon": "$media:icon",
            "label": "Login",
            "permissions": [],
            "metadata": [],
            "exported": true,
            "continuable": true,
            "skills": [{
            "actions": ["ohos.want.action.home"],
            "entities": ["entity.system.home"],
            "uris": []
            }],
            "backgroundModes": [
            "dataTransfer",
            "audioPlayback",
            "audioRecording",
            "location",
            "bluetoothInteraction",
            "multiDeviceConnection",
            "wifiInteraction",
            "voip",
            "taskKeeping"
            ],
            "startWindowIcon": "$media:icon",
            "startWindowBackground": "$color:red",
            "removeMissionAfterTerminate": true,
            "orientation": " ",
            "supportWindowMode": ["fullscreen", "split", "floating"],
            "maxWindowRatio": 3.5,
            "minWindowRatio": 0.5,
            "maxWindowWidth": 2560,
            "minWindowWidth": 1400,
            "maxWindowHeight": 300,
            "minWindowHeight": 200,
            "excludeFromMissions": false
            }]
            }

             skills標簽

            該標簽標識UIAbility組件或者ExtensionAbility組件能夠接收的Want的特征。

            微信截圖_20231118154448

            微信截圖_20231118154541

            skills示例:

            {
            "abilities": [
            {
            "skills": [
            {
            "actions": [
            "ohos.want.action.home"
            ],
            "entities": [
            "entity.system.home"
            ],
            "uris": [
            {
            "scheme":"http",
            "host":"example.com",
            "port":"80",
            "path":"path",
            "type": "text/*"
            }
            ]
            }
            ]
            }
            ]
            }

             extensionAbilities標簽

            描述extensionAbilities的配置信息,標簽值為數(shù)組類型,該標簽下的配置只對當前extensionAbilities生效。

            表9 extensionAbilities標簽說明

            QQ截圖20231118154649

            extensionAbilities示例:

            {
            "extensionAbilities": [
            {
            "name": "FormName",
            "srcEntry": "./form/MyForm.ts",
            "icon": "$media:icon",
            "label" : "$string:extension_name",
            "description": "$string:form_description",
            "type": "form",
            "permissions": ["ohos.abilitydemo.permission.PROVIDER"],
            "readPermission": "",
            "writePermission": "",
            "exported": true,
            "uri":"scheme://authority/path/query",
            "skills": [{
            "actions": [],
            "entities": [],
            "uris": []
            }],
            "metadata": [
            {
            "name": "ohos.extension.form",
            "resource": "$profile:form_config",
            }
            ]
            }
            ]
            }

             requestPermissions標簽

            該標簽標識應(yīng)用運行時需向系統(tǒng)申請的權(quán)限集合。

            說明

            在requestPermissions標簽中配置的權(quán)限項將在應(yīng)用級別生效,即該權(quán)限適用于整個應(yīng)用程序。

            如果應(yīng)用需要訂閱自己發(fā)布的事件,而且應(yīng)用在extensionAbilities標簽中的permissions字段中設(shè)置了訪問該應(yīng)用所需要的權(quán)限,那么應(yīng)用也需要在requestPermissions標簽中注冊相關(guān)權(quán)限才能收到該事件。

            微信截圖_20231118154746

            requestPermissions示例:

            {
            "module" : {
            "requestPermissions": [
            {
            "name": "ohos.abilitydemo.permission.PROVIDER",
            "reason": "$string:reason",
            "usedScene": {
            "abilities": [
            "EntryFormAbility"
            ],
            "when": "inuse"
            }
            }
            ]
            }
            }

             shortcuts標簽

            shortcuts標識應(yīng)用的快捷方式信息。標簽值為數(shù)組,最多可以配置四個快捷方式。其包含四個子標簽shortcutId、label、icon、wants。

            metadata中指定shortcut信息,其中:

            name:指定shortcuts的名稱。使用ohos.ability.shortcuts作為shortcuts信息的標識。

            resource:指定shortcuts信息的資源位置。

            表11 shortcuts標簽說明

            微信截圖_20231118154831

            在/resource/base/profile/目錄下配置shortcuts_config.json配置文件。

            {
            "shortcuts": [
            {
            "shortcutId": "id_test1",
            "label": "$string:shortcut",
            "icon": "$media:aa_icon",
            "wants": [
            {
            "bundleName": "com.ohos.hello",
            "abilityName": "EntryAbility"
            }
            ]
            }
            ]
            }

             在module.json5配置文件的abilities標簽中,針對需要添加快捷方式的UIAbility進行配置metadata標簽,使shortcut配置文件對該UIAbility生效。

            {
            "module": {
            // ...
            "abilities": [
            {
            "name": "EntryAbility",
            "srcEntry": "./ets/entryability/EntryAbility.ts",
            // ...
            "skills": [
            {
            "entities": [
            "entity.system.home"
            ],
            "actions": [
            "ohos.want.action.home"
            ]
            }
            ],
            "metadata": [
            {
            "name": "ohos.ability.shortcuts",
            "resource": "$profile:shortcuts_config"
            }
            ]
            }
            ]
            }
            }

             distributionFilter標簽

            該標簽下的子標簽均為可選字段,用于定義HAP對應(yīng)的細分設(shè)備規(guī)格的分發(fā)策略,以便應(yīng)用市場在云端分發(fā)HAP時做精準匹配。該標簽需要配置在/resource/profile資源目錄下;在進行分發(fā)時,通過deviceType與下表屬性的匹配關(guān)系,唯一確定一個用于分發(fā)到設(shè)備的HAP。

            表12 distributionFilter標簽說明

            微信截圖_20231118154940

            微信截圖_20231118155007

            微信截圖_20231118155024

            微信截圖_20231118155042

            在開發(fā)視圖的resources/base/profile下面定義配置文件distro_filter_config.json,文件名可以自定義。

            {
            "distributionFilter": {
            "screenShape": {
            "policy": "include",
            "value": [
            "circle",
            "rect"
            ]
            },
            "screenWindow": {
            "policy": "include",
            "value": [
            "454*454",
            "466*466"
            ]
            },
            "screenDensity": {
            "policy": "exclude",
            "value": [
            "ldpi",
            "xldpi"
            ]
            },
            "countryCode": { // 支持中國和香港地區(qū)分發(fā)
            "policy": "include",
            "value": [
            "CN",
            "HK"
            ]
            }
            }
            }

             在module.json5配置文件的module標簽中定義metadata信息。

            {
            "module": {
            // ...
            "metadata": [
            {
            "name": "ohos.module.distro",
            "resource": "$profile:distro_filter_config",
            }
            ]
            }
            }

             testRunner標簽

            此標簽用于支持對測試框架的配置。

            表17 testRunner標簽說明

            微信截圖_20231118155151

            testRunner標簽示例:

            {
            "module": {
            // ...
            "testRunner": {
            "name": "myTestRunnerName",
            "srcPath": "etc/test/TestRunner.ts"
            }
            }
            }

             

            聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
            10年以上業(yè)內(nèi)強師集結(jié),手把手帶你蛻變精英
            請您保持通訊暢通,專屬學習老師24小時內(nèi)將與您1V1溝通
            免費領(lǐng)取
            今日已有369人領(lǐng)取成功
            劉同學 138****2860 剛剛成功領(lǐng)取
            王同學 131****2015 剛剛成功領(lǐng)取
            張同學 133****4652 剛剛成功領(lǐng)取
            李同學 135****8607 剛剛成功領(lǐng)取
            楊同學 132****5667 剛剛成功領(lǐng)取
            岳同學 134****6652 剛剛成功領(lǐng)取
            梁同學 157****2950 剛剛成功領(lǐng)取
            劉同學 189****1015 剛剛成功領(lǐng)取
            張同學 155****4678 剛剛成功領(lǐng)取
            鄒同學 139****2907 剛剛成功領(lǐng)取
            董同學 138****2867 剛剛成功領(lǐng)取
            周同學 136****3602 剛剛成功領(lǐng)取
            相關(guān)推薦HOT
            什么是云管理平臺

            什么是云管理平臺?云管理平臺(Cloud Management Platform,CMP)是由Gartner提出的企業(yè)云戰(zhàn)略中的一種產(chǎn)品形態(tài),是提供對公有云、私有云和混合...詳情>>

            2023-12-04 11:10:46
            Docker的核心底層技術(shù)有哪些

            Docker的核心底層技術(shù)有哪些?Docker可以運行在64位Linux發(fā)行版以及蘋果和微軟系統(tǒng)上,但后兩者只能使用虛擬機作為宿主機。所有的可運行的容器...詳情>>

            2023-12-04 06:27:25
            什么是包過濾技術(shù)

            什么是包過濾技術(shù)?包過濾(Packet Filtering)技術(shù)是根據(jù)流經(jīng)防火墻的數(shù)據(jù)包的特征,依據(jù)預先定義好的規(guī)則,決定是否允許數(shù)據(jù)包通過的技術(shù)。它對...詳情>>

            2023-12-04 03:40:45
            什么是網(wǎng)絡(luò)安全掃描技術(shù)

            什么是網(wǎng)絡(luò)安全掃描技術(shù)?物聯(lián)網(wǎng)的網(wǎng)絡(luò)安全掃描技術(shù)是網(wǎng)絡(luò)安全領(lǐng)域的重要技術(shù)之一,是一種遠程檢測目標網(wǎng)絡(luò)或本地主機安全性脆弱點的技術(shù),是為...詳情>>

            2023-12-04 03:07:25
            IaaS的優(yōu)勢

            IaaS的優(yōu)勢。與在本地計算中心部署資源相比,IaaS具有強大的敏捷性和高度的可擴展性。企業(yè)在內(nèi)部部署一個新的虛擬機往往需要幾天甚至一周以上的...詳情>>

            2023-12-04 02:17:25