应用程序启动方法、终端设备及计算机可读存储介质

文档序号:1941659 发布日期:2021-12-07 浏览:17次 >En<

阅读说明:本技术 应用程序启动方法、终端设备及计算机可读存储介质 (Application program starting method, terminal device and computer readable storage medium ) 是由 陆舟 于 2021-11-09 设计创作,主要内容包括:本申请涉及信息安全技术领域,特别是涉及一种应用程序启动方法、终端设备及计算机可读存储介质。本申请中,实现了对于卡片对应的目标应用程序的自动启动,避免了人为选择目标应用程序的处理,提高了启动效率,且提升了用户的使用感受。(The present application relates to the field of information security technologies, and in particular, to an application program starting method, a terminal device, and a computer-readable storage medium. In the application, the automatic starting of the target application program corresponding to the card is realized, the manual selection of the target application program is avoided, the starting efficiency is improved, and the use experience of a user is improved.)

应用程序启动方法、终端设备及计算机可读存储介质

技术领域

本申请涉及信息安全技术领域,特别是涉及一种应用程序启动方法、终端设备及计算机可读存储介质。

背景技术

当前,随着科技的发展,互联网及5G技术也处在飞速发展中,现有技术中,终端设备通过NFC功能扫描到卡片时,在终端设备的界面中会弹出多个应用程序,弹出的多个应用程序中包括了该张卡片对应的应用程序,用户从中选择所需的应用程序;由于其会弹出多个不相关应用程序,对于目标应用程序的启动效率不高,且需要用户主动去选择所需的目标应用程序,造成用户的使用感受不好,因此,如何实现目标应用程序的自动选择启动成为了当前亟需解决的技术问题。

发明内容

本申请提供了一种应用程序启动方法、终端设备及计算机可读存储介质,以实现目标应用程序的自动启动。

第一方面,提供了一种应用程序启动方法,终端设备上配置有程序过滤器,包括:

当首次进行应用程序安装时,所述终端设备根据接收到的安装包启动核心进程,孵化出系统服务进程,在所述系统服务进程中创建并启动包管理服务;

所述终端设备在启动的包管理服务中遍历预设的文件目录并解析所述文件目录下的apk文件,得到相应的节点信息;

所述终端设备将解析得到的节点信息保存在预设的设置对象中;

所述终端设备以键值对形式保存apk文件的包名和所述设置对象;

所述终端设备维持apk信息并进行安装,得到安装后的应用程序;

所述方法还包括:

当所述终端设备与卡片进行通信时,所述终端设备基于与卡片的通信协商与所述卡片进行数据交互,得到NFC数据交换格式文件内容数据;

所述终端设备将所述NFC数据交换格式文件内容数据封装到所述程序过滤器中;

所述终端设备根据存储的apk文件的包名及所述程序过滤器中封装的数据进行取交集去重,得到去重后的数据;

所述终端设备根据去重后的数据确定相匹配的设置对象;

所述终端设备根据确定的设置对象启动所述应用程序。

在一个可能地实现方式中,所述终端设备基于与卡片的通信协商与所述卡片进行数据交互,得到NFC数据交换格式文件内容数据,包括:

所述终端设备基于开启的NFC功能与卡片进行通信协商;

所述终端设备基于所述通信协商与所述卡片进行数据交互,得到NFC数据交换格式文件内容数据。

在一个可能地实现方式中,所述终端设备将所述NFC数据交换格式文件内容数据封装到所述程序过滤器中,包括:

所述终端设备解析所述NFC数据交换格式文件内容数据得到相应的解析数据;

所述终端设备将所述解析数据封装到所述程序过滤器中。

在一个可能地实现方式中,所述终端设备基于开启的NFC功能与卡片进行通信协商,包括:

所述终端设备基于开启的NFC功能发送寻卡请求;

所述终端设备接收所述卡片返回的寻卡响应,所述寻卡响应中携带有卡片对应的序列号信息;

所述终端设备根据所述序列号信息确定卡片的序列号是否为完整的序列号;

若为完整的序列号,所述终端设备向所述卡片发送通信协商指令,以实现与所述卡片的通信协商。

在一个可能地实现方式中,所述寻卡响应中还携带有是否支持比特帧防冲突的信息,所述终端设备根据所述序列号信息确定卡片的序列号是否为完整的序列号,包括:

当所述是否支持比特帧防冲突的信息为支持比特帧防冲突时,所述终端设备根据所述序列号信息确定卡片的序列号是否为完整的序列号;

当所述是否支持比特帧防冲突的信息为不支持比特帧防冲突时,流程结束。

在一个可能地实现方式中,所述终端设备根据所述序列号信息确定卡片的序列号是否为完整的序列号,包括:

所述终端设备根据所述序列号信息确定序列号位数;

所述终端设备根据确定的序列号位数向所述卡片发送序列号查询请求;

所述终端设备接收所述卡片返回的序列号第一查询响应,得到所述卡片对应的特定位数的序列号;

所述终端设备根据所述特定位数的序列号向所述卡片发送选择请求;

所述终端设备接收所述卡片返回的第二查询响应,所述第二查询响应中包括所述卡片的序列号;

所述终端设备检测所述卡片的序列号,确定所述卡片的序列号是否为完整的序列号。

在一个可能地实现方式中,还包括:

若为不完整的序列号,所述终端设备向所述卡片发送序列号查询请求,以查询所述卡片对应的序列号;

所述终端设备接收所述卡片返回的通信协商响应,根据所述通信协商响应向所述卡片发送NFC数据交换格式应用选择指令;

所述终端设备接收所述卡片基于所述NFC数据交换格式应用选择指令返回的第一执行响应;

所述终端设备根据所述第一执行响应获取所述卡片的NFC数据交换格式文件内容数据,并根据所述NFC数据交换格式文件内容数据启动所述卡片对应的应用程序。

在一个可能地实现方式中,所述终端设备基于所述通信协商与所述卡片进行数据交互,得到NFC数据交换格式文件内容数,包括:

所述终端设备基于所述通信协商向所述卡片发送NFC数据交换格式应用选择指令;

所述终端设备接收所述卡片基于所述NFC数据交换格式应用选择指令返回的第一执行响应;

所述终端设备根据所述第一执行响应获取所述卡片的NFC数据交换格式文件内容数据。

在一个可能地实现方式中,所述终端设备根据所述第一执行响应获取所述卡片的NFC数据交换格式文件内容数据,包括:

所述终端设备根据所述第一执行响应向所述卡片发送选择CC文件指令;

所述终端设备接收所述卡片基于所述选择CC文件指令返回的第二执行响应;

所述终端设备根据所述第二执行响应向所述卡片发送从选择的CC文件中读取数据的指令;

所述终端设备接收所述卡片返回的CC文件读取数据;

所述终端设备根据所述CC文件读取数据向所述卡片发送选择NFC数据交换格式文件指令;

所述终端设备接收所述卡片基于所述选择NFC数据交换格式文件指令返回的第三执行响应;

所述终端设备根据所述第三执行响应向所述卡片发送读取NFC数据交换格式文件长度指令;

所述终端设备接收所述卡片返回的NFC数据交换格式文件长度数据;

所述终端设备根据所述NFC数据交换格式文件长度数据向所述卡片发送读取NFC数据交换格式文件内容指令;

所述终端设备接收所述卡片返回NFC数据交换格式文件内容数据。

第二方面,提供了一种终端设备,所述终端设备上配置有程序过滤器,所述终端设备包括:

第一处理模块,用于当首次进行应用程序安装时,根据接收到的安装包启动核心进程,孵化出系统服务进程,在所述系统服务进程中创建并启动包管理服务;

第二处理模块,用于在启动的包管理服务中遍历预设的文件目录并解析所述文件目录下的apk文件,得到相应的节点信息;

第三处理模块,用于所述终端设备将解析得到的节点信息保存在预设的设置对象中;

第四处理模块,用于以键值对形式保存apk文件的包名和所述设置对象;

第五处理模块,维持apk信息并进行安装,得到安装后的应用程序;

第六处理模块,用于基于与卡片的通信协商与所述卡片进行数据交互,得到NFC数据交换格式文件内容数据;

第七处理模块,用于将所述NFC数据交换格式文件内容数据封装到所述程序过滤器中;

第八处理模块,用于存储的apk文件的包名及所述程序过滤器中封装的数据进行取交集去重,得到去重后的数据;

第九处理模块,用于根据去重后的数据确定相匹配的设置对象;其中,所述相匹配的设置对象为前述保存的设置对象;

第十处理模块,用于根据确定的设置对象启动所述应用程序。

在一个可能地实现方式中,所述第六处理模块,用于基于开启的NFC功能与卡片进行通信协商;基于所述通信协商与所述卡片进行数据交互,得到NFC数据交换格式文件内容数据。

在一个可能地实现方式中,所述第七处理模块,用于解析所述NFC数据交换格式文件内容数据得到相应的解析数据;将所述解析数据封装到所述程序过滤器中。

在一个可能地实现方式中,所述第六处理模块,具体用于基于开启的NFC功能发送寻卡请求;接收所述卡片返回的寻卡响应,所述寻卡响应中携带有卡片对应的序列号信息;根据所述序列号信息确定卡片的序列号是否为完整的序列号;若为完整的序列号,向所述卡片发送通信协商指令,以实现与所述卡片的通信协商。

在一个可能地实现方式中,所述寻卡响应中还携带有是否支持比特帧防冲突的信息,所述第六处理模块,具体用于当所述是否支持比特帧防冲突的信息为支持比特帧防冲突时,根据所述序列号信息确定卡片的序列号是否为完整的序列号;当所述是否支持比特帧防冲突的信息为不支持比特帧防冲突时,流程结束。

在一个可能地实现方式中,所述第六处理模块,具体用于根据所述序列号信息确定序列号位数;根据确定的序列号位数向所述卡片发送序列号查询请求;接收所述卡片返回的序列号第一查询响应,得到所述卡片对应的特定位数的序列号;根据所述特定位数的序列号向所述卡片发送选择请求;接收所述卡片返回的第二查询响应,所述第二查询响应中包括所述卡片的序列号;检测所述卡片的序列号,确定所述卡片的序列号是否为完整的序列号。

在一个可能地实现方式中,还包括:

若为不完整的序列号,所述第六处理模块,用于向所述卡片发送序列号查询请求,以查询所述卡片对应的序列号;接收所述卡片返回的通信协商响应,根据所述通信协商响应向所述卡片发送NFC数据交换格式应用选择指令;接收所述卡片基于所述NFC数据交换格式应用选择指令返回的第一执行响应;根据所述第一执行响应获取所述卡片的NFC数据交换格式文件内容数据,并根据所述NFC数据交换格式文件内容数据启动所述卡片对应的应用程序。

在一个可能地实现方式中,所述第六处理模块,具体用于基于所述通信协商向所述卡片发送NFC数据交换格式应用选择指令;接收所述卡片基于所述NFC数据交换格式应用选择指令返回的第一执行响应;根据所述第一执行响应获取所述卡片的NFC数据交换格式文件内容数据。

在一个可能地实现方式中,所述第六处理模块,用于根据所述第一执行响应向所述卡片发送选择CC文件指令;接收所述卡片基于所述选择CC文件指令返回的第二执行响应;根据所述第二执行响应向所述卡片发送从选择的CC文件中读取数据的指令;接收所述卡片返回的CC文件读取数据;根据所述CC文件读取数据向所述卡片发送选择NFC数据交换格式文件指令;接收所述卡片基于所述选择NFC数据交换格式文件指令返回的第三执行响应;根据所述第三执行响应向所述卡片发送读取NFC数据交换格式文件长度指令;接收所述卡片返回的NFC数据交换格式文件长度数据;根据所述NFC数据交换格式文件长度数据向所述卡片发送读取NFC数据交换格式文件内容指令;接收所述卡片返回NFC数据交换格式文件内容数据。

第三方面,提供了一种终端设备,包括:处理器和存储器;

所述存储器,用于存储计算机程序;

所述处理器,用于通过调用所述计算机程序,执行上述的应用程序启动方法。

第四方面,提供了一种计算机可读存储介质,所述计算机存储介质用于存储计算机程序,当其在计算机上运行时,使得计算机执行上述的应用程序启动方法。

借由上述技术方案,本申请提供的技术方案至少具有下列优点:

本申请中,通过上述方案,实现了对于卡片对应的目标应用程序的自动启动,避免了人为选择目标应用程序的处理,提高了启动效率,且提升了用户的使用感受。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明实施例的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1为本申请提供的应用程序启动方法的流程示意图;

图2为本申请提供的应用程序启动方法的一种可能实现方式的处理流程示意图;

图3为本申请提供的应用程序启动方法的一种具体实现方式的处理流程示意图;

图4为本申请提供的终端设备的结构示意图;

图5为本申请提供的应用程序启动方法的电子设备的结构示意图。

具体实施方式

本申请提出一种应用程序启动方法、终端设备及计算机可读存储介质,下面结合附图,对本申请具体实施方式进行详细说明。

下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。

本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本申请所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。

如图1所示,为本申请提供的应用程序启动方法的流程示意图,终端设备上配置有程序过滤器,包括如下步骤:

步骤S101,当首次进行应用程序安装时,所述终端设备根据接收到的安装包启动核心进程,孵化出系统服务进程,在所述系统服务进程中创建并启动包管理服务;

步骤S102,所述终端设备在启动的包管理服务中遍历预设的文件目录并解析所述文件目录下的apk文件,得到相应的节点信息;

步骤S103,所述终端设备将解析得到的节点信息保存在预设的设置对象中;

步骤S104,所述终端设备以键值对形式保存apk文件的包名和所述设置对象;

步骤S105,所述终端设备维持apk信息并进行安装,得到安装后的应用程序;

所述方法还包括:

步骤S106,所述终端设备基于与卡片的通信协商与所述卡片进行数据交互,得到NFC数据交换格式文件内容数据;

步骤S107,所述终端设备将所述NFC数据交换格式文件内容数据封装到所述程序过滤器中;

步骤S108,所述终端设备根据封装的数据及存储的apk文件的包名进行取交集去重,得到去重后的数据;

步骤S109,终端设备根据去重后的数据确定相匹配的设置对象;其中,所述相匹配的设置对象为前述保存的设置对象;

步骤S110,终端设备根据确定的设置对象启动应用程序。

本申请中,通过上述方案,实现了对于卡片对应的目标应用程序的自动启动,避免了人为选择目标应用程序的处理,提高了启动效率,且提升了用户的使用感受。

基于上述本申请所提供的技术方案,下面对该技术方案进行详尽阐释,如图2所示,为本申请提供的应用程序启动方法的一个可能地实现方式的处理流程图。

步骤S201,终端设备基于开启的NFC功能发送寻卡请求。

在一个可能地实现方式中,终端设备在开启NFC功能后,终端设备会基于开启的NFC功能主动向场强范围内发送寻卡的请求广播,从而让场强范围内的所有卡片均向自己发送响应。

步骤S202,终端设备接收卡片返回的寻卡响应。

在一个可能地实现方式中,终端设备在发送寻卡的请求广播后,处于其场强范围内的各卡片均向该终端设备发送寻卡响应,告知终端设备自身处在该场强范围内,并且在寻卡响应中会携带有该卡片对应的序列号信息,从而通过该序列号信息告诉终端设备自身的序列号是多少位。

在一个可能地实现方式中,对于有多张卡片返回的寻卡响应,终端设备可以根据各卡片的场强强弱顺序,由强到弱依次选择卡片进行处理,当当前的卡片处理失败时,继续选择顺次的卡片进行处理。

步骤S203,终端设备确定寻卡响应中携带的信息是否支持比特帧防冲突。

在一个可能地实现方式中,终端设备接收到的寻卡响应中还携带有是否支持比特帧防冲突的信息,终端设备可以根据该是否支持比特帧防冲突的信息来确定后续的处理流程。当是否支持比特帧防冲突的信息为支持比特帧防冲突时,转到步骤S204,当是否支持比特帧防冲突的信息为不支持比特帧防冲突时,流程结束。

步骤S204,终端设备根据序列号信息确定卡片的序列号位数。

在一个可能地实现方式中,终端设备在得到序列号信息后,可以根据该序列号信息来确定该卡片的序列号是多少位的序列号。

步骤S205,终端设备根据确定的序列号位数向所述卡片发送序列号查询请求。

在一个可能地实现方式中,终端设备在确定了序列号位数后,向卡片发送序列号查询请求,据此来查询卡片的特定位数的序列号。当然,在该查询请求中,终端设备会根据特定的协议来发送请求进行序列号查询,比如发送查询序列号的前4位的请求消息。

步骤S206,终端设备根据卡片的序列号第一查询响应得到特定位数的序列号。

在一个可能地实现方式中,终端设备在向卡片发送了上述请求后,可以接收到卡片返回的第一查询响应,并在该响应中得到该卡片对应的特定位数的序列号。

步骤S207,终端设备根据所述特定位数的序列号向所述卡片发送选择请求。

在一个可能地实现方式中,终端设备在得到卡片对应的特定位数的序列号后,会向该卡片发送序列号的选择请求,以由卡片确定该选择请求中携带的序列号是否为其自身的序列号。

步骤S208,终端设备接收所述卡片返回的第二查询响应。

在一个可能地实现方式中,卡片在接收到终端设备发送的选择请求后,确定其中的序列号为自身的序列号,并据此通过第二查询响应向终端设备发送相应的其他序列号,当然,该其他序列号发送的多少,也是根据特定协议来发送的特定位数。

步骤S209,终端设备检测第二查询响应中的序列号,确定是否为完整的序列号。

在一个可能地实现方式中,终端设备在得到卡片返回的序列号后,将该第二查询响应中的序列号和前述特定位数的序列号组成一个序列号组合,通过前述得到的卡片的序列号位数来对其检测,确定该序列号组合是否为完整的序列号。其中,若序列号为完整的序列号,转到步骤S210,若序列号为不完整的序列号,转到步骤S205。

步骤S210,终端设备向卡片发送通信协商指令。

在一个可能地实现方式中,终端设备在确定序列号为完整序列号后,通过发送通信协商指令来与该卡片进行通信协商。

步骤S211,终端设备根据接收到的通信协商响应向卡片发送NFC数据交换格式应用选择指令。

在一个可能地实现方式中,卡片在接收到终端设备发送的通信协商指令后,根据该指令向终端设备返回通信协商响应,实现对通信参数的协商;终端设备根据协商好的通信参数,向卡片发送NFC数据交换格式应用选择指令,通过其中的NFC数据交换格式应用ID来告诉卡片自身所选择的NFC数据交换格式应用。

步骤S212,终端设备接收卡片返回的第一执行响应。

卡片在接收到前述的NFC数据交换格式应用选择指令后,据此确定对应的NFC数据交换格式应用是否为可执行的应用,并向终端设备返回相应的执行响应。

步骤S213,终端设备根据所述第一执行响应获取所述卡片的NFC数据交换格式文件内容数据。

在一个可能地实现方式中,终端设备根据所述第一执行响应向所述卡片发送选择CC文件指令,卡片接收该选择CC文件指令,并据此确定对应的CC文件是否为可执行的文件,并向终端设备返回相应的第二执行响应;终端设备在得到相应的第二执行响应后,继续向卡片发送从该选择的CC文件中读取数据的指令;卡片根据该指令找到对应的CC文件读取数据,并将该CC文件读取数据返回给终端设备;所述终端设备在得到该CC文件读取数据后,根据该CC文件读取数据向所述卡片发送选择NFC数据交换格式文件指令;卡片接收该选择NFC数据交换格式文件指令,并据此确定对应的NFC数据交换格式文件是否为可执行的文件,并向终端设备返回相应的第三执行响应;终端设备根据该第三执行响应继续向卡片发送读取NFC数据交换格式文件长度指令;终端设备接收所述卡片返回的NFC数据交换格式文件长度数据;终端设备根据得到的NFC数据交换格式文件长度数据向所述卡片发送读取NFC数据交换格式文件内容指令;终端设备接收所述卡片返回的NFC数据交换格式文件内容数据。

步骤S214,终端设备解析所述NFC数据交换格式文件内容数据得到相应的解析数据。

在一个可能地实现方式中,终端设备得到NFC数据交换格式文件内容数据后,对其进行解析,得到相应的解析数据。

步骤S215,终端设备将所述解析数据封装到程序过滤器中。

在一个可能地实现方式,终端设备在得到NFC数据交换格式文件内容数据后,将其中的数据封装到程序过滤器中。

步骤S216,终端设备根据程序过滤器中封装的数据确定与卡片相匹配的设置对象。

在一个可能地实现方式中,终端设备根据该程序过滤器中封装的数据以及存储的APK文件的包名进行取交集去重操作,得到相应的去重后的数据,进而根据去重后的数据确定卡片匹配的设置对象,该设置对象为前述保存的设置对象。

步骤S217,终端设备根据确定的设置对象启动应用程序。

在一个可能地实现方式中,终端设备在匹配到相应的设置对象后,根据确定的设置对象对该应用程序进行启动操作,实现了在后台的多个应用程序中找到相匹配的目标的应用程序。

在一个可能地实现方式中,对于上述步骤S215到步骤S217的处理,可以包括:

终端设备在得到卡片的NFC数据交换格式文件内容数据后,将该数据以NFC数据交换格式格式封装到终端设备上的程序过滤器中,并基于程序过滤器中封装的数据来实现对应用程序的启动;具体地,终端设备先要确定其上是否存在与NFC数据交换格式格式的数据中的应用记录相匹配的程序过滤器;若存在时,直接启动该应用程序,若不存在时,终端设备还要进一步确定是否存在与程序过滤器相匹配的工作流;若不存在与程序过滤器匹配的工作流,转到步骤a去处理;若存在与程序过滤器匹配的工作流,继续确定与其相匹配该工作流是否为多个;若为多个工作流,转到步骤a去处理;若不为多个工作流,则进一步确定与程序过滤器相匹配的工作流是否与应用程序记录相匹配;若二者匹配,则启动该应用程序,若不匹配,则转到步骤a去处理。

步骤a,启动由应用程序记录指定的应用程序,确定由应用程序记录指定的应用程序是否存在;若指定的应用程序存在,直接启动目标的应用程序;若指定的应用程序不存在,弹出对话框进行提示,流程结束。

本申请中,通过上述方案,实现了对于卡片对应的目标应用程序的自动启动,避免了人为选择目标应用程序的处理,提高了启动效率,提升了用户的使用感受。

基于上述本申请所提供的技术方案,下面以一个具体实施方式对该技术方案进行详尽阐释,如图3所示,为本申请提供的应用程序启动方法的一个可能地实现方式的具体处理流程图,在该实施例中,终端设备以手机为例,手机中设置有相应的系统。

步骤S301,手机的系统获取公交卡应用程序的安装包。

在一个可能地实现方式中,当首次需要安装公交卡对应的应用程序时,用户在手机上进行该应用程序的安装触发操作,系统根据用户的触发获取到该应用程序的ID信息;系统在接收到该ID信息后,进行针对该应用程序的权限检查,包括:检查调用安装的进程是否有安装应用的权限,再检查调用进程的所属用户是否有权限安装应用。在检查完成确定有权限时,调用相应的安装进程向应用程序平台发起请求获取应用程序的请求信息,在该消息中绑定特定的服务,等待绑定的结果,并将安装的参数信息放到相应的安装列表中;应用程序平台根据系统发送的请求消息找到对应的应用程序的安装包,并将其返回给系统。

步骤S302,系统通过系统服务进程进行包管理服务的创建启动。

在一个可能地实现方式中,系统接收到该安装包后,执行相应的安装处理。具体地,系统中的核心(zygote)进程启动,孵化出系统服务进程,在该系统服务进程中创建并启动包管理服务。

步骤S303,在启动的包管理服务中,遍历6个文件目录。

在一个可能地实现方式中,在启动的该包管理服务中,遍历data、app、app-lib、app-asec、user、app-private这6个目录。

步骤S304,解析上述6个文件目录下的apk文件。

在一个可能地实现方式中,解析上述6个文件目录下的apk文件(androidManifest.xml文件),经过循环遍历,对整个androidManifest的节点信息进行解析;包括解析uses-sdk节点得到minSdkVersion和targetSdkVersion的属性值;解析uses-permission节点得到name的属性值为android.permission.NFC;解析application节点得到activity属性节点,继续解析该属性节点,获得程序过滤器的action值为android.nfc.action.NDEF_DISCOVERED。

步骤S305,系统将解析得到的节点信息保存在预设的设置对象中。

在一个可能地实现方式中,将解析完的节点信息保存在package对象中,进而保存在预设的设置对象中。

步骤S306,系统以键值对形式保存androidManifest.xml文件的包名和设置对象。

在一个可能地实现方式中,系统以键值对的形式保存androidManifest.xml文件的包名com.ftsafe.nfc.card(对应于63 6F 6D 2E 66 74 73 61 66 65 2E 6E 66 63 2E63 61 72 64)和设置对象,该androidManifest.xml文件的包名com.ftsafe.nfc.card与设置对象具有一一对应关系。

步骤S307,维持apk信息并安装。

在一个可能地实现方式中,系统在保存完上述包名和设置对象后,持久化维持apk信息,即持续呈现apk信息(如在终端设备中持续显示一个待安装的应用程序的图标),并进行该应用程序的安装。其中,在安装时,若安装列表中有其他待安装的应用程序,按照安装列表中的排列顺序顺次执行各应用程序的安装处理。

步骤308,系统基于开启的NFC功能发送寻卡请求。

具体地,系统开启NFC功能,并基于开启的NFC功能在自身的广播范围内主动发送寻卡请求26。

步骤S309,系统接收各卡片返回的寻卡响应。

具体地,处于系统的广播范围内有4张卡片,公交卡、门禁卡、加油卡和会员卡,这4张卡片在收到前述的寻卡请求26后,分别向系统返回相应的寻卡响应44 00。

步骤S310,系统在各卡片的寻卡响应中选择公交卡对应的寻卡响应。

具体地,系统在得到上述各卡片返回的寻卡响应44 00后,根据各卡片的场强强度,选择其中场强最大的公交卡的寻卡响应44 00进行处理。

步骤S311,系统根据公交卡的寻卡响应确定该公交卡对应的序列号信息。

具体地,系统根据公交卡的寻卡响应44 00得到该公交卡对应的序列号信息,从而确定该序列号为7位的序列号04 25 DA 8A 90 6B 81。

步骤S312,系统确定该公交卡支持比特帧防冲突。

具体地,系统通过对该寻卡响应44 00进行检测,确定该公交卡支持比特帧防冲突。

步骤S313,系统向公交卡发送序列号查询请求。

具体地,系统在确定公交卡支持比特帧防冲突后,向公交卡发送序列号查询请求93 20,以此来查询该公交卡对应的前4位序列号。

步骤S314,公交卡根据序列号查询请求确定对应的序列号。

具体地,公交卡收到该查询请求93 20后,基于预设的序列号拆分设置,会将7位的序列号拆分分成2部分,即第一部分包括前3位序列号,第二部分包括后4位序列号,则此时需要先将前3位序列号提供给系统,但是为了实现返回前4位序列号的格式要求,会有1位用于格式填充的序列号,即首位序列号用“88”进行填充,从而得到的前4位序列号为88 04 25DA。

步骤S315,公交卡将确定的序列号携带于第一查询响应中发送给系统。

具体地,公交卡在得到上述前4位序列号88 04 25 DA后,将该前4位序列号携带于第一查询响应88 04 25 DA 73中返回给系统,其中,73为校验位。

步骤S316,系统根据第一查询响应得到前4位序列号。

具体地,系统根据该第一查询响应88 04 25 DA 73得到该公交卡对应的前4位序列号88 04 25 DA。

步骤S317,系统根据得到的前4位序列号向公交卡发送选择请求。

具体地,系统根据得到的公交卡对应的前4位序列号88 04 25 DA以及校验位“73”向公交卡发送选择请求93 70 88 04 25 DA 73 D4 A2,以使得公交卡来确定该选择请求9370 8B 04 25 DA 73 D4 A2中携带的序列号04 25 DA是否为自身的序列号。

步骤S318,公交卡确定选择请求中携带的序列号是否为自身的序列号。

具体地,公交卡确定该选择请求93 70 8B 04 25 DA 73 D4 A2中携带的序列号0425 DA是否为自身的序列号。

步骤S319,公交卡向系统发送第二查询响应。

具体地,在公交卡确定上述选择请求中携带的序列号04 25 DA为自身序列号后,向该系统发送第二查询响应04 DA 17,并在该第二查询响应04 DA 17中告知该序列号是否为完整的序列号信息。

步骤S320,系统根据第二查询响应确定得到的序列号为不完整的序列号。

具体地,系统在得到上述第二查询响应后,对其检测,从而确定前述得到的序列号为不完整的序列号。

步骤S321,系统向公交卡发送序列号查询请求。

具体地,系统通过检测确定前述序列号为不完整序列号后,继续向该公交卡发送序列号查询请求95 20,以此来查询该公交卡对应的其他位数的序列号。

步骤S322,公交卡向系统返回第一查询响应。

具体地,公交卡收到系统第二次发来的查询请求95 20后,将对应的其他4位的序列号8A 90 6B 81携带于第一查询响应8A 90 6B 81 F0中返回给系统。

步骤S323,系统根据第一查询响应得到其他4位序列号。

具体地,系统根据公交卡返回的第一查询响应8A 90 6B 81 F0,得到该公交卡对应的其他4位序列号8A 90 6B 81。

步骤S324,系统根据其他4位序列号发送选择请求。

具体地,系统在得到其他4位序列号8A 90 6B 81后,根据得到的其他4位序列号8A90 6B 81向公交卡发送选择请求95 70 8A 90 6B 81 F0 13 E7。

步骤S325,公交卡确定选择请求中携带的其他4位序列号是否为自身的序列号。

具体地,公交卡在收到上述选择请求后,继续确定该选择请求95 70 8A 90 6B 81F0 13 E7中携带的其他4位序列号8A 90 6B 81是否为自身的序列号。

步骤S326,公交卡向系统发送第二查询响应。

具体地,在公交卡确定上述选择请求中携带的其他4位序列号8A 90 6B 81为自身序列号后,向该系统发送第二查询响应00 FE 51,并在该第二查询响应00 FE 51中告知该序列号是自身的序列号。

步骤S327,系统根据第二查询响应确定上述序列号为公交卡的序列号。

具体地,系统在得到上述第二查询响应后,对其检测,从而确定前述的其他4位序列号8A 90 6B 81为该公交卡的序列号。

步骤S328,系统将得到的序列号与其他4位序列号进行组合得到序列号组合。

具体地,系统在确定其他4位序列号为公交卡的序列号后,将该其他4位序列号8A90 6B 81与前4位序列号88 04 25 DA进行组合拼接得到序列号组合88 04 25 DA 8A 906B 81。

步骤S329,系统确定序列号组合是否为完整的序列号。

具体地,系统通过得到的公交卡的序列号04 25 DA 8A 90 6B 81来对该序列号组合88 04 25 DA 8A 90 6B 81检测;由于该序列号组合的首位“88”为填充位的序列号,故在确定该序列号组合是否为完整的序列号时,该填充位的序列号不做检测,故仅是检测 0425 DA 8A 90 6B 81是否为完整的序列号。

步骤S330,系统与公交卡进行通信协商。

具体地,系统在确定该序列号组合为完整的序列号04 25 DA 8A 90 6B 81后,向公交卡发送通信协商指令E0 80 31 73,以进行通信协商;公交卡在接收到该通信协商指令E0 80 31 73后,根据该指令向系统返回通信协商响应05 78 80 E1 02 20 46,从而实现二者对通信参数的协商。

步骤S331,系统根据协商好的通信参数向公交卡发送NFC数据交换格式应用选择指令。

具体地,在系统与公交卡通信协商后,系统根据协商好的通信参数向公交卡发送NFC数据交换格式(NDEF)应用选择指令02 00 A4 04 00 07 D2 76 00 00 85 01 01 00 35C0。

步骤S332,公交卡根据NFC数据交换格式应用选择指令确定对应的NFC数据交换格式应用是否为可执行的应用。

具体地,公交卡在接收到NFC数据交换格式应用选择指令02 00 A4 04 00 07 D276 00 00 85 01 01 00 35 C0后,确定该指令对应的NFC数据交换格式应用是否为可执行的应用,得到对应的第一结果。

步骤S333,公交卡向系统发送携带有第一结果的第一执行响应。

具体地,公交卡将得到的第一结果携带于第一执行响应02 90 00 F1 09中返回给系统。

步骤S334,系统基于第一执行响应向公交卡发送选择CC文件指令。

具体地,系统根据第一执行响应02 90 00 F1 09中携带的第一结果确定NFC数据交换格式应用为可执行的应用,进而向公交卡发送选择CC文件指令03 00 A4 00 0C 02 E103 D2 AF。

步骤S335,公交卡根据选择CC文件指令确定对应的CC文件是否为可执行的文件。

具体地,公交卡接收该选择CC文件指令03 00 A4 00 0C 02 E1 03 D2 AF,并据此确定对应的CC文件是否为可执行的文件,得到对应的第二结果。

步骤S336,公交卡向系统发送携带有第二结果的第二执行响应。

具体地,公交卡向系统返回相应的携带有上述第二结果的第二执行响应03 90 002D 53。

步骤S337,系统根据第二执行响应向公交卡发送读取数据的指令。

具体地,系统在得到相应的第二执行响应03 90 00 2D 53后,根据该第二执行响应中携带的第二结果确定CC文件为可执行的文件,进而继续向公交卡发送从该选择的CC文件中读取数据的指令02 00 B0 00 00 0F 8E A6。

步骤S338,公交卡根据接收到的指令向系统返回相应的CC文件读取数据。

具体地,公交卡根据该指令02 00 B0 00 00 0F 8E A6找到对应的CC文件读取数据02 00 0F 20 00 80 00 80 04 06 E1 04 01 00 00 00 90 00 88 D9,并将该CC文件读取数据02 00 0F 20 00 80 00 80 04 06 E1 04 01 00 00 00 90 00 88 D9返回给系统。

步骤S339,系统根据CC文件读取数据向公交卡发送选择NFC数据交换格式文件指令。

具体地,系统在得到该CC文件读取数据02 00 0F 20 00 80 00 80 04 06 E1 0401 00 00 00 90 00 88 D9后,根据该CC文件读取数据向公交卡发送选择NFC数据交换格式文件指令03 00 A4 00 0C 02 E1 04 6D DB。

步骤S340,公交卡根据选择NFC数据交换格式文件指令确定对应的NFC数据交换格式文件是否为可执行的文件。

具体地,公交卡接收该选择NFC数据交换格式文件指令03 00 A4 00 0C 02 E1 046D DB,并据此确定对应的NFC数据交换格式文件是否为可执行的文件,得到对应的第三结果。

步骤S341,公交卡向系统发送携带有第三结果的第三执行响应。

具体地,公交卡向系统返回相应的第三执行响应09 90 00 2D 53,该响应中携带有得到的第三结果。

步骤S342,系统基于第三执行响应向公交卡发送读取NFC数据交换格式文件长度指令。

具体地,系统根据该第三执行响应09 90 00 2D 53中携带的第三结果确定NFC数据交换格式文件为可执行的文件,进而继续向公交卡发送读取NFC数据交换格式文件长度指令02 00 B0 00 00 02 6B 7D。

步骤S343,公交卡根据NFC数据交换格式文件长度指令向系统返回相应的NFC数据交换格式文件长度数据。

具体地,公交卡接收到上述读取NFC数据交换格式文件长度指令后,根据该指令找到对应的NFC数据交换格式文件长度数据02 00 25 90 00 05 35,并将该NFC数据交换格式文件长度数据返回给系统。

步骤S344,系统根据NFC数据交换格式文件长度数据向公交卡发送读取NFC数据交换格式文件内容指令。

具体地,系统接收所述公交卡返回的NFC数据交换格式文件长度数据02 00 25 9000 05 35后,并根据得到的该NFC数据交换格式文件长度数据向所述公交卡发送读取NFC数据交换格式文件内容指令03 00 B0 00 02 25 4D 1F。

步骤S345,公交卡根据读取NFC数据交换格式文件内容指令向系统返回相应的NFC数据交换格式文件内容数据。

具体地,公交卡根据接收到的系统发送的读取NFC数据交换格式文件内容指令找到对应的NFC数据交换格式文件内容数据03 D4 0F 13 61 6E 64 72 6F 69 64 2E 63 6F6D 3A 70 6B 67 63 6F 6D 2E 66 74 73 61 66 65 2E 6E 66 63 2E 63 61 72 64,并将该数据返回给系统。

步骤S346,系统解析该NFC数据交换格式文件内容数据得到相应的解析数据。

具体地,系统对该NFC数据交换格式文件内容数据03 D4 0F 13 61 6E 64 72 6F69 64 2E 63 6F 6D 3A 70 6B 67 63 6F 6D 2E 66 74 73 61 66 65 2E 6E 66 63 2E 6361 72 64进行解析,得到解析后的NFC数据交换格式文件内容数据D4 0F 13 61 6E 64 726F 69 64 2E 63 6F 6D 3A 70 6B 67 63 63 6F 6D 2E 66 74 73 61 66 65 2E 6E 66 632E 63 61 72 64。

步骤S347,系统将解析数据封装到程序过滤器中。

具体地,系统将解析后的NFC数据交换格式文件内容数据D4 0F 13 61 6E 64 726F 69 64 2E 63 6F 6D 3A 70 6B 67 63 6F 6D 2E 66 74 73 61 66 65 2E 6E 66 63 2E63 61 72 64中的类型数据61 6E 64 72 6F 69 64 2E 63 6F 6D 3A 70 6B 67及数据636F 6D 2E 66 74 73 61 66 65 2E 6E 66 63 2E 63 61 72 64负载封装到程序过滤器中,以使后续根据程序过滤器中封装的数据进行匹配。

步骤S348,系统根据程序过滤器中封装的数据及存储的包名取交集去重。

在一个可能地实现方式中,系统根据该程序过滤器中封装的数据(类型数据61 6E64 72 6F 69 64 2E 63 6F 6D 3A 70 6B 67及数据63 6F 6D 2E 66 74 73 61 66 65 2E6E 66 63 2E 63 61 72 64)以及前述通过键值对形式存储的包名com.ftsafe.nfc.card(63 6F 6D 2E 66 74 73 61 66 65 2E 6E 66 63 2E 63 61 72 64)做取交集去重处理,得到去重后的数据63 6F 6D 2E 66 74 73 61 66 65 2E 6E 66 63 2E 63 61 72 64。

步骤S349,系统根据去重后的数据得到对应的设置对象。

在一个可能地实现方式中,系统得到去重后的数据63 6F 6D 2E 66 74 73 61 6665 2E 6E 66 63 2E 63 61 72 64后,据此得到相对应的设置对象,进而根据该设置对象确定其与前述保存的设置对象相同。

步骤S350,系统根据确定的设置对象启动公交卡应用程序。

具体地,系统在匹配到相应的设置对象后,根据确定的设置对象对该公交卡应用程序进行启动,从而实现了从后台的多个应用程序(公交卡对应的应用程序、门禁卡对应的应用程序、加油卡对应的应用程序和会员卡对应的应用程序)中找到相匹配的公交卡应用程序。

本申请中,通过上述方案,实现了对于卡片对应的目标应用程序的自动启动,避免了人为选择目标应用程序的处理,提高了启动效率,提升了用户的使用感受。

基于上述本申请所提供的应用程序启动方法的技术方案,本申请对应提供了一种终端设备的结构示意图,如图4所示,本申请的终端设备400上配置有程序过滤器,可以包括:

第一处理模块401,用于当首次进行应用程序安装时,根据接收到的安装包启动核心进程,孵化出系统服务进程,在所述系统服务进程中创建并启动包管理服务;

第二处理模块402,用于在启动的包管理服务中遍历预设的文件目录并解析所述文件目录下的apk文件,得到相应的节点信息;

第三处理模块403,用于所述终端设备将解析得到的节点信息保存在设置对象中;

第四处理模块404,用于以键值对形式保存apk文件的包名和所述设置对象;

第五处理模块405,用于维持apk信息并进行安装,得到安装后的应用程序;

第六处理模块406,用于基于与卡片的通信协商与所述卡片进行数据交互,得到NFC数据交换格式文件内容数据;

第七处理模块407,用于将所述NFC数据交换格式文件内容数据封装到所述程序过滤器中;

第八处理模块408,用于存储的apk文件的包名及所述程序过滤器中封装的数据进行取交集去重,得到去重后的数据;

第九处理模块409,用于根据去重后的数据确定相匹配的设置对象;其中,所述相匹配的设置对象为前述保存的设置对象;

第十处理模块410,用于根据确定的设置对象启动所述应用程序。

在一个可能地实现方式中,所述第六处理模块406,用于基于开启的NFC功能与卡片进行通信协商;基于所述通信协商与所述卡片进行数据交互,得到NFC数据交换格式文件内容数据。

在一个可能地实现方式中,所述第七处理模块407,用于解析所述NFC数据交换格式文件内容数据得到相应的解析数据;将所述解析数据封装到所述程序过滤器中。

在一个可能地实现方式中,所述第六处理模块406,具体用于基于开启的NFC功能发送寻卡请求;接收所述卡片返回的寻卡响应,所述寻卡响应中携带有卡片对应的序列号信息;根据所述序列号信息确定卡片的序列号是否为完整的序列号;若为完整的序列号,向所述卡片发送通信协商指令,以实现与所述卡片的通信协商。

在一个可能地实现方式中,所述寻卡响应中还携带有是否支持比特帧防冲突的信息,所述第六处理模块406,具体用于当所述是否支持比特帧防冲突的信息为支持比特帧防冲突时,根据所述序列号信息确定卡片的序列号是否为完整的序列号;当所述是否支持比特帧防冲突的信息为不支持比特帧防冲突时,流程结束。

在一个可能地实现方式中,所述第六处理模块406,具体用于根据所述序列号信息确定序列号位数;根据确定的序列号位数向所述卡片发送序列号查询请求;接收所述卡片返回的序列号第一查询响应,得到所述卡片对应的特定位数的序列号;根据所述特定位数的序列号向所述卡片发送选择请求;接收所述卡片返回的第二查询响应,所述第二查询响应中包括所述卡片的序列号;检测所述卡片的序列号,确定所述卡片的序列号是否为完整的序列号。

在一个可能地实现方式中,还包括:

若为不完整的序列号,所述第六处理模块406,用于向所述卡片发送序列号查询请求,以查询所述卡片对应的序列号;接收所述卡片返回的通信协商响应,根据所述通信协商响应向所述卡片发送NFC数据交换格式应用选择指令;接收所述卡片基于所述NFC数据交换格式应用选择指令返回的第一执行响应;根据所述第一执行响应获取所述卡片的NFC数据交换格式文件内容数据,并根据所述NFC数据交换格式文件内容数据启动所述卡片对应的应用程序。

在一个可能地实现方式中,所述第六处理模块406,具体用于基于所述通信协商向所述卡片发送NFC数据交换格式应用选择指令;接收所述卡片基于所述NFC数据交换格式应用选择指令返回的第一执行响应;根据所述第一执行响应获取所述卡片的NFC数据交换格式文件内容数据。

在一个可能地实现方式中,所述第六处理模块406,用于根据所述第一执行响应向所述卡片发送选择CC文件指令;接收所述卡片基于所述选择CC文件指令返回的第二执行响应;根据所述第二执行响应向所述卡片发送从选择的CC文件中读取数据的指令;接收所述卡片返回的CC文件读取数据;根据所述CC文件读取数据向所述卡片发送选择NFC数据交换格式文件指令;接收所述卡片基于所述选择NFC数据交换格式文件指令返回的第三执行响应;根据所述第三执行响应向所述卡片发送读取NFC数据交换格式文件长度指令;接收所述卡片返回的NFC数据交换格式文件长度数据;根据所述NFC数据交换格式文件长度数据向所述卡片发送读取NFC数据交换格式文件内容指令;接收所述卡片返回NFC数据交换格式文件内容数据。

本申请中,通过上述方案,实现了对于卡片对应的目标应用程序的自动启动,避免了人为选择目标应用程序的处理,提高了启动效率,且提升了用户的使用感受。

下面参考图5,其示出了适于用来实现本申请实施例的电子设备500的结构示意图。该电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图5示出的电子设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。

如图5所示,电子设备500可以包括处理装置(例如中央处理器、图形处理器等)501,其可以根据存储在只读存储器(ROM)502中的程序或者从存储装置508加载到随机访问存储器(RAM)503中的程序而执行各种适当的动作和处理。在RAM 503中,还存储有电子设备500操作所需的各种程序和数据。处理装置501、ROM 502以及RAM 503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。

通常,以下装置可以连接至I/O接口505:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置506;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置507;包括例如磁带、硬盘等的存储装置508;以及通信装置509。通信装置509可以允许电子设备500与其他设备进行无线或有线通信以交换数据。虽然图5示出了具有各种装置的电子设备500,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。

特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置509从网络上被下载和安装,或者从存储装置508被安装,或者从ROM 502被安装。在该计算机程序被处理装置501执行时,执行本申请实施例的方法中限定的上述功能。

需要说明的是,本申请上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。

上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。

上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:获取至少两个网际协议地址;向节点评价设备发送包括所述至少两个网际协议地址的节点评价请求,其中,所述节点评价设备从所述至少两个网际协议地址中,选取网际协议地址并返回;接收所述节点评价设备返回的网际协议地址;其中,所获取的网际协议地址指示内容分发网络中的边缘节点。

或者,上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:接收包括至少两个网际协议地址的节点评价请求;从所述至少两个网际协议地址中,选取网际协议地址;返回选取出的网际协议地址;其中,接收到的网际协议地址指示内容分发网络中的边缘节点。

可以以一种或多种程序设计语言或其组合来编写用于执行本申请的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定,例如,第一获取单元还可以被描述为“获取至少两个网际协议地址的单元”。

以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

本申请提供的电子设备,适用于上述应用程序启动方法的任一实施例,在此不再赘述。

本申请中,通过上述方案,实现了对于卡片对应的目标应用程序的自动启动,避免了人为选择目标应用程序的处理,提高了启动效率,且提升了用户的使用感受。

本申请提供了一种计算机可读存储介质,该计算机可读存储介质存储计算机程序,计算机程序使计算机执行上述实施例所示的应用程序启动方法。

本申请提供的计算机可读存储介质,适用于上述的蓝牙设备连接方法的任一实施例,在此不再赘述。

本申请中,通过上述方案,实现了对于卡片对应的目标应用程序的自动启动,避免了人为选择目标应用程序的处理,提高了启动效率,且提升了用户的使用感受。

本技术领域技术人员可以理解,可以用计算机程序指令来实现这些结构图和/或框图和/或流图中的每个框以及这些结构图和/或框图和/或流图中的框的组合。本技术领域技术人员可以理解,可以将这些计算机程序指令提供给通用计算机、专业计算机或其他可编程数据处理方法的处理器来实现,从而通过计算机或其他可编程数据处理方法的处理器来执行本申请公开的结构图和/或框图和/或流图的框或多个框中指定的方案。

其中,本申请装置的各个模块可以集成于一体,也可以分离部署。上述模块可以合并为一个模块,也可以进一步拆分成多个子模块。

本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本申请所必须的。

本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。

上述本申请序号仅仅为了描述,不代表实施例的优劣。

以上公开的仅为本申请的几个具体实施例,但是,本申请并非局限于此,任何本领域的技术人员能思之的变化都应落入本申请的保护范围。

26页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种息屏显示方法及电子设备

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类