鴻蒙中支持har包和hsp包的創(chuàng)建,其中har包是靜態(tài)共享庫,編譯后會生成一個以har為后綴的文件。Hsp是動態(tài)共享包,編譯后生成一個以hsp為后綴的文件。
Index.ets文件是HAR導出聲明文件的入口,HAR需要導出的接口,統(tǒng)一在Index.ets文件中導出。在編譯構建HAR的過程中,不會將模塊中的C++代碼直接打包進.har文件中,而是將C++代碼編譯成動態(tài)依賴庫.so文件放置在.har文件中的libs目錄下。
創(chuàng)建har包
選擇static library方式,并且包含native的選項 ? 創(chuàng)建類以及函數(shù)
?
在CMaakeLists.txt文件中包含類的cpp文件,才能進行編譯
napi的創(chuàng)建調用
將c++的代碼轉換為napi方式去做調用 ?
napi中進行重命名以及注冊 ?
將napi的函數(shù)進行設置導出共ark語言調用也就是ets中調用(這個的導出也就是so的接口導出) ?
因為在arkts中是無法直接調用so的接口,需要通過napi中轉到ets中進行調用 下面就是so中導出的接口通過napi中轉后,其他第三方就可以調用so的接口了。
設置so導出接口
最后需要再index.ets文件中設置arkts的接口導出,接口導出需要指明到具體文件上
調用so接口
生成har包后,就可將har包放到要調用的代碼目錄中了,放在entery的目錄上即可 ?
安裝har包到項目中,前面是定義的har包的名稱,后面指定的是放到目錄中的har包。接著會提示錯誤,最后,只要執(zhí)行install 就可以了,這樣就會將har包安裝到項目中了 ?
項目中調用har包的導出接口,需要先用import方式導入 ?
安裝在鴻蒙手機中,執(zhí)行下就可看到結果 ?
審核編輯:劉清
-
HAR
+關注
關注
0文章
5瀏覽量
10857 -
HarmonyOS
+關注
關注
79文章
1982瀏覽量
30574
原文標題:鴻蒙(Harmony OS)中Native層的SDK詳細解析
文章出處:【微信號:哆啦安全,微信公眾號:哆啦安全】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
鴻蒙OS開發(fā)實例:【Native C++】
![<b class='flag-5'>鴻蒙</b><b class='flag-5'>OS</b>開發(fā)實例:【<b class='flag-5'>Native</b> C++】](https://file1.elecfans.com/web2/M00/C8/31/wKgZomYZMTCAaDv3AAY5x13C324319.jpg)
評論