System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于fidl和someip协议的自动化工具制造技术_技高网

一种基于fidl和someip协议的自动化工具制造技术

技术编号:43192402 阅读:3 留言:0更新日期:2024-11-01 20:14
本发明专利技术涉及计算机领域,公开了一种基于fidl和someip协议的自动化工具,应用一种基于fidl和someip协议的通信方法,包括:根据需要实现的接口和功能,定义对应的CommonAPI的*.fidl接口描述文件和*.fdepl通信协议描述文件,通过自动化模块将CommonAPI的*.fidl描述文件转换为Android支持的HIDL接口描述符文件;将得到的描述符文件,通过自动化模块转换为对应的C++接口文件,并将对应的C++接口文件转化为android系统服务的接口调用代码以及调用someip实现的接口代码;根据android系统服务的接口调用代码以及调用someip实现的接口代码,通过自动化模块,生成对应的android JAVA中间层代码,app调用android JAVA中间层代码,然后调用到android native层服务,通过someip协议栈完成本地进程间通信,或者与远端设备的基于以太网的通信。实现FIDL描述符直接自动转换为HIDL,免去了开发HIDL接口的工作量。

【技术实现步骤摘要】

本专利技术涉及计算机领域,具体是一种基于fidl和someip协议的自动化工具


技术介绍

1、目前在android平台,使用someip协议栈进行通信,开发难度比较大:

2、1.someip是c++层的协议栈,大部分应用不能直接调用其接口进行通信,对于每一个具体的通信业务,都需要从上到下进行开发,过程繁琐,开发难度大;

3、2.因为实现的不统一,排查问题会变得十分困难,同时后续通信业务每次进行增加,都会从上层到底层重新写一遍,维护难度同样不小。


技术实现思路

1、本专利技术的目的在于克服现有技术的不足,提供一种基于fidl和someip协议的自动化工具,应用一种基于fidl和someip协议的通信方法,包括如下步骤:

2、步骤一,根据需要实现的接口和功能,定义对应的commonapi的*.fidl接口描述文件和*.fdepl通信协议描述文件,通过自动化模块将commonapi的*.fidl描述文件转换为android支持的hidl接口描述符文件;

3、步骤二,将得到的描述符文件,通过自动化模块转换为对应的c++接口文件,并将对应的c++接口文件转化为android系统服务的接口调用代码以及调用someip实现的接口代码;

4、步骤三,根据*.fidl接口描述文件,通过自动化模块,生成对应的android java中间层代码,app调用android java中间层代码,然后调用到android native层服务,通过someip协议栈完成本地进程间通信,或者与远端设备的基于以太网的通信。

5、进一步的,在自动化模块中建立了fidl数据类型和hidl数据类型之间的对应关系,根据hidl描述符文件,生成android侧的服务代码。

6、进一步的,所述的将得到的描述符文件,通过自动化模块转换为对应的c++接口文件,并将对应的c++接口文件转化为android系统服务的接口调用代码以及调用someip实现的接口代码,包括:

7、通过android的hidl工具,把hidl描述符文件转换为对应的hidl c++接口文件;通过commonapi tools转换(*.fidl)接口描述文件,为客户端和服务端生成someip c++接口文件;通过自动化模块,结合hidl c++接口文件,生成对应的android native层服务代码;通过自动化模块,结合someip c++接口文件,实现android native层服务到commonapisomeip c++接口的调用逻辑;通过commonapi someip c++接口,调用底层vsomeip协议栈,实现远端通信功能。

8、进一步的,所述的根据android系统服务的接口调用代码以及调用someip实现的接口代码,通过自动化模块,生成对应的android java中间层代码,app调用android java中间层代码,然后调用到android native层服务,完成通过someip进行android进程间通信,包括:

9、通过自动化模块,生成对应的android java中间层代码,所述的android java中间层代码包括manager;app调用java层的manager,然后调用到android native层服务,完成通过someip进行android进程间通信。

10、进一步的,所述的自动化模块采用hidl工具。

11、进一步的,所述的*.fidl接口描述文件用于生成上层someip c++接口代码,底层和someip协议栈通信。

12、进一步的,所述的hidl描述符文件用于实现android进程间通信,实现过程为从app层调用java层的manager,调用service层。

13、进一步的,所述的自动化模块还可采用aidl工具。

14、一种基于fidl和someip协议的通信自动化装置,应用述的一种基于fidl和someip协议的通信方法,包括显示模块、信息输入模块、自动化模块和输出模块;

15、所述的显示模块、信息输入模块、输出模块分别与所述的自动化模块连接。

16、优选的,所述的自动化模块用于将fidl描述符文件自动转换为hidl描述符文件,并根据fidl和hidl描述符,各自生成c++接口文件,通过自动化模块把两者的调用进行连接。

17、本专利技术的有益效果是:

18、1.fidl描述符直接自动转换为hidl,免去了开发hidl接口的工作量;

19、2.fidl和hidl描述符,各自生成的c++接口文件,通过自动化工具实现相互调用,免去了使用类似jni去调用someip接口的巨大工作量;

20、3.如果需要实现某一个通信接口的功能,只需要写一个fidl描述符文件,其它代码都自动生成。

21、4.实现的整体架构清晰,易于理解和维护。

本文档来自技高网...

【技术保护点】

1.一种基于fidl和someip协议的自动化工具,应用一种基于fidl和someip协议的通信方法,其特征在于,包括如下步骤:

2.根据权利要求1所述的一种基于fidl和someip协议的通信方法,其特征在于,在自动化模块中建立了FIDL数据类型和HIDL数据类型之间的对应关系,根据HIDL描述符文件,生成Android侧的服务代码。

3.根据权利要求2所述的一种基于fidl和someip协议的通信方法,其特征在于,所述的将得到的描述符文件,通过自动化模块转换为对应的C++接口文件,并将对应的C++接口文件转化为android系统服务的接口调用代码以及调用someip实现的接口代码,包括:

4.根据权利要求3所述的一种基于fidl和someip协议的通信方法,其特征在于,所述的根据android系统服务的接口调用代码以及调用someip实现的接口代码,通过自动化模块,生成对应的android JAVA中间层代码,app调用android JAVA中间层代码,然后调用到android native层服务,完成通过someip进行android进程间通信,包括:

5.根据权利要求4所述的一种基于fidl和someip协议的通信方法,其特征在于,所述的自动化模块采用HIDL工具。

6.根据权利要求4所述的一种基于fidl和someip协议的通信方法,其特征在于,所述的*.fidl接口描述文件用于生成上层someip C++接口代码,底层和someip协议栈通信。

7.根据权利要求6所述的一种基于fidl和someip协议的通信方法,其特征在于,所述的HIDL描述符文件用于实现android进程间通信,实现过程为从app层调用java层的manager,调用service层。

8.根据权利要求5所述的一种基于fidl和someip协议的通信方法,其特征在于,所述的自动化模块还可采用AIDL工具。

9.一种基于fidl和someip协议的自动化工具,其特征在于,应用权利要求1-8任一所述的一种基于fidl和someip协议的通信方法,包括显示模块、信息输入模块、自动化模块和输出模块;

10.根据权利要求9所述的一种基于fidl和someip协议的自动化工具,其特征在于,所述的自动化模块用于将FIDL描述符文件自动转换为HIDL描述符文件,并根据FIDL和HIDL描述符,各自生成C++接口文件,通过自动化模块把两者的调用进行连接。

...

【技术特征摘要】

1.一种基于fidl和someip协议的自动化工具,应用一种基于fidl和someip协议的通信方法,其特征在于,包括如下步骤:

2.根据权利要求1所述的一种基于fidl和someip协议的通信方法,其特征在于,在自动化模块中建立了fidl数据类型和hidl数据类型之间的对应关系,根据hidl描述符文件,生成android侧的服务代码。

3.根据权利要求2所述的一种基于fidl和someip协议的通信方法,其特征在于,所述的将得到的描述符文件,通过自动化模块转换为对应的c++接口文件,并将对应的c++接口文件转化为android系统服务的接口调用代码以及调用someip实现的接口代码,包括:

4.根据权利要求3所述的一种基于fidl和someip协议的通信方法,其特征在于,所述的根据android系统服务的接口调用代码以及调用someip实现的接口代码,通过自动化模块,生成对应的android java中间层代码,app调用android java中间层代码,然后调用到android native层服务,完成通过someip进行android进程间通信,包括:

5.根据权利要求4所述的一种基于fidl和someip协议...

【专利技术属性】
技术研发人员:窦翔
申请(专利权)人:成都航盛智行科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1