鴻蒙中支持har包和hsp包的創(chuàng)建,其中har包是靜態(tài)共享庫,編譯后會(huì)生成一個(gè)以har為后綴的文件。Hsp是動(dòng)態(tài)共享包,編譯后生成一個(gè)以hsp為后綴的文件。

Index.ets文件是HAR導(dǎo)出聲明文件的入口,HAR需要導(dǎo)出的接口,統(tǒng)一在Index.ets文件中導(dǎo)出。在編譯構(gòu)建HAR的過程中,不會(huì)將模塊中的C++代碼直接打包進(jìn).har文件中,而是將C++代碼編譯成動(dòng)態(tài)依賴庫.so文件放置在.har文件中的libs目錄下。
創(chuàng)建har包
選擇static library方式,并且包含native的選項(xiàng)
? 創(chuàng)建類以及函數(shù)
?
在CMaakeLists.txt文件中包含類的cpp文件,才能進(jìn)行編譯
napi的創(chuàng)建調(diào)用
將c++的代碼轉(zhuǎn)換為napi方式去做調(diào)用
?
napi中進(jìn)行重命名以及注冊(cè)
?
將napi的函數(shù)進(jìn)行設(shè)置導(dǎo)出共ark語言調(diào)用也就是ets中調(diào)用(這個(gè)的導(dǎo)出也就是so的接口導(dǎo)出)
?
因?yàn)樵赼rkts中是無法直接調(diào)用so的接口,需要通過napi中轉(zhuǎn)到ets中進(jìn)行調(diào)用 下面就是so中導(dǎo)出的接口通過napi中轉(zhuǎn)后,其他第三方就可以調(diào)用so的接口了。
設(shè)置so導(dǎo)出接口
最后需要再index.ets文件中設(shè)置arkts的接口導(dǎo)出,接口導(dǎo)出需要指明到具體文件上
調(diào)用so接口
生成har包后,就可將har包放到要調(diào)用的代碼目錄中了,放在entery的目錄上即可
?
安裝har包到項(xiàng)目中,前面是定義的har包的名稱,后面指定的是放到目錄中的har包。接著會(huì)提示錯(cuò)誤,最后,只要執(zhí)行install 就可以了,這樣就會(huì)將har包安裝到項(xiàng)目中了
?
項(xiàng)目中調(diào)用har包的導(dǎo)出接口,需要先用import方式導(dǎo)入
?
安裝在鴻蒙手機(jī)中,執(zhí)行下就可看到結(jié)果
?
審核編輯:劉清
-
HAR
+關(guān)注
關(guān)注
0文章
5瀏覽量
11000 -
HarmonyOS
+關(guān)注
關(guān)注
80文章
2153瀏覽量
36037
原文標(biāo)題:鴻蒙(Harmony OS)中Native層的SDK詳細(xì)解析
文章出處:【微信號(hào):哆啦安全,微信公眾號(hào):哆啦安全】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
鴻蒙OS開發(fā)實(shí)例:【Native C++】
鴻蒙OS與Fuchsia OS的異同
跟阿斌一起學(xué)鴻蒙(4). 分布式Hello Harmony的N種寫法
跟阿斌一起學(xué)鴻蒙(4). 分布式Hello Harmony的N種寫法
跟阿斌一起學(xué)鴻蒙(4). 分布式Hello Harmony的N種寫法
鴻蒙os系統(tǒng)是什么意思 鴻蒙os系統(tǒng)有什么作用
華為系統(tǒng)升級(jí)鴻蒙os
華為鴻蒙Harmony使用WIFI/IP連接調(diào)試的步驟有哪些呢
使用React Native構(gòu)建OS X桌面應(yīng)用
鴻蒙OS優(yōu)于安卓 未來將開源
鴻蒙OS正式發(fā)布 天生安全流暢
滴滴出行將支持Harmony OS2.0,余承東還宣布鴻蒙的開源路標(biāo)
harmony?os?2.0報(bào)名入口 如何報(bào)名harmonyos2.0報(bào)名?
史上增長最快的操作系統(tǒng)!Harmony OS設(shè)備接入量超過1.5億,鴻蒙3.0預(yù)覽版來了!鴻蒙生態(tài)圈已穩(wěn)!
鴻蒙OS和開源鴻蒙什么關(guān)系?
鴻蒙(Harmony OS)中Native層的SDK詳細(xì)解析
評(píng)論