对多个apk文件进行加固的方法和服务器技术

技术编号:13002271 阅读:59 留言:0更新日期:2016-03-10 14:14
本发明专利技术公开了一种对多个apk文件进行加固的方法和服务器。该方法包括:在具有插件的服务器端接收多个apk文件;在所述服务器中创建第一任务,并将所述多个apk文件添加至所述第一任务中;以及运行所述第一任务,以利用所述插件对所述多个apk文件进行加固。根据该方法,由于服务器端采用诸如Jenkins的架构,其具有插件,从而使得自动地执行多个apk文件的加固过程成为可能。这样,避免了在需要加固多个apk文件时,只能进行手动操作的情况,从而提高了操作效率。

【技术实现步骤摘要】

本专利技术涉及apk文件的加固技术,具体涉及一种对多个apk文件进行加固的方法和服务器
技术介绍
apk是AndroidPackage的缩写,即Android安装包。Apk文件具有类似于SymbianSis或Sisx的文件格式。通过将apk文件直接传到Android模拟器或Android手机中执行即可安装该应用程序。为了对apk文件本身的内容进行保护,通常需要将apk文件进行加固,加固的过程相当于为apk文件做了一层防护,防止别人恶意破解,并且能够防止病毒和/或广告植入。在现有技术中,通常需要操作员对apk文件进行手动加固。具体地,操作员需首先将待加固的apk文件上传至用于加固的服务器端。随后,在服务器端对该apk文件进行加固,在加固完成后,再从服务器端下载该已经过加固的apk文件。而且,通常在使用前,还要对经过加固的apk文件进行自动测试,也测试加固后的apk文件的稳定性。然而,如果需要加固的apk文件比较多,例如,几十个甚至上百个apk文件需要加固。那么一个一个地手动进行操作费时费力,效率很低。
技术实现思路
有鉴于此,本专利技术提出了一种对多个apk文件进行加固的方法和服务器。根据本专利技术的一个方面,提供了一种对多个apk文件进行加固的方法,包括:在具有插件的服务器端接收多个apk文件;在所述服务器中创建第一任务,并将所述多个apk文件添加至所述第一任务中;以及运行所述第一任务,以利用所述插件对所述多个apk文件进行加固。根据一个实施方式,所述插件为Jenkins插件。根据一个实施方式,所述插件被配置为调用所述多个apk文件在加固前和加固后在所述服务器中的存储路径以及用于加固的服务包和工具包在所述服务器中的存储路径。根据一个实施方式,运行所述第一任务,以利用所述插件对所述多个apk文件进行加固包括:通过所述插件调用所述工具包对所述多个apk文件进行签名;通过所述插件调用所述服务包对已签名的apk文件进行加固;以及通过所述插件调用所述工具包对已加固的apk文件再次进行签名。根据一个实施方式,采用多线程并行地利用所述插件对所述多个apk文件进行加固。根据一个实施方式,该方法还包括:创建第二任务;以及运行所述第二任务,以将通过运行所述第一任务而加固的apk文件发送给测试端进行测试。根据一个实施方式,该方法还包括:利用所述插件对所述多个apk文件进行过滤,以选出具有加固标识的apk文件添加至所述第一任务中。根据本专利技术的另一方面,提供了一种对多个apk文件进行加固的服务器,在所述服务器中具有插件,所述服务器包括:接收单元,用于接收多个apk文件;创建单元,用于创建第一任务;添加单元,用于将所述多个apk文件添加至所述第一任务中;以及加固单元,用于运行所述第一任务,以利用所述插件对所述多个apk文件进行加固。根据一个实施方式,所述插件为Jenkins插件。根据一个实施方式,所述插件被配置为调用所述多个apk文件在加固前和加固后在所述服务器中的存储路径以及用于加固的服务包和工具包在所述服务器中的存储路径。根据一个实施方式,所述加固单元包括:签名子单元,用于通过所述插件调用所述工具包对所述多个apk文件进行签名;以及加固子单元,用于通过所述插件调用所述服务包对已签名的apk文件进行加固,其中所述签名子单元还用于通过所述插件调用所述工具包对已加固的apk文件再次进行签名。根据一个实施方式,所述加固单元采用多线程并行地利用所述插件对所述多个apk文件进行加固。根据一个实施方式,该服务器还包括:发送单元,其中所述创建单元还用于创建第二任务,所述发送单元运行所述第二任务,以将通过运行所述第一任务而加固的apk文件发送给测试端进行测试。根据一个实施方式,该服务器还包括:过滤单元,用于利用所述插件对所述多个apk文件进行过滤,以选出具有加固标识的apk文件由所述添加单元添加至所述第一任务中。根据本专利技术所提供的技术方案,由于服务器端采用诸如Jenkins的架构,其具有Jenkins插件,从而使得自动地执行多个apk文件的加固过程成为可能。这样,避免了在需要加固多个apk文件时,只能进行手动操作的情况,从而提高了操作效率。【附图说明】参照附图来阅读本专利技术的各实施方式,将更容易理解本专利技术的其它特征和优点,在此描述的附图只是为了对本专利技术的实施方式进行示意性说明的目的,而非全部可能的实施,并且不旨在限制本专利技术的范围。在附图中:图1示出了根据本专利技术一个示例性实施方式对多个apk文件进行加固的方法的流程图;图2示出了根据本专利技术一个示例性实施方式利用插件对多个apk文件进行加固的流程图;图3示出了根据本专利技术另一示例性实施方式对多个apk文件进行加固的方法的流程图;图4示出了根据本专利技术另一示例性实施方式对多个apk文件进行加固的方法的流程图;图5示出了根据实施例一的json文件的文件格式;图6示出了根据实施例一的加固插件操作界面的一个示例;图7示出了根据实施例一显示存放apk文件的文件夹的界面的一个示例;图8示出了根据实施例一的加固插件操作界面的一个示例;图9示出了根据实施例一的测试结果的一个示例;图10示出了根据实施例二存放加固包的目录结构的一个示例;图11示出了根据实施例二的加固插件操作界面的一个示例;图12示出了根据实施例二显示存放apk文件的文件夹的界面的一个示例;图13示出了根据本专利技术一个示例性实施方式对多个apk文件进行加固的服务器的框图;图14示出了根据本专利技术一个示例性实施方式的加固单元的框图;图15示出了根据本专利技术另一示例性实施方式对多个apk文件进行加固的服务器的框图;以及图16示出了根据本专利技术另一示例性实施方式对多个apk文件进行加固的服务器的框图。【具体实施方式】现参照附图对本专利技术的实施方式进行详细描述。应注意,以下描述仅仅是示例性的,而并不旨在限制本专利技术,并且为了简要起见,在以下描述中省略了与现有技术相同的一些部件的具体描述。此外,在以下描述中,将采用相同的附图标号表示不同附图中的相同或相似的部件。在以下描述的不同实施方式中的不同特征,可彼此结合,以形成本专利技术范围内的其他实施方式。图1示出了根据本专利技术一个示例性实施方式对多个apk文件进行加固的方法的流程图。如图1所示,该方法100可包括步骤S110至S130。在步骤S110中,在具有插件的服务器端接收多个apk文件。根据本实施方式,对apk文件进行加固的服务器可采用诸如Jenkins的架构,其具有Jenkins插件,以使得对多个apk文件的加固能够成为自动处理过程。因此,可由操作员选中需要进行加固的多个apk文件,一次性上传到该服务器端。在步骤S120中,在该服务器中创建第一任务,并将所接收的多个apk文件添加至第一任务中。随后,在步骤S130中,运行该第一任务,以利用该服务器端的插件对多个apk文件进行加固。上述的加固,例如可以从Android安装包中提取出指定的特征信息。指定的特征信息例如可以是包名、版本号、数字签名、AndroidManifest.xml中列出的各模块的入口信息、Dex文件和ELF文件、Android安装包目录下各文件的MD5值等。由此,由于服务器端采用诸如当前第1页1 2 3 本文档来自技高网...

【技术保护点】
一种对多个apk文件进行加固的方法,包括:在具有插件的服务器端接收多个apk文件;在所述服务器中创建第一任务,并将所述多个apk文件添加至所述第一任务中;以及运行所述第一任务,以利用所述插件对所述多个apk文件进行加固。

【技术特征摘要】

【专利技术属性】
技术研发人员:藏红敏
申请(专利权)人:北京奇虎科技有限公司奇智软件北京有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1