一种数据处理方法和装置与流程

文档序号:12786768阅读:227来源:国知局
一种数据处理方法和装置与流程

本发明涉及通信技术领域,特别是涉及一种数据处理方法和一种数据处理装置。



背景技术:

用户设备中可以安装各种应用程序(APP,application),当前的APP通常都存在后台服务。APP在后台运行会消耗用户设备的系统资源,直观表现是设备电量消耗比较快、移动网络流量急剧上升、系统变的越来越卡。应用程序的自启行为不仅严重的降低了系统续航时间,还大大降低了系统的流畅度。

针对上述APP后台运行影响用户设备资源的问题,目前,很多安全厂商都已经在产品中加入了禁止应用程序自启的功能,如利用安全软件通过禁用第三方软件的broadcast组件来防止自启。

但是,当前的组织应用自启动的方法无法全面监控软件,且容易出现误检等问题。



技术实现要素:

鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的数据处理方法和相应的数据处理装置。

依据本发明的一个方面,提供了一种数据处理的方法,所述方法包括:对系统进程接口进行监听,获取当前启动应用进程的应用信息;依据所述应用信息对所述应用进程的类型进行检测;当检测到所述应用进程为第一类型时,依据所述应用信息启动所述应用进程对应应用;当检测到所述应用进程为第二类型时,依据所述应用信息禁止所述应用进程的启动。

可选地,对系统进程接口进行监听,获取进程创建函数;从所述进程创 建函数中所述应用进程的应用信息。

可选地,在所述进程创建函数中查找执行日志写入函数的参数信息;从所述参数信息中获取应用信息,其中,所述应用信息包括以下至少一项:标识信息、应用包名和启动类型。

可选地,startProcessLocked函数;所述日志写入函数包括:EventLog.writeEvent函数。

可选地,依据所述应用包名确定所述应用进程的应用类型;检测目标类型是否包含所述应用类型,其中,当所述目标类型包含所述应用类型时,所述应用进程为第一类型,当所述目标类型不包含所述应用类型时,所述应用进程为第二类型。

可选地,所述目标类型包括以下至少一项:安全类应用、系统类应用、社交类应用。

可选地,依据所述应用包名和/或标识信息中的应用标识,判断所述应用进程对应应用是否为禁止启动应用;当所述应用进程对应应用为禁止启动应用时,所述应用进程为第二类型;当所述应用进程对应应用为非禁止启动应用时,所述应用进程为第一类型。

可选地,依据所述标识信息中的应用标识和进程标识,判断所述应用进程是否已运行;当所述应用进程未运行时,所述应用进程为第二类型;当所述应用进程已运行时,所述应用进程为第一类型。

可选地,依据所述启动类型确定所述应用进程对应进程组件,当所述进程组件为目标组件时,执行判断所述应用进程对应应用是否为禁止启动应用的步骤。

根据本发明的另一方面,提供了一种数据处理的装置,所述装置包括:监听获取模块,用于对系统进程接口进行监听,获取当前启动应用进程的应用信息;检测模块,用于依据所述应用信息对所述应用进程的类型进行检测;启动模块,用于当检测到所述应用进程为第一类型时,依据所述应用信息启动所述应用进程对应应用;禁止启动模块,用于当检测到所述应用进程为第二类型时,依据所述应用信息禁止所述应用进程的启动。

可选地,函数获取子模块,用于对系统进程接口进行监听,获取进程创建函数;信息获取子模块,用于从所述进程创建函数中所述应用进程的应用信息。

可选地,参数信息查找单元,用于在所述进程创建函数中查找执行日志写入函数的参数信息;信息获取单元,用于从所述参数信息中获取应用信息,其中,所述应用信息包括以下至少一项:标识信息、应用包名和启动类型。

可选地,startProcessLocked函数;所述日志写入函数包括:EventLog.writeEvent函数。

可选地,类型确定子模块,用于依据所述应用包名确定所述应用进程的应用类型;类型匹配子模块,用于检测目标类型是否包含所述应用类型,其中,当所述目标类型包含所述应用类型时,所述应用进程为第一类型,当所述目标类型不包含所述应用类型时,所述应用进程为第二类型。

可选地,所述目标类型包括以下至少一项:安全类应用、系统类应用、社交类应用。

可选地,进程判断子模块,用于依据所述应用包名和/或标识信息中的应用标识,判断所述应用进程对应应用是否为禁止启动应用;类型匹配子模块,用于当所述应用进程对应应用为禁止启动应用时,所述应用进程为第二类型;当所述应用进程对应应用为非禁止启动应用时,所述应用进程为第一类型。

可选地,运行判断子模块,用于依据所述标识信息中的应用标识和进程标识,判断所述应用进程是否已运行;类型匹配子模块,用于当所述应用进程未运行时,所述应用进程为第二类型;当所述应用进程已运行时,所述应用进程为第一类型。

可选地,组件判断子模块,用于依据所述启动类型确定所述应用进程对应进程组件,当所述进程组件为目标组件时,执行判断所述应用进程对应应用是否为禁止启动应用的步骤。

根据本发明的对系统进程接口进行监听,获取当前启动应用进程的应用信息;依据所述应用信息对所述应用进程的类型进行检测;当检测到所述应 用进程为第一类型时,依据所述应用信息启动所述应用进程对应应用;当检测到所述应用进程为第二类型时,依据所述应用信息禁止所述应用进程的启动。可以有效的禁止无用应用程序的自启动,由此解决了系统续航时间降低,误检等问题,取得了监控更加全面,系统的续航时间增加,系统的流畅度得到提升的有益效果。

上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。

附图说明

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

图1示出了根据本发明一个实施例的数据处理方法的步骤流程图;

图2示出了根据本发明另一个实施例的数据处理方法的步骤流程图;

图3示出了根据本发明一个实施例的数据处理装置的结构框图;

图4示出了根据本发明另一个实施例的数据处理装置的结构框图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

实施例一

参照图1,示出了根据本发明一个实施例的数据处理方法的步骤流程图,具体可以包括如下步骤:

步骤102、对系统进程接口进行监听,获取当前启动应用进程的应用信息。

本实施例可以对应用进程的启动进行监控,防止由于无需自启的应用程序自启动而浪费资源。因此可以对系统进程接口进行监听,以android系统为例,可以通过注入java hook,对传递应用信息的系统进程接口进行监听。应用在启动时需要通过该系统进程接口调用启动函数进行应用程序的启动,对该系统进程接口进行监听,从而确定当前正要启动应用进程时,获取该正在启动应用进程的应用信息,应用信息可以是能够标识该应用的各种信息,如进程标识、应用包名等。

步骤104、依据所述应用信息对所述应用进程的类型进行检测。

获取当前启动应用进程的应用信息后,可以依据所述应用信息对所述应用进程的类型进行检测。本发明实施例可以预先配置各种应用程序的禁止启动规则,该预置禁止启动规则用于限制应用程序的自启动,自启动指的是无用户触发而自行启动,例如预置禁止启动规则可以给各应用程序分类,确定哪些程序自启动时不会被禁止,哪些程序自启动时需要被禁止。将这些自启动需要被禁止的应用程序的应用信息存储在一张禁止自启列表中。检测所述应用进程的类型是否符合预置禁止启动规则,如判断所述应用信息在禁止自启列表查找是否存在匹配的信息,即依据应用信息执行自启动的逻辑判断。

步骤106、当检测到所述应用进程为第一类型时,依据所述应用信息启动所述应用进程对应应用。

本实施例中,预先对应用程序进行分类,不同的分类执行不同的操作,例如对于系统应用等系统运行所需的应用,可以允许其自启动,而对于娱乐类应用,不允许其自启动。可以将允许自启动的应用作为第一类型,将不允许自启动的应用作为第二类型。

当检测到所述应用进程不符合预置禁止启动规则时,如在禁止自启列表中没有查找到与当前启动应用进程的应用信息匹配的信息,即所述应用进程为第一类型时,依据所述应用信息启动所述应用进程对应应用。

步骤108、当检测到所述应用进程为第二类型时,依据所述应用信息禁止所述应用进程的启动。

当检测到所述应用进程符合预置禁止启动规则时,如在禁止自启列表中 查找到与当前启动应用进程的应用信息匹配的信息,即所述应用进程为第二类型时,将该信息返回给app层的监听模块,例如,用户设备杀毒客户端,再由该杀毒客户端依据所述应用信息禁止所述应用进程的启动。

综上所述,通过对系统进程接口进行监听,获取当前启动应用进程的应用信息;依据所述应用信息对所述应用进程的类型进行检测;当检测到所述应用进程为第一类型时,依据所述应用信息启动所述应用进程对应应用;当检测到所述应用进程为第二类型时,依据所述应用信息禁止所述应用进程的启动。能够有效的禁止无用应用程序的自启动,监控更加全面,减少误检等问题,从而增加系统的续航时间,提升系统的流畅度。

实施例二

步骤202、对系统进程接口进行监听,获取进程创建函数。

步骤204、在所述进程创建函数中查找执行日志写入函数的参数信息。

步骤206、从所述参数信息中获取应用信息,其中,所述应用信息包括以下至少一项:标识信息、应用包名和启动类型。

其中,进程创建函数包括:startProcessLocked函数;所述日志写入函数包括:EventLog.writeEvent函数。

本实施例通过监听系统进程接口来获取正在启动应用进程的应用信息,可以采用hook方式执行监听,从而获取在应用启动时调用的进程创建函数,其中,所述进程创建函数包括:startProcessLocked函数。然后从所述进程创建函数中获取所述应用进程的应用信息,即可以在所述进程创建函数中查找执行日志写入函数的参数信息,所述日志写入函数包括:EventLog.writeEvent函数,然后从所述参数信息中获取应用信息。

以Android系统为例,Android系统是一个是基于组件的系统,这些组件包括broadcast(广播组件)、provider(提供者组件)、service(服务组件)和activity(活动组件)。每一个Android软件都是由这些组件拼装而成,通过配置这些组件的功能和行为,就能实现应用程序被用户或者系统中其他组件唤醒。

其中,在启动一个应用程序前,Activity应用程序中的驱动程序 ActivityManagerService会调用一个进程创建函数startProcessLocked方法去启动新的进程。本发明实施例可以通过注入java hook,对系统进程接口进行监听。系统在startProcessLocked中查找执行日志写入函数EventLog.writeEvent方法,获取EventLog.writeEvent方法的参数信息。

然后从所述参数信息中获取应用信息,应用信息包括标识信息、应用包名和启动类型,其中,标识信息包括应用标识和进程标识。一般android系统会自动为应用生成一个应用标识即用户标识符(User Identification,UID),并且每个应用会被分配不同的UID,用于管理各个应用的权限以及数据共享。进程标识(Process Identifier,PID)是大多数操作系统的内核用于唯一标识进程的一个数值,这一数值可以作为许多函数调用的参数。安卓(Android)系统中可以使用应用包名(Package Name)作为应用的标识。一个包名代表一个应用,包名主要用于系统识别不同的应用。本发明实施例可以依据所述启动类型确定所述应用进程对应的进程组件。

步骤208、依据所述应用包名确定所述应用进程的应用类型。

步骤210、检测目标类型是否包含所述应用类型。

其中,所述目标类型包括以下至少一项:安全类应用、系统类应用、社交类应用。本发明实施例可以依据各应用程序的功能或级别给各应用程序分类,例如杀毒软件为安全类应用,插件等支撑系统运行的应用为系统类应用,QQ、微信为社交类应用,电子书、音乐播放器为娱乐应用。

本发明实施例预先确定哪些应用类型对应的应用进程自启动时不会被禁止,哪些自启动时需要被禁止,目标类型指的是自启动时不需要被禁止的应用类型,如上述安全类应用、系统类应用、社交类应用均是用户使用用户设备所需要的,因此可以作为第一类型,而对于娱乐应用是非必须的可以作为第二类型,即禁止其自启动,而可以依据用户的触发启动。本发明实施例可以将应用类型、应用类型对应的各应用程序的应用信息存储在一张类型信息列表中,将目标类型信息存储在一张禁止自启列表中。

获取当前启动应用进程的应用信息后,依据所述应用包名Package Name查找所述类型信息列表,可以确定所述应用进程的应用类型。依据所述应用 类型在禁止自启列表中查找是否存在匹配的信息,即检测所述目标类型是否包含所述应用类型。

当所述目标类型包含所述应用类型时,执行步骤212,当所述目标类型不包含所述应用类型时,执行步骤214。

步骤212、当检测到所述应用进程为第一类型时,依据所述应用信息启动所述应用进程对应应用。

当所述目标类型包含所述应用类型时,即所述应用进程为第一类型,则该应用程序自启动时不需要被禁止,可以依据所述应用信息启动所述应用进程对应应用。

步骤214、依据所述启动类型确定所述应用进程对应进程组件。

当所述进程组件为目标组件时,执行步骤216。

当所述目标类型不包含所述应用类型时,再依据所述启动类型确定所述应用进程对应进程组件,以进行所述应用进程是否为第二类型的进一步判断。本实施例中,应用进程包含多种进程组件,不同的启动方式可以启动不同的进程组件,因此依据所述启动类型确定所述应用进程对应进程组件,其中,进程组件包括如activity组件、broadcast组件、service组件和provider组件。

(1)activity组件

activity组件是可视化组件,由于activity组件通常是由用户触发而引发的启动行为,并非软件自启,通常activity组件可以判定为非目标组件。

(2)broadcast组件

broadcast组件是非可视化组件,可以作为目标组件,而在判定其是否为自启动时,可以分两种情况处理:如果包含该broadcast组件的软件已经处于运行状态,例如,杀毒客户端启动成功后,会监听用户设备中每个应用程序的运行状态,当一个组件被启动时,就可以遍历这个运行状态列表,判别包含该组件的应用程序是否处于运行状态。可以注入每一个应用程序,在该程序中设置一个监视器,则认为当前的启动行为并非自启,不需要被拦截。这种情况一般发生在多进程Android软件中。反之,则认为是自启。

(3)service组件

service组件是非可视化组件,可以作为目标组件,而在判定其是否为自启动时,其判别方式与broadcast组件类似。但是service组件的重要性一般要高于broadcast组件,不恰当的拦截极有可能导致某些软件运行异常,为了避免这种情况,当service组件引发的自启行为被拦截时,可进一步给予提示,引导用户完成预期的操作,从而判定所述进程组件是否为目标组件。例如,预期的操作一般有以下几种场景:比如当用户在用户设备淘宝上进行支付时,即使用户禁止了支付宝自启,此时他也希望支付宝能够被唤醒;另外一种场景是用户设备卫士和用户设备助手,当这个两个应用程序共存时,用户设备卫士会不断通过service组件唤醒用户设备助手,如果用户本身就禁止了用户设备助手的自启功能,那么这时候用户很有可能不希望用户设备助手被启动。根据具体的使用场景,用户会对禁自启的效果产生不同的预期。

(4)provider组件

对provider组件引发的启动行为一般不拦截,可以判定所述进程组件是非目标组件。

步骤216、依据所述应用包名和/或标识信息中的应用标识,判断所述应用进程对应应用是否为禁止启动应用。

当所述应用进程对应应用为禁止启动应用时,执行步骤218。

当所述应用进程对应应用为非禁止启动应用时,所述应用进程为第一类型,执行步骤212。

本发明实施例可以给各应用程序分类,确定哪些程序自启动时不会被禁止,哪些程序自启动时需要被禁止。将这些自启动需要被禁止的应用程序的应用信息存储在一张禁止自启列表中。获取当前启动应用进程的应用信息后,依据所述应用包名Package Name或者标识信息中的应用标识UID,也可以同时依据应用包名Package Name和应用标识UID,在禁止自启列表查找是否存在匹配的信息。当Package Name和/或UID在禁止自启列表中,判定所述应用进程对应应用为禁止启动应用,执行步骤218。若否,即该应用进程为非禁止启动应用,所述应用进程为第一类型,执行步骤212。

步骤218、依据所述标识信息中的应用标识和进程标识,判断所述应用进程是否已运行。

依据应用进程的UID和PID确定该应用进程是否已运行,即会监听用户设备中每个应用程序的运行状态,从而遍历这个运行状态列表,判别包含该组件的应用程序是否处于运行状态。

当所述应用进程未运行时,所述应用进程为第二类型,执行步骤220;当所述应用进程已运行时,执行步骤212。

步骤220、当检测到所述应用进程为第二类型时,依据所述应用信息禁止所述应用进程的启动。

在检测到目标组件要启动时,通过判断确定该应用进程为禁止启动应用,且该应用程序未运行,此时可以确定所述应用进程为第二类型,从而禁止该应用进程的启动即禁止应用进程自启动。从而防止由于自启动而导致设备资源的浪费,其通过多种判断减少误检,防止出现用户触发启动而被禁止的问题,提高用户体验。

对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。

参照图3,示出了根据本发明一个实施例的一种数据处理装置实施例的结构框图,具体可以包括如下模块:

监听获取模块302,用于对系统进程接口进行监听,获取当前启动应用进程的应用信息。

检测模块304,用于依据所述应用信息对所述应用进程的类型进行检测。

启动模块306,用于当检测到所述应用进程为第一类型时,依据所述应用信息启动所述应用进程对应应用。

禁止启动模块308,用于当检测到所述应用进程为第二类型时,依据所 述应用信息禁止所述应用进程的启动。

综上所述,通过对系统进程接口进行监听,获取当前启动应用进程的应用信息;依据所述应用信息对所述应用进程的类型进行检测;当检测到所述应用进程为第一类型时,依据所述应用信息启动所述应用进程对应应用;当检测到所述应用进程为第二类型时,依据所述应用信息禁止所述应用进程的启动。能够有效的禁止无用应用程序的自启动,监控更加全面,减少误检等问题,从而增加系统的续航时间,提升系统的流畅度。

参照图4,示出了根据本发明另一个实施例的一种数据处理装置实施例的结构框图,具体可以包括如下模块:

监听获取模块302,用于对系统进程接口进行监听,获取当前启动应用进程的应用信息。

本发明一个优选实施例种,所述监听获取模块302,包括:

函数获取子模块30202,用于对系统进程接口进行监听,获取进程创建函数。

信息获取子模块30204,用于从所述进程创建函数中所述应用进程的应用信息。

其中,进程创建函数包括:startProcessLocked函数;所述日志写入函数包括:EventLog.writeEvent函数。

本发明一个优选实施例中,所述信息获取子模块30204,包括:

参数信息查找单元302042,用于在所述进程创建函数中查找执行日志写入函数的参数信息。

信息获取单元302044,用于从所述参数信息中获取应用信息,其中,所述应用信息包括以下至少一项:标识信息、应用包名和启动类型。

检测模块304,用于依据所述应用信息对所述应用进程的类型进行检测。

本发明一个优选实施例中,所述检测模块304,包括:

组件判断子模块30402,用于依据所述启动类型确定所述应用进程对应进程组件,当所述进程组件为目标组件时,执行判断所述应用进程对应应用是否为禁止启动应用的步骤。

类型确定子模块30404,用于依据所述应用包名确定所述应用进程的应用类型。

类型匹配子模块30406,用于检测目标类型是否包含所述应用类型,其中,当所述目标类型包含所述应用类型时,所述应用进程为第一类型,当所述目标类型不包含所述应用类型时,所述应用进程为第二类型。

其中,所述目标类型包括以下至少一项:安全类应用、系统类应用、社交类应用。

本发明一个优选实施例中,所述检测模块304,包括:

进程判断子模块30408,用于依据所述应用包名和/或标识信息中的应用标识,判断所述应用进程对应应用是否为禁止启动应用。

类型匹配子模块30406,用于当所述应用进程对应应用为禁止启动应用时,所述应用进程为第二类型;当所述应用进程对应应用为非禁止启动应用时,所述应用进程为第一类型。

本发明一个优选实施例中,所述检测模块,包括:

运行判断子模块30410,用于依据所述标识信息中的应用标识和进程标识,判断所述应用进程是否已运行。

类型匹配子模块30406,用于当所述应用进程未运行时,所述应用进程为第二类型;当所述应用进程已运行时,所述应用进程为第一类型。

启动模块306,用于当检测到所述应用进程为第一类型时,依据所述应用信息启动所述应用进程对应应用。

禁止启动模块308,用于当检测到所述应用进程为第二类型时,依据所述应用信息禁止所述应用进程的启动。

对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容, 并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。

本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。

此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。

本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当 理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的数据处理设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。

应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

本发明公开了A1、一种数据处理方法,包括:对系统进程接口进行监听,获取当前启动应用进程的应用信息;依据所述应用信息对所述应用进程的类型进行检测;当检测到所述应用进程为第一类型时,依据所述应用信息启动所述应用进程对应应用;当检测到所述应用进程为第二类型时,依据所述应用信息禁止所述应用进程的启动。

A2、如A1所述的方法,对系统进程接口进行监听,获取当前启动应用进程的应用信息,包括:系统进程接口进行监听,获取进程创建函数;从所述进程创建函数中所述应用进程的应用信息。

A3、如A2所述的方法,从所述进程创建函数中所述应用进程的应用信息,包括:在所述进程创建函数中查找执行日志写入函数的参数信息;从所述参数信息中获取应用信息,其中,所述应用信息包括以下至少一项:标识信息、应用包名和启动类型。

A4、如A2所述的方法,进程创建函数包括:startProcessLocked函数;所述日志写入函数包括:EventLog.writeEvent函数。

A5、如A3所述的方法,依据所述应用信息对所述应用进程的应用类型进行检测,包括:依据所述应用包名确定所述应用进程的应用类型;检测目标类型是否包含所述应用类型,其中,当所述目标类型包含所述应用类型时,所述应用进程为第一类型,当所述目标类型不包含所述应用类型时,所述应用进程为第二类型。

A6、如A5所述的方法,所述目标类型包括以下至少一项:安全类应用、系统类应用、社交类应用。

A7、如A3所述的方法,还包括:依据所述应用包名和/或标识信息中的应用标识,判断所述应用进程对应应用是否为禁止启动应用;当所述应用进程对应应用为禁止启动应用时,所述应用进程为第二类型;当所述应用进程对应应用为非禁止启动应用时,所述应用进程为第一类型。

A8、如A7所述的方法,判断所述应用进程对应应用为禁止启动应用之后,还包括:依据所述标识信息中的应用标识和进程标识,判断所述应用进程是否已运行;当所述应用进程未运行时,所述应用进程为第二类型;当所述应用进程已运行时,所述应用进程为第一类型。

A9、如A7所述的方法,还包括:依据所述启动类型确定所述应用进程对应进程组件,当所述进程组件为目标组件时,执行判断所述应用进程对应应用是否为禁止启动应用的步骤。

本发明还公开了B10、一种数据处理装置,包括:监听获取模块,用于对系统进程接口进行监听,获取当前启动应用进程的应用信息;检测模块,用于依据所述应用信息对所述应用进程的类型进行检测;启动模块,用于当检测到所述应用进程为第一类型时,依据所述应用信息启动所述应用进程对应应用;禁止启动模块,用于当检测到所述应用进程为第二类型时,依据所述应用信息禁止所述应用进程的启动。

B11、如B10所述的装置,所述监听获取模块,包括:函数获取子模块,用于对系统进程接口进行监听,获取进程创建函数;信息获取子模块,用于 从所述进程创建函数中所述应用进程的应用信息。

B12、如B11所述的装置,所述信息获取子模块,包括:参数信息查找单元,用于在所述进程创建函数中查找执行日志写入函数的参数信息;信息获取单元,用于从所述参数信息中获取应用信息,其中,所述应用信息包括以下至少一项:标识信息、应用包名和启动类型。

B13、如B11所述的装置,进程创建函数包括:startProcessLocked函数;所述日志写入函数包括:EventLog.writeEvent函数。

B14、如B12所述的装置,所述检测模块,包括:类型确定子模块,用于依据所述应用包名确定所述应用进程的应用类型;类型匹配子模块,用于检测目标类型是否包含所述应用类型,其中,当所述目标类型包含所述应用类型时,所述应用进程为第一类型,当所述目标类型不包含所述应用类型时,所述应用进程为第二类型。

B15、如B14所述的装置,所述目标类型包括以下至少一项:安全类应用、系统类应用、社交类应用。

B16、如B12所述的装置,所述检测模块,还包括:进程判断子模块,用于依据所述应用包名和/或标识信息中的应用标识,判断所述应用进程对应应用是否为禁止启动应用;类型匹配子模块,用于当所述应用进程对应应用为禁止启动应用时,所述应用进程为第二类型;当所述应用进程对应应用为非禁止启动应用时,所述应用进程为第一类型。

B17、如B16所述的装置,所述检测模块,还包括:运行判断子模块,用于依据所述标识信息中的应用标识和进程标识,判断所述应用进程是否已运行;类型匹配子模块,用于当所述应用进程未运行时,所述应用进程为第二类型;当所述应用进程已运行时,所述应用进程为第一类型。

B18、如B16所述的装置,所述检测模块,还包括:组件判断子模块,用于依据所述启动类型确定所述应用进程对应进程组件,当所述进程组件为目标组件时,执行判断所述应用进程对应应用是否为禁止启动应用的步骤。

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