精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

[FFH]Napi_generator(二)—NAPI框架生成工具實(shí)測

系統(tǒng) OpenHarmony
在子系統(tǒng)下新建一個屬于自己的名為Mysubsys子系統(tǒng),并在源碼下建立相應(yīng)的Mysubsys目錄。

??想了解更多關(guān)于開源的內(nèi)容,請?jiān)L問:??

??51CTO 開源基礎(chǔ)軟件社區(qū)??

??https://ost.51cto.com??

前言

在上一篇博客我們簡單介紹了napi框架生成工具的安裝和使用,本篇將利用該工具,實(shí)現(xiàn)簡單的北向應(yīng)用調(diào)用南向提供的NAPI接口獲取數(shù)據(jù)的案例。

測試環(huán)境

  • OpenHarmony-3.2-Beta5
  • 九聯(lián)UnionPi-Tiger開發(fā)板
  • Visual Studio Code(版本需1.62.0及以上)
  • USB_Burning_Tool燒錄工具
  • napi_generator工具可執(zhí)行文件或vs code插件
  • DevEco Studio 3.1.0.200

參考

子系統(tǒng),部件,模塊的創(chuàng)建可以先看這一篇:??【FFH】子系統(tǒng),部件,模塊編譯構(gòu)建全實(shí)踐??napi_generator工具的介紹可以看這篇:[FFH]napi_generator(一)——NAPI框架生成工具介紹
NAPI框架生成工具使用說明——作者:深圳開鴻數(shù)字產(chǎn)業(yè)發(fā)展有限公司

實(shí)現(xiàn)流程

一、編譯構(gòu)建實(shí)現(xiàn)

目錄結(jié)構(gòu):

mysubsys
├── napi_test
├── BUILD.gn
├── bundle.json
└── napi_generator_test
├── @ohos.napi_generator_test.d.ts

1、新增mysubsys子系統(tǒng)

在子系統(tǒng)下新建一個屬于自己的名為mysubsys子系統(tǒng),并在源碼下建立相應(yīng)的mysubsys目錄。

"mysubsys": {
"path": "mysubsys",
"name": "mysubsys"
}

2、新增napi_test部件

在mysubsys目錄下新建文件夾napi_test,并創(chuàng)建bundle.json部件配置文件。

{
"name": "@ohos/napi_test",
"description": "mysubsys test for bundle.json",
"version": "3.1",
"license": "MIT",
"publishAs": "code-segment",
"segment": {
"destPath": "mysubsys/napi_test"
},
"dirs": {},
"scripts": {},
"licensePath": "COPYING",
"component": {
"name": "napi_test",
"subsystem": "mysubsys",
"syscap": [],
"features": [],
"adapted_system_type": [],
"rom": "",
"ram": "",
"deps": {
"components": [],
"third_party": []
},
"build": {
"sub_component": [
"http://mysubsys/napi_test:my_napi_group"
],
"inner_kits": [],
"test": []
}
}
}

同時創(chuàng)建BUILD.gn作為部件入口:

import("http://build/ohos.gni")

group("my_napi_group") {
deps = [
"napi_generator_test:hello_napi_generator"
]
}

新建目錄napi_generator_test存放模塊文件。

mkdir napi_generator_test

3、產(chǎn)品配置中添加相應(yīng)子系統(tǒng)及部件

在vendor/unionman/unionpi_tiger/config.json文件為musubsys添加部件,musubsys為之前自己添加的子系統(tǒng),產(chǎn)品沒有mysubsys則根據(jù)模板進(jìn)行創(chuàng)建。

#創(chuàng)作者激勵# [FFH]napi_generator(二)——NAPI框架生成工具實(shí)測-開源基礎(chǔ)軟件社區(qū)

二、NAPI接口開發(fā)

1、編寫接口定義ts文件

在napi_generator_test目錄下創(chuàng)建文件@ohos.napi_generator_test.d.ts,這里的hello_napi_generator要與BUILD.gn指定的動態(tài)庫名一致,該ts文件定義了get_Hello_Generator()接口,返回字符串類型數(shù)據(jù),提供給北向應(yīng)用調(diào)用。

declare namespace hello_napi_generator {
function get_Hello_Generator(): string;
}

export default hello_napi_generator;

2、使用工具生成模板

由上一部編寫的@ohos.napi_generator_test.d.ts生成NAPI框架代碼:

#創(chuàng)作者激勵# [FFH]napi_generator(二)——NAPI框架生成工具實(shí)測-開源基礎(chǔ)軟件社區(qū)

路徑選擇napi_generator_test下即可,配置如下:

#創(chuàng)作者激勵# [FFH]napi_generator(二)——NAPI框架生成工具實(shí)測-開源基礎(chǔ)軟件社區(qū)

模板生成成功后生成如下文件:

#創(chuàng)作者激勵# [FFH]napi_generator(二)——NAPI框架生成工具實(shí)測-開源基礎(chǔ)軟件社區(qū)

3、實(shí)現(xiàn)NAPI接口

修改文件hello_napi_generator.cpp,實(shí)現(xiàn)定義的接口,本案例中直接為接口輸出返回一個字符串。

#include "hello_napi_generator.h"

namespace hello_napi_generator {
bool get_Hello_Generator(std::string& out)
{
out = " HELLO NAPI GENERATOR! \r\n";
return true;
}
}

修改BUILD.gn編譯規(guī)則

這里指定依賴ace_napi根據(jù)所在路徑進(jìn)行修改,子系統(tǒng)和部件需和你定義的一致。

import("http://build/ohos.gni")

ohos_shared_library("hello_napi_generator")
{
sources = [
"hello_napi_generator_middle.cpp",
"hello_napi_generator.cpp",
"tool_utility.cpp",
]
include_dirs = [
".",
"http://third_party/node/src",
]
deps=[
"http://foundation/arkui/napi:ace_napi", # 根據(jù)指定路徑修改
]
remove_configs = [ "http://build/config/compiler:no_rtti" ]
cflags=[
]
cflags_cc=[
"-frtti",
]
ldflags = [
]

relative_install_dir = "module"
part_name = "napi_test" # 修改為你的部件名
subsystem_name = "mysubsys" # 修改為你的子系統(tǒng)
}

三、NAPI接口應(yīng)用開發(fā)

打開Deveco Studio,新建一個OpenHarmony工程。

配置選擇默認(rèn)即可,使用ArkTS。

修改src/main/ets/pages/Index.ets文件,新建一個Button,Button調(diào)用NAPI接口hello_napi_generator.get_Hello_Generator()獲取南向接口返回的字符串,并通過彈窗組件輸出。

import prompt from '@system.prompt'
//顯示文本彈窗

// 引入擴(kuò)展的NAPI模塊
// 定義nm_modname(模塊名稱)為hello_napi_generator
// 在BUILD.gn文件中定義ohos_shared_library結(jié)構(gòu)體名稱為hello_napi_generator
// 所以是import hello_napi_generator from '@ohos.hello_napi_generator'
// @ts-ignore
import hello_napi_generator from '@ohos.hello_napi_generator';
@Entry
@Component
struct HelloNAPI {
build() {
Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Center, justifyContent: FlexAlign.Center }) {
Button("MY NAPI GENERATOR TEST").margin(10).fontSize(24).onClick(() => {

// 對外具體的提供的API是get_Hello_Generator
let strFromNAPI = hello_napi_generator.get_Hello_Generator()

prompt.showToast({ message: strFromNAPI })
})
}
.width('100%')
.height('100%')
}
}

點(diǎn)擊File->Project Structure,進(jìn)行自動簽名。

導(dǎo)入ts包或者忽略報錯。

根據(jù)教程要將@ohos.napi_generator_test.d.ts放到OpenHarmony SDK目錄ets\api目錄下,不過最新版的Deveco Studio使用API9放到指定路徑后還是找不到,個人北向接觸得比較少,不知道什么原因。不過雖然編譯會報錯,將報錯忽略后依然可以正常運(yùn)行,也就是可以不用上述步驟也可以跑得通。

連接開發(fā)板,將應(yīng)用安裝到開發(fā)板。

四、運(yùn)行結(jié)果展示

#創(chuàng)作者激勵# [FFH]napi_generator(二)——NAPI框架生成工具實(shí)測-開源基礎(chǔ)軟件社區(qū)

后記

對于南向NAPI接口的實(shí)現(xiàn),我只寫了一行代碼,也就是out = " HELLO NAPI GENERATOR! \r\n";,然后北向就可以調(diào)用到了,確實(shí)震撼到我了,對于需要和北向交互又苦于NAPI接口設(shè)計的繁瑣步驟的南向開發(fā)者來說,簡直是一款神器,后面有時間研究研究能不能使用Callback和Promise異步操作模型以及發(fā)掘一下其他功能。

文章相關(guān)附件可以點(diǎn)擊下面的原文鏈接前往下載:

 https://ost.51cto.com/resource/2573。

??想了解更多關(guān)于開源的內(nèi)容,請?jiān)L問:??

??51CTO 開源基礎(chǔ)軟件社區(qū)??

??https://ost.51cto.com??

責(zé)任編輯:jianghua 來源: 51CTO 開源基礎(chǔ)軟件社區(qū)
相關(guān)推薦

2023-03-10 09:41:16

NAPI框架鴻蒙

2024-01-03 15:41:49

2021-09-16 15:08:08

鴻蒙HarmonyOS應(yīng)用

2023-04-04 09:15:10

NAPI 框架鴻蒙

2022-10-11 15:04:28

NAPI開發(fā)鴻蒙

2022-07-19 20:04:31

NAPI模塊鴻蒙

2022-10-25 15:05:17

NAPI開發(fā)鴻蒙

2023-06-12 08:00:48

Napi-rsRust 前端工具

2023-04-26 15:29:35

NAPI模塊鴻蒙

2021-05-06 10:33:30

C++Napiv8

2021-12-08 15:07:51

鴻蒙HarmonyOS應(yīng)用

2022-10-09 15:05:50

NAPI框架鴻蒙

2021-12-06 06:19:03

鴻蒙HarmonyOS應(yīng)用

2023-03-24 14:47:24

NAPI框架HDF框架

2022-05-12 14:42:17

項(xiàng)目開發(fā)Napi實(shí)現(xiàn)

2023-03-16 15:29:57

鴻蒙工具

2022-05-01 21:36:11

LinuxLinux Mint

2023-03-22 09:23:53

I2C總線溫度傳感器

2022-03-03 08:30:41

GeneratorES6函數(shù)

2021-06-06 08:30:29

N-APIPromiseAPI
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

麻豆av一区二区| 日韩精品极品在线观看| 蜜臀在线免费观看| 超碰在线人人干| 国产欧美日韩一级| 中文字幕无线精品亚洲乱码一区 | 亚洲精品美女在线观看| 国产精品wwwww| 国产素人视频在线观看| 东方aⅴ免费观看久久av| 欧美一区亚洲一区| 欧美一区二区三区爽爽爽| 久草精品视频| 777亚洲妇女| 欧美精品99久久| 精精国产xxxx视频在线| 99re成人精品视频| 92国产精品久久久久首页| 天天综合网入口| 亚洲国产精品成人| 国产性色av一区二区| 国产精品二区视频| se69色成人网wwwsex| 亚洲午夜免费电影| 亚洲国产欧美一区二区三区不卡| 黄色片一区二区三区| 美腿丝袜亚洲色图| 欧美一区二区.| 国产在线视频99| 国产精品精品| 中文字幕在线亚洲| 日韩在线免费观看av| 国产日韩欧美中文在线| 欧美性生活大片视频| 日本网站免费在线观看| 伦理av在线| 亚洲欧美区自拍先锋| 亚洲精品日韩精品| 韩国中文字幕2020精品| 91丨porny丨蝌蚪视频| 91精品黄色| 国产三级自拍视频| 国内精品免费**视频| 国产精品美乳在线观看| 久久精品久久久久久久| 亚洲人成在线影院| 久久久欧美精品| 久久精品www人人爽人人| 亚洲字幕久久| 欧美理论电影在线播放| 国产一二三区精品| 婷婷综合社区| 欧美另类精品xxxx孕妇| 一区二区在线观看免费视频| 亚洲mv大片欧洲mv大片| 久久精品国产2020观看福利| 午夜成人亚洲理伦片在线观看| 四季av一区二区凹凸精品| 一区二区三区高清国产| 青青青视频在线免费观看| 日韩大片在线观看| 最新91在线视频| 国产免费一区二区三区四区| 久久久久久免费视频| 欧美人交a欧美精品| 青青草成人免费| 韩国一区二区三区在线观看| 96精品视频在线| 国产av第一区| 欧类av怡春院| 五月国产精品| 中文字幕精品视频| 日本一级特级毛片视频| 欧美a级在线| 97在线精品视频| 日本一本在线观看| 国内精品写真在线观看| 国产欧美在线一区二区| 日av在线播放| 中文字幕一区二区三区色视频 | 91精品视频网站| www.av导航| 99久久99久久精品免费看蜜桃| 欧美日韩国产高清视频| 免费黄色电影在线观看| 亚洲一区在线电影| 久久久久久三级| 久久伦理中文字幕| 日韩电影视频免费| 久久噜噜色综合一区二区| 好看的日韩av电影| 日韩av电影院| 99热精品在线播放| 久久男人中文字幕资源站| 夜夜春亚洲嫩草影视日日摸夜夜添夜| 性欧美ⅴideo另类hd| 欧美午夜女人视频在线| 日本中文字幕观看| 老司机精品视频在线播放| 在线观看精品自拍私拍| 久久高清无码视频| 天堂资源在线中文精品| 99电影在线观看| 国产天堂在线| 亚洲成在线观看| 亚洲性图一区二区| 老司机成人在线| 久久久精品久久久| 日韩三级一区二区| 国产91对白在线观看九色| 色之综合天天综合色天天棕色| а√天堂在线官网| 91官网在线免费观看| 日本天堂在线播放| 久久一区二区三区电影| 26uuu亚洲国产精品| 国产精品人人妻人人爽| 国产网站一区二区| 中文字幕无码精品亚洲35| 免费欧美网站| www亚洲精品| 怡红院av久久久久久久| 懂色av一区二区夜夜嗨| 国产精品99久久久久久大便| 亚洲v.com| 精品免费日韩av| www深夜成人a√在线| 三级影片在线观看欧美日韩一区二区| 国产精品免费视频一区二区| 操你啦视频在线| 欧美日韩高清一区二区三区| 法国空姐电影在线观看| 亚洲综合好骚| 激情五月综合色婷婷一区二区| 日本大片在线播放| 欧美一区二区精品在线| 国产人与禽zoz0性伦| 日韩电影在线一区二区三区| 久久综合精品一区| 亚洲妇女成熟| 精品网站999www| 日韩精品一卡二卡| 成人av在线一区二区| 男人天堂a在线| 一区中文字幕| 久久人91精品久久久久久不卡| 国产熟女一区二区三区五月婷 | 国产一区一区| 久久综合88中文色鬼| 国产又大又黑又粗| 136国产福利精品导航| 国产亚洲视频一区| 亚洲激情五月| 51国偷自产一区二区三区的来源| a级影片在线| 精品日韩99亚洲| 国产精品美女毛片真酒店| 99在线精品一区二区三区| 黄色一级片播放| 亚洲综合福利| 国产精品第2页| av基地在线| 国产91精品入| 日韩欧美中文字幕一区| 极品美妇后花庭翘臀娇吟小说| 看片网站欧美日韩| 三年中文高清在线观看第6集| 亚洲男女网站| 欧美黄色三级网站| 亚洲 欧美 激情 另类| 色婷婷精品久久二区二区蜜臂av| 国产人妻大战黑人20p| 毛片av中文字幕一区二区| 欧美少妇一级片| japanese色系久久精品| 91精品国产91久久久久久最新 | 蜜臀久久99精品久久久无需会员| 国产精品-色哟哟| 亚洲国产成人va在线观看天堂| aa一级黄色片| 久久99精品国产91久久来源| 伊人久久在线观看| 婷婷综合电影| 91久久久久久久久久久久久| 成人免费高清观看| 亚洲视频国产视频| 一区二区三区免费播放| 欧美日韩久久精品| 3d动漫精品啪啪一区二区三区免费 | 色噜噜狠狠狠综合曰曰曰88av| 国产乱人乱偷精品视频| 午夜av电影一区| 亚洲天堂精品一区| 成人av电影免费在线播放| 午夜激情福利在线| 欧美日韩国产成人精品| 日韩在线国产| 成人三级毛片| 成人久久久久久| 最新中文字幕在线播放| 久久亚洲国产精品| 欧美日韩视频精品二区| 日韩片之四级片| 黄色大全在线观看| 亚洲成人一区在线| 麻豆精品国产免费| 国产香蕉久久精品综合网| 久久久久久无码精品人妻一区二区| 久久都是精品| 丰满少妇久久久| 性xxxx欧美老肥妇牲乱| 欧美13一14另类| 澳门成人av| 亚洲a成v人在线观看| 蜜桃精品在线| 欧美在线视频一区二区| 欧美人与性动交α欧美精品济南到 | av男人的天堂在线观看| 日韩亚洲精品视频| 麻豆国产在线播放| 亚洲国产精品电影| www.污视频| 91麻豆精品国产无毒不卡在线观看| www.色国产| 午夜久久久影院| 久久午夜鲁丝片午夜精品| 成人免费在线观看入口| 欧美人妻一区二区三区| 99久久国产综合精品麻豆| 国产chinesehd精品露脸| 精品一区二区久久| 少妇一级淫免费播放| 亚洲综合日本| 成 年 人 黄 色 大 片大 全| 欧美日一区二区在线观看 | wwwwxxxx在线观看| 久久艳片www.17c.com | 亚洲毛片av在线| 国精产品久拍自产在线网站| 欧美精彩视频一区二区三区| 亚洲v国产v欧美v久久久久久| 91理论电影在线观看| 怡红院一区二区| 成人黄色av电影| 深田咏美中文字幕| 成人成人成人在线视频| 亚洲精品乱码久久久久久蜜桃图片| 国产成人小视频| 日本精品一二三区| 成人一区二区三区视频在线观看| 性生交大片免费看l| 成人在线视频一区二区| 国产激情视频网站| 2023国产精品视频| 欧美大波大乳巨大乳| 国产女人aaa级久久久级| 国产一级久久久久毛片精品| 中文字幕不卡在线| 伊人久久久久久久久久久久久久| 嫩草研究院在线| 懂色av影视一区二区三区| 国产黄色片免费看| 色猫猫国产区一区二在线视频| 波多野结衣啪啪| 欧美日韩一区二区三区不卡| 国产伦精品一区二区三区视频痴汉 | 欧美视频免费看欧美视频| 一本综合精品| 国产视频在线视频| 精品一区二区三区免费| 丰满少妇xbxb毛片日本| www日韩大片| 欧美人妻一区二区三区| 亚洲免费观看视频| 日本一级黄色录像| 91久久国产最好的精华液| 91久久国语露脸精品国产高跟| 日韩一区二区三区精品视频| 天堂中文资源在线观看| 亚洲色图欧美制服丝袜另类第一页| 中文字幕在线免费| 久久久久久国产免费| 美女100%一区| 亚洲va欧美va在线观看| 丝袜连裤袜欧美激情日韩| 亚洲精品日韩精品| 亚洲美女啪啪| 天天操天天爽天天射| 国产成人亚洲综合a∨猫咪| www.中文字幕av| 亚洲色图欧洲色图婷婷| a v视频在线观看| 欧美男男青年gay1069videost | 国产精品素人视频| 欧美爱爱小视频| 91黄色激情网站| 亚洲黄色在线播放| 视频直播国产精品| 国产乱码午夜在线视频| 国产精品偷伦视频免费观看国产| 9l视频自拍蝌蚪9l视频成人| 日韩精品福利视频| 日韩视频一区二区三区在线播放免费观看| 国产aaaaa毛片| 99精品桃花视频在线观看| 精品亚洲乱码一区二区| 日本乱码高清不卡字幕| 黄色av网址在线| 欧美成年人视频| 深夜视频一区二区| 精品蜜桃一区二区三区| 欧美日韩国产免费观看| 鲁一鲁一鲁一鲁一av| 91麻豆swag| 好看的av在线| 精品国产123| 超碰免费公开在线| 国产精品男女猛烈高潮激情| 日韩a级大片| 国产日韩av网站| 国产91丝袜在线18| 91 在线视频| 欧美日韩电影一区| 黄色网址在线播放| 欧美一区二区.| 欧洲亚洲视频| 久激情内射婷内射蜜桃| 国产成人无遮挡在线视频| 手机av在线看| 欧美日韩免费不卡视频一区二区三区 | www.日本精品| 日韩精品999| 人成在线免费网站| 精品国产乱码一区二区三区四区| 午夜久久99| 青娱乐国产精品视频| 一色桃子久久精品亚洲| 中文字幕在线观看1| 亚洲一区av在线播放| 中文字幕资源网在线观看免费| 久久精品ww人人做人人爽| 亚洲国产高清视频| 中文字幕乱视频| 亚洲成人一区在线| 天天干视频在线观看| 国内外成人免费激情在线视频网站| 国产精品1luya在线播放| www.日本少妇| 99热99精品| www.毛片.com| 亚洲一区二区久久久| 成人涩涩视频| 91九色国产ts另类人妖| 国产伦理精品不卡| 久久精品国产亚洲AV无码男同| 精品捆绑美女sm三区| 国产99在线观看| 欧美日韩国产精品一区二区| 日日夜夜免费精品视频| 男人的午夜天堂| 日韩欧美在线1卡| 高清精品在线| 日韩一区不卡| 国产精品一区二区免费不卡 | 精品国产国产综合精品| 91精品国产一区二区三区| 婷婷在线播放| 久久久国产精品一区二区三区| 噜噜噜久久亚洲精品国产品小说| 亚洲精品成人av久久| 日韩片之四级片| 手机av在线| 亚洲一区bb| 国产ts人妖一区二区| www.国产com| 综合国产在线视频| aiai久久| 中文字幕国产传媒| 亚洲精品欧美综合四区| av女名字大全列表| 91精品久久久久久久久不口人| 一区在线视频观看| 亚洲人成人无码网www国产| 国产成人在线观看免费网站| 三年中文高清在线观看第6集| 蜜乳av一区二区三区| 久久一二三四区| 在线日韩日本国产亚洲| 亚洲国产精品免费视频| 熟女人妇 成熟妇女系列视频| 亚洲色图欧洲色图| 欧美一区二区三区少妇| 亚洲free性xxxx护士hd| 亚洲一区观看| 青青草成人免费| 一区二区三区在线播放欧美| 国语一区二区三区| 欧美成人乱码一二三四区免费| 亚洲成a人片在线不卡一二三区| aaa日本高清在线播放免费观看|