多系统中近场通信单元访问方法及装置、电子设备、存储介质与流程

专利查询2023-7-19  92



1.本技术实施例涉及跨操作系统中电子设备的访问技术,尤其涉及一种多系统中近场通信单元访问方法及装置、电子设备、存储介质。


背景技术:

2.当前的基于linux的系统上,近场通信(near field communication,nfc)软件架构的实现比较混乱,大部分的功能都由厂商各自实现,所以导致了在linux上很少有能够完美解决使用nfc功能的办法。而android系统可以通过hal层概念去适配设备厂商提供的不同功能接口,从而可以对上层应用提供一套统一的接口库,减少上层应用使用底层设备不兼容的问题也可以降低硬件花费成本。目前,并没有针对linux系统中对nfc电子设备访问的相关技术可供参考。


技术实现要素:

3.有鉴于此,本技术实施例提供一种多系统中近场通信单元访问方法及装置、电子设备、存储介质,以至少部分地解决现有技术中存在的以上技术问题。
4.根据本技术实施例的第一方面,提供一种多系统中近场通信单元访问方法,在第一系统的第一接口层中设置近场通信数据转换插件,所述近场通信数据转换插件与第二系统中的近场通信服务连接;其中,所述第一系统部署于所述第二系统中;所述方法包括:
5.在所述第一系统中的近场通信单元的驱动产生近场通信数据的情况下,对所述近场通信数据进行对应的类近场通信接口层的调用处理;
6.所述近场通信数据转换插件捕获所述类近场通信接口层处理后的所述近场通信数据,并将所捕获的所述近场通信数据向所述第二系统中的所述近场通信服务发送;
7.所述近场通信服务将所述近场通信数据向所述第二系统中的对应应用发送。
8.在某些实施例中,对所述近场通信数据进行对应的类近场通信接口层的调用处理,包括:
9.将所述近场通信数据经nfc设备节点层向近场通信控制器接口硬件抽象层(nfc controller interface hardware abstraction layer,nci hal)发送;
10.近场通信控制器接口libnfc-nci层通过所述nci hal层获取所述近场通信数据,并将所述近场通信数据转发至应用框架层。
11.在某些实施例中,所述近场通信数据转换插件捕获所述类近场通信接口层处理后的所述近场通信数据,并将所捕获的所述近场通信数据向所述第二系统中的所述近场通信服务发送,包括:
12.所述近场通信数据转换插件通过所述第一接口层捕获所述近场通信数据,并将所捕获的所述近场通信数据通过本地进程间通信(inter-process communication,ipc)机制向所述近场通信服务发送。
13.在某些实施例中,所述第一接口层包括以下之一:
14.libnfc-nci层、nfc设备节点层、nci hal层和应用框架层。
15.在某些实施例中,所述第一系统包括android操作系统、android开放源代码项目aosp和基于aosp的衍生系统;
16.所述基于aosp的衍生系统包括以下至少之一:如小米公司推出的米柚(miui)操作系统、华为公司推出的移动终端操作系统(emui)、三星公司推出的操作系统(one ui)等。
17.在某些实施例中,所述第二系统包括gnu/linux操作系统,以及gnu/linux操作系统的衍生系统等;
18.所述gnu/linux操作系统包括以下至少之一:ubuntu、debian、redhat等。需要说明的是,第二操作系统并不限定是运行在物理机上的,也可以是托管在其它操作系统上的操作系统,例如windows系统中的wsl等。
19.在某些实施例中,所述近场通信服务将所述近场通信数据向所述第二系统中的对应应用发送,包括:
20.所述gnu/linux操作系统及其衍生系统启动时运行所述近场通信服务,并在所述gnu/linux操作系统及其衍生系统的架构framework层封装与所述gnu/linux操作系统及其衍生系统中的应用对接的所述近场通信接口库文件;
21.并触发所述近场通信接口库文件将所述近场通信数据发送到所述近场通信接口库文件中的对应应用中。
22.根据本技术实施例的第二方面,提供一种多系统中近场通信单元访问装置,包括:
23.设置单元,用于在第一系统的第一接口层中设置近场通信数据转换插件,所述近场通信数据转换插件与第二系统中的近场通信服务连接;其中,所述第一系统部署于所述第二系统中;
24.处理单元,用于在所述第一系统中的近场通信单元的驱动产生近场通信数据的情况下,对所述近场通信数据进行对应的类近场通信接口层的调用处理;
25.第一触发单元,用于触发所述近场通信数据转换插件捕获所述类近场通信接口层处理后的所述近场通信数据,并将所捕获的所述近场通信数据向所述第二系统中的所述近场通信服务发送;
26.第二触发单元,用于触发所述近场通信服务将所述近场通信数据向所述第二系统中的对应应用发送。
27.在某些实施例中,所述处理单元,还用于:
28.将所述近场通信数据经nfc设备节点层向nci hal发送;
29.libnfc-nci层通过所述nci hal层获取所述近场通信数据,并将所述近场通信数据转发至应用框架层。
30.在某些实施例中,第一触发单元,还用于触发所述近场通信数据转换插件通过所述第一接口层捕获所述近场通信数据,并将所捕获的所述近场通信数据通过ipc机制向所述第二系统中的所述近场通信服务发送。
31.在某些实施例中,所述第一接口层包括以下之一:
32.libnfc-nci层、nfc设备节点层、nci hal层和应用框架层等。
33.在某些实施例中,所述第一系统包括android操作系统、android开放源代码项目aosp和基于aosp的衍生系统等;
34.所述基于aosp的衍生系统包括以下至少之一:miui、emui、one ui等。
35.在某些实施例中,所述第二系统包括gnu/linux操作系统,以及gnu/linux操作系统的衍生系统等;
36.所述gnu/linux操作系统包括以下至少之一:ubuntu、debian、redhat等。
37.在某些实施例中,所述gnu/linux操作系统及其衍生系统启动时运行所述近场通信服务,并在所述gnu/linux操作系统及其衍生系统的架构framework层封装与所述gnu/linux操作系统及其衍生系统中的应用对接的所述近场通信接口库文件;
38.所述第二触发单元,还用于触发所述近场通信接口库文件将所述近场通信数据发送到所述近场通信接口库文件中的对应应用中。
39.根据本技术实施例的第三方面,提供一种电子设备,包括处理器,存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现所述的多系统中近场通信单元访问方法的步骤。
40.根据本技术实施例的第四方面,提供一种可读非暂时性存储介质,所述存储介质上存储程序或指令,所述程序或指令被处理器执行时实现所述的多系统中近场通信单元访问方法的步骤。
41.本技术实施例中,通过在第一系统中的第一接口层中设置近场通信数据转换插件,该近场通信数据转换插件与第二系统中的近场通信服务建立连接,这样,当第二系统需要开启近场通信的情况下,可以由近场通信数据转换插件通过第一系统的nci hal对近场通信单元的驱动进行访问,从而获取近场通信数据,再将所获取的近场通信数据向第二系统中的相关应用发送,供相应的应用使用。本技术实施例解决了在linux系统中,通过android hal层访问第一系统中的nfc功能,从而使第二系统中的应用也可以便捷地调用nfc功能,实现了多系统中对nfc功能的支持,提升了用户的使用体验,且无需对各操作系统进行较大的改动。
附图说明
42.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍。显而易见地,下面描述中的附图是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
43.图1为本技术实施例的多系统中近场通信单元访问方法的流程示意图;
44.图2为本技术实施例的多系统中近场通信单元访问的实现架构示意图;
45.图3为本技术实施例的多系统中近场通信单元访问流程示意图;
46.图4为本技术实施例的多系统中近场通信单元访问装置的组成结构示意图;
47.图5为本技术实施例的电子设备的结构图。
具体实施方式
48.以下结合附图,详细阐明本技术实施例技术方案的实质。
49.图1为本技术实施例的多系统中近场通信单元访问方法的流程示意图,如图1所示,本技术实施例的多系统中近场通信单元访问方法包括以下处理步骤:
50.步骤101,在第一系统的第一接口层中设置近场通信数据转换插件,所述近场通信数据转换插件与第二系统中的近场通信服务连接。
51.本技术实施例中,所述第一系统部署于所述第二系统中。作为一种示例,所述第一系统包括android操作系统、android开放源代码项目aosp和基于aosp的衍生系统等;所述基于aosp的衍生系统包括以下至少之一:如小米公司推出的米柚(miui)操作系统、华为公司推出的移动终端操作系统(emui)、三星公司推出的操作系统(one ui)等。
52.作为一种示例,所述第二系统包括gnu/linux操作系统,以及gnu/linux操作系统的衍生系统;所述gnu/linux操作系统包括以下至少之一:ubuntu、debian、redhat等。需要说明的是,第二操作系统并不限定是运行在物理机上的,也可以是托管在其它操作系统上的操作系统,例如windows系统中的wsl等。
53.本领域技术人员应当理解,本技术实施例的技术方案适用于所有多操作系统下的某操作系统不能对近场通信单元进行访问的场景下。上述多操作系统不限于linux系统及android系统的情形,本技术实施例仅是将上述两操作系统作为一种应用典型而进行的示例性说明。
54.当前linux系统中,nfc软件架构的实现比较混乱,nfc大部分功能都由厂商各自实现,导致linux系统不能实现对nfc功能的访问。本技术实施例通过在linux系统中安装近场通信服务(linux nfc serivice),在linux framework层封装对上层应用的统一nfc接口库文件,在android系统的libnfc-nci中添加近场通信数据转换插件(nfc date transmission数据转发插件);nfc date transmission数据转发插件对接android系统所有libnfc-nci接口函数,当有nfc数据更新时,通过nfc date transmission数据转发插件将nfc数据向linux系统中的linux nfc serivice转发,并由linux nfc serivice向linux系统中的相关应用提供nfc数据。作为一种实现方式,android系统的nfc date transmission数据转发插件通过本地ipc通信机制与linux nfc serivice进行数据通信。
55.步骤101是基础步骤,是实现本技术实施例的技术方案的基础。
56.步骤102,在所述第一系统中的近场通信单元的驱动产生近场通信数据的情况下,对所述近场通信数据进行对应的类近场通信接口层的调用处理。
57.本技术实施例中,近场通信单元的驱动产生近场通信数据,可以是由android系统的nfc设备主动触发产生,例如,android系统的nfc设备响应于linux系统中的相关应用通过linux nfc serivice及nfc date transmission数据转发插件的nfc数据触发指令,通过触发指令获取待传输的nfc数据。
58.近场通信单元的驱动产生近场通信数据,可以是由android系统的nfc设备被动产生,即android系统的nfc设备响应于其他电子设备的nfc设备的磁场而被动接收到的nfc数据。
59.当nfc设备中有nfc数据更新时,通过nfc date transmission数据转发插件将nfc数据向linux系统中的linux nfc serivice转发,linux nfc serivice再把接收到的nfc数据发送到linux nfc接口库文件中,linux nfc接口库文件再将所接收到的nfc数据发送到该库文件的对应应用中。
60.本技术实施例中,类近场通信接口层包括但不限于libnfc-nci层、nfc设备节点层、nci hal层和应用框架层。对nfc数据进行对应的类近场通信接口层的调用处理,包括:
将nfc数据经nfc设备节点层向nci hal发送;libnfc-nci层通过所述nci hal层获取nfc数据,并将nfc数据转发至应用框架层。
61.步骤103,近场通信数据转换插件捕获所述类近场通信接口层处理后的所述近场通信数据,并将所捕获的所述近场通信数据向所述第二系统中的所述近场通信服务发送。
62.本技术实施例中,android可以通过hal层去适配不同设备厂商提供的不同功能接口,从而可以对上层应用提供一套统一的接口库,减少上层应用使用底层设备不兼容的问题。
63.本技术实施例中,第一接口层包括libnfc-nci层、nfc设备节点层、nci hal层和应用框架层等。本技术实施例的近场通信数据转换插件可以设置于上述接口层中的任一层中。
64.nfc date transmission数据转发插件通过ipc通信机制将nfc数据向linux系统中的linux nfc serivice转发。
65.步骤104,近场通信服务将所述近场通信数据向所述第二系统中的对应应用发送,以供所述应用使用所述近场通信数据。
66.本技术实施例中,linux系统启动时运行近场通信服务,并在linux framework层封装与linux系统中的应用对接的近场通信接口库文件。近场通信服务通过把接收到的nfc数据发送到linux nfc接口库文件中,linux nfc接口库文件再将所接收到的nfc数据发送到该库文件的对应应用中。
67.本技术实施例中,linux系统中的应用包括使用通信功能的任何应用,如即时通信应用、支持网络支付的相关应用等。
68.以下结合具体示例,对本技术实施例的技术方案作进一步的详细说明。这里,以第一系统为android系统,第二系统为linux系统为例进行说明,其他多操作系统也适用于本技术实施例的技术方案。
69.图2为本技术实施例的多系统中近场通信单元访问的实现架构示意图,如图2所示,由于当前linux系统不能实现对nfc功能的访问,本技术实施例中,可以充分利用android hal层的优势,在android的hal层之上的libnfc-nci中增加一个接口功能转发的插件,将所有跟nfc相关的功能接口通过本地ipc通信机制,与linux系统的linux nfc service进行数据通信,再由linux nfc service将所获取的nfc设备的nfc数据发送到linux系统的上层应用中使用。
70.本技术实施例中,在linux系统中,主要进行以下的配置操作:创建linux nfc serivice,封装对上层应用的统一nfc接口库文件(linux nfc lib),通过linux nfc lib接收linux nfc serivice的nfc数据,并将所接收的nfc数据转发到linux apps中,实现linux系统与android系统中的nfc设备的数据交互功能。
71.在android系统中,主要进行以下的配置操作:在libnfc-nci中添加数据转发插件nfc date transmission,并使nfc date transmission数据转发插件适配所有libnfc-nci中的功能;在libnfc-nci接收到nfc设备的nfc数据的情况下,nfc date transmission数据转发插件将所接收到的nfc数据通过本地ipc通信机制发送到linux系统的nfc serivice中。
72.本技术实施例中,在android系统中安装nfc设备时,nfc设备的驱动driver创建一
个misc设备文件,在misc设备文件中实现nfc设备的注册。通过hal层实现libnfc-nci定义,利用misc设备的文件操作接口与misc设备driver的通信。libnfc-nci利用hal层,并使用nci接口来操作nfc设备的adapter。
73.android系统中,杂项设备功能是嵌入式系统中常见的设备驱动。在内核的include/linux目录下设置有misc device.h文件,可以自定义misc device从设备。由于字符设备不符合预先确定的字符设备范畴,所有设备采用主编号10,归于misc device,而杂项设备注册misc_register即是利用主编号10来调用register_chrdev(),将字符设备存放在misc类中。也就是说,misc设备是特殊的字符设备。混杂设备使用miscdevice结构体来表述。miscdevice共享一个主设备号misc_major即主编号10,各设备的次设备号不同。所有的misc device设备形成链表,对设备访问时内核根据次设备号查找对应的misc device设备,然后调用其file_operations结构中注册的文件操作接口进行操作。在内核中使用struct misc device表示misc device设备。miscdevice的api设置于drivers/char/misc.c中,misc设备的初始化、注册、注销都在drivers/char/misc.c文件中进行。
74.android系统中hal层被编译为动态连接库/system/lib/hw/nfc-nci.xxx.default,其中hal要实现的接口定义在hardware/libhardware/include/hardware/nfc.h中,接口定义示例如下:
75.open()
76.close()
77.write()
78.core_initialized()
79.pre_discover()
80.control_granted()
81.power_cycle()
82.图2所示的示例,仅是以nfc数据转发插件nfc date transmission设置于libnfc-nci为例进行的说明。
83.作为一种实现方式,nfc数据转发插件nfc date transmission还可以设置于android nfc device设备节点层中。
84.作为一种实现方式,nfc数据转发插件nfc date transmission还可以设置于android nci hal method层中。
85.作为一种实现方式,nfc数据转发插件nfc date transmission还可以设置于com.android.nfc应用架构层中。
86.本技术实施例中,当nfc数据进行了类近场通信接口层的调用处理后,nfc数据转发插件nfc date transmission调用这些nfc数据,并向linux nfc serivice发送,由linux nfc serivice将相应的nfc数据转发给对应的应用,供相关应用使用nfc数据。
87.图3为本技术实施例的多系统中近场通信单元访问流程示意图,如图3所示,本技术实施例的多系统中近场通信单元访问的流程具体实现步骤如下:
88.linux系统运行时启动linux nfc serivice服务,在android系统中的nfc设备的driver有更新的nfc数据的情况下,nfc设备driver将nfc数据传送给nfc dev设备节点层,nfc dev设备节点层将nfc数据发送至nci hal method,libnfc-nci通过nci hal method获
取nfc数据,nfc date transmission数据转发插件通过libnfc-nci层而获取nfc数据,nfc date transmission数据转发插件将所获取的nfc数据通过本地ipc通信机制发送到linux nfc serivice服务,linux nfc serivice服务将接收到的nfc数据再发送至封装好的linux nfc接口库文件中,linux nfc接口库文件再将nfc数据发送到使用linux nfc接口库文件的相应apps中。
89.图4为本技术实施例的多系统中近场通信单元访问装置的组成结构示意图,如图4所示,本技术实施例的多系统中近场通信单元访问装置包括:
90.设置单元40,用于在第一系统的第一接口层中设置近场通信数据转换插件,所述近场通信数据转换插件与第二系统中的近场通信服务连接;其中,所述第一系统部署于所述第二系统中;
91.处理单元41,用于在所述第一系统中的近场通信单元的驱动产生近场通信数据的情况下,对所述近场通信数据进行对应的类近场通信接口层的调用处理;
92.第一触发单元42,用于触发所述近场通信数据转换插件捕获所述类近场通信接口层处理后的所述近场通信数据,并将所捕获的所述近场通信数据向所述第二系统中的所述近场通信服务发送;
93.第二触发单元43,用于触发所述近场通信服务将所述近场通信数据向所述第二系统中的对应应用发送。
94.作为一种实现方式,所述处理单元41,还用于:
95.将所述近场通信数据经nfc设备节点层向nci hal发送;
96.libnfc-nci层通过所述nci hal层获取所述近场通信数据,并将所述近场通信数据转发至应用框架层。
97.作为一种实现方式,所述第一触发单元42,还用于触发所述近场通信数据转换插件通过所述第一接口层捕获所述近场通信数据,并将所捕获的所述近场通信数据通过ipc机制向所述第二系统中的所述近场通信服务发送。
98.作为一种实现方式,所述第一接口层包括以下之一:
99.libnfc-nci层、nfc设备节点层、nci hal层和应用框架层。
100.作为一种实现方式,所述第一系统包括android操作系统、android开放源代码项目aosp和基于aosp的衍生系统等;
101.所述基于aosp的衍生系统包括以下至少之一:miui、emui、one ui等。
102.作为一种实现方式,所述第二系统包括gnu/linux操作系统,以及gnu/linux操作系统的衍生系统等;
103.所述gnu/linux操作系统包括以下至少之一:ubuntu、debian、redhat等。
104.作为一种实现方式,所述gnu/linux操作系统及其衍生系统启动时运行所述近场通信服务,并在所述gnu/linux操作系统及其衍生系统的架构framework层封装与所述gnu/linux操作系统及其衍生系统中的应用对接的所述近场通信接口库文件;
105.所述第二触发单元43,还用于触发所述近场通信接口库文件将所述近场通信数据发送到所述近场通信接口库文件中的对应应用中。
106.在示例性实施例中,设置单元40、处理单元41、第一触发单元42、第二触发单元43等可以被一个或多个中央处理器(cpu,central processing unit)、应用专用集成电路
(asic,application specific integrated circuit)、数字信号处理器(digital signal processor,dsp)、可编程逻辑器件(pld,programmable logic device)、复杂可编程逻辑器件(cpld,complex programmable logic device)、现场可编程门阵列(fpga,field-programmable gate array)、通用处理器、控制器、微控制器(mcu,micro controller unit)、微处理器(microprocessor)、或其他电子元件实现,用于执行前述实施例的多系统中近场通信单元访问方法的步骤。
107.在本公开实施例中,图4示出的多系统中近场通信单元访问装置中各个单元执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
108.下面,参考图5来描述根据本技术实施例的电子设备11。
109.如图5所示,电子设备11包括一个或多个处理器111和存储器112。
110.处理器111可以是中央处理单元(cpu)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备11中的其他组件以执行期望的功能。
111.存储器112可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(ram)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(rom)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器111可以运行所述程序指令,以实现上文所述的本技术的各个实施例的多系统中近场通信单元访问方法以及/或者其他期望的功能。在所述计算机可读存储介质中还可以存储诸如输入信号、信号分量、噪声分量等各种内容。
112.在一个示例中,电子设备11还可以包括:输入装置113和输出装置114,这些组件通过总线系统和/或其他形式的连接机构(图5中未示出)互连。
113.该输入装置113可以包括例如键盘、鼠标等等。
114.该输出装置114可以向外部输出各种信息,包括确定出的距离信息、方向信息等。该输出装置114可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
115.当然,为了简化,图5中仅示出了该电子设备11中与本技术有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备11还可以包括任何其他适当的组件。
116.本技术实施例还记载了一种可读非暂时性存储介质,所述存储介质上存储程序或指令,所述程序或指令被处理器执行时实现前述实施例的多系统中近场通信单元访问方法的步骤
117.除了上述方法和设备以外,本技术实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本技术各种实施例的方法中的步骤。
118.所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本技术实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如java、c++等,还包括常规的过程式程序设计语言,诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软
件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
119.此外,本技术的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本技术各种实施例的方法中的步骤。
120.所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
121.以上结合具体实施例描述了本技术的基本原理,但是,需要指出的是,在本技术中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本技术的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本技术为必须采用上述具体的细节来实现。
122.本技术中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“如但不限于”,且可与其互换使用。
123.还需要指出的是,在本技术的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本技术的等效方案。
124.提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本技术。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本技术的范围。因此,本技术不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
125.为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本技术的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。

技术特征:
1.一种多系统中近场通信单元访问方法,其特征在于,在第一系统的第一接口层中设置近场通信数据转换插件,所述近场通信数据转换插件与第二系统中的近场通信服务连接;其中,所述第一系统部署于所述第二系统中;所述方法包括:在所述第一系统中的近场通信单元的驱动产生近场通信数据的情况下,对所述近场通信数据进行对应的类近场通信接口层的调用处理;所述近场通信数据转换插件捕获所述类近场通信接口层处理后的所述近场通信数据,并将所捕获的所述近场通信数据向所述第二系统中的所述近场通信服务发送;所述近场通信服务将所述近场通信数据向所述第二系统中的对应应用发送。2.根据权利要求1所述的方法,其特征在于,对所述近场通信数据进行对应的类近场通信接口层的调用处理,包括:将所述近场通信数据经nfc设备节点层向近场通信控制器接口硬件抽象层nci hal发送;近场通信控制器接口libnfc-nci层通过所述nci hal层获取所述近场通信数据,并将所述近场通信数据转发至应用框架层。3.根据权利要求1所述的方法,其特征在于,所述近场通信数据转换插件捕获所述类近场通信接口层处理后的所述近场通信数据,并将所捕获的所述近场通信数据向所述第二系统中的所述近场通信服务发送,包括:所述近场通信数据转换插件通过所述第一接口层捕获所述近场通信数据,并将所捕获的所述近场通信数据通过本地进程间通信ipc机制向所述第二系统中的所述近场通信服务发送。4.根据权利要求1所述的方法,其特征在于,所述第一接口层包括以下之一:libnfc-nci层、nfc设备节点层、nci hal层和应用框架层。5.根据权利要求1至4任一项所述的方法,其特征在于,所述第一系统包括android操作系统、android开放源代码项目aosp和基于aosp的衍生系统;所述基于aosp的衍生系统包括以下至少之一:miui、emui、one ui。6.根据权利要求1至4任一项所述的方法,其特征在于,所述第二系统包括gnu/linux操作系统,以及gnu/linux操作系统的衍生系统;所述gnu/linux操作系统包括以下至少之一:ubuntu、debian、redhat。7.根据权利要求6所述的方法,其特征在于,所述近场通信服务将所述近场通信数据向所述第二系统中的对应应用发送,包括:所述gnu/linux操作系统启动时运行所述近场通信服务,并在所述gnu/linux操作系统架构framework层封装与所述gnu/linux操作系统中的应用对接的所述近场通信接口库文件;并触发所述近场通信接口库文件将所述近场通信数据发送到所述近场通信接口库文件中的对应应用中。8.一种多系统中近场通信单元访问装置,其特征在于,所述装置包括:设置单元,用于在第一系统的第一接口层中设置近场通信数据转换插件,所述近场通信数据转换插件与第二系统中的近场通信服务连接;其中,所述第一系统部署于所述第二系统中;
处理单元,用于在所述第一系统中的近场通信单元的驱动产生近场通信数据的情况下,对所述近场通信数据进行对应的类近场通信接口层的调用处理;第一触发单元,用于触发所述近场通信数据转换插件捕获所述类近场通信接口层处理后的所述近场通信数据,并将所捕获的所述近场通信数据向所述第二系统中的所述近场通信服务发送;第二触发单元,用于触发所述近场通信服务将所述近场通信数据向所述第二系统中的对应应用发送。9.根据权利要求8所述的装置,其特征在于,所述处理单元,还用于:将所述近场通信数据经nfc设备节点层向nci hal发送;libnfc-nci层通过所述nci hal层获取所述近场通信数据,并将所述近场通信数据转发至应用框架层。10.根据权利要求8所述的装置,其特征在于,所述第一触发单元,还用于触发所述近场通信数据转换插件通过所述第一接口层捕获所述近场通信数据,并将所捕获的所述近场通信数据通过ipc机制向所述第二系统中的所述近场通信服务发送。11.根据权利要求8所述的装置,其特征在于,所述第一接口层包括以下之一:libnfc-nci层、nfc设备节点层、nci hal层和应用框架层。12.根据权利要求8至11任一项所述的装置,其特征在于,所述第一系统包括android操作系统、android开放源代码项目aosp和基于aosp的衍生系统;所述基于aosp的衍生系统包括以下至少之一:miui、emui、one ui。13.根据权利要求8至11任一项所述的装置,其特征在于,所述第二系统包括gnu/linux操作系统,以及gnu/linux操作系统的衍生系统;所述gnu/linux操作系统包括以下至少之一:ubuntu、debian、redhat。14.根据权利要求13所述的装置,其特征在于,所述gnu/linux操作系统启动时运行所述近场通信服务,并在所述gnu/linux操作系统架构framework层封装与所述gnu/linux操作系统中的应用对接的所述近场通信接口库文件;所述第二触发单元,还用于触发所述近场通信接口库文件将所述近场通信数据发送到所述近场通信接口库文件中的对应应用中。15.一种电子设备,其特征在于,包括处理器,存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现权利要求1至7中任一项所述的多系统中近场通信单元访问方法的步骤。16.一种可读非暂时性存储介质,其特征在于,所述存储介质上存储程序或指令,所述程序或指令被处理器执行时实现权利要求1至7中任一项所述的多系统中近场通信单元访问方法的步骤。

技术总结
本申请是关于一种多系统中近场通信单元访问方法及装置、电子设备、存储介质。所述方法包括:在所述第一系统中的近场通信单元的驱动产生近场通信数据的情况下,对所述近场通信数据进行对应的类近场通信接口层的调用处理;近场通信数据转换插件捕获所述类近场通信接口层处理后的所述近场通信数据,并将所捕获的所述近场通信数据向所述第二系统中的所述近场通信服务发送;近场通信服务将所述近场通信数据向所述第二系统中的对应应用发送。本申请实现了多系统中对NFC功能的支持,提升了用户体验。验。验。


技术研发人员:王锐
受保护的技术使用者:北京鲸鲮信息系统技术有限公司
技术研发日:2021.12.07
技术公布日:2022/3/8

最新回复(0)