RM新时代网站-首页

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

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

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

【鴻蒙】NAPI 框架生成工具實(shí)現(xiàn)流程

王程 ? 來源: jf_75796907 ? 作者: jf_75796907 ? 2024-02-28 17:00 ? 次閱讀

NAPI 框架生成工具 可以根據(jù)用戶指定路徑下的 ts(typescript)接口文件一鍵生成 NAPI 框架代碼、業(yè)務(wù)代碼框架、GN 文件等。在開發(fā) JS 應(yīng)用與 NAPI 間接口時(shí),底層框架開發(fā)者無需關(guān)注 Nodejs 語(yǔ)法、C++ 與 JS 之間的數(shù)據(jù)類型轉(zhuǎn)換等上層應(yīng)用轉(zhuǎn)換邏輯,只關(guān)注底層業(yè)務(wù)邏輯即可。

那他的實(shí)現(xiàn)過程,以及在實(shí)際開發(fā)中該如何使用呢?為此分析了下代碼,分解其過程如下。

1. 純 C++ 代碼實(shí)現(xiàn)

該部分純 C++ 實(shí)現(xiàn)函數(shù),不需要考慮 JS 環(huán)境,實(shí)現(xiàn)解耦。

wKgaomXe9ZOAfxa9AABiwFsjy90887.png

2. NAPI 工具類

實(shí)現(xiàn) C++ 與 JS 之間的數(shù)據(jù)類型轉(zhuǎn)換等上層應(yīng)用轉(zhuǎn)換邏輯。

wKgZomXe9Z2AVcX4AADFtiX1dW8421.png

3. NAPI 函數(shù)映射與模塊注冊(cè)

實(shí)現(xiàn) NAPI 函數(shù)映射與模塊注冊(cè)

wKgaomXe9aaAVVPcAAFsx1sj8a0012.png

4. 北向調(diào)用

wKgZomXe9a2ASKWVAADK5ZgYOFw008.png

全部流程為

wKgaomXe9bSAXohLAAL7pE8ldPE939.png


為了能讓大家更好的學(xué)習(xí)鴻蒙 (OpenHarmony) 開發(fā)技術(shù),這邊特意整理了《鴻蒙 (OpenHarmony)開發(fā)學(xué)習(xí)手冊(cè)》,希望對(duì)大家有所幫助:

《鴻蒙(Harmony OS)開發(fā)學(xué)習(xí)手冊(cè)》

入門必看:https://docs.qq.com/doc/DUk51cHZJaUpmSlhH
1.應(yīng)用開發(fā)導(dǎo)讀(ArKTS)
2.……

wKgaomXW6N2AJp9uAAQXRxEAprs547.png

HarmonyOS概念:https://docs.qq.com/doc/DUk51cHZJaUpmSlhH
1.系統(tǒng)定義
2.技術(shù)框架
3.技術(shù)特性
4.系統(tǒng)安全

wKgaomXW6OSAFcCRAAV2zd2X_1s891.png

快速入門:https://docs.qq.com/doc/DUk51cHZJaUpmSlhH
1.基本概念
2.構(gòu)建第一個(gè)ArkTS應(yīng)用
3.…

wKgZomXW6PuAA7wEAAKx6By_2Z8377.png

開發(fā)基礎(chǔ)知識(shí):https://docs.qq.com/doc/DUk51cHZJaUpmSlhH
1.應(yīng)用基礎(chǔ)知識(shí)
2.配置文件
3.應(yīng)用數(shù)據(jù)管理
4.應(yīng)用安全管理
5.應(yīng)用隱私保護(hù)
6.三方應(yīng)用調(diào)用管控機(jī)制
7.資源分類與訪問
8.學(xué)習(xí)ArkTS
9…

wKgZomXW6QaAM4niAAQzrXUUPik914.png

基于ArkTS 開發(fā):https://docs.qq.com/doc/DUk51cHZJaUpmSlhH
1.Ability開發(fā)
2.UI開發(fā)
3.公共事件與通知
4.窗口管理
5.媒體
6.安全
7.網(wǎng)絡(luò)與鏈接
8.電話服務(wù)
9.數(shù)據(jù)管理
10.后臺(tái)任務(wù)(Background Task)管理
11.設(shè)備管理
12.設(shè)備使用信息統(tǒng)計(jì)
13.DFX
14.國(guó)際化開發(fā)
15.折疊屏系列
16………

wKgZomXW6RKATahiAAKz-zSMnR4040.png



審核編輯 黃宇

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

    關(guān)注

    57

    文章

    2339

    瀏覽量

    42805
  • HarmonyOS
    +關(guān)注

    關(guān)注

    79

    文章

    1973

    瀏覽量

    30143
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    首款開發(fā)鴻蒙原生應(yīng)用的AI輔助編程工具正式上線了

    輔助編程工具——DevEco CodeGenie正式上線了,標(biāo)志著鴻蒙原生應(yīng)用和元服務(wù)開發(fā)進(jìn)入AI賦能的新時(shí)代。該工具支持開發(fā)鴻蒙原生應(yīng)用領(lǐng)域的智能知識(shí)問答、ArkTS代碼補(bǔ)全/
    的頭像 發(fā)表于 12-18 10:39 ?123次閱讀

    卷積神經(jīng)網(wǎng)絡(luò)的實(shí)現(xiàn)工具框架

    卷積神經(jīng)網(wǎng)絡(luò)因其在圖像和視頻處理任務(wù)中的卓越性能而廣受歡迎。隨著深度學(xué)習(xí)技術(shù)的快速發(fā)展,多種實(shí)現(xiàn)工具框架應(yīng)運(yùn)而生,為研究人員和開發(fā)者提供了強(qiáng)大的支持。 TensorFlow 概述
    的頭像 發(fā)表于 11-15 15:20 ?256次閱讀

    生成式AI工具作用

    生成式AI工具是指那些能夠自動(dòng)生成文本、圖像、音頻、視頻等多種類型數(shù)據(jù)的人工智能技術(shù)。在此,petacloud.ai小編為您整理生成式AI工具
    的頭像 發(fā)表于 10-28 11:19 ?224次閱讀

    鴻蒙跨端實(shí)踐-JS虛擬機(jī)架構(gòu)實(shí)現(xiàn)

    類似的框架,我們需要自行實(shí)現(xiàn)以確保核心基礎(chǔ)能力的完整。 鴻蒙虛擬機(jī)的開發(fā)經(jīng)歷了從最初 ArkTs2V8 到 JSVM + Roma新架構(gòu)方案 。在此過程中,我們實(shí)現(xiàn)了完整的
    的頭像 發(fā)表于 09-30 14:42 ?2402次閱讀
    <b class='flag-5'>鴻蒙</b>跨端實(shí)踐-JS虛擬機(jī)架構(gòu)<b class='flag-5'>實(shí)現(xiàn)</b>

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

    大家期待已久的迅為RK3568開發(fā)板終于迎來了鴻蒙4.1系統(tǒng)的強(qiáng)勢(shì)支持!想知道如何實(shí)現(xiàn)快速開發(fā)學(xué)習(xí)嗎?跟著我們一起來探索吧! 迅為RK3568開發(fā)板: 想象一下,你手中的RK3568開發(fā)板能夠輕松
    發(fā)表于 07-23 10:44

    鴻蒙跨平臺(tái)框架:【ArkUi-X】創(chuàng)建工程

    鴻蒙推出了鴻ArkUi-X 框架所以就寫個(gè)文章分享一下
    的頭像 發(fā)表于 05-13 17:48 ?931次閱讀
    <b class='flag-5'>鴻蒙</b>跨平臺(tái)<b class='flag-5'>框架</b>:【ArkUi-X】創(chuàng)建工程

    鴻蒙ArkUI:【從代碼到UI顯示的整體渲染流程

    方舟開發(fā)框架(簡(jiǎn)稱ArkUI)是鴻蒙開發(fā)的UI框架,提供如下兩種開發(fā)范式,我們 **只學(xué)聲明式開發(fā)范式**
    的頭像 發(fā)表于 05-13 16:06 ?904次閱讀
    <b class='flag-5'>鴻蒙</b>ArkUI:【從代碼到UI顯示的整體渲染<b class='flag-5'>流程</b>】

    鴻蒙實(shí)戰(zhàn)開發(fā)-如何安全和高效的使用N-API開發(fā)Native模塊

    的結(jié)果。 異步示例 開發(fā)者可以通過如下示例將耗時(shí)任務(wù)用異步方式實(shí)現(xiàn),大概邏輯包括以下三步: 用 napi_create_promise 接口創(chuàng)建 promise,將創(chuàng)建一個(gè) deferred 對(duì)象并與
    發(fā)表于 05-09 15:55

    鴻蒙OS開發(fā)實(shí)例:【HarmonyHttpClient】網(wǎng)絡(luò)框架

    鴻蒙上使用的Http網(wǎng)絡(luò)框架,里面包含純Java實(shí)現(xiàn)的HttpNet,類似okhttp使用,支持同步和異步兩種請(qǐng)求方式;還有鴻蒙版retrofit,和Android版Retrofit相
    的頭像 發(fā)表于 04-12 16:58 ?826次閱讀
    <b class='flag-5'>鴻蒙</b>OS開發(fā)實(shí)例:【HarmonyHttpClient】網(wǎng)絡(luò)<b class='flag-5'>框架</b>

    鴻蒙原生應(yīng)用元服務(wù)備案實(shí)操基本流程

    一、鴻蒙原生應(yīng)用元服務(wù)備案流程和方式是一樣的,都是APP備案的流程。 二、通過華為云、阿里云等服務(wù)商進(jìn)行備案。 三、進(jìn)行鴻蒙應(yīng)用元服務(wù)備案前需要注冊(cè)域名、購(gòu)買有服務(wù)器、域名進(jìn)行了備案。
    發(fā)表于 04-09 09:49

    深圳市24年,實(shí)現(xiàn)鴻蒙原生應(yīng)用數(shù)占全國(guó)總量10%以上

    不吹不捧,鴻蒙自從24年的星河版發(fā)布會(huì)之后。純血鴻蒙已經(jīng)開啟大規(guī)模的行動(dòng),首批 200 + 鴻蒙原生應(yīng)用已經(jīng)在加速開發(fā),先鋒垂域齊備,覆蓋便捷生活、出行文旅、金融理財(cái)、社交資訊、生產(chǎn)力工具
    發(fā)表于 03-04 21:42

    學(xué)習(xí)鴻蒙背后的價(jià)值?星河版開放如何學(xué)習(xí)?

    鴻蒙原生內(nèi)核。 實(shí)現(xiàn)了AI框架、大模型、設(shè)計(jì)系統(tǒng)、編程框架、編程語(yǔ)言、編譯器等全棧自研,有核心技術(shù)、全棧能力、底座和生態(tài),是真正的操作系統(tǒng),而非安卓套皮。關(guān)鍵是有了
    發(fā)表于 02-22 20:55

    OpenHarmony 之 NAPI 框架介紹

    NAPI 是什么 NAPI 的概念源自 Nodejs,為了實(shí)現(xiàn) javascript 腳本與 C++ 庫(kù)之間的相互調(diào)用,Nodejs 對(duì) V8 引擎的 api 做了一層封裝,稱為 NAPI
    的頭像 發(fā)表于 02-01 17:34 ?692次閱讀
    OpenHarmony 之 <b class='flag-5'>NAPI</b> <b class='flag-5'>框架</b>介紹

    鴻蒙OpenHarmony NAPI技術(shù)-基礎(chǔ)學(xué)習(xí)

    NAPI(Native API)是OpenHarmony系統(tǒng)中的一套原生模塊擴(kuò)展開發(fā)框架,它基于Node.js N-API規(guī)范開發(fā),為開發(fā)者提供了JavaScript與C/C++模塊之間相互調(diào)用的交互能力??梢栽贜odeJs官網(wǎng)查看各種
    的頭像 發(fā)表于 01-19 16:57 ?967次閱讀
    <b class='flag-5'>鴻蒙</b>OpenHarmony <b class='flag-5'>NAPI</b>技術(shù)-基礎(chǔ)學(xué)習(xí)

    鴻蒙南向開發(fā)—OpenHarmony技術(shù)編譯構(gòu)建框架

    實(shí)現(xiàn)編譯和打包,該子系統(tǒng)主要包括:模塊、部件、子系統(tǒng)、產(chǎn)品。 編譯子系統(tǒng)的各部分關(guān)系,主要體現(xiàn)為: 子系統(tǒng)是某個(gè)路徑下所有部件的集合,一個(gè)部件只能屬于一個(gè)子系統(tǒng)。 部件是模塊的集合,一個(gè)模塊只能歸屬于
    發(fā)表于 01-04 16:47
    RM新时代网站-首页