鴻蒙OS 定義HarmonyOS IDL接口

2020-09-19 10:45 更新

HarmonyOS IDL 簡介

HarmonyOS Interface Definition Language(簡稱 HarmonyOS IDL)是 HarmonyOS 的接口描述語言。HarmonyOS IDL 與其他接口語言類似,通過 HarmonyOS IDL 定義客戶端與服務端均認可的編程接口,可以實現(xiàn)在二者間的跨進程通信(IPC,Inter-Process Communication)??邕M程通信意味著我們可以在一個進程訪問另一個進程的數(shù)據(jù),或調用另一個進程的方法。

通常我們把應用接口提供方(供調用)稱為服務端,調用方稱為客戶端??蛻舳送ㄟ^綁定服務端的 Ability 來與之進行交互,類似于綁定服務。關于 DevEco Studio 接口語言的詳細描述請參考HarmonyOS IDL 接口使用規(guī)范。

說明

只能使用 Java 或 C++ 語言構建 .idl 文件,因此僅 Java、Java+JS、C/C++ 工程支持IDL。

創(chuàng)建 .idl 文件

  1. 在已經創(chuàng)建/打開的 HarmonyOS 工程中,選擇 module 目錄或其子目錄,點擊鼠標右鍵,選擇 New>Idl File。

img

  1. 創(chuàng)建 IDL File??梢灾苯虞斎?IDL 接口名稱,也可以通過包名格式定義 idl 接口名稱。兩種方式的差異僅在于 .idl 文件的文件目錄結構。

  • 按名稱創(chuàng)建,創(chuàng)建 IDL File 時,輸入接口名稱,直接點擊 OK。

img

DevEco Studio 在相應“module”的 src>main 路徑下生成 idl 文件夾,并按照對應模塊的包名生成同樣的目錄結構及 IDL 文件。

img

  • 按包名創(chuàng)建,自定義 .idl 文件存儲路徑和接口名稱。創(chuàng)建“IDL File”時,按照包名創(chuàng)建 IDL 文件。包名利用“.”作為分隔符,如輸入“com.huawei.test.MyIdlInterface”。 img

DevEco Studio 在相應“module”的 src>main 路徑下生成 idl 文件夾,并按照輸入的包名生成相應目錄結構及 IDL 文件。可以在此路徑繼續(xù)新增 IDL 文件。

img

  1. 點擊工程右邊欄的 Gradle,在Tasks > ohos 中選擇 compileDebugIdlcompileReleaseIdl,對模塊下的 IDL 文件進行編譯。

img

  1. 編譯完成后,在 build > generated > source > Idl> {Package Name} 目錄下,生成對應的接口類、樁類和代理類,如下圖所示。

img

實現(xiàn) HarmonyOS IDL 接口

開發(fā)者可以使用 Java 或 C++ 編程語言構建 .idl 文件,關于 HarmonyOS IDL 接口的實現(xiàn)請參考IDL開發(fā)指南。

以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號