哈哈哈哈哈操欧洲电影,久草网在线,亚洲久久熟女熟妇视频,麻豆精品色,久久福利在线视频,日韩中文字幕的,淫乱毛视频一区,亚洲成人一二三,中文人妻日韩精品电影

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

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

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

【技術(shù)視界】DevEco Hvigor高效編譯,構(gòu)建過(guò)程新秘籍

HarmonyOS開發(fā)者 ? 來(lái)源:未知 ? 2023-09-26 12:10 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

# 技術(shù)視界# 【技術(shù)視界】欄目為開發(fā)者提供華為研發(fā)專家對(duì)于HarmonyOS關(guān)鍵技術(shù)的專業(yè)解讀,從不同角度、不同方面幫助開發(fā)者更好更快地掌握HarmonyOS相關(guān)開發(fā)知識(shí)。本期文章為大家?guī)?lái)的是華為終端BG編譯構(gòu)建技術(shù)專家的分享,希望能為您的開發(fā)之路帶來(lái)啟發(fā)~ 作者:Lewei,華為終端BG編譯構(gòu)建技術(shù)專家

DevEcoHvigor是使用TypeScript語(yǔ)言開發(fā)的全新輕量化的任務(wù)調(diào)度工具,針對(duì)HarmonyOS應(yīng)用提供了一系列編譯構(gòu)建任務(wù),支持將HarmonyOS應(yīng)用編譯構(gòu)建出對(duì)應(yīng)的產(chǎn)物包。作為一款HarmonyOS應(yīng)用編譯構(gòu)建任務(wù)流工具,DevEco Hvigor具備許多可以提升構(gòu)建效率的特性,支持多產(chǎn)物差異化構(gòu)建,也支持HarmonyOS應(yīng)用可分可合等特性??梢苑Q得上是"麻雀雖小五臟俱全"。

任務(wù)并行

DevEco Hvigor具備任務(wù)并行執(zhí)行的能力。對(duì)于C++編譯、ArkTS任務(wù)等耗時(shí)而沒有依賴關(guān)系的任務(wù),DevEcoHvigor可以使用不同的工作線程并行執(zhí)行,提高構(gòu)建效率。在多模塊的中大型工程中,將帶來(lái)可觀的耗時(shí)節(jié)省。

在DevEco Studio中開啟DevEco Hvigor的并行編譯構(gòu)建能力,需要在DevEcoStudio中打開Settings - Build, Execution,Development - Build Tools - Hvigor選項(xiàng),并勾選"Executetasks in parallel mode"。

wKgaomUroLKAAAToAAJmi5DP4MQ835.png

任務(wù)增量

HarmonyOS應(yīng)用的編譯構(gòu)建流程是由任務(wù)組成的。DevEco Hvigor具備任務(wù)增量執(zhí)行的能力,通過(guò)判斷任務(wù)的輸入與輸出,對(duì)于輸入與輸出沒有變化的任務(wù),可以復(fù)用上次構(gòu)建產(chǎn)物,從而跳過(guò)對(duì)應(yīng)的任務(wù),節(jié)省構(gòu)建時(shí)間。

在DevEco Studio中開啟DevEco Hvigor的任務(wù)增量能力,需要在DevEco Studio中打開Settings - Build,Execution, Development - Build Tools - Hvigor選項(xiàng),并勾選"Re-execute the task in incremental mode"。

wKgaomUroLKAZOopAAJnJ_ZuaEc105.png

常駐進(jìn)程

DevEco Hvigor提供了常駐進(jìn)程的功能機(jī)制。通過(guò)將進(jìn)程常駐在內(nèi)存中,一方面避免了Node進(jìn)程重復(fù)啟動(dòng)、減少了加載js文件的耗時(shí),另一方面可以復(fù)用構(gòu)建過(guò)程中的增量緩存、減少增量緩存信息的讀取與落盤操作。

另外,啟用DevEco Hvigor的常駐進(jìn)程功能,還可以支持預(yù)覽器的急速預(yù)覽功能和調(diào)試的Hot reload功能。DevEco Hvigor通過(guò)對(duì)代碼文件的監(jiān)聽,可以快速編譯代碼片段,急速更新預(yù)覽畫面和在設(shè)備上實(shí)時(shí)調(diào)試代碼修改。

在DevEco Studio中開啟DevEco Hvigor的常駐進(jìn)程構(gòu)建能力,需要在DevEcoStudio中打開Settings - Build, Execution,Development - Build Tools - Hvigor選項(xiàng),并勾選"Enablethe Daemon for tasks"。

wKgaomUroLOARh4yAAJm20YrJAM748.png

在命令行中,可以通過(guò)使用hvigorw命令行工具來(lái)查看常駐進(jìn)程狀態(tài)或關(guān)閉常駐進(jìn)程。

  • 在工程目錄下執(zhí)行./hvigorw --status-daemon,可以查看所有常駐進(jìn)程的狀態(tài)。

  • 在工程目錄下執(zhí)行./hvigorw --stop-daemon,可以關(guān)閉當(dāng)前工程對(duì)應(yīng)的常駐進(jìn)程。

  • 在工程目錄下執(zhí)行./hvigorw --stop-daemon-all,可以關(guān)閉當(dāng)前運(yùn)行的所有DevEco Hvigor常駐進(jìn)程。

構(gòu)建過(guò)程可視化

DevEco Hvigor會(huì)記錄每次構(gòu)建任務(wù)的日志信息,并通過(guò)可視化的圖表界面進(jìn)行展示。記錄的信息包括任務(wù)執(zhí)行的耗時(shí)與線程、ArkTS編譯中的各環(huán)節(jié)的細(xì)分耗時(shí)情況等。開發(fā)者可以藉此分析構(gòu)建過(guò)程中的耗時(shí)情況、進(jìn)而改善構(gòu)建效率。

在DevEco Studio中開啟DevEco Hvigor的常駐進(jìn)程構(gòu)建能力,需要在DevEcoStudio中打開Settings - Build, Execution,Development - Build Tools - Hvigor選項(xiàng),并勾選"Enablethe Daemon for tasks"。

wKgaomUroLOAMOMKAAJob4p0yIA793.png

后,可以點(diǎn)擊DevEco Studio下方的"Build Analyzer"標(biāo)簽頁(yè),查看構(gòu)建過(guò)程中的日志信息和耗時(shí)情況。

wKgaomUroLSAGOcPAAGMpv-VDh8943.png

差異化構(gòu)建打包

常情況下,應(yīng)用廠商會(huì)根據(jù)不同的部署環(huán)境、不同的目標(biāo)人群以及不同的運(yùn)行環(huán)境等,將同一個(gè)應(yīng)用定制為不同的版本。DevEcoHvigor支持差異化構(gòu)建打包,在構(gòu)建配置文件中將差異化部分顯示配置出來(lái),即可在編譯構(gòu)建過(guò)程中實(shí)現(xiàn)一個(gè)應(yīng)用構(gòu)建出不同的目標(biāo)產(chǎn)物版本,從而實(shí)現(xiàn)源代碼、資源文件等的高效復(fù)用。

通過(guò)配置Target,每個(gè)HAP包都可以定制功能和資源。在每個(gè)HAP模塊的build-profile.json5中,可以配置該模塊支持的Targets:

{
  "apiType": 'stageMode',
  "buildOption": {  
  },
  "targets": [  //定義不同的target
    {
      "name": "default",  //默認(rèn)target名稱default
      "runtimeOS": "HarmonyOS",
    },
    {
      "name": "free",  //免費(fèi)版target名稱
      "runtimeOS": "HarmonyOS"
    },
    {
      "name": "pay",  //付費(fèi)版target名稱
      "runtimeOS": "HarmonyOS",
    }
  ]
}

(左右滑動(dòng)查看更多)

在每個(gè)target中,可以定制其頁(yè)面源碼集、資源目錄、支持的設(shè)備類型等,比如當(dāng)你只希望某個(gè)hap對(duì)應(yīng)平板設(shè)備、而某個(gè)hap包對(duì)應(yīng)手機(jī)配置時(shí),可以如下配置:
{
  "apiType": 'stageMode',
  "buildOption": {
  },
  "targets": [
    {
      "name": "default",
      "runtimeOS": "HarmonyOS",
    },
    {
      "name": "phone",
      "runtimeOS": "HarmonyOS",
      "config": {
        "deviceType": [  //定義free支持的設(shè)備類型為phone
          "phone"
        ]
      }
    },
    {
      "name": "tablet",
      "runtimeOS": "HarmonyOS",
      "config": {
        "deviceType": [  //定義pay支持的設(shè)備類型為phone
          "tablet"
        ]
      }
    }
  ]
}
(左右滑動(dòng)查看更多通過(guò)配置將哪些HAP模塊的Target與Product綁定,讓定制化的HAP可以組合成APP包、發(fā)布上架應(yīng)用市場(chǎng)。在工程級(jí)的build-profile.json5中,先定義Product,并可以定制使用不同的bundleName和簽名材料:
"app": {
    "signingConfigs": [],
    "compileSdkVersion": 9,
    "compatibleSdkVersion": 9,
    "products": [
      {
        "name": "default",
        "bundleName": "com.example00.com",  //定義default的bundleName信息
        "signingConfig": "default" //定義default的簽名文件信息
      },
      {
        "name": "productA",
        "bundleName": "com.example01.com",  //定義productA的bundleName信息
        "signingConfig": "productA" //定義productA的簽名文件信息
      },
      {
        "name": "productB",
        "bundleName": "com.example02.com",  //定義productB的bundleName信息
        "signingConfig": "productB" //定義productB的簽名文件信息
      }
    ]
}
(左右滑動(dòng)查看更多再定義需要將哪些HAP模塊的Target與Product綁定,就可以在上架應(yīng)用商店時(shí)提供不同的APP包。
{
  "app": {
    "signingConfigs": [],
    "compileSdkVersion": 9,
    "compatibleSdkVersion": 9,
    "products": [
      {
        "name": "default",
        "bundleName": "com.example00.com",
        "signingConfig": "default"
      },
      {
        "name": "productA",
        "bundleName": "com.example01.com",
        "signingConfig": "productA"
      },
      {
        "name": "productB",
        "bundleName": "com.example02.com",
        "signingConfig": "productB"
      }
    ]
  },
  "modules": [
    {
      "name": "entry",
      "srcPath": "./entry",
      "targets": [
        {
          "name": "default",  //將default target分別打包到default、productA和productB APP中
          "applyToProducts": [
            "default",
            "productA",
            "productB"
          ]
        },
        {
          "name": "free",  //將free target打包到productA APP中
          "applyToProducts": [
            "productA"
          ]
        },
        {
          "name": "pay",  //將pay target打包到productB APP中
          "applyToProducts": [
            "productB"
          ]
        }
      ]
    }
  ]
}
(左右滑動(dòng)查看更多最后,在DevEco Studio中,可以使用可視化界面來(lái)選擇運(yùn)行和調(diào)試指定模塊和Target。從DevEco Studio界面的右上角打開面板,執(zhí)行需要調(diào)試或運(yùn)行的Target,DevEco Hvigor就會(huì)執(zhí)行指定模塊、指定Target的編譯構(gòu)建,并在預(yù)覽和調(diào)試中都使用該配置。

wKgaomUroLSAKb6XAAJ5D1FyAoU784.png

未來(lái)特性與總結(jié)

目前,DevEcoHvigor作為全新開發(fā)的編譯構(gòu)建工具,雖然已經(jīng)有了不少可以提升編譯效率的地方,但仍有許多新的特性、功能和性能優(yōu)化還在路上。比如,DevEcoHvigor即將開放的自定義構(gòu)建任務(wù)插件能力和編譯流程插樁接口、在運(yùn)行時(shí)獲取構(gòu)建配置的BuildProfile機(jī)制等。我們會(huì)繼續(xù)努力,力求將更好的編譯效率、更便捷的構(gòu)建體驗(yàn),帶給每一位HarmonyOS應(yīng)用的開發(fā)者。

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

    關(guān)注

    80

    文章

    2156

    瀏覽量

    36269

原文標(biāo)題:【技術(shù)視界】DevEco Hvigor高效編譯,構(gòu)建過(guò)程新秘籍

文章出處:【微信號(hào):HarmonyOS_Dev,微信公眾號(hào):HarmonyOS開發(fā)者】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    LTC3541:高效降壓與VLDO調(diào)節(jié)器的設(shè)計(jì)秘籍

    LTC3541:高效降壓與VLDO調(diào)節(jié)器的設(shè)計(jì)秘籍 在電子設(shè)備的電源管理領(lǐng)域,一款性能卓越的調(diào)節(jié)器能為設(shè)備的穩(wěn)定運(yùn)行提供堅(jiān)實(shí)保障。今天,我們就來(lái)深入探討Linear Technology公司
    的頭像 發(fā)表于 03-13 11:35 ?176次閱讀

    簡(jiǎn)單高效的鴻蒙編譯提速技巧

    在鴻蒙應(yīng)用開發(fā)中編譯構(gòu)建是開發(fā)者最頻繁的操作,每一次編譯提速都能顯著提升項(xiàng)目整體開發(fā)效率。本次分享幾個(gè)簡(jiǎn)單卻高效的鴻蒙編譯提速技巧,從
    的頭像 發(fā)表于 03-04 16:09 ?216次閱讀
    簡(jiǎn)單<b class='flag-5'>高效</b>的鴻蒙<b class='flag-5'>編譯</b>提速技巧

    探索LMG341xR050:高效GaN功率級(jí)的技術(shù)剖析與設(shè)計(jì)秘籍

    探索LMG341xR050:高效GaN功率級(jí)的技術(shù)剖析與設(shè)計(jì)秘籍 在電力電子領(lǐng)域,效率和功率密度一直是工程師們追求的關(guān)鍵指標(biāo)。TI推出的LMG341xR050系列600 - V 50 - mΩ集成
    的頭像 發(fā)表于 03-01 17:15 ?1095次閱讀

    解析Microchip MCP3004/3008:高效10位A/D轉(zhuǎn)換器的技術(shù)秘籍

    解析Microchip MCP3004/3008:高效10位A/D轉(zhuǎn)換器的技術(shù)秘籍 在電子設(shè)計(jì)領(lǐng)域,模數(shù)轉(zhuǎn)換器(A/D)是連接模擬世界與數(shù)字世界的關(guān)鍵橋梁。Microchip公司的MCP3004
    的頭像 發(fā)表于 02-09 16:25 ?723次閱讀

    揭秘!三步讓Debian系統(tǒng)編譯速度起飛,告別重復(fù)下載資源的煩惱

    在 Debian 系統(tǒng)編譯過(guò)程中,重復(fù)構(gòu)建系統(tǒng)和動(dòng)態(tài)下載相關(guān)資源往往會(huì)消耗大量時(shí)間,拖慢開發(fā)和部署進(jìn)度。今天,我們就通過(guò)分析一組代碼修改,來(lái)探索如何優(yōu)化 Debian 系統(tǒng)編譯,實(shí)現(xiàn)
    的頭像 發(fā)表于 02-01 16:43 ?1564次閱讀

    VIPER16:高效離線轉(zhuǎn)換器的設(shè)計(jì)秘籍

    VIPER16:高效離線轉(zhuǎn)換器的設(shè)計(jì)秘籍 在電源設(shè)計(jì)領(lǐng)域,一款性能出色且功能豐富的離線轉(zhuǎn)換器往往是工程師們的得力助手。今天,我們就來(lái)深入探討一下ST公司的VIPER16,這是一款屬于Fixed
    的頭像 發(fā)表于 01-27 16:50 ?583次閱讀

    【瑞薩RA × Zephyr評(píng)測(cè)】Zephyr RTOS保姆級(jí)環(huán)境構(gòu)建編譯下載踩坑版

    筆者介紹一下Zephyr RTOS 保姆級(jí)環(huán)境構(gòu)建編譯下載
    的頭像 發(fā)表于 01-10 10:03 ?9375次閱讀
    【瑞薩RA × Zephyr評(píng)測(cè)】Zephyr RTOS保姆級(jí)環(huán)境<b class='flag-5'>構(gòu)建</b>與<b class='flag-5'>編譯</b>下載踩坑版

    開源鴻蒙技術(shù)大會(huì)2025丨編譯器與編程語(yǔ)言分論壇:語(yǔ)言驅(qū)動(dòng)系統(tǒng)創(chuàng)新,編譯賦能生態(tài)繁榮

    在萬(wàn)物智聯(lián)的時(shí)代背景下,操作系統(tǒng)底層能力的構(gòu)建離不開編程語(yǔ)言與編譯器的關(guān)鍵支撐。作為開源鴻蒙生態(tài)的核心技術(shù),語(yǔ)言設(shè)計(jì)與編譯器、虛擬機(jī)實(shí)現(xiàn)的進(jìn)步直接關(guān)系到開發(fā)效率、運(yùn)行性能與系統(tǒng)安全。本
    的頭像 發(fā)表于 11-20 17:24 ?1126次閱讀
    開源鴻蒙<b class='flag-5'>技術(shù)</b>大會(huì)2025丨<b class='flag-5'>編譯</b>器與編程語(yǔ)言分論壇:語(yǔ)言驅(qū)動(dòng)系統(tǒng)創(chuàng)新,<b class='flag-5'>編譯</b>賦能生態(tài)繁榮

    HarmonyOSAI編程編譯報(bào)錯(cuò)智能分析

    當(dāng)DevEco Studio構(gòu)建ArkTS工程出現(xiàn)失敗時(shí),CodeGenie能夠?qū)﹀e(cuò)誤進(jìn)行智能分析,提供錯(cuò)誤原因及修復(fù)方案,幫助開發(fā)者快速解決編譯構(gòu)建問(wèn)題。 如需開啟
    發(fā)表于 08-25 17:40

    HarmonyOSAI編程DevEco AI輔助編程工具

    DevEco AI輔助編程工具(CodeGenie)基于BitFun Platform AI能力平臺(tái),為開發(fā)者提供高效的應(yīng)用與服務(wù)AI編程支持,支持智能知識(shí)問(wèn)答、代碼生成、頁(yè)面生成、萬(wàn)能卡片生成
    發(fā)表于 08-18 14:54

    迅為RK3568開發(fā)板基本工程目錄-工程級(jí)目錄

    : 從上往下依次來(lái)了解下。 .hvigor 目錄是編譯構(gòu)建腳本生成目錄。 .idea 目錄用于存儲(chǔ)項(xiàng)目的配置信息,包括歷史記錄,版本控制信息等,是由開發(fā)工具自動(dòng)生成的,一般情況下不需要進(jìn)行修改
    發(fā)表于 07-10 10:45

    DevEco CodeGenie 鴻蒙AI 輔助編程初次使用

    一、工具概述與核心能力 DevEco CodeGenie 是集成在 DevEco Studio 中的 AI 輔助編程插件,專為 HarmonyOS 應(yīng)用開發(fā)設(shè)計(jì),提供三大核心能力: 智能知識(shí)問(wèn)答
    的頭像 發(fā)表于 06-26 08:48 ?1052次閱讀

    使用DevEcoStudio 開發(fā)、編譯鴻蒙 NEXT_APP 以及使用中文插件

    ├── hvgor/ │└── hvigor-config.json5 ├── build/ # 編譯后正式包 └── build-profile.json5# 項(xiàng)目構(gòu)建配置文件 4 代碼方式布局
    發(fā)表于 06-11 17:18

    最新 HUAWEI DevEco Studio 使用技巧

    最新 HUAWEI DevEco Studio 使用技巧 HUAWEI DevEco Studio 作為我們 harmonyos 應(yīng)用的開發(fā)工具,有必要好好打磨一下。 Chinese
    的頭像 發(fā)表于 04-27 16:59 ?1497次閱讀
    最新 HUAWEI <b class='flag-5'>DevEco</b> Studio 使用技巧

    DevEco Studio 工具如何安裝

    簽名。 步驟 3在編輯窗口右上角的工具欄,點(diǎn)擊運(yùn)行按鈕,或使用默認(rèn)快捷鍵 Shift+F10(Mac 為 Control+R)運(yùn)行工程,等待編譯完成即可便運(yùn)行在設(shè)備上。 至此,驗(yàn)證了 DevEco Studio 工具已正確安裝,接下來(lái)可以開始正式的應(yīng)用開發(fā)。
    發(fā)表于 04-24 07:38
    安龙县| 登封市| 云龙县| 报价| 游戏| 呈贡县| 新乡市| 武清区| 康马县| 建宁县| 恭城| 龙山县| 平泉县| 红河县| 桐城市| 共和县| 浮梁县| 工布江达县| 屏东市| 西峡县| 伊宁县| 临沂市| 武威市| 庆安县| 博罗县| 中西区| 齐河县| 大英县| 正定县| 太仆寺旗| 都江堰市| 应用必备| 崇明县| 彭州市| 米泉市| 成安县| 北票市| 含山县| 龙南县| 夏津县| 石首市|