CN110287087B - 用于检测应用的方法和装置 - Google Patents

用于检测应用的方法和装置 Download PDF

Info

Publication number
CN110287087B
CN110287087B CN201810223858.2A CN201810223858A CN110287087B CN 110287087 B CN110287087 B CN 110287087B CN 201810223858 A CN201810223858 A CN 201810223858A CN 110287087 B CN110287087 B CN 110287087B
Authority
CN
China
Prior art keywords
application
detected
information
determining
identifier
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810223858.2A
Other languages
English (en)
Other versions
CN110287087A (zh
Inventor
荆博
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201810223858.2A priority Critical patent/CN110287087B/zh
Publication of CN110287087A publication Critical patent/CN110287087A/zh
Application granted granted Critical
Publication of CN110287087B publication Critical patent/CN110287087B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3604Software analysis for verifying properties of programs
    • G06F11/3608Software analysis for verifying properties of programs using formal methods, e.g. model checking, abstract interpretation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices
    • G06F16/137Hash-based

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Stored Programmes (AREA)

Abstract

本申请实施例公开了用于检测应用的方法和装置。该方法的一具体实施方式包括:接收待检测应用的应用文件;基于上述应用文件得到上述待检测应用的应用标识符;确定预先设定的第一应用信息集合中是否包括应用标识符与上述待检测应用的应用标识符相同的目标应用的应用信息,其中,上述第一应用信息集合用于存储本地所接收的应用的应用信息;响应于确定上述第一应用信息集合中包括应用标识符与上述待检测应用的应用标识符相同的目标应用的应用信息,确定上述待检测应用的开发者与上述目标应用的开发者是否相同。该实施方式实现了检测待检测应用是否侵权。

Description

用于检测应用的方法和装置
技术领域
本申请实施例涉及计算机技术领域,具体涉及互联网技术领域,尤其涉及用于检测应用的方法和装置。
背景技术
随着移动互联网的兴起以及智能手机、平板电脑等电子设备的迅速普及,应用分发开始变的尤为重要。与应用分发对应的就是应用开放平台,开发者在应用开放平台提交应用被收录后,该应用会被分发到应用分发渠道,以供用户下载安装。然而,由于打包党(特指将一个应用解包后,替换部分资源文件,如加入广告、恶意吸费等插件后重新打包生成新应用,并伪装成正版应用的部分恶意开发者)和伪装党(直接将他人应用拿来作为自己的,并在应用开放平台提交,非法获取收益的恶意开发者)的存在,给应用开放平台带来了如何识别正版应用和正版开发者的问题。此外,由于应用的更新非常频繁,如何判断开发者提交的应用是否为最新版本也尤为重要。
发明内容
本申请实施例提出了用于检测应用的方法和装置。
第一方面,本申请实施例提供了一种用于检测应用的方法,包括:接收待检测应用的应用文件;基于上述应用文件得到上述待检测应用的应用标识符;确定预先设定的第一应用信息集合中是否包括应用标识符与上述待检测应用的应用标识符相同的目标应用的应用信息,其中,上述第一应用信息集合用于存储本地所接收的应用的应用信息;响应于确定上述第一应用信息集合中包括应用标识符与上述待检测应用的应用标识符相同的目标应用的应用信息,确定上述待检测应用的开发者与上述目标应用的开发者是否相同。
在一些实施例中,上述方法还包括;响应于确定上述待检测应用的开发者与上述目标应用的开发者相同,检测上述待检测应用的版本是否最新;响应于确定上述待检测应用的开发者与上述目标应用的开发者不相同,向客户端发送第一提示信息,其中,上述第一提示信息用于提示用户与上述待检测应用的应用标识符相同的上述目标应用已被其他开发者上传,上述待检测应用是上述用户通过上述客户端上传的。
在一些实施例中,上述检测上述待检测应用的版本是否最新,包括:根据上述待检测应用的应用标识符,从上述第一应用信息集合中得到与上述待检测应用的应用标识符对应的第一最新版本号;根据上述待检测应用的版本号和上述第一最新版本号,确定上述待检测应用的版本是否比上述第一最新版本号对应的版本新;响应于确定上述待检测应用的版本不比上述第一最新版本号对应的版本新,向上述客户端发送第二提示信息,其中,上述第二提示信息用于提示上述用户已上传过比上述待检测应用的版本新或与上述待检测应用的版本相同的应用;响应于确定上述待检测应用的版本比上述第一最新版本号对应的版本新,根据上述待检测应用的应用标识符从预先设定的第二应用信息集合中得到上述待检测应用的应用标识符对应的第二最新版本号,其中,上述第二应用信息集合用于存储从第三方网站获取的应用的应用信息,以及执行以下检测操作:检测上述待检测应用的版本是否比上述第二最新版本号对应的版本旧;响应于确定上述待检测应用的版本不比上述第二最新版本号对应的版本旧,确定上述待检测应用为有效应用;响应于确定上述待检测应用的版本比上述第二最新版本号对应的版本旧,向上述客户端发送第三提示信息,其中,上述第三提示信息用于提示上述用户第三方网站已存在比上述待检测应用的版本新的应用。
在一些实施例中,上述方法还包括;响应于确定上述待检测应用为有效应用,将上述待检测应用的应用信息与上述用户的用户标识符关联存储到上述第一应用信息集合。
在一些实施例中,上述基于上述应用文件得到上述待检测应用的应用标识符,包括:基于上述待检测应用的应用文件,确定上述第一应用信息集合中是否包括待用应用信息,其中,上述待用应用信息对应的应用的应用文件与上述待检测应用的应用文件相匹配,其中,上述第一应用信息集合中的应用信息包括应用标识符;响应于确定上述第一应用信息集合中存在待用应用信息,将上述待用应用信息的应用标识符作为上述待检测应用的应用标识符;响应于确定上述第一应用信息集合中不存在待用应用信息,对上述待检测应用的应用文件进行解析,得到上述待检测应用的应用标识符。
在一些实施例中,上述基于上述待检测应用的应用文件,确定上述第一应用信息集合中是否包括待用应用信息,包括:根据上述待检测应用的应用文件生成下载链接,其中,上述下载链接包括统一资源定位符和时间戳,上述时间戳是基于接收上述待检测应用的应用文件的时间生成的;将上述下载链接与上述第一应用信息集合中的应用信息包括的应用的下载链接进行匹配,其中,上述第一应用信息集合中的应用信息包括应用的下载链接;响应于确定上述下载链接与上述第一应用信息集合中的应用信息包括的应用的下载链接相匹配,确定相匹配的应用信息为待用应用信息。
在一些实施例中,上述基于上述待检测应用的应用文件,确定上述第一应用信息集合中是否包括待用应用信息,包括:计算上述待检测应用的应用文件的哈希值;将上述哈希值与上述第一应用信息集合中应用信息对应的应用的应用文件的哈希值进行匹配;响应于确定上述哈希值与上述第一应用信息集合中应用信息对应的应用的应用文件的哈希值相匹配,确定哈希值相匹配的应用文件对应的应用信息为待用应用信息。
在一些实施例中,上述确定上述待检测应用的开发者与上述目标应用的开发者是否相同,包括:根据上述上传上述待检测应用的应用文件的用户的用户标识符和上传上述目标应用的用户的用户标识符确定上述待检测应用的开发者与上述目标应用的开发者是否相同,其中,上述用户的用户标识符是基于上述用户发送的注册信息生成的。
第二方面,本申请实施例提供了一种用于检测应用的装置,包括:接收单元,用于接收待检测应用的应用文件;获得单元,用于基于上述应用文件得到上述待检测应用的应用标识符;第一确定单元,用于确定预先设定的第一应用信息集合中是否包括应用标识符与上述待检测应用的应用标识符相同的目标应用的应用信息,其中,上述第一应用信息集合用于存储本地所接收的应用的应用信息;第二确定单元,用于响应于确定上述第一应用信息集合中包括应用标识符与上述待检测应用的应用标识符相同的目标应用的应用信息,确定上述待检测应用的开发者与上述目标应用的开发者是否相同。
在一些实施例中,上述装置还包括:检测单元,用于响应于确定上述待检测应用的开发者与上述目标应用的开发者相同,检测上述待检测应用的版本是否最新;发送单元,用于响应于确定上述待检测应用的开发者与上述目标应用的开发者不相同,向客户端发送第一提示信息,其中,上述第一提示信息用于提示用户与上述待检测应用的应用标识符相同的上述目标应用已被其他开发者上传,上述待检测应用是上述用户通过上述客户端上传的。
在一些实施例中,上述检测单元进一步用于:根据上述待检测应用的应用标识符,从上述第一应用信息集合中得到与上述待检测应用的应用标识符对应的第一最新版本号;根据上述待检测应用的版本号和上述第一最新版本号,确定上述待检测应用的版本是否比上述第一最新版本号对应的版本新;响应于确定上述待检测应用的版本不比上述第一最新版本号对应的版本新,向上述客户端发送第二提示信息,其中,上述第二提示信息用于提示上述用户已上传过比上述待检测应用的版本新或与上述待检测应用的版本相同的应用;响应于确定上述待检测应用的版本比上述第一最新版本号对应的版本新,根据上述待检测应用的应用标识符从预先设定的第二应用信息集合中得到上述待检测应用的应用标识符对应的第二最新版本号,其中,上述第二应用信息集合用于存储从第三方网站获取的应用的应用信息,以及执行以下检测操作:检测上述待检测应用的版本是否比上述第二最新版本号对应的版本旧;响应于确定上述待检测应用的版本不比上述第二最新版本号对应的版本旧,确定上述待检测应用为有效应用;响应于确定上述待检测应用的版本比上述第二最新版本号对应的版本旧,向上述客户端发送第三提示信息,其中,上述第三提示信息用于提示上述用户第三方网站已存在比上述待检测应用的版本新的应用。
在一些实施例中,上述装置还包括:存储单元,用于响应于确定上述待检测应用为有效应用,将上述待检测应用的应用信息与上述用户的用户标识符关联存储到上述第一应用信息集合。
在一些实施例中,上述获得单元包括:第三确定单元,用于基于上述待检测应用的应用文件,确定上述第一应用信息集合中是否包括待用应用信息,其中,上述待用应用信息对应的应用的应用文件与上述待检测应用的应用文件相匹配,其中,上述第一应用信息集合中的应用信息包括应用标识符;第一获得单元,用于响应于确定上述第一应用信息集合中存在待用应用信息,将上述待用应用信息的应用标识符作为上述待检测应用的应用标识符;第二获得单元,用于响应于确定上述第一应用信息集合中不存在待用应用信息,对上述待检测应用的应用文件进行解析,得到上述待检测应用的应用标识符。
在一些实施例中,上述第三确定单元进一步用于:根据上述待检测应用的应用文件生成下载链接,其中,上述下载链接包括统一资源定位符和时间戳,上述时间戳是基于接收上述待检测应用的应用文件的时间生成的;将上述下载链接与上述第一应用信息集合中的应用信息包括的应用的下载链接进行匹配,其中,上述第一应用信息集合中的应用信息包括应用的下载链接;响应于确定上述下载链接与上述第一应用信息集合中的应用信息包括的应用的下载链接相匹配,确定相匹配的应用信息为待用应用信息。
在一些实施例中,上述第三确定单元进一步用于:计算上述待检测应用的应用文件的哈希值;将上述哈希值与上述第一应用信息集合中应用信息对应的应用的应用文件的哈希值进行匹配;响应于确定上述哈希值与上述第一应用信息集合中应用信息对应的应用的应用文件的哈希值相匹配,确定哈希值相匹配的应用文件对应的应用信息为待用应用信息。
在一些实施例中,上述第二确定单元进一步用于:根据上述上传上述待检测应用的应用文件的用户的用户标识符和上传上述目标应用的用户的用户标识符确定上述待检测应用的开发者与上述目标应用的开发者是否相同,其中,上述用户的用户标识符是基于上述用户发送的注册信息生成的。
第三方面,本申请实施例提供了一种服务器,该服务器包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当上述一个或多个程序被上述一个或多个处理器执行时,使得上述一个或多个处理器实现如第一方面中任一实现方式描述的方法。
第四方面,本申请实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,该计算机程序被处理器执行时实现如第一方面中任一实现方式描述的方法。
本申请实施例提供的用于检测应用的方法和装置,基于待检测应用的应用文件得到待检测应用的应用标识符,而后确定预先设定的第一应用信息集合中是否包括应用标识符与待检测应用的应用标识符相同的目标应用的应用信息,响应于确定第一应用信息集合中包括应用标识符与待检测应用的应用标识符相同的目标应用的应用信息,确定待检测应用的开发者与目标应用的开发者是否相同,实现对待检测应用开发者的验证,从而检测待检测应用是否侵权。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本申请可以应用于其中的示例性***架构图;
图2是根据本申请的用于检测应用的方法的一个实施例的流程图;
图3是根据本申请的用于检测应用的方法的一个应用场景的示意图;
图4是根据本申请的用于检测应用的方法的又一个实施例的流程图;
图5是根据本申请的用于检测应用的装置的一个实施例的结构示意图;
图6是适于用来实现本申请实施例的服务器的计算机***的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的用于检测应用的方法或用于检测应用的装置的实施例的示例性***架构100。
如图1所示,***架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种客户端应用,例如网页浏览器应用、搜索类应用等。
终端设备101、102、103可以是硬件,也可以是软件。当终端设备101、102、103为硬件时,可以是具有显示屏并且支持信息发送和显示的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。当终端设备101、102、103为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。
服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上显示的信息提供支持的服务器。服务器可以对接收到的终端设备101、102、103发送的待检测应用的应用文件进行检测,并基于检测结果生成提示信息反馈给终端设备。
需要说明的是,本申请实施例所提供的用于检测应用的方法一般由服务器105执行,相应地,用于检测应用的装置一般设置于服务器105中。
需要说明的是,服务器可以是硬件,也可以是软件。当服务器为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
继续参考图2,其示出了根据本申请的用于检测应用的方法的一个实施例的流程200。该用于检测应用的方法,包括以下步骤:
步骤201,接收待检测应用的应用文件。
在本实施例中,用于检测应用的方法运行于其上的执行主体(例如图1所示的服务器105)可以接收待检测应用的应用文件,在这里,待检测应用的应用文件可以是指待检测应用的计算机程序文件,例如,可以是待检测应用的安装包。
步骤202,基于应用文件得到待检测应用的应用标识符。
在本实施例中,上述执行主体可以基于接收到的上述待检测应用的应用文件得到上述待检测应用的应用标识符,在这里,应用标识符可以是用于区分不同应用的标识符,一个应用标识符唯一标识一款应用,同一款应用的不同版本使用同一个应用标识符。作为示例,一款应用的应用标识符可以是该款应用的包名。
在本实施例的一些可选的实现方式中,上述步骤202可以具体包括:
步骤I,基于上述待检测应用的应用文件,上述执行主体可以确定第一应用信息集合中是否包括待用应用信息,其中,上述待用应用信息对应的应用的应用文件与上述待检测应用的应用文件相匹配,其中,上述第一应用信息集合中的应用信息包括应用标识符。作为示例,上述待用应用信息对应的应用的应用文件与上述待检测应用的应用文件相匹配可以是指,上述待用应用信息对应的应用的应用文件与上述待检测应用的应用文件相同。
步骤II,响应于确定上述第一应用信息集合中存在待用应用信息,上述执行主体可以将上述待用应用信息的应用标识符作为上述待检测应用的应用标识符。
步骤III,响应于确定上述第一应用信息集合中不存在待用应用信息,上述执行主体可以对上述待检测应用的应用文件进行解析,得到上述待检测应用的应用标识符。作为示例,上述执行主体可以使用现有的应用文件解析工具对上述待检测应用的应用文件进行解析,从而得到待检测应用的应用标识符、版本号、开发者信息、哈希值等应用信息。
在一些可选的实现方式中,上述步骤I可以具体包括:首先,上述执行主体可以根据上述待检测应用的应用文件生成下载链接,其中,上述下载链接可以包括统一资源定位符(Uniform Resource Locator,URL)和时间戳,上述时间戳是基于接收上述待检测应用的应用文件的时间生成的上述执行主体可以根据下载链接得到接收上述待检测应用的应用文件的时间,在这里,下载链接可以与应用文件唯一对应,对于同一个应用文件,不同时间接收,生成的下载链接中的URL相同,时间戳不同。需要说明的是,对于一个下载链接,当该下载链接URL所指向的应用文件的内容由于开发者的修改发生时,该下载链接中的时间戳更新为基于修改时间生成的时间戳。作为一种示例,下载链接还可以包括随机数,对于同一个应用文件,不同时间接收,生成的下载链接中的URL相同,时间戳和随机数不同。然后,上述执行主体可以将上述下载链接与上述第一应用信息集合中的应用信息包括的应用的下载链接进行匹配,其中,上述第一应用信息集合中的应用信息包括应用的下载链接。最后,响应于确定上述下载链接与上述第一应用信息集合中的应用信息包括的应用的下载链接相匹配,上述执行主体可以确定相匹配的应用信息为待用应用信息。作为示例,当上述下载链接的URL和时间戳对应的时间与上述第一应用信息集合中的某条应用信息的下载链接的URL和时间戳对应的时间相同时,上述执行主体可以确定上述下载链接与上述第一应用信息集合中的应用信息包括的应用的下载链接相匹配,此时,可以将上述第一应用信息集合中的该条应用信息作为待用应用信息。
在一些可选的实现方式中,上述步骤I可以具体包括:首先,上述执行主体可以计算上述待检测应用的应用文件的哈希值。然后,上述执行主体可以将上述哈希值与上述第一应用信息集合中应用信息对应的应用的应用文件的哈希值进行匹配。最后,响应于确定上述哈希值与上述第一应用信息集合中应用信息对应的应用的应用文件的哈希值相匹配,上述执行主体可以确定哈希值相匹配的应用文件对应的应用信息为待用应用信息。作为示例,当上述待检测应用的应用文件的哈希值与上述第一应用信息集合中的某条应用信息对应的应用的应用文件的哈希值相等时,上述执行主体可以确定上述哈希值与上述第一应用信息集合中应用信息对应的应用的应用文件的哈希值相匹配,此时,可以将上述第一应用信息集合中的、与上述待检测应用的应用文件的哈希值相匹配的该条应用信息作为待用应用信息。
步骤203,确定预先设定的第一应用信息集合中是否包括应用标识符与待检测应用的应用标识符相同的目标应用的应用信息。
在本实施例中,上述执行主体中可以预先设定有第一应用信息集合,其中,上述第一应用信息集合可以用于存储本地所接收到的应用的应用信息,应用的应用信息可以包括与应用相关的各种信息,例如,应用的开发者信息、应用的名称、应用的版本信息、应用的应用标识符、应用开发者的软件著作权证明资质信息等等。上述执行主体可以确定上述第一应用信息集合中是否包括应用标识符与上述待测试应用的应用标识符相同的目标应用的应用信息。
步骤204,响应于确定第一应用信息集合中包括应用标识符与待检测应用的应用标识符相同的目标应用的应用信息,确定待检测应用的开发者与目标应用的开发者是否相同。
在本实施例中,响应于确定上述第一应用信息集合中包括应用标识符与上述待检测应用的应用标识符相同的目标应用的应用信息,上述执行主体可以确定上述待检测应用的开发者与上述目标应用的开发者是否相同。
在本实施例的一些可选的实现方式中,上述步骤204中,确定待检测应用的开发者与目标应用的开发者是否相同,可以具体包括:上述执行主体可以根据上传上述待检测应用的应用文件的用户的用户标识符和上传上述目标应用的用户的用户标识符确定上述待检测应用的开发者与上述目标应用的开发者是否相同,其中,上述用户的用户标识符是基于上述用户发送的注册信息生成的。在这里,上述待检测应用是上述用户通过客户端上传的。通常,在用户通过客户端上传应用文件之前,用户需要通过客户端发送注册信息,例如,注册信息可以包括开发者性质(个人、公司等等)、营业执照(针对开发者性质为公司的情况)、联系方式、邮箱、身份证号(针对开发者性质为个人的情况)等等,注册成功之后,用户会得到一个与其唯一的用户标识符,作为示例,当确定上传上述待检测应用的应用文件的用户的用户标识符和上传上述目标应用的用户的用户标识符相同时,上述执行主体可以确定上述待检测应用的开发者与上述目标应用的开发者是否相同。
继续参见图3,图3是根据本实施例的用于检测应用的方法的应用场景的一个示意图。在图3的应用场景中,用户首先通过终端设备301向服务器302发送待检测应用的应用文件;之后,上述服务器302基于接收到的应用文件得到上述待检测应用的应用标识符com.AA.123;然后,上述服务器302确定本地预先设定的第一应用信息集合中是否包括应用标识符与上述待检测应用的应用标识符com.AA.123相同的目标应用的应用信息;最后,响应于确定上述第一应用信息集合中包括应用标识符与上述待检测应用的应用标识符com.AA.123相同的目标应用的应用信息,上述服务器302可以进一步确定上述待检测应用的开发者与上述目标应用的开发者是否相同。
本申请的上述实施例提供的方法通过确定待检测应用的开发者与第一应用信息集合中的目标应用的开发者是否相同,可以实现对待检测应用开发者的验证,从而检测待检测应用是否侵权。
进一步参考图4,其示出了用于检测应用的方法的又一个实施例的流程400。该用于检测应用的方法的流程400,包括以下步骤:
步骤401,接收待检测应用的应用文件。
在本实施例中,用于检测应用的方法运行于其上的执行主体(例如图1所示的服务器105)可以接收待检测应用的应用文件,在这里,待检测应用的应用文件可以是指待检测应用的计算机程序文件,例如,可以是待检测应用的安装包。
步骤402,基于应用文件得到待检测应用的应用标识符。
在本实施例中,上述执行主体可以基于接收到的上述待检测应用的应用文件得到上述待检测应用的应用标识符,在这里,应用标识符可以是用于区分不同应用的标识符,一个应用标识符唯一标识一款应用,同一款应用的不同版本使用同一个应用标识符。作为示例,一款应用的应用标识符可以是该款应用的包名。
步骤403,确定预先设定的第一应用信息集合中是否包括应用标识符与待检测应用的应用标识符相同的目标应用的应用信息。
在本实施例中,上述执行主体中可以预先设定有第一应用信息集合,其中,上述第一应用信息集合可以用于存储本地所接收到的应用的应用信息,应用的应用信息可以包括与应用相关的各种信息,例如,应用的开发者信息、应用的名称、应用的版本信息、应用的应用标识符、应用开发者的软件著作权证明资质信息等等。上述执行主体可以确定上述第一应用信息集合中是否包括应用标识符与上述待测试应用的应用标识符相同的目标应用的应用信息。
步骤404,响应于确定第一应用信息集合中包括应用标识符与待检测应用的应用标识符相同的目标应用的应用信息,确定待检测应用的开发者与目标应用的开发者是否相同。
在本实施例中,响应于确定上述第一应用信息集合中包括应用标识符与上述待检测应用的应用标识符相同的目标应用的应用信息,上述执行主体可以确定上述待检测应用的开发者与上述目标应用的开发者是否相同。
步骤405,响应于确定待检测应用的开发者与目标应用的开发者相同,检测待检测应用的版本是否最新。
在本实施例中,响应于确定上述待检测应用的开发者与上述目标应用的开发者相同,上述执行主体可以进一步检测上述待检测应用的版本是否最新,作为示例,上述执行主体可以将上述目标应用对应的版本信息(例如,版本号)与上述待检测应用的版本信息进行对比,根据对比结果确定上述待检测应用的版本是否最新。
在本实施例的一些可选的实现方式中,步骤405中,检测上述待检测应用的版本是否最新,可以具体包括以下步骤:
步骤S1,上述执行主体可以根据上述待检测应用的应用标识符,从上述第一应用信息集合中得到与上述待检测应用的应用标识符对应的第一最新版本号。当一款应用有多个版本时,每个版本对应一个版本号,上述执行主体可以根据预先设定的版本号定义规则确定同一应用的多个版本号中的那个版本号为最新版本对应的版本号,将最新版本对应的版本号确定为最新版本号。作为示例,上述执行主体可以将上述第一应用信息集合中的、应用标识符与上述待检测应用的应用标识符相同的应用对应的最新版本号作为第一最新版本号。
步骤S2,上述执行主体可以根据上述待检测应用的版本号和上述第一最新版本号,确定上述待检测应用的版本是否比上述第一最新版本号对应的版本新。
步骤S3,响应于确定上述待检测应用的版本不比上述第一最新版本号对应的版本新,向上述客户端发送第二提示信息,其中,上述第二提示信息用于提示上述用户已上传过比上述待检测应用的版本新或与上述是待检测应用的版本相同的应用。作为示例,当检测到上述待检测应用的版本比上述第一最新版本号对应的版本旧,或与上述第一最新版本号对应的版本相同时,上述执行主体可以向上述客户端发送如下提示信息“您已发布更高版本或相同版本的应用,如果您希望更新此应用,请更新版本至XXX或以上。”。
步骤S4,响应于确定上述待检测应用的版本比上述第一最新版本号对应的版本新,上述执行主体可以根据上述待检测应用的应用标识符从预先设定的第二应用信息集合中得到上述待检测应用的应用标识符对应的第二最新版本号,作为示例,上述执行主体可以将上述第二应用信息集合中的、应用标识符与上述待检测应用的应用标识符相同的应用对应的最新版本号作为第二最新版本号。在这里,上述第二应用信息集合可以用于存储从第三方网站获取的应用的应用信息,以及上述执行主体还可以执行以下检测操作:
上述执行主体可以检测上述待检测应用的版本是否比上述第二最新版本号对应的版本旧。
响应于确定上述待检测应用的版本不比上述第二最新版本号对应的版本旧,即上述待检测应用的版本比上述第二最新版本号对应的版本新,或与上述第二最新版本号对应的版本相同,上述执行主体可以确定上述待检测应用为有效应用。
响应于确定上述待检测应用的版本比上述第二最新版本号对应的版本旧,上述执行主体可以向上述客户端发送第三提示信息,其中,上述第三提示信息用于提示上述用户第三方网站已存在比上述待检测应用的版本新的应用。作为示例,当检测到上述待检测应用的版本比上述第二最新版本号对应的版本旧时,上述执行主体可以向上述客户端发送如下提示信息“在XX应用商店已发现更高版本XXX的相同应用,如果您希望更新此应用,请更新版本至XXX或以上。”。
在一些可选的实现方式中,在步骤S4中,响应于确定上述待检测应用为有效应用,上述执行主体可以将上述待检测应用的应用信息与上述用户的用户标识符关联存储到上述第一应用信息集合。
步骤406,响应于确定待检测应用的开发者与目标应用的开发者不相同,向客户端发送第一提示信息。
在本实施例中,响应于确定上述待检测应用的开发者与上述目标应用的开发者不相同,上述执行主体可以向客户端发送第一提示信息,其中,上述第一提示信息用于提示用户与上述待检测应用的应用标识符相同的上述目标应用已被其他开发者上传,上述待检测应用是上述用户通过上述客户端上传的。作为示例,当检测到上述待检测应用的开发者与上述目标应用的开发者不相同时,上述执行主体可以向上述客户端发送如下提示信息“目前本地已存在其他开发者提交的同应用标识符的应用:xxx。如果您才是该应用的开发者,请点击这里进行申请领取。”,以提示用户上述待检测应用可能存在版权问题,并且可以提示用户进行申请认领,例如,用户可以通过提交身份信息、营业执照、公证材料等信息进行认领。在这里,上述客户端可以是硬件,也可以是软件。当上述客户端为硬件时,可以实现成多个设备(例如图1所示的终端设备101、102、103)组成的分布式设备集群,也可以实现成单个设备。当上述客户端为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。
从图4中可以看出,与图2对应的实施例相比,本实施例中的用于检测应用的方法的流程400突出了检测待检测应用的版本和发送第一提示信息的步骤。由此,本实施例描述的方案可以在确定待检测应用存在版权问题时,提示用户待检测应用可能存在版权问题;以及可以在确定待检测应用不存在版权问题时,进一步检测待检测应用是否版本最新。
进一步参考图5,作为对上述各图所示方法的实现,本申请提供了一种用于检测应用的装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图5所示,本实施例的用于检测应用的装置500包括:接收单元501、获得单元502、第一确定单元503和第二确定单元504。其中,接收单元501用于接收待检测应用的应用文件;获得单元502用于基于上述应用文件得到上述待检测应用的应用标识符;第一确定单元503用于确定预先设定的第一应用信息集合中是否包括应用标识符与上述待检测应用的应用标识符相同的目标应用的应用信息,其中,上述第一应用信息集合用于存储本地所接收的应用的应用信息;第二确定单元504用于响应于确定上述第一应用信息集合中包括应用标识符与上述待检测应用的应用标识符相同的目标应用的应用信息,确定上述待检测应用的开发者与上述目标应用的开发者是否相同。
在本实施例中,用于检测应用的装置500的接收单元501、获得单元502、第一确定单元503和第二确定单元504的具体处理及其所带来的技术效果可分别参考图2对应实施例中步骤201、步骤202、步骤203和步骤204的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,上述装置500还可以包括:检测单元(图中未示出),用于响应于确定上述待检测应用的开发者与上述目标应用的开发者相同,检测上述待检测应用的版本是否最新;发送单元(图中未示出),用于响应于确定上述待检测应用的开发者与上述目标应用的开发者不相同,向客户端发送第一提示信息,其中,上述第一提示信息用于提示用户与上述待检测应用的应用标识符相同的上述目标应用已被其他开发者上传,上述待检测应用是上述用户通过上述客户端上传的。
在本实施例的一些可选的实现方式中,上述检测单可以元进一步用于:根据上述待检测应用的应用标识符,从上述第一应用信息集合中得到与上述待检测应用的应用标识符对应的第一最新版本号;根据上述待检测应用的版本号和上述第一最新版本号,确定上述待检测应用的版本是否比上述第一最新版本号对应的版本新;响应于确定上述待检测应用的版本不比上述第一最新版本号对应的版本新,向上述客户端发送第二提示信息,其中,上述第二提示信息用于提示上述用户已上传过比上述待检测应用的版本新或与上述待检测应用的版本相同的应用;响应于确定上述待检测应用的版本比上述第一最新版本号对应的版本新,根据上述待检测应用的应用标识符从预先设定的第二应用信息集合中得到上述待检测应用的应用标识符对应的第二最新版本号,其中,上述第二应用信息集合用于存储从第三方网站获取的应用的应用信息,以及执行以下检测操作:检测上述待检测应用的版本是否比上述第二最新版本号对应的版本旧;响应于确定上述待检测应用的版本不比上述第二最新版本号对应的版本旧,确定上述待检测应用为有效应用;响应于确定上述待检测应用的版本比上述第二最新版本号对应的版本旧,向上述客户端发送第三提示信息,其中,上述第三提示信息用于提示上述用户第三方网站已存在比上述待检测应用的版本新的应用。
在本实施例的一些可选的实现方式中,上述装置500还可以包括:存储单元,用于响应于确定上述待检测应用为有效应用,将上述待检测应用的应用信息与上述用户的用户标识符关联存储到上述第一应用信息集合。
在本实施例的一些可选的实现方式中,上述获得单元502可以包括:第三确定单元(图中未示出),用于基于上述待检测应用的应用文件,确定上述第一应用信息集合中是否包括待用应用信息,其中,上述待用应用信息对应的应用的应用文件与上述待检测应用的应用文件相匹配,其中,上述第一应用信息集合中的应用信息包括应用标识符;第一获得单元(图中未示出),用于响应于确定上述第一应用信息集合中存在待用应用信息,将上述待用应用信息的应用标识符作为上述待检测应用的应用标识符;第二获得单元(图中未示出),用于响应于确定上述第一应用信息集合中不存在待用应用信息,对上述待检测应用的应用文件进行解析,得到上述待检测应用的应用标识符。
在本实施例的一些可选的实现方式中,上述第三确定单元可以进一步用于:根据上述待检测应用的应用文件生成下载链接,其中,上述下载链接包括统一资源定位符和时间戳,上述时间戳是基于接收上述待检测应用的应用文件的时间生成的;将上述下载链接与上述第一应用信息集合中的应用信息包括的应用的下载链接进行匹配,其中,上述第一应用信息集合中的应用信息包括应用的下载链接;响应于确定上述下载链接与上述第一应用信息集合中的应用信息包括的应用的下载链接相匹配,确定相匹配的应用信息为待用应用信息。
在本实施例的一些可选的实现方式中,上述第三确定单元可以进一步用于:计算上述待检测应用的应用文件的哈希值;将上述哈希值与上述第一应用信息集合中应用信息对应的应用的应用文件的哈希值进行匹配;响应于确定上述哈希值与上述第一应用信息集合中应用信息对应的应用的应用文件的哈希值相匹配,确定哈希值相匹配的应用文件对应的应用信息为待用应用信息。
在本实施例的一些可选的实现方式中,上述第二确定单元504可以进一步用于:根据上述上传上述待检测应用的应用文件的用户的用户标识符和上传上述目标应用的用户的用户标识符确定上述待检测应用的开发者与上述目标应用的开发者是否相同,其中,上述用户的用户标识符是基于上述用户发送的注册信息生成的。
下面参考图6,其示出了适于用来实现本申请实施例的服务器的计算机***600的结构示意图。图6示出的服务器仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图6所示,计算机***600包括中央处理单元(CPU,Central Processing Unit)601,其可以根据存储在只读存储器(ROM,Read Only Memory)602中的程序或者从存储部分606加载到随机访问存储器(RAM,Random Access Memory)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有***600操作所需的各种程序和数据。CPU 601、ROM602以及RAM 603通过总线604彼此相连。输入/输出(I/O,Input/Output)接口605也连接至总线604。
以下部件连接至I/O接口605:包括硬盘等的存储部分606;以及包括诸如LAN(局域网,Local Area Network)卡、调制解调器等的网络接口卡的通信部分607。通信部分607经由诸如因特网的网络执行通信处理。驱动器608也根据需要连接至I/O接口605。可拆卸介质609,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器608上,以便于从其上读出的计算机程序根据需要被安装入存储部分606。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分607从网络上被下载和安装,和/或从可拆卸介质609被安装。在该计算机程序被中央处理单元(CPU)601执行时,执行本申请的方法中限定的上述功能。需要说明的是,本申请所述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括接收单元、获得单元、第一确定单元和第二确定单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,接收单元还可以被描述为“接收待检测应用的应用文件的单元”。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的装置中所包含的;也可以是单独存在,而未装配入该装置中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该装置执行时,使得该装置:接收待检测应用的应用文件;基于上述应用文件得到上述待检测应用的应用标识符;确定预先设定的第一应用信息集合中是否包括应用标识符与上述待检测应用的应用标识符相同的目标应用的应用信息,其中,上述第一应用信息集合用于存储本地所接收的应用的应用信息;响应于确定上述第一应用信息集合中包括应用标识符与上述待检测应用的应用标识符相同的目标应用的应用信息,确定上述待检测应用的开发者与上述目标应用的开发者是否相同。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (16)

1.一种用于检测应用的方法,包括:
接收待检测应用的应用文件;
基于所述应用文件得到所述待检测应用的应用标识符;
确定预先设定的第一应用信息集合中是否包括应用标识符与所述待检测应用的应用标识符相同的目标应用的应用信息,其中,所述第一应用信息集合用于存储本地所接收的应用的应用信息;
响应于确定所述第一应用信息集合中包括应用标识符与所述待检测应用的应用标识符相同的目标应用的应用信息,确定所述待检测应用的开发者与所述目标应用的开发者是否相同;
其中,所述基于所述应用文件得到所述待检测应用的应用标识符,包括:
基于所述待检测应用的应用文件,确定所述第一应用信息集合中是否包括待用应用信息,其中,所述待用应用信息对应的应用的应用文件与所述待检测应用的应用文件相匹配,其中,所述第一应用信息集合中的应用信息包括应用标识符;
响应于确定所述第一应用信息集合中存在待用应用信息,将所述待用应用信息的应用标识符作为所述待检测应用的应用标识符;
响应于确定所述第一应用信息集合中不存在待用应用信息,对所述待检测应用的应用文件进行解析,得到所述待检测应用的应用标识符。
2.根据权利要求1所述的方法,其中,所述方法还包括:
响应于确定所述待检测应用的开发者与所述目标应用的开发者相同,检测所述待检测应用的版本是否最新;
响应于确定所述待检测应用的开发者与所述目标应用的开发者不相同,向客户端发送第一提示信息,其中,所述第一提示信息用于提示用户与所述待检测应用的应用标识符相同的所述目标应用已被其他开发者上传,所述待检测应用是所述用户通过所述客户端上传的。
3.根据权利要求2所述的方法,其中,所述检测所述待检测应用的版本是否最新,包括:
根据所述待检测应用的应用标识符,从所述第一应用信息集合中得到与所述待检测应用的应用标识符对应的第一最新版本号;
根据所述待检测应用的版本号和所述第一最新版本号,确定所述待检测应用的版本是否比所述第一最新版本号对应的版本新;
响应于确定所述待检测应用的版本不比所述第一最新版本号对应的版本新,向所述客户端发送第二提示信息,其中,所述第二提示信息用于提示所述用户已上传过比所述待检测应用的版本新或与所述待检测应用的版本相同的应用;
响应于确定所述待检测应用的版本比所述第一最新版本号对应的版本新,根据所述待检测应用的应用标识符从预先设定的第二应用信息集合中得到所述待检测应用的应用标识符对应的第二最新版本号,其中,所述第二应用信息集合用于存储从第三方网站获取的应用的应用信息,以及执行以下检测操作:
检测所述待检测应用的版本是否比所述第二最新版本号对应的版本旧;
响应于确定所述待检测应用的版本不比所述第二最新版本号对应的版本旧,确定所述待检测应用为有效应用;
响应于确定所述待检测应用的版本比所述第二最新版本号对应的版本旧,向所述客户端发送第三提示信息,其中,所述第三提示信息用于提示所述用户第三方网站已存在比所述待检测应用的版本新的应用。
4.根据权利要求3所述的方法,其中,所述方法还包括:
响应于确定所述待检测应用为有效应用,将所述待检测应用的应用信息与所述用户的用户标识符关联存储到所述第一应用信息集合。
5.根据权利要求1所述方法,其中,所述基于所述待检测应用的应用文件,确定所述第一应用信息集合中是否包括待用应用信息,包括:
根据所述待检测应用的应用文件生成下载链接,其中,所述下载链接包括统一资源定位符和时间戳,所述时间戳是基于接收所述待检测应用的应用文件的时间生成的;
将所述下载链接与所述第一应用信息集合中的应用信息包括的应用的下载链接进行匹配,其中,所述第一应用信息集合中的应用信息包括应用的下载链接;
响应于确定所述下载链接与所述第一应用信息集合中的应用信息包括的应用的下载链接相匹配,确定相匹配的应用信息为待用应用信息。
6.根据权利要求1所述的方法,其中,所述基于所述待检测应用的应用文件,确定所述第一应用信息集合中是否包括待用应用信息,包括:
计算所述待检测应用的应用文件的哈希值;
将所述哈希值与所述第一应用信息集合中应用信息对应的应用的应用文件的哈希值进行匹配;
响应于确定所述哈希值与所述第一应用信息集合中应用信息对应的应用的应用文件的哈希值相匹配,确定哈希值相匹配的应用文件对应的应用信息为待用应用信息。
7.根据权利要求1所述的方法,其中,所述确定所述待检测应用的开发者与所述目标应用的开发者是否相同,包括:
根据上传所述待检测应用的应用文件的用户的用户标识符和上传所述目标应用的用户的用户标识符确定所述待检测应用的开发者与所述目标应用的开发者是否相同,其中,所述用户的用户标识符是基于所述用户发送的注册信息生成的。
8.一种用于检测应用的装置,包括:
接收单元,用于接收待检测应用的应用文件;
获得单元,用于基于所述应用文件得到所述待检测应用的应用标识符;
第一确定单元,用于确定预先设定的第一应用信息集合中是否包括应用标识符与所述待检测应用的应用标识符相同的目标应用的应用信息,其中,所述第一应用信息集合用于存储本地所接收的应用的应用信息;
第二确定单元,用于响应于确定所述第一应用信息集合中包括应用标识符与所述待检测应用的应用标识符相同的目标应用的应用信息,确定所述待检测应用的开发者与所述目标应用的开发者是否相同;
其中,所述获得单元包括:
第三确定单元,用于基于所述待检测应用的应用文件,确定所述第一应用信息集合中是否包括待用应用信息,其中,所述待用应用信息对应的应用的应用文件与所述待检测应用的应用文件相匹配,其中,所述第一应用信息集合中的应用信息包括应用标识符;
第一获得单元,用于响应于确定所述第一应用信息集合中存在待用应用信息,将所述待用应用信息的应用标识符作为所述待检测应用的应用标识符;
第二获得单元,用于响应于确定所述第一应用信息集合中不存在待用应用信息,对所述待检测应用的应用文件进行解析,得到所述待检测应用的应用标识符。
9.根据权利要求8所述的装置,其中,所述装置还包括:
检测单元,用于响应于确定所述待检测应用的开发者与所述目标应用的开发者相同,检测所述待检测应用的版本是否最新;
发送单元,用于响应于确定所述待检测应用的开发者与所述目标应用的开发者不相同,向客户端发送第一提示信息,其中,所述第一提示信息用于提示用户与所述待检测应用的应用标识符相同的所述目标应用已被其他开发者上传,所述待检测应用是所述用户通过所述客户端上传的。
10.根据权利要求9所述的装置,其中,所述检测单元进一步用于:
根据所述待检测应用的应用标识符,从所述第一应用信息集合中得到与所述待检测应用的应用标识符对应的第一最新版本号;
根据所述待检测应用的版本号和所述第一最新版本号,确定所述待检测应用的版本是否比所述第一最新版本号对应的版本新;
响应于确定所述待检测应用的版本不比所述第一最新版本号对应的版本新,向所述客户端发送第二提示信息,其中,所述第二提示信息用于提示所述用户已上传过比所述待检测应用的版本新或与所述待检测应用的版本相同的应用;
响应于确定所述待检测应用的版本比所述第一最新版本号对应的版本新,根据所述待检测应用的应用标识符从预先设定的第二应用信息集合中得到所述待检测应用的应用标识符对应的第二最新版本号,其中,所述第二应用信息集合用于存储从第三方网站获取的应用的应用信息,以及执行以下检测操作:
检测所述待检测应用的版本是否比所述第二最新版本号对应的版本旧;
响应于确定所述待检测应用的版本不比所述第二最新版本号对应的版本旧,确定所述待检测应用为有效应用;
响应于确定所述待检测应用的版本比所述第二最新版本号对应的版本旧,向所述客户端发送第三提示信息,其中,所述第三提示信息用于提示所述用户第三方网站已存在比所述待检测应用的版本新的应用。
11.根据权利要求10所述的装置,其中,所述装置还包括:
存储单元,用于响应于确定所述待检测应用为有效应用,将所述待检测应用的应用信息与所述用户的用户标识符关联存储到所述第一应用信息集合。
12.根据权利要求8所述的装置,其中,所述第三确定单元进一步用于:
根据所述待检测应用的应用文件生成下载链接,其中,所述下载链接包括统一资源定位符和时间戳,所述时间戳是基于接收所述待检测应用的应用文件的时间生成的;
将所述下载链接与所述第一应用信息集合中的应用信息包括的应用的下载链接进行匹配,其中,所述第一应用信息集合中的应用信息包括应用的下载链接;
响应于确定所述下载链接与所述第一应用信息集合中的应用信息包括的应用的下载链接相匹配,确定相匹配的应用信息为待用应用信息。
13.根据权利要求8所述的装置,其中,所述第三确定单元进一步用于:
计算所述待检测应用的应用文件的哈希值;
将所述哈希值与所述第一应用信息集合中应用信息对应的应用的应用文件的哈希值进行匹配;
响应于确定所述哈希值与所述第一应用信息集合中应用信息对应的应用的应用文件的哈希值相匹配,确定哈希值相匹配的应用文件对应的应用信息为待用应用信息。
14.根据权利要求8所述的装置,其中,所述第二确定单元进一步用于:
根据上传所述待检测应用的应用文件的用户的用户标识符和上传所述目标应用的用户的用户标识符确定所述待检测应用的开发者与所述目标应用的开发者是否相同,其中,所述用户的用户标识符是基于所述用户发送的注册信息生成的。
15.一种服务器,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1-7中任一所述的方法。
16.一种计算机可读介质,其上存储有计算机程序,其中,该计算机程序被处理器执行时实现如权利要求1-7中任一所述的方法。
CN201810223858.2A 2018-03-19 2018-03-19 用于检测应用的方法和装置 Active CN110287087B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810223858.2A CN110287087B (zh) 2018-03-19 2018-03-19 用于检测应用的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810223858.2A CN110287087B (zh) 2018-03-19 2018-03-19 用于检测应用的方法和装置

Publications (2)

Publication Number Publication Date
CN110287087A CN110287087A (zh) 2019-09-27
CN110287087B true CN110287087B (zh) 2023-06-13

Family

ID=68000909

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810223858.2A Active CN110287087B (zh) 2018-03-19 2018-03-19 用于检测应用的方法和装置

Country Status (1)

Country Link
CN (1) CN110287087B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113761512A (zh) * 2020-06-02 2021-12-07 深圳兆日科技股份有限公司 第三方软件包处理方法、工具及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8869284B1 (en) * 2012-10-04 2014-10-21 Symantec Corporation Systems and methods for evaluating application trustworthiness
CN104253791A (zh) * 2013-06-27 2014-12-31 华为终端有限公司 一种网页应用程序的安全访问方法、服务器和客户端
CN104317599A (zh) * 2014-10-30 2015-01-28 北京奇虎科技有限公司 检测安装包是否被二次打包的方法和装置
CN107135077A (zh) * 2017-05-05 2017-09-05 中国联合网络通信集团有限公司 软件防护方法及装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103092653A (zh) * 2013-01-16 2013-05-08 珠海市君天电子科技有限公司 一种在应用市场中提供官方应用程序的方法和装置
CN103632096B (zh) * 2013-11-29 2018-01-16 北京奇虎科技有限公司 一种对设备进行安全检测的方法和装置
CN104462971B (zh) * 2014-12-17 2017-10-03 北京奇虎科技有限公司 根据应用程序声明特征识别恶意应用程序的方法和装置
CN105204895B (zh) * 2015-08-31 2018-10-19 小米科技有限责任公司 应用版本信息的获取方法、设备和***
CN105488361B (zh) * 2015-11-20 2018-09-25 北京奇虎科技有限公司 盗版应用检测方法和装置、***
CN105426706B (zh) * 2015-11-20 2018-06-15 北京奇虎科技有限公司 盗版应用检测方法和装置、***
CN106485153A (zh) * 2016-10-10 2017-03-08 聚好看科技股份有限公司 版本升级方法及终端设备
CN106874037B (zh) * 2017-01-13 2020-08-18 北京安云世纪科技有限公司 应用程序安装方法、装置及移动终端
CN107480519A (zh) * 2017-08-04 2017-12-15 深圳市金立通信设备有限公司 一种识别风险应用的方法及服务器

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8869284B1 (en) * 2012-10-04 2014-10-21 Symantec Corporation Systems and methods for evaluating application trustworthiness
CN104253791A (zh) * 2013-06-27 2014-12-31 华为终端有限公司 一种网页应用程序的安全访问方法、服务器和客户端
CN104317599A (zh) * 2014-10-30 2015-01-28 北京奇虎科技有限公司 检测安装包是否被二次打包的方法和装置
CN107135077A (zh) * 2017-05-05 2017-09-05 中国联合网络通信集团有限公司 软件防护方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
薛飞洁.一种Android平台反钓鱼攻击解决方案.《中国优秀硕士学位论文全文数据库信息科技辑》.2016,(第04期),I139-36. *

Also Published As

Publication number Publication date
CN110287087A (zh) 2019-09-27

Similar Documents

Publication Publication Date Title
CN109598127B (zh) 隐私风险评估方法和装置
CN110708346B (zh) 信息处理***和方法
US8627469B1 (en) Systems and methods for using acquisitional contexts to prevent false-positive malware classifications
CN109582873B (zh) 用于推送信息的方法和装置
CN111258602B (zh) 信息更新方法和装置
CN109376534B (zh) 用于检测应用的方法和装置
WO2017080366A1 (zh) 一种识别伪装下载链接的方法和装置
CN109814889B (zh) 用于更新源代码库的方法和装置
US9582260B2 (en) Method and apparatus for remote purchase, installation, and licensing of software
CN111488995A (zh) 用于评估联合训练模型的方法和装置
CN106682491B (zh) 应用下载方法和装置
CN110796462A (zh) 流量引导的方法和装置
CN111367531B (zh) 代码处理方法及装置
CN110928571A (zh) 业务程序开发方法和装置
CN110287087B (zh) 用于检测应用的方法和装置
CN112788084B (zh) 应用程序安装包下载方法、推送方法、装置和计算机设备
CN111506904B (zh) 漏洞在线修复的方法和装置
CN112559024A (zh) 一种生成交易码变更列表的方法和装置
CN109145591B (zh) 应用程序的插件加载方法
CN112416395A (zh) 一种热修复更新方法和装置
CN107247661B (zh) 支持对应用的安装包进行自动化验证的方法和***
CN112835609B (zh) 一种修改依赖包下载地址的方法和装置
CN113987471A (zh) 可执行文件执行方法、装置、电子设备和计算机可读介质
CN110196803B (zh) 一种软件缺陷培训方法和***
CN111163156A (zh) 基于区块链的数据处理方法、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant