99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

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

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

利用輔助工具SIG為OpenHarmony操作系統(tǒng)開發(fā)化解疑難

OpenAtom OpenHarmony ? 來源:OpenAtom OpenHarmony ? 作者:OpenAtom OpenHarmony ? 2022-03-15 10:27 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

開發(fā)繁瑣,輔助工具SIG應(yīng)運而生

隨著國內(nèi)信息化市場的逐步成長,以 OpenAtom OpenHarmony(以下簡稱“OpenHarmony”)為基座,國產(chǎn)化操作系統(tǒng)為代表的創(chuàng)新產(chǎn)業(yè)匯聚了眾多開發(fā)者的加入。對應(yīng)用開發(fā)者,OpenHarmony 采用了多種分布式技術(shù),使應(yīng)用開發(fā)與不同終端設(shè)備的形態(tài)差異無關(guān);對設(shè)備開發(fā)者,OpenHarmony 采用了組件化的設(shè)計方案,可根據(jù)設(shè)備的資源能力和業(yè)務(wù)特征靈活裁剪。使得 OpenHarmony 成為眾多開發(fā)者青睞的開源項目。

然而,在 OpenHarmony 操作系統(tǒng)層面能力有待提升,需要系統(tǒng)開發(fā)者增強系統(tǒng)能力,諸如 NAPI 框架代碼的重復(fù)率問題、開機動畫展現(xiàn)受限和代碼語言開發(fā)難度大等。

(1)NAPI 框架代碼重復(fù)率問題。面對不同的 TS 接口,開發(fā)者都需實現(xiàn)相似度極高的框架代碼,工作較為繁瑣;

(2)開機動畫展現(xiàn)受限。開機動畫是一種特殊壓縮格式的圖片資源文件,僅有圖片集或視頻資源,開發(fā)者無法在各發(fā)行版和定制版進行定制化展現(xiàn);

(3)代碼語言開發(fā)難度大。對于存量接口或者已有 C/C++ 接口,開發(fā)者需要把 C/C++ 頭文件手寫為 IDL 文件。雙方語言不同,熟悉 C/C++ 頭文件語法的同時還要熟悉 IDL 語法,造成手寫難度很大,影響了開發(fā)效率。

為豐富 OpenHarmony 社區(qū)生態(tài),深圳開鴻數(shù)字產(chǎn)業(yè)發(fā)展有限公司(以下簡稱“深開鴻”)申請并由 PMC 核準(zhǔn)成立輔助工具 SIG,負責(zé) OpenHarmony 社區(qū)特定子領(lǐng)域及創(chuàng)新項目的架構(gòu)設(shè)計、開源開發(fā)及項目維護等工作。

對癥解決,輔助工具SIG化解疑難

輔助工具 SIG 主要用于輔助 OpenHarmony 操作系統(tǒng)開發(fā),針對圖形子系統(tǒng)中開機動畫的快速定制,通過優(yōu)化驅(qū)動 HDF 框架 HDI 接口的開發(fā)流程,系統(tǒng)框架層與應(yīng)用層間接口 NAPI 的開發(fā)流程等環(huán)節(jié),提高開發(fā)效率。為構(gòu)建開放繁榮的 OpenHarmony 社區(qū)生態(tài)添磚加瓦。

NAPI框架代碼生成工具

OpenHarmony 各子系統(tǒng)的諸多能力需對應(yīng)用開放,NAPI 框架代碼生成工具需求尤為迫切。針對 NAPI 在開發(fā)過程中的大量需求,開發(fā)效率低且重復(fù)率高等問題,深開鴻專項小組根據(jù)社區(qū)開發(fā)環(huán)境和版本計劃,從 NAPI 工具開發(fā)環(huán)節(jié)切入,經(jīng)過夜以繼日的攻堅,實現(xiàn)了 NAPI 框架代碼生成工具。用戶可根據(jù)指定路徑的 TS 接口文件,一鍵生成 NAPI 代碼框架、業(yè)務(wù)代碼框架、GN 文件。

SIG倉地址:https://gitee.com/openharmony-sig/napi_generator

框架層開發(fā)者也無需再關(guān)注 Nodejs 相關(guān)語法,C++ 與 JS 之間的接口類型轉(zhuǎn)換、數(shù)據(jù)類型轉(zhuǎn)換,只需關(guān)注業(yè)務(wù)實現(xiàn)邏輯準(zhǔn)確性。NAPI 框架代碼生成工具的應(yīng)用,極大提升了開發(fā)效率。

開機動畫生成工具

開發(fā)者在只有圖片集或者 mp4 文件的情況下,可以使用開機動畫生成工具,一鍵生成開機動畫文件,并支持在 PC 上查看其效果。后續(xù),該工具將實現(xiàn)一鍵進入開發(fā)板展現(xiàn)開機動畫的功能演進。目前,開機動畫生成工具已支持設(shè)置開機動畫的分辨率、旋轉(zhuǎn)角度、翻轉(zhuǎn)鏡像等功能,也可為各發(fā)行版和定制版生成定制化開機動畫。

開機動畫生成工具已經(jīng)成功進入 OpenHarmony master 分支供廣大開發(fā)者使用。

代碼倉地址:https://gitee.com/openharmony/graphic_standard/tree/master/frameworks/bootanimation/data/bootanimation_tool

HDI生成工具

當(dāng)客戶端與服務(wù)器通信時,需要定義雙方都認可的接口,以保障雙方可成功通信。IDL(Interface Definition Language) 則是一種定義此類接口的語言,包含面向應(yīng)用程序的北向接口和面向硬件設(shè)備的南向接口。

應(yīng)用 HDI 生成工具后,開發(fā)者無需過多關(guān)注 IDL 的語法,只需定義最熟悉、最擅長的 C/C++ 接口文件,使用工具,即可生成 IDL 文件。另外,現(xiàn)存的大量 C/C++ 頭文件,開發(fā)者借此工具可以自動將其轉(zhuǎn)換為 IDL 文件,以提高 HDI 開發(fā)效率。

代碼倉地址:https://gitee.com/openharmony/drivers_framework/tree/master/tools/idl-gen

技術(shù)拆解,秒懂輔助工具SIG

NAPI框架代碼生成工具

1、軟件架構(gòu)

8f8c287a-a01c-11ec-952b-dac502259ad0.png

2、代碼目錄及說明

├── napi_tool # NAPI框架代碼生成工具│ ├── doc # 工具當(dāng)前能力、版本規(guī)劃│ ├── image # 圖片資源文件│ ├── output # 工具對應(yīng)的可執(zhí)行程序與插件程序│ ├── code # 工具源碼│ └── README # 工具使用指導(dǎo) └──README

3、使用場景

(1)命令行

① Windows環(huán)境

8fa98ea6-a01c-11ec-952b-dac502259ad0.png

Linux環(huán)境

8fbba24e-a01c-11ec-952b-dac502259ad0.png

(2)插件

① 插件安裝

② .d.ts 上點擊右鍵,選擇 .d.ts 生成 c++ 選項,即可生成 NAPI 框架代碼。

安裝步驟:https://gitee.com/openharmony-sig/napi_generator/blob/master/docs/INSTRUCTION_ZH.md

8fe9b54e-a01c-11ec-952b-dac502259ad0.png

開機動畫生成工具

1、軟件架構(gòu)

開機動畫的壓縮格式如下,以此依據(jù),設(shè)計開機動畫生成工具:

struct HeaderInfo { uint32_t type; 占4個字節(jié), 固定值2 uint32_t offset; 占4個字節(jié),與上一幀對比,像素開始不同的位置 uint32_t length; 占4個字節(jié),壓縮前數(shù)據(jù)長度 uint32_t clen; 占4個字節(jié),壓縮后數(shù)據(jù)長度 uint8_t mem[0]; 實際的壓縮數(shù)據(jù)}

bootanimation.raw 壓縮文件格式如下:

9002761a-a01c-11ec-952b-dac502259ad0.png

2、代碼目錄及說明

├── bootanimation_tool # 開機動畫生成工具│ ├── raw_maker.py # 開機動畫生成│ ├── raw_player.py # 開機動畫查看│ └── README # 工具使用指導(dǎo)

3、使用場景

(1)使用方法

python raw_maker.py (-m <*.mp4> | -i ) [-o ] [-d ] [-r ] [-f]

(2)參數(shù)說明

-h, --help # 查看命令幫助并退出-m <*.mp4>, --mp4 <*.mp4> # <*.mp4>源文件-i , --image # 源image文件存放路徑-o , --out # 制作開機動畫.raw 文件的輸出路徑 -d , --display # 設(shè)置開機動畫分辨率, 舉例:640x480-r , --rotate # 設(shè)置開機動畫旋轉(zhuǎn)角度, 舉例:90°,180°或270°-f,--flip#設(shè)置開機動畫是否翻轉(zhuǎn)

HDI生成工具

9017f300-a01c-11ec-952b-dac502259ad0.png

90340a4a-a01c-11ec-952b-dac502259ad0.png

2、代碼目錄及說明

├──h2idl_tool # H轉(zhuǎn)IDL代碼生成工具│ ├── docs # 工具當(dāng)前能力、版本規(guī)劃│ ├── out # 生成的IDL文件│ ├── testcase # 工具的測試用例│ ├── thirdparty # 使用的三方解析庫│ ├──_header_parser.py # C/C++頭文件解析│ └── idl_generator.py # IDL文件生成

3、使用場景

(1)使用方法

pythonidl_generator.py-f<*.h>-o

(2)參數(shù)說明

-h, --help # Show this help message and exit-v, --version # Display version information-f <*.h>, --file <*.h> # Compile the C/C++ header file-o,--out#Placegenerated.idlfilesintothe

審核編輯:郭婷

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

    關(guān)注

    37

    文章

    7142

    瀏覽量

    125543
  • C++
    C++
    +關(guān)注

    關(guān)注

    22

    文章

    2119

    瀏覽量

    75238

原文標(biāo)題:全面提速 | 輔助工具SIG助力OpenHarmony代碼開發(fā)

文章出處:【微信號:gh_e4f28cfa3159,微信公眾號:OpenAtom OpenHarmony】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

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

    潤開鴻推出基于OpenHarmony的桌面操作系統(tǒng)及AI PC工作站

    近日,攀升科技13周年慶典系列活動圓滿舉辦,作為領(lǐng)先的鴻蒙方向?qū)I(yè)技術(shù)公司及終端操作系統(tǒng)發(fā)行版提供商,以及開放原子開源基金會OpenHarmony項目群A類捐贈人和核心共建單位,江蘇潤和軟件
    的頭像 發(fā)表于 06-03 16:25 ?393次閱讀

    基于LuatOS核心庫的實時操作系統(tǒng)開發(fā):從理論到實踐~

    ,降低了系統(tǒng)阻塞風(fēng)險。 在LuatOS開發(fā)中,用于實時操作系統(tǒng)(RTOS)相關(guān)功能的核心庫——提供了定時器管理、系統(tǒng)控制、內(nèi)存監(jiān)控、路徑配置等底層
    的頭像 發(fā)表于 05-16 13:56 ?184次閱讀
    基于LuatOS核心庫的實時<b class='flag-5'>操作系統(tǒng)開發(fā)</b>:從理論到實踐~

    KaihongOS操作系統(tǒng):ArkTS語言基礎(chǔ)

    ArkTS語言基礎(chǔ) KaihongOS是面向全場景的萬物智聯(lián)技術(shù)底座,在OpenHarmony基礎(chǔ)上技術(shù)創(chuàng)新和系統(tǒng)能力增強的跨設(shè)備的操作系統(tǒng),它支持多種設(shè)備類型。ArkTS是KaihongOS
    發(fā)表于 04-23 06:31

    求助,關(guān)于iMX DDR3寄存器編程輔助問題求解

    我們目前正在使用 iMX6UL DDR 寄存器編程輔助工具 U-Boot 生成 DCD 表。我們的設(shè)備使用的是 MT41K128M16JT-107,即 DDR3-1866,這意味著它的時鐘周期頻率
    發(fā)表于 03-27 07:16

    國產(chǎn)銀河麒麟操作系統(tǒng)V10和星光麒麟V1.0操作系統(tǒng)如何選擇?

    國產(chǎn)銀河麒麟操作系統(tǒng)和星光麒麟操作系統(tǒng)都是由中國電子旗下科技企業(yè)麒麟軟件有限公司(簡稱“麒麟軟件”)開發(fā)的國產(chǎn)自主可控的操作系統(tǒng)。麒麟軟件介紹:麒麟軟件以安全可信
    的頭像 發(fā)表于 01-24 09:14 ?2209次閱讀
    國產(chǎn)銀河麒麟<b class='flag-5'>操作系統(tǒng)</b>V10和星光麒麟V1.0<b class='flag-5'>操作系統(tǒng)</b>如何選擇?

    deepin操作系統(tǒng)介紹

    希望從自己的能力和對桌面操作系統(tǒng)的理解,能給 Linux 的用戶與開發(fā)者更多的選擇。我們也相信 deepin 能夠得到更多用戶的認可與喜愛,成為開源世界的最佳選擇。? 一、 deepin 操作系統(tǒng) 先說 Linux
    的頭像 發(fā)表于 12-23 09:08 ?2326次閱讀
    deepin<b class='flag-5'>操作系統(tǒng)</b>介紹

    名單公布!【書籍評測活動NO.53】鴻蒙操作系統(tǒng)設(shè)計原理與架構(gòu)

    的底層設(shè)計邏輯出發(fā),針對不同關(guān)鍵子系統(tǒng)的目標(biāo)功能和實現(xiàn)路徑做實際分析解讀,幫助開發(fā)者理解鴻蒙操作系統(tǒng)的底層邏輯,開發(fā)更適合系統(tǒng)邏輯的架構(gòu)代碼
    發(fā)表于 12-16 15:10

    RT-Thread操作系統(tǒng)應(yīng)用開發(fā)寒假師資培訓(xùn)

    隨著物聯(lián)網(wǎng)和智能系統(tǒng)的快速發(fā)展,嵌入式成為當(dāng)前最熱門最有發(fā)展前途的IT應(yīng)用領(lǐng)域之一。進一步提升全國大學(xué)生在嵌入式芯片及系統(tǒng)設(shè)計領(lǐng)域的創(chuàng)新能力,特別是針對物聯(lián)網(wǎng)應(yīng)用開發(fā)中RT-Thre
    的頭像 發(fā)表于 12-06 01:06 ?523次閱讀
    RT-Thread<b class='flag-5'>操作系統(tǒng)</b>應(yīng)用<b class='flag-5'>開發(fā)</b>寒假師資培訓(xùn)

    RK3588開發(fā)板Android系統(tǒng)開發(fā)筆記-使用ADB工具

    工具在網(wǎng)盤資料“iTOP-3588 開發(fā)板\\\\02_【iTOP-RK3588 開發(fā)板】開發(fā)資料\\\\ 07_Android 系統(tǒng)開發(fā)
    發(fā)表于 11-27 10:39

    實時操作系統(tǒng)開發(fā)工具:鴻道Intewell Developer介紹

    鴻道Intewell Developer是鴻道Intewell操作系統(tǒng)的實時應(yīng)用開發(fā)環(huán)境,擁有可視化的操作界面,提供規(guī)范、統(tǒng)一、集中的配置入口,提供項目管理、編程開發(fā)環(huán)境、目標(biāo)機配置管
    的頭像 發(fā)表于 11-04 14:51 ?624次閱讀
    實時<b class='flag-5'>操作系統(tǒng)開發(fā)工具</b>:鴻道Intewell Developer介紹

    全新原生鴻蒙HarmonyOS NEXT發(fā)布,書寫國產(chǎn)操作系統(tǒng)新篇章!同時,觸覺智能發(fā)布OpenHarmony5.0固件

    10月22日,華為舉行“原生鴻蒙之夜暨華為全場景新品發(fā)布會”,正式用戶帶來基于OpenHarmony打造的全新原生鴻蒙操作系統(tǒng)HarmonyOS NEXT和華為多個全場景智能設(shè)備新品。與此同時,觸覺智能旗下鴻蒙
    的頭像 發(fā)表于 10-28 13:46 ?1472次閱讀
    全新原生鴻蒙HarmonyOS NEXT發(fā)布,書寫國產(chǎn)<b class='flag-5'>操作系統(tǒng)</b>新篇章!同時,觸覺智能發(fā)布<b class='flag-5'>OpenHarmony</b>5.0固件

    利用仿真技術(shù)進行智能制動系統(tǒng)開發(fā)

    在當(dāng)前的汽車行業(yè)中,安全性仍然是首要關(guān)注點之一。自動緊急制動系統(tǒng)(AEB)作為增強道路安全的核心技術(shù),正逐漸普及。該系統(tǒng)通過高級傳感器和算法來預(yù)測和應(yīng)對潛在的撞車風(fēng)險,極大提升了安全性。在 AEB 系統(tǒng)
    的頭像 發(fā)表于 09-05 09:38 ?757次閱讀
    <b class='flag-5'>利用</b>仿真技術(shù)進行智能制動<b class='flag-5'>系統(tǒng)</b>的<b class='flag-5'>開發(fā)</b>

    基于Openharmony輕量級操作系統(tǒng)的分布式數(shù)據(jù)管理開發(fā)案例

    實驗內(nèi)容本例程演示如何在小凌派-RK2206開發(fā)板上使用OpenHarmony輕量級操作系統(tǒng)進行KvStore(即分布式數(shù)據(jù)管理)數(shù)據(jù)讀寫。例程:(1)創(chuàng)建兩個線程,一個負責(zé)寫入KvStore存儲
    的頭像 發(fā)表于 08-07 08:23 ?1714次閱讀
    基于<b class='flag-5'>Openharmony</b>輕量級<b class='flag-5'>操作系統(tǒng)</b>的分布式數(shù)據(jù)管理<b class='flag-5'>開發(fā)</b>案例

    鴻蒙OpenHarmony南向/北向快速開發(fā)教程-迅RK3568開發(fā)

    4.1學(xué)習(xí)之旅了嗎?快來加入我們,一起探索鴻蒙4.1系統(tǒng)的無限魅力吧! 【北京迅OpenHarmony學(xué)習(xí)開發(fā)系列教程(第1期 北向基礎(chǔ)篇一) P0_先導(dǎo)課 P1_
    發(fā)表于 07-23 10:44

    名單公布!【書籍評測活動NO.38】OpenHarmony開發(fā)與實踐 | 基于紅莓RK2206開發(fā)

    OpenHarmony操作系統(tǒng)開發(fā)和應(yīng)用的工程師、學(xué)生等讀者,也適合想要了解OpenHarmony操作系統(tǒng)的技術(shù)愛好者和初學(xué)者。讀者應(yīng)具備一定的嵌入式
    發(fā)表于 07-19 10:57