一种通过用户设备上第一应用建立无线连接的方法与设备与流程

文档序号:11932330阅读:197来源:国知局
一种通过用户设备上第一应用建立无线连接的方法与设备与流程

本申请涉及计算机领域,尤其涉及一种通过用户设备上第一应用建立无线连接的技术。



背景技术:

在现有技术中,若一个应用需要实现调用另一个应用的服务,例如,用户设备中的第三方应用若要实现调用某个无线连接应用的无线连接服务,一般是所述无线连接应用提供所述无线连接服务对应的SDK(Software Development Kit,软件开发工具包)给所述第三方应用,进而,所述第三方应用通过在自身应用中执行所述SDK中的代码实现无线连接服务。此时,对于所述第三方应用,在自身应用中执行其他应用的未知代码,存在安全隐患;而对于所述无线连接应用,将自身数据信息,如上述无线连接服务涉及到的无线接入点的接入信息直接提供至所述第三方应用则会存在信息泄露的风险。



技术实现要素:

本申请的目的是提供一种通过用户设备上第一应用建立无线连接的方法与设备。

根据本申请的一个方面,提供了一种通过用户设备上第一应用建立无线连接的方法,包括:

获取与第一应用工作于同一用户设备的第二应用发送的连接请求;

经由所述第一应用根据所述连接请求对应的目标无线接入点的接入信息建立所述用户设备与所述目标无线接入点的无线连接。

根据本申请的另一方面,还提供了一种通过用户设备上第一应用建立无线连接的设备,包括:

第一装置,用于获取与第一应用工作于同一用户设备的第二应用发送的连接请求;

第二装置,用于经由所述第一应用根据所述连接请求对应的目标无线接入点的接入信息建立所述用户设备与所述目标无线接入点的无线连接。

与现有技术相比,本申请中所述设备基于与所述第一应用工作于同一用户设备的第二应用发送的连接请求,经由所述第一应用根据所述连接请求对应的目标无线接入点的接入信息建立所述用户设备与所述目标无线接入点的无线连接。在此,对于有连接需求的所述第二应用,其只需要发出相应的连接请求,对应第一应用即可以有效地响应并执行完成所述用户设备与对应目标无线接入点的无线连接,从而让所述第二应用对应用户快速地感知到连接服务的实现。基于本申请,所述第二应用可以经由所述第一应用的连接操作实现连接请求的需要,而不需要在自身第二应用中嵌入并执行连接操作对应的执行代码,从而避免了在所述第二应用中执行其他应用的未知代码,给该第二应用带来安全隐患;同时,也避免了所述第一应用将自己的代码、或其他数据信息,如建立无线连接需要的所述接入信息直接提供至所述第二应用带来的信息泄露的风险。此外,基于本申请,所述第二应用通过所述第一应用建立无线连接,相比于传统技术中所述第一应用直接通过所述设备系统应用调用无线连接服务,前者通过第一应用获取到的可用目标无线接入点的选择范围更广,无线连接的稳定性也更佳。

进一步,在本申请的一个优选实施例中,所述设备还可以经由所述第一应用响应所述第二应用发送的关于无线接入点的查询请求,通过所述第一应用获取与所述查询请求对应的一个或多个候选无线接入点,并将所述一个或多个候选无线接入点提供至所述第二应用。在此基础上,进一步,在本申请的另一个优选实施例中,还可以在上述第一应用将所述一个或多个候选无线接入点提供至所述第二应用后,再经由第一应用获取来自第二应用的、关于所述一个或多个候选无线接入点中目标无线接入点的连接请求,进而,基于所述接入信息建立所述用户设备与所述目标无线接入点的无线连接。在此,本申请可以基于实际应用中所述第二应用对所述第一应用提供的连接服务的特定需要,对来自所述第二应用的不同请求进行区别响应,同时,还可以将请求对应的调用执行的结果反馈给所述第二应用。在上述实施例中,不论是第二应用的无线接入点的查询需求,还是其无线接入点的连接需求,或其他类型的连接服务需求,都是经由与所述第二应用对应的第一应用具体操作执行的,而不需要在所述第二应用中嵌入并执行连接操作对应的执行代码,从而避免了在所述第二应用中执行其他应用的未知代码,给该第二应用带来安全隐患;并且,也避免了所述第一应用将自己的代码、或其他数据信息,如建立无线连接需要的所述接入信息直接提供至所述第二应用带来的信息泄露的风险;同时,兼顾了第二应用对应用户对无线连接相关服务的体验优化。

附图说明

通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:

图1示出根据本申请一个方面的一种通过用户设备上第一应用建立无线连接的设备的设备示意图;

图2示出根据本申请一个优选实施例的一种通过用户设备上第一应用建立无线连接的设备的设备示意图;

图3示出根据本申请另一个方面的一种通过用户设备上第一应用建立无线连接的方法流程图;

图4示出根据本申请一个优选实施例的一种通过用户设备上第一应用建立无线连接的方法流程图。

附图中相同或相似的附图标记代表相同或相似的部件。

具体实施方式

下面结合附图对本申请作进一步详细描述。

在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。

图1示出根据本申请一个方面的一种通过用户设备上第一应用建立无线连接的设备1的设备示意图。其中,所述设备1包括第一装置11和第二装置12。

其中,所述第一装置11获取与第一应用工作于同一用户设备的第二应用发送的连接请求;所述第二装置12经由所述第一应用根据所述连接请求对应的目标无线接入点的接入信息建立所述用户设备与所述目标无线接入点的无线连接。

在此,所述用户设备包括但不限于各种智能终端,如各种个人计算机、移动智能设备等。在本申请中,所述设备1可以包括所述用户设备;或是,所述设备1即对应为所述用户设备;或者,所述设备1从属于所述用户设备。在此,优选地,在相应实施例中,所述设备1即对应为所述用户设备,此时,为了便于描述,所述设备1与所述用户设备可以进行互换使用。在此,所述无线连接的建立可以优选为所述用户设备可以通过无线接入点、即所述无线热点接入对应的无线网络,所述无线网络包括但不限于基于IEEE 802.11系列标准协议的无线局域网络,例如,基于IEEE 802.11b协议的无线局域网络,即通常所说的WiFi网络。

具体地,所述第一装置11获取与第一应用工作于同一用户设备的第二应用发送的连接请求。优选地,所述用户设备中同时加载并运行有所述第一应用和所述第二应用。在此,所述第一应用包括提供无线连接服务的应用,例如,WiFi服务提供商开发的应用;所述第二应用为调用所述无线连接服务的应用,可以是所述用户设备对应的系统应用,或者是任意需要调用所述无线连接服务的其他第三方应用,以用户设备为移动智能设备为例,所述第三方应用可以包括但不限于各种Native app(原生应用)、或Web app(Web应用)。此时,由所述用户设备,优选地,由所述用户设备中的第一应用获取到所述第二应用发送的连接请求,在此,所述连接请求可以是基于第二应用对应用户发出的连网请求,例如,用户点击所述第二应用界面中建立无线连接对应的按钮,进而由所述第二应用发起所述连接请求;所述连接请求还可以是所述第二应用基于预设的其他触发条件主动发起无线网络连接请求。在此,所述连接请求可以基于所述第一应用和第二应用约定的通讯方式实现,例如,所述连接请求基于进程间通信的方式由所述第二应用发送至所述第一应用。

接着,所述第二装置12经由所述第一应用根据所述连接请求对应的目标无线接入点的接入信息建立所述用户设备与所述目标无线接入点的无线连接。其中,所述连接请求可以是包含有确定的所述目标无线接入点的连接请求,还可以并没有包含对应的目标无线接入点的连接请求。在此,一个可选的场景是:若在所述用户设备,例如所述用户设备的第一应用中,已预先存储或记录有所述连接请求对应的一个或多个无线接入点的接入信息,则当所述连接请求包含有确定的所述目标无线接入点时,直接确定该目标无线接入点的接入信息,进而建立相应的无线连接;或者,当所述连接请求没有包含确定的所述目标无线接入点时,通过所述第一应用在所述一个或多个无线接入点中确定目标无线接入点,再经由所述第一应用根据所述目标无线接入点的接入信息,建立用户设备与所述目标无线接入点的无线连接。此外,另一个可选的场景是:若是在所述用户设备中没有预先存储或记录有所述连接请求对应的一个或多个无线接入点的接入信息,则可以由所述第一应用基于其从与所述用户设备对应的网络设备中获取与所述连接请求对应的所述目标无线接入点的接入信息建立所述用户设备与所述目标无线接入点的无线连接。

在此,所述网络设备包括但不限于计算机、网络主机、单个网络服务器、多个网络服务器集或多个服务器构成的云。优选地,所述网络设备中存储有海量的无线接入点及无线接入点相关信息,其中,所述无线接入点相关信息包括但不限于无线接入点的接入信息、信号强度信息、安全等级信息、名称信息、地理位置信息等。

在本申请中,所述设备1基于与所述第一应用工作于同一用户设备的第二应用发送的连接请求,经由所述第一应用根据所述连接请求对应的目标无线接入点的接入信息建立所述用户设备与所述目标无线接入点的无线连接。在此,对于有连接需求的所述第二应用,其只需要发出相应的连接请求,对应第一应用即可以有效地响应并执行完成所述用户设备与对应目标无线接入点的无线连接,从而让所述第二应用对应用户快速地感知到连接服务的实现。基于本申请,所述第二应用可以经由所述第一应用的连接操作实现连接请求的需要,而不需要在自身第二应用中嵌入并执行连接操作对应的执行代码,从而避免了在所述第二应用中执行其他应用的未知代码,给该第二应用带来安全隐患;同时,也避免了所述第一应用将自己的代码、或其他数据信息,如建立无线连接需要的所述接入信息直接提供至所述第二应用带来的信息泄露的风险。此外,基于本申请,所述第二应用通过所述第一应用建立无线连接,相比于传统技术中所述第一应用直接通过所述设备1系统应用调用无线连接服务,前者通过第一应用获取到的可用目标无线接入点的选择范围更广,无线连接的稳定性也更佳。

在一个优选的实施例中,所述第二装置12包括第一单元(未示出)和第二单元(未示出)。

其中,所述第一单元经由所述第一应用从对应的网络设备获取所述连接请求对应的一个或多个无线接入点的接入信息;所述第二单元经由所述第一应用根据所述接入信息建立所述用户设备与所述一个或多个无线接入点中目标无线接入点的无线连接。此时,所述第一应用从对应的网络设备获取所述接入信息可以假设存在:在所述用户设备中没有预先存储或记录有所述连接请求对应的一个或多个无线接入点的接入信息;或者所述用户设备中已存储或记录的所述无线接入点的接入信息准确性降低、或满足了预设的接入信息获取、或更新条件。

在此,优选地,所述第一单元包括第一子单元(未示出)、第二子单元(未示出)和第三子单元(未示出)。其中,所述第一子单元基于所述连接请求,经由所述第一应用通过无线扫描方式获取用户设备周围的一个或多个扫描无线接入点。接着,所述第二子单元经由所述第一应用向对应的网络设备发送接入信息获取请求,其中,所述接入信息获取请求包含所述一个或多个扫描无线接入点中至少一个,在此,所述接入信息获取请求可以基于预设的扫描无线接入点的数量、或是条件,包含所述一个或多个扫描无线接入点中至少一个。接着,所述第三子单元获取所述网络设备返回的一个或多个无线接入点的接入信息,其中,所述无线接入点包含于所述一个或多个扫描无线接入点,在此,优选地,所述网络设备会基于其存储的无线接入点及对应的无线接入点相关信息,确定出所述网络设备中存在对应接入信息的若干个所述扫描无线接入点,从而将该扫描无线接入点的接入信息返回至所述用户设备;或是,进一步,优选地,在所述网络设备存在有对应接入信息的所述扫描无线接入点中,基于预设的筛选条件,例如无线接入点信号强度条件、安全等级条件等,优选出符合条件一个或多个无线接入点,将其对应的所述接入信息提供至所述用户设备。接着,所述第二单元经由所述第一应用根据所述接入信息建立所述用户设备与所述一个或多个无线接入点中目标无线接入点的无线连接,此时,若是返回的无线接入点有多个,则可以随机或是优选出一个无线接入点作为目标无线接入点。

在一个优选实施例中,所述第一装置11获取与第一应用工作于同一用户设备的第二应用发送的连接请求,其中,所述连接请求包含所述第一应用的应用标识信息、连接服务标识信息和服务调用名称。

具体地,在本申请中,所述第一应用与所述第二应用可以基于约定方式进行应用间通讯,例如,所述第一应用与第二应用之间可以通过进程间通讯的方式实现通讯。以所述进程间通讯方式为例,所述第一应用于与所述第二应用将预先定义并约定连接请求对应的通讯参数,在此,优选包含所述第一应用的应用标识信息、连接服务标识信息和服务调用名称。所述应用标识信息可以是所述第一应用的应用包名,或是其他的辨识信息,例如com.abcd.wifilocating;所述连接服务标识信息用以表示所述第二应用需要通过所述第一应用调用的具体服务的信息,例如,代表建立无线接入点连接这一服务的参数connect(连接)、autoconnect(自动连接);所述服务调用名称与所述约定的应用间通讯方式对应,以所述进程间通讯的方式为例,所述服务调用名称可以包括wifi.intent.action.CALL。进而,所述第二应用在发送的所述连接请求中加入上述第一应用的应用标识信息、连接服务标识信息和服务调用名称。

在此基础上,优选地,所述连接请求还包括以下至少任一项参数:无线路由器名称,例如,所述无线路由器对应的无线接入点的SSID(Service Set Identifier,服务集标识)信息;无线路由器的MAC地址(Media Access Control,媒体访问控制地址),例如,所述无线路由器对应的无线接入点的BSSID(BasicService Set Identifier)信息;无线路由器的加密类型,例如,securityLevel类型可以是OPEN,WEP或WPA;无线路由器的信号强度,例如RSSI(Received Signal Strength Indication,即接收的信号强度指示)信息。一个优选的场景是,所述连接请求可以是包含有确定的所述目标无线接入点的连接请求,其中,可以包含该目标无线接入点对应的无线路由器名称、无线路由器的MAC地址、无线路由器的加密类型或无线路由器的信号强度等信息。在此,本领域技术人员应该能够理解,上述各个参数仅为举例,其他现有的或今后可能出现的其他参数如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。

优选地,所述连接请求还包括所述第二应用的应用相关信息;其中,所述第二装置12经由所述第一应用根据对应的目标无线接入点的接入信息建立所述用户设备与所述目标无线接入点的无线连接,其中,所述目标无线接入点与所述第二应用的应用相关信息相匹配。

具体地,在实际应用中,建立无线连接的一个优化场景是,基于各个第二应用的应用特征和应用需要,为其连接上匹配度较高的目标无线接入点。基于此,所述第二应用的连接请求即可以通过所述应用相关信息包含或是体现这种需求。例如,所述应用相关信息可以是所述第二应用的应用类型信息,也可以是所述第二应用的通信需求信息。进而,所述目标无线接入点即与所述应用相关信息相匹配。例如,若是所述第二应用为支付类型的应用,则对应的目标无线接入点需要具有较高的安全等级;又如,若是所述第二应用为视频应用,则对应的目标无线接入点需要信号强度大。在此,本领域技术人员应该能够理解,上述应用相关信息仅为举例,其他现有的或今后可能出现的其他应用相关信息如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。

优选地,所述连接请求基于进程间通信的方式由所述第二应用发送至所述第一应用。在此,本申请中,所述第一应用与所述第二应用可以基于约定方式进行应用间通讯。所述约定方式可以优选为进程间通讯方式。在此,所述第一应用可以将连接服务对应的接口提供给所述第二用户,所述第二用户利用标准的进程间通讯手段,在所述连接请求中添加由所述第一应用与所述第二应用约定好的参数。

具体地,在此,一个优选场景是,所述连接请求包含有确定的所述目标无线接入点的连接请求,此时,所述连接请求包含所述第一应用的应用标识信息如com.abcd.wifilocating;连接服务标识信息,如connect;和服务调用名称wifi.intent.action.CALL;还包含目标接入点对应的无线路由器信息,即无线路由器名称、无线路由器的MAC地址、无线路由器的加密类型或无线路由器的信号强度各自对应的参数,比如:

{"bssid":"c0:3d:46:00:71:8e","ssid":"TPLINK-718Dq","securityLevel":"2","rs si":"-47"}。

在此,另一个优选场景是:所述连接请求并没有包含对应的目标无线接入点的连接请求,而是依赖于所述第一应用为所述第二应用选择所述目标无线接入点,此时,所述连接请求包含所述第一应用的应用标识信息如com.abcd.wifilocating;连接服务标识信息,如autoconnect,表示自动寻找一个最佳WiFi去连接;和服务调用名称wifi.intent.action.CALL;还包含目标接入点对应的无线路由器信息,即无线路由器名称、无线路由器的MAC地址、无线路由器的加密类型或无线路由器的信号强度各自对应的参数。

在此,进一步优选地,所述第一应用还将通过所述进程间通讯向所述第一应用返回所述连接请求对应的连接结果。对于所述第二应用的所述连接请求,所述连接结果对应的返回参数可以包括服务返回名称,如wifi.intent.action.RESULT;连接服务标识信息,如connect,表示是对哪类服务的返回信息;进一步,还可以包括返回值参数,用以表示所述连接服务是连接成功或是连接失败,还可以包括连接失败的原因。例如:

{"retcode":0,"retmsg":"ENABLE_MOBILE_FAILED"}

或者{"retcode":1,"retmsg":""}。

图2示出根据本申请一个优选实施例的一种通过用户设备上第一应用建立无线连接的设备1的设备示意图。其中,所述设备1包括第三装置13’、第四装置14’、第一装置11’和第二装置12’。

其中,所述第三装置13’获取与第一应用工作于同一用户设备的第二应用发送的关于无线接入点的查询请求;所述第四装置14’经由所述第一应用获取所述查询请求对应的一个或多个候选无线接入点,并将所述一个或多个候选无线接入点提供至所述第二应用。进一步,所述第一装置11’获取与第一应用工作于同一用户设备的第二应用发送的连接请求,在此,优选地,所述第一装置11’获取所述第二应用发送的关于所述一个或多个候选无线接入点中目标无线接入点的连接请求,其中,所述一个或多个候选无线接入点中至少所述目标无线接入点被呈现于所述第二应用;接着,所述第二装置12’经由所述第一应用根据所述连接请求对应的目标无线接入点的接入信息建立所述用户设备与所述目标无线接入点的无线连接。在此,所述第二装置12’与图1示出的第二装置12相同或基本相同,在此不再赘述,并以引用的方式包含于此。

具体地,在此,所述第二应用将通过所述查询请求获得相应的一个或多个候选无线接入点,和/或所述候选无线接入点对应的无线接入点相关信息。在此,所述无线接入点相关信息可以优选为无线接入点的信号强度信息、安全等级信息、名称信息、地理位置信息等。在此,所述查询请求可以是由第二应用对应用户触发,例如,用户点击所述第二应用界面中查询可用无线接入点对应的按钮,进而由所述第二应用发起所述查询请求;所述查询请求还可以是所述第二应用基于预设的其他触发条件主动发起无线接入点的查询请求。在此,所述查询请求可以基于所述第一应用和第二应用约定的通讯方式实现,例如,所述查询请求基于进程间通信的方式由所述第二应用发送至所述第一应用。

接着,所述第四装置14’经由所述第一应用获取所述查询请求对应的一个或多个候选无线接入点,并将所述一个或多个候选无线接入点提供至所述第二应用。在此,一个可选场景是,若是所述查询请求的对应的是所述用户设备在当前位置可用的候选无线接入点,则所述第一应用可以将通过无线扫描方式获取到的用户设备周围的一个或多个无线接入点提供给所述第二应用。另一个优选场景是,所述第一应用从对应的网络设备获取所述查询请求对应的一个或多个候选无线接入点,并将所述一个或多个候选无线接入点提供至所述第二应用。

进一步,优选地,在上述第二应用的查询请求,及对应第一应用返回相应查询结果的基础上,所述第一装置11’获取所述第二应用发送的关于所述一个或多个候选无线接入点中目标无线接入点的连接请求,其中,所述一个或多个候选无线接入点中至少所述目标无线接入点被呈现于所述第二应用。在此,优选地,由所述第一应用提供至所述第二应用的所述候选无线接入点中的部分或全部会呈现在所述第二应用中,进而,所述第二应用对应用户将在呈现的所述候选无线接入点中,确定出所述目标无线接入点,并基于该目标无线接入点向所述第一应用发起对应的所述连接操作,例如,用户点击所述第二应用界面中候选无线接入点列表中的某个目标无线接入点,进而由所述第二应用发起对应该目标无线接入点的连接请求。

在本实施例中,所述设备1还可以经由所述第一应用响应所述第二应用发送的关于无线接入点的查询请求,通过所述第一应用获取与所述查询请求对应的一个或多个候选无线接入点,并将所述一个或多个候选无线接入点提供至所述第二应用。在此基础上,进一步,在本申请的另一个优选实施例中,还可以在上述第一应用将所述一个或多个候选无线接入点提供至所述第二应用后,再经由第一应用获取来自第二应用的、关于所述一个或多个候选无线接入点中目标无线接入点的连接请求,进而,基于所述接入信息建立所述用户设备与所述目标无线接入点的无线连接。在此,本申请可以基于实际应用中所述第二应用对所述第一应用提供的连接服务的特定需要,对来自所述第二应用的不同请求进行区别响应,同时,还可以将请求对应的调用执行的结果反馈给所述第二应用。在上述实施例中,不论是第二应用的无线接入点的查询需求,还是其无线接入点的连接需求,或其他类型的连接服务需求,都是经由与所述第二应用对应的第一应用具体操作执行的,而不需要在所述第二应用中嵌入并执行连接操作对应的执行代码,从而避免了在所述第二应用中执行其他应用的未知代码,给该第二应用带来安全隐患;并且,也避免了所述第一应用将自己的代码、或其他数据信息,如建立无线连接需要的所述接入信息直接提供至所述第二应用带来的信息泄露的风险;同时,兼顾了第二应用对应用户对无线连接相关服务的体验优化。

在一个优选实施例中,所述第四装置14’经由所述第一应用从对应的网络设备获取所述查询请求对应的一个或多个候选无线接入点,并将所述一个或多个候选无线接入点提供至所述第二应用。在此,优选地,所述第四装置14’包括第三单元(未示出)、第四单元(未示出)、第五单元(未示出)和第六单元(未示出)。具体地,所述第三单元基于所述查询请求,经由所述第一应用通过无线扫描方式获取用户设备周围的一个或多个无线接入点。接着,所述第四单元经由所述第一应用向对应的网络设备发送候选无线接入点获取请求,其中,所述候选无线接入点获取请求包含所述一个或多个无线接入点中至少一个,在此,所述候选无线接入点获取请求可以基于预设的无线接入点的数量、或是条件,包含所述一个或多个无线接入点中至少一个。接着,所述第五单元获取所述网络设备返回的一个或多个候选无线接入点,其中,所述候选无线接入点包含于所述一个或多个无线接入点中。在此,优选地,所述网络设备会基于其存储的无线接入点及对应的无线接入点相关信息,确定出所述网络设备中存在对应接入信息的若干个所述无线接入点,从而将该无线接入点作为所述候选无线接入点返回至所述用户设备;或是,进一步,优选地,在所述网络设备存在有对应接入信息的所述无线接入点中,基于预设的筛选条件,例如无线接入点信号强度条件、安全等级条件等,优选出符合条件一个或多个候选无线接入点,将其提供至所述用户设备。在此,进一步,优选地,所述用户设备还可以同时获取与所述一个或多个候选无线接入点对应的无线接入点相关信息。接着,所述第六单元经由所述第一应用将所述一个或多个候选无线接入点提供至所述第二应用。

在一个优选实施例中,所述第三装置13’获取与第一应用工作于同一用户设备的第二应用发送的关于无线接入点的查询请求,其中,所述查询请求包含所述第一应用的应用标识信息、查询服务标识信息和服务调用名称。

具体地,在本申请中,所述第一应用与所述第二应用可以基于约定方式进行应用间通讯,例如,所述第一应用与第二应用之间可以通过进程间通讯的方式实现通讯。以所述进程间通讯方式为例,所述第一应用于与所述第二应用将预先定义并约定连接请求对应的通讯参数,在此,优选包含所述第一应用的应用标识信息、查询服务标识信息和服务调用名称,所述应用标识信息可以是所述第一应用的应用包名,或是其他的辨识信息,例如com.abcd.wifilocating;所述查询服务标识信息用以表示所述第二应用需要通过所述第一应用调用的具体服务的信息,例如代表查询一个或多个候选无线接入点这一服务的参数query;所述服务调用名称与所述约定的应用间通讯方式对应,以所述进程间通讯的方式为例,所述服务调用名称可以包括wifi.intent.action.CALL。进而,所述第二应用在发送的所述查询请求中加入上述第一应用的应用标识信息、连接服务标识信息和服务调用名称。在此,所述第二应用还将通过所述进程间通讯监听所述第一应用返回的所述查询请求对应的查询结果。

在此基础上,优选地,所述查询请求还包括以下至少任一项参数:无线路由器名称,例如,所述无线路由器对应的无线接入点的SSID(Service Set Identifier,服务集标识)信息;无线路由器的MAC地址(Media Access Control,媒体访问控制地址),例如,述无线路由器对应的无线接入点的BSSID(BasicService Set Identifier)信息;无线路由器的加密类型,例如,securityLevel类型可以是OPEN,WEP或WPA;无线路由器的信号强度,例如RSSI(Received Signal Strength Indication,即接收的信号强度指示)信息。在此,上述参数信息包括对于查询的无线接入点的描述信息,由此,可以为所述第二应用返回更符合其使用需要的特定的所述候选无线接入点。在此,本领域技术人员应该能够理解,上述各个参数仅为举例,其他现有的或今后可能出现的其他参数如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。

优选地,所述查询请求还包括所述第二应用的应用相关信息;其中,所述第四装置14’经由所述第一应用获取所述查询请求对应的一个或多个候选无线接入点,并将所述一个或多个候选无线接入点提供至所述第二应用,其中,所述候选无线接入点与所述第二应用的应用相关信息相匹配。

具体地,在实际应用中,基于所述查询请求获得的所述候选无线接入点的一个优选结果是,为各个所述第二应用提供与其应用特征和应用需要相匹配的目标无线接入点。基于此,所述第二应用的查询请求即可以通过所述应用相关信息包含或是体现这种需求。例如,所述应用相关信息可以是所述第二应用的应用类型信息,也可以是所述第二应用的通信需求信息。进而,所述目标无线接入点即与所述应用相关信息相匹配。例如,若是所述第二应用为支付类型的应用,则对应的目标无线接入点需要具有较高的安全等级;又如,若是所述第二应用为视频应用,则对应的目标无线接入点需要信号强度大。在此,本领域技术人员应该能够理解,上述应用相关信息仅为举例,其他现有的或今后可能出现的其他应用相关信息如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。

优选地,所述查询请求基于进程间通信的方式由所述第二应用发送至所述第一应用。在此,本申请中,所述第一应用与所述第二应用可以基于约定方式进行应用间通讯。所述约定方式可以优选为进程间通讯方式。在此,所述第一应用可以将连接服务对应的接口提供给所述第二用户,所述第二用户利用标准的进程间通讯手段,在所述连接请求中添加由所述第一应用与所述第二应用约定好的通讯参数,进而所述第二用户基于所述进程间通讯方式监听所述第一应用返回的所述查询请求对应的查询结果。

具体地,一个优选场景是,所述查询请求包含所述第一应用的应用标识信息如com.abcd.wifilocating;查询服务标识信息,如query;和服务调用名称wifi.intent.action.CALL;还包含要查询的无线接入点列表,包括无线路由器名称、无线路由器的MAC地址、无线路由器的加密类型或无线路由器的信号强度各自对应的参数,比如:

[{"bssid":"c0:3d:46:00:71:8e","ssid":"TPLINK-718Dq","securityLevel":"2","rssi":"-47"},

{"bssid":"f0:b4:29:63:c2:c2","ssid":"TPLINK_mkm","securityLevel":"2","rssi":"-51"},

{“bssid”:”c0:3d:46:01:17:47","ssid":"aaa_temh","securityLevel":"2","rss i":"-53"}]。

此外,进一步优选地,所述第一应用还将通过所述进程间通讯向所述第二应用返回所述查询请求对应的查询结果,所述查询结果对应的返回参数可以包括服务返回名称,如wifi.intent.action.RESULT;查询服务标识信息,如query,表示是对哪类服务的返回信息;进一步,还可以包含返回的查询出来的可以提供服务的所述候选无线接入点列表信息,包括所述获选无线接入点对应的无线路由器名称、无线路由器的MAC地址、无线路由器的加密类型、无线路由器的信号强度各自对应的参数,或接入信息状态,如keyStatus,例如:

[{"bssid":"F0:B4:29:63:C2:C3","ssid":"TPLINK_20160530","rssi":"-60","keyStatus":1,"securityLevel":"2","apid":"CDD6D594D23CD8FF3F1A189391392A6A"},

{"bssid":"F6:6A:92:2A:73:78","ssid":"TPLINK_test_zj1@_992","rssi":"-67","keyStatus":1,"securityLevel":"2","apid":"B83B86346AA51C8AD02F375A61A3EF88"},

{"bssid":"C0:3D:46:00:35:36","ssid":"TPLINK_suzzy_3q_2","rssi":"-58","keyStatus":1,”securityLevel”:"2","apid":"85CD36F0F3F8C14C4AB8C274F08A0931"}]。

接着,进一步优选地,所述第二应用可以在上述多个候选无线接入点中确定出目标无线接入点。具体地,在上述举例中,所述各个查询结果对应过的接入信息状态keyStatus为1,对应为有可用接入信息,则上述三个候选无线接入点均可以作为候选无线接入点提供给所述第二应用。进而,所述第二应用基于从上述多个候选无线接入点中确定的目标无线接入点向所述第一应用发起对应的所述连接操作。例如,第二应用确定的目标无线接入点对应的无线路由器信息,即无线路由器名称、无线路由器的MAC地址、无线路由器的加密类型或无线路由器的信号强度是:

{"bssid":"F0:B4:29:63:C2:C3","ssid":"TPLINK_20160530","securityLev el":"2","rssi":"-60",};

此外,所述连接请求包含所述第一应用的应用标识信息如com.abcd.wifilocating;连接服务标识信息,如connect;和服务调用名称wifi.intent.action.CALL。

接着,经由所述第一应用根据所述连接请求对应的目标无线接入点的接入信息建立所述用户设备与所述目标无线接入点的无线连接;进一步,所述第一应用还将通过所述进程间通讯向所述第一应用返回所述连接请求对应的连接结果。对于所述第二应用的所述连接请求,所述连接结果对应的返回参数可以包括服务返回名称,如wifi.intent.action.RESULT;连接服务标识信息,如connect;进一步,还可以包括返回值参数,用以表示所述连接服务是连接成功或是连接失败,还可以包括连接失败的原因。例如:

{"retcode":0,"retmsg":"ENABLE_MOBILE_FAILED"}

或者{"retcode":1,"retmsg":""}。

图3示出根据本申请另一个方面的一种通过用户设备上第一应用建立无线连接的方法流程图。其中,所述方法包括步骤S31和步骤S32。

其中,在步骤S31中,所述设备1获取与第一应用工作于同一用户设备的第二应用发送的连接请求;在步骤S32中,所述设备1经由所述第一应用根据所述连接请求对应的目标无线接入点的接入信息建立所述用户设备与所述目标无线接入点的无线连接。

在此,所述用户设备包括但不限于各种智能终端,如各种个人计算机、移动智能设备等。在本申请中,所述设备1可以包括所述用户设备;或是,所述设备1即对应为所述用户设备;或者,所述设备1从属于所述用户设备。在此,优选地,在相应实施例中,所述设备1即对应为所述用户设备,此时,为了便于描述,所述设备1与所述用户设备可以进行互换使用。在此,所述无线连接的建立可以优选为所述用户设备可以通过无线接入点、即所述无线热点接入对应的无线网络,所述无线网络包括但不限于基于IEEE 802.11系列标准协议的无线局域网络,例如,基于IEEE 802.11b协议的无线局域网络,即通常所说的WiFi网络。

具体地,在步骤S31中,所述设备1获取与第一应用工作于同一用户设备的第二应用发送的连接请求。优选地,所述用户设备中同时加载并运行有所述第一应用和所述第二应用。在此,所述第一应用包括提供无线连接服务的应用,例如,WiFi服务提供商开发的应用;所述第二应用为调用所述无线连接服务的应用,可以是所述用户设备对应的系统应用,或者是任意需要调用所述无线连接服务的其他第三方应用,以用户设备为移动智能设备为例,所述第三方应用可以包括但不限于各种Native app(原生应用)、或Web app(Web应用)。此时,由所述用户设备,优选地,由所述用户设备中的第一应用获取到所述第二应用发送的连接请求,在此,所述连接请求可以是基于第二应用对应用户发出的连网请求,例如,用户点击所述第二应用界面中建立无线连接对应的按钮,进而由所述第二应用发起所述连接请求;所述连接请求还可以是所述第二应用基于预设的其他触发条件主动发起无线网络连接请求。在此,所述连接请求可以基于所述第一应用和第二应用约定的通讯方式实现,例如,所述连接请求基于进程间通信的方式由所述第二应用发送至所述第一应用。

接着,在步骤S32中,所述设备1经由所述第一应用根据所述连接请求对应的目标无线接入点的接入信息建立所述用户设备与所述目标无线接入点的无线连接。其中,所述连接请求可以是包含有确定的所述目标无线接入点的连接请求,还可以并没有包含对应的目标无线接入点的连接请求。在此,一个可选的场景是:若在所述用户设备,例如所述用户设备的第一应用中,已预先存储或记录有所述连接请求对应的一个或多个无线接入点的接入信息,则当所述连接请求包含有确定的所述目标无线接入点时,直接确定该目标无线接入点的接入信息,进而建立相应的无线连接;或者,当所述连接请求没有包含确定的所述目标无线接入点时,通过所述第一应用在所述一个或多个无线接入点中确定目标无线接入点,再经由所述第一应用根据所述目标无线接入点的接入信息,建立用户设备与所述目标无线接入点的无线连接。此外,另一个可选的场景是:若是在所述用户设备中没有预先存储或记录有所述连接请求对应的一个或多个无线接入点的接入信息,则可以由所述第一应用基于其从与所述用户设备对应的网络设备中获取与所述连接请求对应的所述目标无线接入点的接入信息建立所述用户设备与所述目标无线接入点的无线连接。

在此,所述网络设备包括但不限于计算机、网络主机、单个网络服务器、多个网络服务器集或多个服务器构成的云。优选地,所述网络设备中存储有海量的无线接入点及无线接入点相关信息,其中,所述无线接入点相关信息包括但不限于无线接入点的接入信息、信号强度信息、安全等级信息、名称信息、地理位置信息等。

在本申请中,所述设备1基于与所述第一应用工作于同一用户设备的第二应用发送的连接请求,经由所述第一应用根据所述连接请求对应的目标无线接入点的接入信息建立所述用户设备与所述目标无线接入点的无线连接。在此,对于有连接需求的所述第二应用,其只需要发出相应的连接请求,对应第一应用即可以有效地响应并执行完成所述用户设备与对应目标无线接入点的无线连接,从而让所述第二应用对应用户快速地感知到连接服务的实现。基于本申请,所述第二应用可以经由所述第一应用的连接操作实现连接请求的需要,而不需要在自身第二应用中嵌入并执行连接操作对应的执行代码,从而避免了在所述第二应用中执行其他应用的未知代码,给该第二应用带来安全隐患;同时,也避免了所述第一应用将自己的代码、或其他数据信息,如建立无线连接需要的所述接入信息直接提供至所述第二应用带来的信息泄露的风险。此外,基于本申请,所述第二应用通过所述第一应用建立无线连接,相比于传统技术中所述第一应用直接通过所述设备1系统应用调用无线连接服务,前者通过第一应用获取到的可用目标无线接入点的选择范围更广,无线连接的稳定性也更佳。

在一个优选的实施例中,所述步骤S32包括步骤S321(未示出)和步骤S322(未示出)。

其中,在步骤S321中,所述设备1经由所述第一应用从对应的网络设备获取所述连接请求对应的一个或多个无线接入点的接入信息;在步骤S322中,所述设备1经由所述第一应用根据所述接入信息建立所述用户设备与所述一个或多个无线接入点中目标无线接入点的无线连接。此时,所述第一应用从对应的网络设备获取所述接入信息可以假设存在:在所述用户设备中没有预先存储或记录有所述连接请求对应的一个或多个无线接入点的接入信息;或者所述用户设备中已存储或记录的所述无线接入点的接入信息准确性降低、或满足了预设的接入信息获取、或更新条件。

在此,优选地,所述步骤S321包括步骤S3211(未示出)、步骤S3212(未示出)和步骤S3213(未示出)。

其中,在步骤S3211中,所述设备1基于所述连接请求,经由所述第一应用通过无线扫描方式获取用户设备周围的一个或多个扫描无线接入点。接着,在步骤S3212中,所述设备1经由所述第一应用向对应的网络设备发送接入信息获取请求,其中,所述接入信息获取请求包含所述一个或多个扫描无线接入点中至少一个,在此,所述接入信息获取请求可以基于预设的扫描无线接入点的数量、或是条件,包含所述一个或多个扫描无线接入点中至少一个。接着,在步骤S3213中,所述设备1获取所述网络设备返回的一个或多个无线接入点的接入信息,其中,所述无线接入点包含于所述一个或多个扫描无线接入点,在此,优选地,所述网络设备会基于其存储的无线接入点及对应的无线接入点相关信息,确定出所述网络设备中存在对应接入信息的若干个所述扫描无线接入点,从而将该扫描无线接入点的接入信息返回至所述用户设备;或是,进一步,优选地,在所述网络设备存在有对应接入信息的所述扫描无线接入点中,基于预设的筛选条件,例如无线接入点信号强度条件、安全等级条件等,优选出符合条件一个或多个无线接入点,将其对应的所述接入信息提供至所述用户设备。接着,在步骤S322中,所述设备1经由所述第一应用根据所述接入信息建立所述用户设备与所述一个或多个无线接入点中目标无线接入点的无线连接,此时,若是返回的无线接入点有多个,则可以随机或是优选出一个无线接入点作为目标无线接入点。

在一个优选实施例中,在步骤S31中,所述设备1获取与第一应用工作于同一用户设备的第二应用发送的连接请求,其中,所述连接请求包含所述第一应用的应用标识信息、连接服务标识信息和服务调用名称。

具体地,在本申请中,所述第一应用与所述第二应用可以基于约定方式进行应用间通讯,例如,所述第一应用与第二应用之间可以通过进程间通讯的方式实现通讯。以所述进程间通讯方式为例,所述第一应用于与所述第二应用将预先定义并约定连接请求对应的通讯参数,在此,优选包含所述第一应用的应用标识信息、连接服务标识信息和服务调用名称,所述应用标识信息可以是所述第一应用的应用包名,或是其他的辨识信息,例如com.abcd.wifilocating;所述连接服务标识信息用以表示所述第一应用需要通过所述第二应用调用的具体服务的信息,例如,代表建立无线接入点连接这一服务的参数connect(连接)、autoconnect(自动连接);所述服务调用名称与所述约定的应用间通讯方式对应,以所述进程间通讯的方式为例,所述服务调用名称可以包括wifi.intent.action.CALL。进而,所述第二应用在发送的所述连接请求中加入上述第一应用的应用标识信息、连接服务标识信息和服务调用名称。

在此基础上,优选地,所述连接请求还包括以下至少任一项参数:无线路由器名称,例如,所述无线路由器对应的无线接入点的SSID(Service Set Identifier,服务集标识)信息;无线路由器的MAC地址(Media Access Control,媒体访问控制地址),例如,述无线路由器对应的无线接入点的BSSID(BasicService Set Identifier)信息;无线路由器的加密类型,例如,securityLevel类型可以是OPEN,WEP或WPA;无线路由器的信号强度,例如RSSI(Received Signal Strength Indication,即接收的信号强度指示)信息。一个优选的场景是,所述连接请求可以是包含有确定的所述目标无线接入点的连接请求,其中,可以包含该目标无线接入点对应的无线路由器名称、无线路由器的MAC地址、无线路由器的加密类型或无线路由器的信号强度。等信息。在此,本领域技术人员应该能够理解,上述各个参数仅为举例,其他现有的或今后可能出现的其他参数如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。

优选地,所述连接请求还包括所述第二应用的应用相关信息;其中,所述设备1经由所述第一应用根据对应的目标无线接入点的接入信息建立所述用户设备与所述目标无线接入点的无线连接,其中,所述目标无线接入点与所述第二应用的应用相关信息相匹配。

具体地,在实际应用中,建立无线连接的一个优化场景是,基于各个第二应用的应用特征和应用需要,为其连接上匹配度较高的目标无线接入点。基于此,所述第二应用的连接请求即可以通过所述应用相关信息包含或是体现这种需求。例如,所述应用相关信息可以是所述第二应用的应用类型信息,也可以是所述第二应用的通信需求信息。进而,所述目标无线接入点即与所述应用相关信息相匹配。例如,若是所述第二应用为支付类型的应用,则对应的目标无线接入点需要具有较高的安全等级;又如,若是所述第二应用为视频应用,则对应的目标无线接入点需要信号强度大。在此,本领域技术人员应该能够理解,上述应用相关信息仅为举例,其他现有的或今后可能出现的其他应用相关信息如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。

优选地,所述连接请求基于进程间通信的方式由所述第二应用发送至所述第一应用。在此,本申请中,所述第一应用与所述第二应用可以基于约定方式进行应用间通讯。所述约定方式可以优选为进程间通讯方式。在此,所述第一应用可以将连接服务对应的接口提供给所述第二用户,所述第二用户利用标准的进程间通讯手段,在所述连接请求中添加由所述第一应用与所述第二应用约定好的参数。

具体地,在此,一个优选场景是,所述连接请求包含有确定的所述目标无线接入点的连接请求,此时,所述连接请求包含所述第一应用的应用标识信息如com.abcd.wifilocating;连接服务标识信息,如connect;和服务调用名称wifi.intent.action.CALL;还包含目标接入点对应的无线路由器信息,即无线路由器名称、无线路由器的MAC地址、无线路由器的加密类型或无线路由器的信号强度各自对应的参数,比如:

{"bssid":"c0:3d:46:00:71:8e","ssid":"TPLINK-718Dq","securityLevel":"2","rssi":"-47"}。

在此,另一个优选场景是:所述连接请求并没有包含对应的目标无线接入点的连接请求,而是依赖于所述第一应用为所述第二应用选择所述目标无线接入点,此时,所述连接请求包含所述第一应用的应用标识信息如com.abcd.wifilocating;连接服务标识信息,如autoconnect,表示自动寻找一个最佳WiFi去连接;和服务调用名称wifi.intent.action.CALL;还包含目标接入点对应的无线路由器信息,即无线路由器名称、无线路由器的MAC地址、无线路由器的加密类型或无线路由器的信号强度各自对应的参数。

在此,优选地,所述第一应用还将通过所述进程间通讯向所述第一应用返回所述连接请求对应的连接结果。对于所述第二应用的所述连接请求,所述连接结果对应的返回参数可以包括服务返回名称,如wifi.intent.action.RESULT;连接服务标识信息,如connect,表示是对哪类服务的返回信息;进一步,还可以包括返回值参数,用以表示所述连接服务是连接成功或是连接失败,还可以包括连接失败的原因。例如:

{"retcode":0,"retmsg":"ENABLE_MOBILE_FAILED"}

或者{"retcode":1,"retmsg":""}。

图4示出根据本申请一个优选实施例的一种通过用户设备上第一应用建立无线连接的方法流程图。其中,所述方法包括步骤S43、步骤S44、步骤S41和步骤S42。

其中,在步骤S43中,所述设备1获取与第一应用工作于同一用户设备的第二应用发送的关于无线接入点的查询请求;在步骤S44中,所述设备1经由所述第一应用获取所述查询请求对应的一个或多个候选无线接入点,并将所述一个或多个候选无线接入点提供至所述第二应用。进一步,在步骤S41中,所述设备1获取与第一应用工作于同一用户设备的第二应用发送的连接请求,在此,优选地,在步骤S41中,所述设备1获取所述第二应用发送的关于所述一个或多个候选无线接入点中目标无线接入点的连接请求,其中,所述一个或多个候选无线接入点中至少所述目标无线接入点被呈现于所述第二应用;接着,在步骤S42中,所述设备1经由所述第一应用根据所述连接请求对应的目标无线接入点的接入信息建立所述用户设备与所述目标无线接入点的无线连接。在此,所述步骤S42与图3示出的步骤S32内容相同或基本相同,在此不再赘述,并以引用的方式包含于此。

具体地,在此,所述第二应用将通过所述查询请求获得相应的一个或多个候选无线接入点,和/或所述候选无线接入点对应的无线接入点相关信息。在此,所述无线接入点相关信息可以优选为无线接入点的信号强度信息、安全等级信息、名称信息、地理位置信息等。在此,所述查询请求可以是由第二应用对应用户触发,例如,用户点击所述第二应用界面中查询可用无线接入点对应的按钮,进而由所述第二应用发起所述查询请求;所述查询请求还可以是所述第二应用基于预设的其他触发条件主动发起无线接入点的查询请求。在此,所述查询请求可以基于所述第一应用和第二应用约定的通讯方式实现,例如,所述查询请求基于进程间通信的方式由所述第二应用发送至所述第一应用。

接着,在步骤S44中,所述设备1经由所述第一应用获取所述查询请求对应的一个或多个候选无线接入点,并将所述一个或多个候选无线接入点提供至所述第二应用。在此,一个可选场景是,若是所述查询请求的对应的是所述用户设备在当前位置可用的候选无线接入点,则所述第一应用可以将通过无线扫描方式获取到的用户设备周围的一个或多个无线接入点提供给所述第二应用。另一个优选场景是,所述第一应用从对应的网络设备获取所述查询请求对应的一个或多个候选无线接入点,并将所述一个或多个候选无线接入点提供至所述第二应用。

进一步,优选地,在上述第二应用的查询请求,及对应第一应用返回相应查询结果的基础上,在步骤S41中,所述设备1获取所述第二应用发送的关于所述一个或多个候选无线接入点中目标无线接入点的连接请求,其中,所述一个或多个候选无线接入点中至少所述目标无线接入点被呈现于所述第二应用。在此,优选地,由所述第一应用提供至所述第二应用的所述候选无线接入点中的部分或全部会呈现在所述第二应用中,进而,所述第二应用对应用户将在呈现的所述候选无线接入点中,确定出所述目标无线接入点,并基于该目标无线接入点向所述第一应用发起对应的所述连接操作,例如,用户点击所述第二应用界面中候选无线接入点列表中的某个目标无线接入点,进而由所述第二应用发起对应该目标无线接入点的连接请求。

在本实施例中,所述设备1还可以经由所述第一应用响应所述第二应用发送的关于无线接入点的查询请求,通过所述第一应用获取与所述查询请求对应的一个或多个候选无线接入点,并将所述一个或多个候选无线接入点提供至所述第二应用。在此基础上,进一步,在本申请的另一个优选实施例中,还可以在上述第一应用将所述一个或多个候选无线接入点提供至所述第二应用后,再经由第一应用获取来自第二应用的、关于所述一个或多个候选无线接入点中目标无线接入点的连接请求,进而,基于所述接入信息建立所述用户设备与所述目标无线接入点的无线连接。在此,本申请可以基于实际应用中所述第二应用对所述第一应用提供的连接服务的特定需要,对来自所述第二应用的不同请求进行区别响应,同时,还可以将请求对应的调用执行的结果反馈给所述第二应用。在上述实施例中,不论是第二应用的无线接入点的查询需求,还是其无线接入点的连接需求,或其他类型的连接服务需求,都是经由与所述第二应用对应的第一应用具体操作执行的,而不需要在所述第二应用中嵌入并执行连接操作对应的执行代码,从而避免了在所述第二应用中执行其他应用的未知代码,给该第二应用带来安全隐患;并且,也避免了所述第一应用将自己的代码、或其他数据信息,如建立无线连接需要的所述接入信息直接提供至所述第二应用带来的信息泄露的风险;同时,兼顾了第二应用对应用户对无线连接相关服务的体验优化。

在一个优选实施例中,在步骤S44中,所述设备1经由所述第一应用从对应的网络设备获取所述查询请求对应的一个或多个候选无线接入点,并将所述一个或多个候选无线接入点提供至所述第二应用。在此,优选地,所述步骤S44包括步骤S441(未示出)、步骤S442(未示出)、步骤S443(未示出)和步骤S444(未示出)。具体地,在步骤S441中,所述设备1基于所述查询请求,经由所述第一应用通过无线扫描方式获取用户设备周围的一个或多个无线接入点。接着,在步骤S442中,所述设备1经由所述第一应用向对应的网络设备发送候选无线接入点获取请求,其中,所述候选无线接入点获取请求包含所述一个或多个无线接入点中至少一个,在此,所述候选无线接入点获取请求可以基于预设的无线接入点的数量、或是条件,包含所述一个或多个无线接入点中至少一个。接着,在步骤S443中,所述设备1获取所述网络设备返回的一个或多个候选无线接入点,其中,所述候选无线接入点包含于所述一个或多个无线接入点中。在此,优选地,所述网络设备会基于其存储的无线接入点及对应的无线接入点相关信息,确定出所述网络设备中存在对应接入信息的若干个所述无线接入点,从而将该无线接入点作为所述候选无线接入点返回至所述用户设备;或是,进一步,优选地,在所述网络设备存在有对应接入信息的所述无线接入点中,基于预设的筛选条件,例如无线接入点信号强度条件、安全等级条件等,优选出符合条件一个或多个候选无线接入点,将其提供至所述用户设备。在此,进一步,优选地,所述用户设备还可以同时获取与所述一个或多个候选无线接入点对应的无线接入点相关信息。接着,在步骤S444中,所述设备1经由所述第一应用将所述一个或多个候选无线接入点提供至所述第二应用。

在一个优选实施例中,在步骤S43中,所述设备1获取与第一应用工作于同一用户设备的第二应用发送的关于无线接入点的查询请求,其中,所述查询请求包含所述第一应用的应用标识信息、查询服务标识信息和服务调用名称。

具体地,在本申请中,所述第一应用与所述第二应用可以基于约定方式进行应用间通讯,例如,所述第一应用与第二应用之间可以通过进程间通讯的方式实现通讯。以所述进程间通讯方式为例,所述第一应用于与所述第二应用将预先定义并约定连接请求对应的通讯参数,在此,优选包含所述第一应用的应用标识信息、查询服务标识信息和服务调用名称,所述应用标识信息可以是所述第一应用的应用包名,或是其他的辨识信息,例如com.abcd.wifilocating;所述查询服务标识信息用以表示所述第二应用需要通过所述第一应用调用的具体服务的信息,例如代表查询一个或多个候选无线接入点这一服务的参数query;所述服务调用名称与所述约定的应用间通讯方式对应,以所述进程间通讯的方式为例,所述服务调用名称可以包括wifi.intent.action.CALL。进而,所述第二应用在发送的所述查询请求中加入上述第一应用的应用标识信息、连接服务标识信息和服务调用名称。在此,所述第二应用还将通过所述进程间通讯监听所述第一应用返回的所述查询请求对应的查询结果。

在此基础上,优选地,所述查询请求还包括以下至少任一项参数:无线路由器名称,例如,所述无线路由器对应的无线接入点的SSID(Service Set Identifier,服务集标识)信息;无线路由器的MAC地址(Media Access Control,媒体访问控制地址),例如,述无线路由器对应的无线接入点的BSSID(BasicService Set Identifier)信息;无线路由器的加密类型,例如,securityLevel类型可以是OPEN,WEP或WPA;无线路由器的信号强度,例如RSSI(Received Signal Strength Indication,即接收的信号强度指示)信息。在此,上述参数信息包括对于查询的无线接入点的描述信息,由此,可以为所述第二应用返回更符合其使用需要的特定的所述候选无线接入点。在此,本领域技术人员应该能够理解,上述各个参数仅为举例,其他现有的或今后可能出现的其他参数如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。

优选地,所述查询请求还包括所述第二应用的应用相关信息;其中,所述设备1经由所述第一应用获取所述查询请求对应的一个或多个候选无线接入点,并将所述一个或多个候选无线接入点提供至所述第二应用,其中,所述候选无线接入点与所述第二应用的应用相关信息相匹配。

具体地,在实际应用中,基于所述查询请求获得的所述候选无线接入点的一个优选结果是,为各个所述第二应用提供与其应用特征和应用需要相匹配的目标无线接入点。基于此,所述第二应用的查询请求即可以通过所述应用相关信息包含或是体现这种需求。例如,所述应用相关信息可以是所述第二应用的应用类型信息,也可以是所述第二应用的通信需求信息。进而,所述目标无线接入点即与所述应用相关信息相匹配。例如,若是所述第二应用为支付类型的应用,则对应的目标无线接入点需要具有较高的安全等级;又如,若是所述第二应用为视频应用,则对应的目标无线接入点需要信号强度大。在此,本领域技术人员应该能够理解,上述应用相关信息仅为举例,其他现有的或今后可能出现的其他应用相关信息如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。

优选地,所述查询请求基于进程间通信的方式由所述第二应用发送至所述第一应用。在此,本申请中,所述第一应用与所述第二应用可以基于约定方式进行应用间通讯。所述约定方式可以优选为进程间通讯方式。在此,所述第一应用可以将连接服务对应的接口提供给所述第二用户,所述第二用户利用标准的进程间通讯手段,在所述连接请求中添加由所述第一应用与所述第二应用约定好的通讯参数,进而所述第二用户基于所述进程间通讯方式监听所述第一应用返回的所述查询请求对应的查询结果。

具体地,一个优选场景是,所述查询请求包含所述第一应用的应用标识信息如com.abcd.wifilocating;查询服务标识信息,如query;和服务调用名称wifi.intent.action.CALL;还包含要查询的无线接入点列表,包括无线路由器名称、无线路由器的MAC地址、无线路由器的加密类型或无线路由器的信号强度各自对应的参数,比如:

[{"bssid":"c0:3d:46:00:71:8e","ssid":"TPLINK-718Dq","securityLevel":"2","rssi":"-47"},

{"bssid":"f0:b4:29:63:c2:c2","ssid":"TPLINK_mkm","securityLevel":"2","rssi":"-51"},

{“bssid”:”c0:3d:46:01:17:47","ssid":"aaa_temh","securityLevel":"2","rss i":"-53"}]。

此外,进一步优选地,所述第一应用还将通过所述进程间通讯向所述第二应用返回所述查询请求对应的查询结果,所述查询结果对应的返回参数可以包括服务返回名称,如wifi.intent.action.RESULT;查询服务标识信息,如query,表示是对哪类服务的返回信息;进一步,还可以包含返回的查询出来的可以提供服务的所述候选无线接入点列表信息,包括所述获选无线接入点对应的无线路由器名称、无线路由器的MAC地址、无线路由器的加密类型、无线路由器的信号强度各自对应的参数,或接入信息状态,如keyStatus,例如:

[{"bssid":"F0:B4:29:63:C2:C3","ssid":"TPLINK_20160530","rssi":"-60","keyStatus":1,"securityLevel":"2","apid":"CDD6D594D23CD8FF3F1A189391392A6A"},

{"bssid":"F6:6A:92:2A:73:78","ssid":"TPLINK_test_zj1@_992","rssi":"-67","keyStatus":1,"securityLevel":"2","apid":"B83B86346AA51C8AD02F375A61A3EF88"},

{"bssid":"C0:3D:46:00:35:36","ssid":"TPLINK_suzzy_3q_2","rssi":"-58","keyStatus":1,”securityLevel”:"2","apid":"85CD36F0F3F8C14C4AB8C274F08A0931"}]

接着,进一步优选地,所述第二应用可以在上述多个候选无线接入点中确定出目标无线接入点。具体地,在上述举例中,所述各个查询结果对应过的接入信息状态keyStatus为1,对应为有可用接入信息,则上述三个候选无线接入点均可以作为候选无线接入点提供给所述第二应用。进而,所述第二应用基于从上述多个候选无线接入点中确定的目标无线接入点向所述第一应用发起对应的所述连接操作。例如,第二应用确定的目标无线接入点对应的无线路由器信息,即无线路由器名称、无线路由器的MAC地址、无线路由器的加密类型或无线路由器的信号强度是上述的:

{"bssid":"F0:B4:29:63:C2:C3","ssid":"TPLINK_20160530","securityLev el":"2","rssi":"-60",};

此外,所述连接请求包含所述第一应用的应用标识信息如com.abcd.wifilocating;连接服务标识信息,如connect;和服务调用名称wifi.intent.action.CALL。

接着,经由所述第一应用根据所述连接请求对应的目标无线接入点的接入信息建立所述用户设备与所述目标无线接入点的无线连接;进一步,所述第一应用还将通过所述进程间通讯向所述第一应用返回所述连接请求对应的连接结果。对于所述第二应用的所述连接请求,所述连接结果对应的返回参数可以包括服务返回名称,如wifi.intent.action.RESULT;连接服务标识信息,如connect;进一步,还可以包括返回值参数,用以表示所述连接服务是连接成功或是连接失败,还可以包括连接失败的原因。例如:

{"retcode":0,"retmsg":"ENABLE_MOBILE_FAILED"}

或者{"retcode":1,"retmsg":""}。

对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1