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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

DevEco Studio 3.1 Release | 動態(tài)共享包開發(fā),編譯更快,包更小

HarmonyOS開發(fā)者 ? 來源:未知 ? 2023-05-19 12:15 ? 次閱讀

動態(tài)共享包(HSP)開發(fā)是DevEco Studio 3.1 Release版本帶來的新特性,基于新的編譯方式,提供運行態(tài)共享能力,可以有效加快編譯速度,減小HAP包的體積。


動態(tài)共享包引入

以往使用的JSBundle化編譯方案,因每個入口page都會打包成一個bundle包,且不支持運行態(tài)共享,當修改單個模塊文件,需要整包重新編譯打包,會導致編譯消耗的時間變長,也會導致HAP包的體積變大,從而影響了HarmonyOS應用開發(fā)效率和開發(fā)者體驗。

Bundle化打包過程示意圖

為了提升開發(fā)效率和開發(fā)者體驗,DevEco Studio提供模塊化編譯方式,模塊之間相互獨立編譯,可以加快編譯速度。同時,為了減少包體積,支持將多個模塊通用的能力和資源提取,作為動態(tài)共享包(HSP)供其他模塊或者應用使用。



什么是模塊化編譯

模塊之間相互獨立編譯,編譯速度更快。

應用內模塊化編譯方式使用原生ES Module規(guī)則構建源碼,解決了Bundle編譯打包模式引入的問題,進而讓工程中的資源文件,以獨立模塊的形式進行編譯。當修改單個模塊代碼時,無需整包編譯構建,編譯的代碼量會大大減少,從而加快增量編譯速度,讓編譯更快。

模塊獨立編譯示意圖



如何開啟模塊化編譯

API 9及以上版本的Stage工程中會默認開啟模塊化編譯方式,開發(fā)者無需單獨配置,編輯好代碼后,直接點擊Build Hap(s),就會以模塊化的編譯方式來進行打包。

新建項目,選擇Stage示例圖

3.1 應用內共享HSP開發(fā),讓包體積更小

基于Stage模型和模塊化編譯方式,如何進行動態(tài)共享包(HSP)的開發(fā)呢?一起來看以下介紹:

3.1.1 提供動態(tài)共享包模板,輕松創(chuàng)建動態(tài)共享包HSP

HSP是可以用來共享資源和代碼的動態(tài)共享包,為了方便開發(fā)者使用,DevEco Studio提供Shared Library動態(tài)共享包模板,開發(fā)者可以直接使用該模板,輕松創(chuàng)建HSP。

開發(fā)者選中工程目錄中任意文件,右鍵選擇New > Module,打開Shared Library模板。

Shared Library模板示意圖

在HSP對應模塊(如Shared_Library)中完成通用能力代碼和資源的開發(fā)后,選中菜單欄的Build > Make Module‘Shared_Library’進行編譯構建,即可快速生成HSP。

編譯構建示例圖

生成HSP

3.1.2 應用內快速引用HSP

開發(fā)者可通過字段配置,將HSP共享給應用內其他模塊使用,并且支持在運行態(tài)共享HSP。在使用方entry/feature模塊的oh-package.json5文件中添加HSP模塊來引用,以引用名為Shared_Library的HSP為例:

HSP引用配置

在模塊化編譯方式的加持下,使用方的模塊經過編譯打包后,HAP包的體積將會明顯變小,開發(fā)者就可將HAP包快速安裝在設備上來調試運行,提升開發(fā)效率。

與此同時,DevEco Studio支持HSP預覽,ArkTS/C++調用HSP的斷點調試等功能,您可以點擊下方“閱讀原文”進入HarmonyOS官網資料了解更多HSP的內容。


文章推薦

點擊下方鏈接,查看更多技術文章

不同設備如何統(tǒng)一語言編程平臺高效開發(fā)?

DevEco Studio 3.1 Beta新特性知多少

DevEco Device Tool 3.1 Release新版本發(fā)布

HarmonyOS Connect認證測試



原文標題:DevEco Studio 3.1 Release | 動態(tài)共享包開發(fā),編譯更快,包更小

文章出處:【微信公眾號:HarmonyOS開發(fā)者】歡迎添加關注!文章轉載請注明出處。

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

    關注

    79

    文章

    1958

    瀏覽量

    29921

原文標題:DevEco Studio 3.1 Release | 動態(tài)共享包開發(fā),編譯更快,包更小

文章出處:【微信號:HarmonyOS_Dev,微信公眾號:HarmonyOS開發(fā)者】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    為什么我的項目Debug運行沒問題,編譯Release就報錯?

    引言 在Android開發(fā)中,debugrelease的行為差異可能導致release包在運行時出現(xiàn)問題,而這些問題在debug
    的頭像 發(fā)表于 06-12 11:18 ?592次閱讀
    為什么我的項目Debug運行沒問題,<b class='flag-5'>編譯</b>成<b class='flag-5'>Release</b><b class='flag-5'>包</b>就報錯?

    鴻蒙原生應用元服務開發(fā)-鴻蒙真機運行項目實戰(zhàn)與注意事項

    一、解壓項目注意項目不能為中文 二、用數(shù)據線將裝好DevEco Studio的電腦與設置為開發(fā)者模式的鴻蒙手機相連接。 三、將項目托進
    發(fā)表于 05-24 15:12

    鴻蒙(Harmony OS)中Native層的SDK詳細解析

    鴻蒙中支持har和hsp的創(chuàng)建,其中har是靜態(tài)共享庫,編譯后會生成一個以har為后綴的文件。Hsp是
    的頭像 發(fā)表于 04-02 14:42 ?2592次閱讀
    鴻蒙(Harmony OS)中Native層的SDK詳細解析

    OpenHarmony4.1Release無法運行debug應用問題分析

    1 關鍵字 debug; 4.1Release; 應用; 2 開發(fā)環(huán)境 系統(tǒng)版本: 4.1-Release DevEco Studio版本:
    發(fā)表于 03-27 14:27

    鴻蒙OS應用開發(fā):【DevEco Studio3.0 和 3.1版本差異】

    DevEco Studio支持包括手機、平板、車機、智慧屏、智能穿戴、輕量級智能穿戴和智慧視覺設備的HarmonyOS應用/服務開發(fā),預置了工程模板,可以根據工程向導輕松創(chuàng)建適應于各類設備的工程,并
    的頭像 發(fā)表于 03-26 17:21 ?977次閱讀
    鴻蒙OS應用<b class='flag-5'>開發(fā)</b>:【<b class='flag-5'>DevEco</b> <b class='flag-5'>Studio</b>3.0 和 <b class='flag-5'>3.1</b>版本差異】

    鴻蒙開發(fā)編譯構建】講解

    的HAP部署到設備中。這種方式一般用于應用開發(fā)階段進行應用的調試、功能驗證等場景。 方式二:通過DevEco Studio的Build菜單欄的編譯選項進行構建,HAP的構建結果存放
    發(fā)表于 02-27 17:41

    DevEco Studio 4.1帶來多種調試能力,助力鴻蒙原生應用開發(fā)高效調試

    目前,HarmonyOS NEXT星河預覽版已經正式面向開發(fā)者開放申請,面向鴻蒙原生應用及元服務開發(fā)者提供的集成開發(fā)環(huán)境——DevEco Studi
    的頭像 發(fā)表于 02-04 15:35 ?650次閱讀

    鴻蒙開發(fā)(ArkUI)—分析DatePicker組件

    操作系統(tǒng): Windows 10 專業(yè)版、IDE:DevEco Studio 3.1、SDK:HarmonyOS 3.1+
    的頭像 發(fā)表于 02-01 15:22 ?582次閱讀
    鴻蒙<b class='flag-5'>開發(fā)</b>(ArkUI)—分析DatePicker組件

    RL78系列的C編譯數(shù)據手冊

    電子發(fā)燒友網站提供《RL78系列的C編譯數(shù)據手冊.pdf》資料免費下載
    發(fā)表于 01-26 15:55 ?1次下載
    RL78系列的C<b class='flag-5'>編譯</b>器<b class='flag-5'>包</b>數(shù)據手冊

    SpringBoot項目Jar加密防止反編譯方案

    最近項目要求部署到其他公司的服務器上,但是又不想將源碼泄露出去。要求對正式環(huán)境的啟動進行安全性處理,防止客戶直接通過反編譯工具將代碼反編譯出來。
    的頭像 發(fā)表于 12-12 14:04 ?1176次閱讀
    SpringBoot項目Jar<b class='flag-5'>包</b>加密防止反<b class='flag-5'>編譯</b>方案

    鴻蒙原生應用/元服務開發(fā)-AGC分發(fā)如何編譯打包應用

    軟件規(guī)范 在正式打包應用前,請確保已了解HarmonyOS應用軟件規(guī)范。 操作步驟 1.打開DevEco Studio,菜單選擇“Build > Build Hap(s)/
    發(fā)表于 11-20 17:19

    鴻蒙原生應用開發(fā)-DevEco Studio遠程模擬器的使用

    DevEco Studio的Run > Run’模塊名稱’或,或使用默認快捷鍵Shift+F10(macOS為Control+R)。 DevEco Studio會啟動應用/服務的
    發(fā)表于 11-10 17:01

    鴻蒙原生應用開發(fā)-DevEco Studio遠程真機的使用

    一、先看看遠程真機支持的機型情況相比本地和模擬器多了很多機型 二、遠程真機使用的相關說明 該特性在DevEco Studio V2.2 Beta1及更高版本中支持。 如果開發(fā)者沒有真機設備資源,則不
    發(fā)表于 11-09 15:55

    鴻蒙原生應用開發(fā)-DevEco Studio超級終端模擬器的使用

    一、了解超級終端模擬器支持的設備情況 該特性在DevEco Studio V2.1 Release及更高版本中支持。 目前超級終端模擬器支持“Phone+Phone”、“Phone+Tablet
    發(fā)表于 11-08 15:09

    RealView編譯工具3.1

    電子發(fā)燒友網站提供《RealView編譯工具3.1版.pdf》資料免費下載
    發(fā)表于 11-03 11:08 ?0次下載
    RealView<b class='flag-5'>編譯</b>工具<b class='flag-5'>3.1</b>版