更多内容请访问:与华为共建的鸿蒙技术社区正式https://harmonyos.51cto.com介绍通常我们在开发鸿蒙北向应用时,不能调用开发环境没有提供的接口,而且我们也知道鸿蒙开发分为北向和南向,所以我们如何调用南翔写的设备驱动程序?下面我们以熊派开发板控制LED的案例来了解一下。南翔写完LED驱动后,他们还会自定义一个JSAPI接口来调用他们开发的LED灯驱动,这部分称为系统定义接口。南向驱动如何开发,系统定义接口如何完成,可以参考另一位同学的文章:【FFH】小熊派添加自定义JSAPI接口流程(以点亮LED为例))而我们在北向方向是无法直接调用环境不自带的接口的。我们需要自定义JS接口,即在系统接口文件中定义一个JS接口,以便与熊派开发板进行交互。接下来,让我们看看如何操作它。相关概念JS自定义接口:当我们需要使用一些开发环境没有提供给我们的能力时,我们可以自定义一些接口。系统自定义接口:我们定义了JS接口后,是不能直接使用的。定义的接口必须在系统代码中完成。1.创建工程文件工程类型:ApplicationLanguage:JSD设备类型:SmartVision2.添加接口定义首先,如果要调用系统没有提供的接口,需要在系统接口文件中定义一个JS接口,这里我们在@system.app.d.ts文件中定义接口.找到后,添加你需要定义的接口。接口必须是你在系统代码中实现的接口(即需要参考南向系统接口开发),必须是南向封装好的驱动接口。添加文件,添加完成后可以在代码中调用。具体文件位置如上图所示。这里我们以LED为例,在@system.app.d.ts文件中的exportdefaultclassApp{}类中添加这样一个接口。exportdefaultclassApp{/***获取应用的config.json文件中的声明信息。*/staticgetInfo():AppResponse;/***销毁当前能力。*/静态终止():无效;//自定义接口staticledcontrol(options:{code:number;success?:(res:string)=>void;fail?:(res:string,code:number)=>void;complete?:()=>void;}):void;}该接口是控制LED灯的开关。code:指令码0:关闭LED1:开启LED2:led状态反转成功,失败:状态回调函数res:回复请求,code:返回当前led状态,0:关闭状态,1:开启状态。这样我们的JS自定义界面就完成了。3.编写页面代码首先是index.hml代码:
