鴻蒙前端開發2-基本設定

月下云生發表於2024-06-09

1.AppScope>app.json5 中的icon和label設定,位置手機>設定>應用顯示的圖示和名稱。標籤值為字串資源的索引,不能直接寫名字,應該在字串資源中設定

2.entry>configuration.json5(Ohos工程師圖),.entry>src>main>module.json5(Project工程師圖)中的icon和label設定的是應用安裝後在桌面顯示的圖示和名稱

(開發工具DevEco Studio,檢視切換)

3.AppScope>app.json5

官網:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V2/app-configuration-file-0000001427584584-V2

{
"app": {
"bundleName": "com.winwang.harmonyOpenEye", // 應用的Bundle名稱,標識唯一性,建議反域名形式(com+廠商/個人+應用名)(7-127位元組),必需
"description": "開發測試", // 應用描述,最大255位元組
"vendor": "example", // 應用程式開發商描述,最大255位元組
"versionCode": 1000000, // 應用版本,非負整數,比較版本高低,數值越大版本越高,必需
"versionName": "1.0.0", // 版本號,推薦四段式‘A.B.C.D’,主版本號+次版本號+特性版本號+修訂版本號,A/B/C:取值0-99,D:取值0-999,最大127位元組
"minCompatibleVersionCode": 1000000, // 標識應用能夠相容的最低版本號,用於跨裝置相容性判斷,缺少使為versionCode的值
"icon": "$media:app_icon", // 對應應用的顯示圖示,必需
"label": "$string:app_name" // 應用名,必需
}
}

4.entry>configuration.json5(Ohos工程師圖),.entry>src>main>module.json5(Project工程師圖)配置

官網:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V2/module-configuration-file-0000001427744540-V2#ZH-CN_TOPIC_0000001573929365__extensionabilities%E6%A0%87%E7%AD%BE

{
  "module": {
    "name": "entry", // module的名稱,英文字元,最大31個字元,必需
    "type": "entry", // entry-應用主模組,feature-應用的動態特性模組,har-靜態共享模組,shared-動態共享模組,必需
    "srcEntry": "", // 標識當前Module所對應的程式碼路徑,最大127位元組
    "description": "$string:module_desc", // 描述module資訊,字串型別或者字串索引,最大255
    "mainElement": "EntryAbility", // 標識當前Module的入口UIAbility名稱或者ExtensionAbility名稱,最大255位元組
    "deviceTypes": [ // 標識當前Module可以執行在哪類裝置上,標籤值採用字串陣列的表示
      "phone"
    ],
    "deliveryWithInstall": true, // 標識當前Module是否在使用者主動安裝的時候安裝,表示該Module對應的HAP是否跟隨應用一起安裝,true/false,必需
    "installationFree": false, // 標識當前Module是否支援免安裝特性,true/false,必需
    "pages": "$profile:main_pages", // 標識當前Module的profile資源,用於列舉每個頁面資訊,最大255位元組,必需
    "abilities": [ // 標識當前Module中UIAbility的配置資訊,標籤值為陣列型別,只對當前UIAbility生效
      {
        "name": "EntryAbility", // 當前UIAbility元件的名稱,在整個應用唯一,英文字串,最大127位元組,必需
        "srcEntry": "./ets/entryability/EntryAbility.ts", // 入口UIAbility的程式碼路徑,最大127位元組,必需
        "launchType": "singleton", // 當前UIAbility元件的啟動模式,multion-每次啟動新的例項,singleton-單例模式,僅第一次啟動建立例項,specified-指定例項模式,執行時由開發者決定是否建立新例項
        "description": "$string:ability_desc", // 當前UIAbility元件的描述資訊,資源索引,支援多語言,最大255位元組
        "icon": "$media:ic_launcher", // 當前UIAbility元件的圖示,若UIAbility配置為MainElement,則必需
        "label": "$string:ability_label", // 當前UIAbility元件對使用者的名稱,資源索引,支援多語言,若UIAbility被配置為當前Module的MainElement,則應用內唯一且必需
        "startWindowIcon": "$media:ic_launcher", // 標識當前UIAbility元件啟動頁面圖示資原始檔的索引,最大255位元組,必需
        "startWindowBackground": "$color:start_window_background", // 當前UIAbility元件啟動頁面背景顏色資原始檔的索引,最大255位元組,必需
        "exported": true, // 當前UIAbility元件是否可以被其他應用呼叫,true/false
        "skills": [ // 能夠接收的Want的值
          {
            "entities": [ // Action值的集合,取值通常為系統預定義的action值,也允許自定義,字串陣列
              "entity.system.home"
            ],
            "actions": [ // Entity值的集合,字串陣列
              "action.system.home"
            ],
            "uris": [{
              "scheme":"http",
              "host":"example.com",
              "port":"80",
              "path":"path",
              "type": "text/*"
            }] // 與Want中URI(Uniform Resource Identifier)相匹配的集合,物件陣列
          }
        ]
      }
    ],
    "requestPermissions":[ // 標識當前應用執行時需向系統申請的許可權集合
      {
        "name" : "ohos.permission.INTERNET", // 填寫需要使用的許可權名稱,自定義,必需
        "reason": "$string:internet_reason_desc", // 描述申請許可權的原因,申請user_grant許可權時必需
        "usedScene": { // 描述許可權使用的場景由abilities和when組成。其中abilities可以配置為多個UIAbility元件,when表示呼叫時機,申請user_grant許可權時必需
          "abilities": [
            "FormAbility"
          ],
          "when":"inuse"
        }
      }
    ]
  }
}

 

相關文章