CN112131193A - 一种应用程序压缩的方法及设备 - Google Patents
一种应用程序压缩的方法及设备 Download PDFInfo
- Publication number
- CN112131193A CN112131193A CN202010983706.XA CN202010983706A CN112131193A CN 112131193 A CN112131193 A CN 112131193A CN 202010983706 A CN202010983706 A CN 202010983706A CN 112131193 A CN112131193 A CN 112131193A
- Authority
- CN
- China
- Prior art keywords
- file
- original
- directory
- shell
- package
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/174—Redundancy elimination performed by the file system
- G06F16/1744—Redundancy elimination performed by the file system using compression, e.g. sparse files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/1737—Details of further file system functions for reducing power consumption or coping with limited storage space, e.g. in mobile devices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请的目的是提供一种应用程序压缩的方法及设备,本申请通过将应用程序的原始程序包文件进行解压,将解压后的原始文件放入指定目录中;将所述应用程序的外壳程序包文件进行解压,将解压后的外壳文件放入所述指定目录中;对所述指定目录进行压缩,得到目录文件压缩包;合并所述原始程序包文件与所述目录文件压缩包,以生成指定目录文件。从而使得应用程序经过压缩后的大小更小,进一步节省了空间,同时保证了应用程序的文件数据的完整性。
Description
技术领域
本申请涉及计算机领域,尤其涉及一种应用程序压缩的方法及设备。
背景技术
在开发过程中,遇到两个需求。
需求1:需要将两个安卓apk文件合并到一起,原始apk文件叫做A文件,需要保留所有文件内容;壳apk文件叫做B文件,仅保留含有代码部分的class.dex文件;合并之后叫做C文件。
需求2:合并后要保留一份A文件。
现有的压缩方式为:将A文件解压,将所有文件放入目录D;将B文件解压,把class.dex文件放入目录D;复制A文件到目录D;压缩目录D得到C文件。
这样做有一个缺点,C文件的大小会是A文件大小的2倍以上,以大小为110M的QQ安卓apk文件为例,合并后的C文件大小就是225M,文件过大。
发明内容
本申请的一个目的是提供一种应用程序压缩的方法及设备,解决现有技术中合并应用程序压缩后文件过大的问题。
根据本申请的一个方面,提供了一种应用程序压缩的方法,该方法包括:
将应用程序的原始程序包文件进行解压,将解压后的原始文件放入指定目录中;
将所述应用程序的外壳程序包文件进行解压,将解压后的外壳文件放入所述指定目录中;
对所述指定目录进行压缩,得到目录文件压缩包;
合并所述原始程序包文件与所述目录文件压缩包,以生成指定目录文件。
进一步地,合并所述原始程序包文件与所述目录文件压缩包,以生成指定目录文件,包括:
获取所述原始文件对应的原始文件数据和原始文件索引,并从所述指定目录文件中获取外壳文件对应的外壳文件数据和外壳文件索引;
遍历所述原始文件索引和所述外壳文件索引以确定所述原始文件数据和所述外壳文件数据的共有文件数据;
删除所述外壳文件数据中共有文件数据的文件记录,将所述删除的共有文件数据对应的文件索引指向所述原始文件数据中共有文件数据的文件记录,完成所述原始程序包文件与所述目录文件压缩包的合并,生成指定目录文件。
进一步地,所述原始文件索引以及外壳文件索引均包括crc校验值、压缩后文件大小、文件名称信息和文件数据的偏移值。
进一步地,所述原始文件数据以及外壳文件数据均包括文件日期、压缩后文件大小、文件名称信息和文件压缩后的数据。
进一步地,遍历所述原始文件索引和所述外壳文件索引以确定所述原始文件数据和所述外壳文件数据的共有文件数据,包括:
遍历所述原始文件索引以及所述外壳文件索引,确定所述原始文件数据和所述外壳文件数据的共有文件索引;
根据所述共有文件索引确定所述共有文件数据。
进一步地,对所述指定目录进行压缩,得到目录文件压缩包,包括:
在所述指定目录中将所述原始文件写入一个目录文件的头部,将所述外壳文件写入所述目录文件的尾部;
将所述目录文件压缩得到所述目录文件压缩包。
根据本申请的另一个方面,还提供了一种用于应用程序压缩的设备,其中,所述设备包括:
原始数据处理模块,用于将应用程序的原始程序包文件进行解压,将解压后的原始文件放入指定目录中;
外壳数据处理模块,用于将所述应用程序的外壳程序包文件进行解压,将解压后的外壳文件放入所述指定目录中;
压缩模块,用于对所述指定目录进行压缩,得到目录文件压缩包;
压缩包合并模块,用于合并所述原始程序包文件与所述目录文件压缩包,以生成指定目录文件。
根据本申请的再一个方面,还提供了一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现如前述任一项所述的方法。
根据本申请的又一个方面,还提供了一种用于应用程序压缩的设备,其中,所述设备包括:
一个或多个处理器;以及
存储有计算机可读指令的存储器,所述计算机可读指令在被执行时使所述处理器执行如前述任一项所述方法的操作。
与现有技术相比,本申请通过将应用程序的原始程序包文件进行解压,将解压后的原始文件放入指定目录中;将所述应用程序的外壳程序包文件进行解压,将解压后的外壳文件放入所述指定目录中;对所述指定目录进行压缩,得到目录文件压缩包;合并所述原始程序包文件与所述目录文件压缩包,以生成指定目录文件。从而使得应用程序经过压缩后的大小更小,进一步节省了空间,同时保证了应用程序的文件数据的完整性。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1示出根据本申请的一个方面提供的一种应用程序压缩的方法流程示意图;
图2示出本申请一优选实施例中的一种zip格式下的压缩包数据结构示意图;
图3示出本申请一优选实施例中的一种合并两个压缩包的方法流程示意图;
图4示出本申请一优选实施例中的一种合并两个压缩包的数据结构示意图;
图5示出根据本申请的另一个方面提供的一种用于应用程序压缩的设备框架结构示意图。
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
下面结合附图对本申请作进一步详细描述。
在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
图1示出根据本申请的一个方面提供的一种应用程序压缩的方法流程示意图,该方法包括:步骤S11~S14,其中,步骤S11,将应用程序的原始程序包文件进行解压,将解压后的原始文件放入指定目录中;步骤S12,将所述应用程序的外壳程序包文件进行解压,将解压后的外壳文件放入所述指定目录中;步骤S13,对所述指定目录进行压缩,得到目录文件压缩包;步骤S14,合并所述原始程序包文件与所述目录文件压缩包,以生成指定目录文件。从而使得应用程序经过压缩后的大小更小,进一步节省了空间,同时保证了应用程序的文件数据的完整性。
具体地,步骤S11,将应用程序的原始程序包文件进行解压,将解压后的原始文件放入指定目录中。在此,指定目录为利用原始程序包文件进行合成应用程序额相关文件所在的目录,合成前先将应用程序的原始程序包文件解压后的所有原始文件放入指定目录,例如指定目录为目录D,则将原始程序包文件A进行解压后得到的所有原始文件放入目录D中。
步骤S12,将所述应用程序的外壳程序包文件进行解压,将解压后的外壳文件放入所述指定目录中。在此,将应用程序的外壳程序包文件解压后的所有外壳文件放入指定目录,以使得所述应用程序的原始文件和外壳文件均在同一指定目录中,如外壳程序包文件B为仅保留含有代码部分的class.dex文件,将外壳程序包文件B解压,解压得到的class.dex文件放入目录D中,使得所有原始文件以及class.dex文件在同一目录中。
步骤S13,对所述指定目录进行压缩,得到目录文件压缩包。在此,对所述指定目录中的所有原始文件以及外壳文件进行压缩,得到目录文件压缩包,用以生成指定目录文件。在本申请一优选实施例中,压缩包格式优选为zip格式,将含有所有原始文件以及class.dex文件的目录D进行压缩,压缩为zip格式的压缩包,得到压缩包文件C。
步骤S14,合并所述原始程序包文件与所述目录文件压缩包,以生成指定目录文件。在此,将所述原始程序包文件与所述目录文件压缩包在均为压缩包的状态下进行文件合并,例如,将原始程序包文件A与压缩包文件C进行合并,生成指定目录D文件;具体地,将目录文件压缩包中的文件记录删除后与所述原始程序包文件写入同一个文件中以生成指定目录文件,最小化指定目录文件的体积,即实现了合并A文件和B文件得到的C文件中含有A文件,并且尽可能减小C文件的大小。
在本申请一优选实施例中,在步骤S14中,获取所述原始文件对应的原始文件数据和原始文件索引,并从所述指定目录文件中获取外壳文件对应的外壳文件数据和外壳文件索引;遍历所述原始文件索引和所述外壳文件索引以确定所述原始文件数据和所述外壳文件数据的共有文件数据;删除所述外壳文件数据中共有文件数据的文件记录,将所述删除的共有文件数据对应的文件索引指向所述原始文件数据中共有文件数据的文件记录,完成所述原始程序包文件与所述目录文件压缩包的合并,生成指定目录文件。在此,获取所述原始文件对应的原始文件数据和原始文件索引(DirEntry)以及获取外壳文件对应的外壳文件数据和外壳文件索引,接着,遍历原始文件索引确定原始文件数据,遍历外壳文件索引确定外壳文件数据,以确定共有文件数据;或遍历原始文件索引和外壳文件索引确定共有文件索引,根据共有文件索引确定共有文件数据。根据得到的共有文件数据,删除外壳文件数据中共有文件数据的文件记录(FileRecord),将所述删除的共有文件数据对应的文件索引指向所述原始文件数据中共有文件数据的文件记录,以缩小合并后得到的指定目录文件的体积。
在本申请一优选实施例中,所述原始文件索引以及外壳文件索引均包括crc校验值、压缩后文件大小、文件名称信息和文件数据的偏移值。在此,zip文件格式主要由文件索引和文件数据组成。文件索引包括但不限于crc校验值、压缩后文件大小、文件名称信息和文件数据的偏移值。
在本申请一优选实施例中,所述原始文件数据以及外壳文件数据均包括文件日期、压缩后文件大小、文件名称信息和文件压缩后的数据。在此,zip文件格式主要由文件索引和文件数据组成。文件数据包括但不限于文件日期、压缩后文件大小、文件名称信息和文件压缩后的数据。
图2示出本申请一优选实施例中的一种zip格式下的压缩包数据结构示意图,文件数据位于zip压缩包的文件头部,文件索引位于zip压缩包的文件尾部,文件索引(DirEntry)与文件数据中的文件记录(FileRecord)为一一对应关系,由文件索引指向文件记录。
在本申请一优选实施例中,在步骤S14中,遍历所述原始文件索引以及所述外壳文件索引,确定所述原始文件数据和所述外壳文件数据的共有文件索引;根据所述共有文件索引确定所述共有文件数据。在此,获取所有原始文件索引以及外壳文件索引,将原始文件索引和外壳文件索引进行遍历并比较,以确定所述原始文件数据和所述外壳文件数据的共有文件索引。基于共有文件索引查询共有文件数据,以高效地确定共有文件数据。
在本申请一优选实施例中,在步骤S13中,在所述指定目录中将所述原始文件写入一个目录文件的头部,将所述外壳文件写入所述目录文件的尾部;将所述目录文件压缩得到所述目录文件压缩包。在此,现将原始文件以及外壳文件写入指定格式的目录文件中,在所述指定目录中将所述原始文件写入一个目录文件的头部,将所述外壳文件写入所述目录文件的尾部,接着,将所述目录文件压缩得到所述目录文件压缩包以便于后续处理。
图3示出本申请一优选实施例中的一种合并两个压缩包的方法流程示意图,其中,两个压缩包分别为原始应用程序包(原始apk)以及外壳应用程序包(外壳apk),遍历原始apk的文件索引(DirEntry)来确定原始文件索引,遍历外壳apk的文件索引来确定外壳文件索引,根据原始文件索引和外壳文件索引确定共有文件索引,根据共有文件索引确定共有文件数据,其中,所述共有文件数据包括共有文件记录。
接上述实施例,图4示出本申请一优选实施例中的一种合并两个压缩包的数据结构示意图,将原始apk以及外壳apk写入同一个目录文件中,然后压缩得到目录文件压缩包,原始文件写在目录文件头部,外壳文件写在目录文件尾部,此时,确定共有文件索引为第二文件索引(DirEntry 2)以及第二文件索引(DirEntry 3),接着,删除DirEntry 2指向的外壳文件中的第二文件记录(FileRecord 2),删除DirEntry 3指向的外壳文件中的第三文件记录(FileRecord 3),并将外壳文件的DirEntry 2修改为指向原始文件中的FileRecord2,将外壳文件的DirEntry 3修改为指向原始文件中的FileRecord 3,此时,整个目录文件中的FileRecord 2以及FileRecord 3有且仅有一份,大大缩小了目录文件压缩包的体积,同时大大降低了传输成本和安装成本。
本申请实施例还提供了一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现前述一种应用程序压缩的方法。
与上文所述的方法相对应的,本申请还提供一种终端,其包括能够执行上述图1或图2或图3或图4或各个实施例所述的方法步骤的模块或单元,这些模块或单元可以通过硬件、软件或软硬结合的方式来实现,本申请并不限定。例如,在本申请一实施例中,还提供了一种用于应用程序压缩的设备,其中,所述设备包括:
一个或多个处理器;以及
存储有计算机可读指令的存储器,所述计算机可读指令在被执行时使所述处理器执行前述所述方法的操作。
例如,计算机可读指令在被执行时使所述一个或多个处理器:将应用程序的原始程序包文件进行解压,将解压后的原始文件放入指定目录中;将所述应用程序的外壳程序包文件进行解压,将解压后的外壳文件放入所述指定目录中;对所述指定目录进行压缩,得到目录文件压缩包;合并所述原始程序包文件与所述目录文件压缩包,以生成指定目录文件。
图5示出根据本申请的另一个方面提供的一种用于应用程序压缩的设备框架结构示意图,其中,所述装置包括:原始数据处理模块100,用于将应用程序的原始程序包文件进行解压,将解压后的原始文件放入指定目录中;外壳数据处理模块200,用于将所述应用程序的外壳程序包文件进行解压,将解压后的外壳文件放入所述指定目录中;压缩模块300,用于对所述指定目录进行压缩,得到目录文件压缩包;压缩包合并模块400,用于合并所述原始程序包文件与所述目录文件压缩包,以生成指定目录文件。从而使得应用程序经过压缩后的大小更小,进一步节省了空间,同时保证了应用程序的文件数据的完整性。
需要说明的是,所述原始数据处理模块100、外壳数据处理模块200、压缩模块300以及压缩包合并模块400执行的内容分别与上述步骤S11、S12、S13和S14中的内容相同或相应相同,为简明起见,在此不再赘述。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一个实施例中,本申请的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本申请的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。
另外,本申请的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本申请的方法和/或技术方案。而调用本申请的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行的计算机设备的工作存储器中。在此,根据本申请的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本申请的多个实施例的方法和/或技术方案。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
Claims (9)
1.一种应用程序压缩的方法,其中,所述方法包括:
将应用程序的原始程序包文件进行解压,将解压后的原始文件放入指定目录中;
将所述应用程序的外壳程序包文件进行解压,将解压后的外壳文件放入所述指定目录中;
对所述指定目录进行压缩,得到目录文件压缩包;
合并所述原始程序包文件与所述目录文件压缩包,以生成指定目录文件。
2.根据权利要求1所述的方法,其中,合并所述原始程序包文件与所述目录文件压缩包,以生成指定目录文件,包括:
获取所述原始文件对应的原始文件数据和原始文件索引,并从所述指定目录文件中获取外壳文件对应的外壳文件数据和外壳文件索引;
遍历所述原始文件索引和所述外壳文件索引以确定所述原始文件数据和所述外壳文件数据的共有文件数据;
删除所述外壳文件数据中共有文件数据的文件记录,将所述删除的共有文件数据对应的文件索引指向所述原始文件数据中共有文件数据的文件记录,完成所述原始程序包文件与所述目录文件压缩包的合并,生成指定目录文件。
3.根据权利要求2所述的方法,其中,所述原始文件索引以及外壳文件索引均包括crc校验值、压缩后文件大小、文件名称信息和文件数据的偏移值。
4.根据权利要求2所述的方法,其中,所述原始文件数据以及外壳文件数据均包括文件日期、压缩后文件大小、文件名称信息和文件压缩后的数据。
5.根据权利要求2所述的方法,其中,遍历所述原始文件索引和所述外壳文件索引以确定所述原始文件数据和所述外壳文件数据的共有文件数据,包括:
遍历所述原始文件索引以及所述外壳文件索引,确定所述原始文件数据和所述外壳文件数据的共有文件索引;
根据所述共有文件索引确定所述共有文件数据。
6.根据权利要求1所述的方法,其中,对所述指定目录进行压缩,得到目录文件压缩包,包括:
在所述指定目录中将所述原始文件写入一个目录文件的头部,将所述外壳文件写入所述目录文件的尾部;
将所述目录文件压缩得到所述目录文件压缩包。
7.一种用于应用程序压缩的设备,其中,所述设备包括:
原始数据处理模块,用于将应用程序的原始程序包文件进行解压,将解压后的原始文件放入指定目录中;
外壳数据处理模块,用于将所述应用程序的外壳程序包文件进行解压,将解压后的外壳文件放入所述指定目录中;
压缩模块,用于对所述指定目录进行压缩,得到目录文件压缩包;
压缩包合并模块,用于合并所述原始程序包文件与所述目录文件压缩包,以生成指定目录文件。
8.一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现如权利要求1至6中任一项所述的方法。
9.一种用于应用程序压缩的设备,其中,所述设备包括:
一个或多个处理器;以及
存储有计算机可读指令的存储器,所述计算机可读指令在被执行时使所述处理器执行如权利要求1至6中任一项所述方法的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010983706.XA CN112131193B (zh) | 2020-09-17 | 2020-09-17 | 一种应用程序压缩的方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010983706.XA CN112131193B (zh) | 2020-09-17 | 2020-09-17 | 一种应用程序压缩的方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112131193A true CN112131193A (zh) | 2020-12-25 |
CN112131193B CN112131193B (zh) | 2023-04-07 |
Family
ID=73841965
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010983706.XA Active CN112131193B (zh) | 2020-09-17 | 2020-09-17 | 一种应用程序压缩的方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112131193B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5768597A (en) * | 1996-05-02 | 1998-06-16 | Starfish Software, Inc. | System and methods for improved installation of compressed software programs |
CN105184118A (zh) * | 2015-08-31 | 2015-12-23 | 西北大学 | 一种基于代码碎片化的Android应用程序加壳保护方法及装置 |
CN105574411A (zh) * | 2015-12-25 | 2016-05-11 | 北京奇虎科技有限公司 | 一种动态脱壳方法、装置和设备 |
CN105740298A (zh) * | 2014-12-12 | 2016-07-06 | 北京奇虎科技有限公司 | 文件处理方法、装置及服务端设备 |
CN106778099A (zh) * | 2016-11-29 | 2017-05-31 | 北京奇虎科技有限公司 | 防篡改apk的生成方法和装置、安装及运行方法和装置 |
CN109409039A (zh) * | 2018-10-24 | 2019-03-01 | 北京奇虎科技有限公司 | 针对包含资源文件的数据压缩包进行加固的方法及装置 |
CN109710265A (zh) * | 2018-12-28 | 2019-05-03 | 北京金山安全软件有限公司 | 一种软件安装包的获取方法、装置及电子设备 |
CN109711154A (zh) * | 2018-12-29 | 2019-05-03 | 上海上讯信息技术股份有限公司 | 一种基于Android应用apk文件的钩子框架技术 |
-
2020
- 2020-09-17 CN CN202010983706.XA patent/CN112131193B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5768597A (en) * | 1996-05-02 | 1998-06-16 | Starfish Software, Inc. | System and methods for improved installation of compressed software programs |
CN105740298A (zh) * | 2014-12-12 | 2016-07-06 | 北京奇虎科技有限公司 | 文件处理方法、装置及服务端设备 |
CN105184118A (zh) * | 2015-08-31 | 2015-12-23 | 西北大学 | 一种基于代码碎片化的Android应用程序加壳保护方法及装置 |
CN105574411A (zh) * | 2015-12-25 | 2016-05-11 | 北京奇虎科技有限公司 | 一种动态脱壳方法、装置和设备 |
CN106778099A (zh) * | 2016-11-29 | 2017-05-31 | 北京奇虎科技有限公司 | 防篡改apk的生成方法和装置、安装及运行方法和装置 |
CN109409039A (zh) * | 2018-10-24 | 2019-03-01 | 北京奇虎科技有限公司 | 针对包含资源文件的数据压缩包进行加固的方法及装置 |
CN109710265A (zh) * | 2018-12-28 | 2019-05-03 | 北京金山安全软件有限公司 | 一种软件安装包的获取方法、装置及电子设备 |
CN109711154A (zh) * | 2018-12-29 | 2019-05-03 | 上海上讯信息技术股份有限公司 | 一种基于Android应用apk文件的钩子框架技术 |
Non-Patent Citations (4)
Title |
---|
XIAOLUZHANG 等: "《Rapid Android Parser for Investigating DEX files (RAPID)》", 《DIGITAL INVESTIGATION》 * |
张译恬: "《面向安卓***的移动应用程序安全加固***的设计与实现》", 《中国优秀硕士学位论文全文数据库》 * |
樊如霞等: "一种代码碎片化的Android应用程序防二次打包方法", 《小型微型计算机***》 * |
袁晓筱等: "Android***应用程序DEX文件保护方法研究", 《信息网络安全》 * |
Also Published As
Publication number | Publication date |
---|---|
CN112131193B (zh) | 2023-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106570018B (zh) | 序列化与反序列化的方法、装置、***以及电子设备 | |
CN110362547B (zh) | 日志文件的编码、解析、存储方法和装置 | |
US10338833B1 (en) | Method for achieving sequential I/O performance from a random workload | |
CN109885577B (zh) | 数据处理方法、装置、终端及存储介质 | |
CN111324665A (zh) | 一种日志回放方法及装置 | |
CN112329062A (zh) | 一种检测隐藏数据的方法、装置及电子设备 | |
CN111314535A (zh) | 手机质检过程记录方法及设备 | |
CN110019347B (zh) | 一种区块链的数据处理方法、装置及终端设备 | |
CN108170376B (zh) | 存储卡读和写的方法和*** | |
CN112131193B (zh) | 一种应用程序压缩的方法及设备 | |
CN102360381B (zh) | 一种对嵌入式程序进行无损压制的装置和方法 | |
CN110837338A (zh) | 一种存储索引处理方法及装置 | |
CN114816247A (zh) | 一种逻辑数据获取方法及装置 | |
CN114064111A (zh) | 一种部署包的版本信息的管理方法及设备 | |
CN112069519A (zh) | 一种输出信息文件加密记录的方法及设备 | |
CN114595096A (zh) | 数据库热备份的方法、装置、电子设备及存储介质 | |
CN112948389A (zh) | 基于md5的数据库表数据比对方法及设备 | |
CN111444194A (zh) | 一种块链式账本中索引的清除方法、装置及设备 | |
CN113157655B (zh) | 一种数据压缩、解压方法、装置、电子设备和存储介质 | |
CN113157261B (zh) | 一种代码生成方法及设备 | |
CN117130995A (zh) | 数据处理方法、装置、设备及介质 | |
US10901944B2 (en) | Statelessly populating data stream into successive files | |
CN112380058A (zh) | 文件恢复方法及设备 | |
CN113949603A (zh) | 一种网关功能的联动方法及设备 | |
CN114065079A (zh) | 一种用于Web生成PDF文件的方法与设备 |
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 |