CN110704074A - Software installation package processing method and device, electronic equipment and storage medium - Google Patents

Software installation package processing method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN110704074A
CN110704074A CN201910867133.1A CN201910867133A CN110704074A CN 110704074 A CN110704074 A CN 110704074A CN 201910867133 A CN201910867133 A CN 201910867133A CN 110704074 A CN110704074 A CN 110704074A
Authority
CN
China
Prior art keywords
incomplete
methods
list
deleted
installation 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.)
Pending
Application number
CN201910867133.1A
Other languages
Chinese (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 QIYI Century Science and Technology Co Ltd
Original Assignee
Beijing QIYI Century 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 QIYI Century Science and Technology Co Ltd filed Critical Beijing QIYI Century Science and Technology Co Ltd
Priority to CN201910867133.1A priority Critical patent/CN110704074A/en
Publication of CN110704074A publication Critical patent/CN110704074A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

The application relates to a software installation package processing method, a device, electronic equipment and a storage medium, wherein the method comprises the following steps: acquiring a list of incomplete methods in a third-party library of the software installation package; positioning according to the list of the incomplete methods to obtain corresponding methods to be deleted in a third party library; deleting method nodes corresponding to all methods to be deleted in the third-party library through operation byte codes; wherein, the expression form of the method to be deleted is a method node. Compared with the prior art, the technical scheme provided by the embodiment of the application has the following advantages: the size of the installation package can be automatically deleted, and complicated manual deletion work can be effectively reduced; by adopting the method, the method nodes corresponding to the methods to be deleted can be deleted in a bytecode operation mode, so that the size of the package can be further reduced on the basis of the related technology, the final software installation package can occupy less storage space, and a user is more willing to download and install.

Description

Software installation package processing method and device, electronic equipment and storage medium
Technical Field
The present application relates to the field of software development technologies, and in particular, to a software installation package processing method and apparatus, an electronic device, and a storage medium.
Background
The mobile internet has entered the competition of the next half, the apps have pieced together for experience, and the opportunity of piecing together content has arrived, and as the functions of the apps are more and more, the sizes of the apps are larger and larger, but the size of the storage space of the intelligent mobile terminal of the user is limited, so that each enterprise reduces the sizes of the apps through various means to occupy less storage space, and the user is more willing to download.
In the prior art, there are many conventional means for reducing the size of an app, but the basic methods are used up, so how to further reduce the packet size by a new technical means is a technical problem to be solved urgently.
In the existing scheme, in order to reduce the size of the app, the prosguard (obfuscator) itself performs useless method deletion, but for a third-party library, the methods in the library can be actually deleted, but cannot be deleted. For example, class a calls method a, a calls a nonexistent method internally, method a should also be deleted, call chains related to a should all be deleted, and since the related art can only delete methods through source codes, what needs to be deleted in the above problem is useless methods in byte codes, and cannot be deleted through source codes, there is no scheme for realizing corresponding deletion function in the related art.
Aiming at various technical problems in the prior art, no effective solution is provided at present.
Disclosure of Invention
In order to solve the technical problems or at least partially solve the technical problems, the application provides a software installation package processing method, a device, an electronic device and a storage medium, which can effectively reduce the size of a software installation package.
In a first aspect, the present application provides a software installation package processing method, including:
acquiring a list of incomplete methods in a software installation package;
positioning according to the list of the incomplete methods to obtain corresponding methods to be deleted in a third party library; wherein the software installation package comprises the third party library;
deleting the method nodes corresponding to the methods to be deleted in the third-party library through operation byte codes; wherein, the expression form of the method to be deleted is the method node.
Further, as the foregoing processing method, the obtaining, according to the list positioning of the incomplete method, each corresponding method to be deleted in the third party library specifically includes:
determining a method operation code node corresponding to each incomplete method according to the list of the incomplete methods;
and respectively positioning the operation code nodes in each class by the method to obtain the method to be deleted corresponding to the list of the incomplete methods.
Further, the processing method as described above further includes:
acquiring a first method in a preset white list; the white list comprises N first methods, wherein N is an integer greater than or equal to 0;
filtering the list of the incomplete methods according to the first method, removing the first method from all the incomplete methods in the list of the incomplete methods to obtain a residual incomplete method, and obtaining the list of the filtered incomplete methods according to the residual incomplete method;
the method for deleting corresponding to the third party library is obtained according to the list positioning of the incomplete method, and specifically comprises the following steps:
and positioning according to the list of the filtered incomplete methods to obtain corresponding methods to be deleted in the third party library.
Further, as the foregoing processing method, the obtaining a list of defective methods in the third-party library of the software installation package includes:
acquiring a first stub method which is not called in the software installation package; and/or
Acquiring a second incomplete method of the software installation package, wherein the second incomplete method calls a nonexistent method;
and obtaining a list of the incomplete methods according to the first incomplete method and the second incomplete method.
In a second aspect, the present application provides a software installation package processing apparatus, including:
the list acquisition module is used for acquiring a list of incomplete methods in a third-party library of the software installation package;
the positioning module is used for positioning according to the list of the incomplete methods to obtain each corresponding method to be deleted in the third party library; wherein the software installation package comprises the third party library;
the deleting module is used for deleting the method nodes corresponding to the methods to be deleted in the third-party library through operation byte codes; wherein, the expression form of the method to be deleted is the method node.
Further, the processing apparatus as described above further includes:
a first determining unit, configured to determine, according to the list of incomplete methods, a method operation code node corresponding to each incomplete method;
and the method positioning unit is used for respectively positioning in each class through the method operation code nodes to obtain the method to be deleted corresponding to the list of the incomplete methods. Further comprising:
the first method module is used for acquiring a first method in a preset white list; the white list comprises N first methods, wherein N is an integer greater than or equal to 0;
and the filtering module is used for filtering the list of the incomplete methods according to the first method, removing the first method from all the incomplete methods in the list of the incomplete methods to obtain the residual incomplete methods, and obtaining the list of the filtered incomplete methods according to the residual incomplete methods.
Further, as aforementioned processing apparatus, the list obtaining module includes:
a first obtaining unit, configured to obtain a first stub method that is not called in the software installation package;
a second obtaining unit, configured to obtain a second incomplete method that calls a non-existing method in the software installation package;
and the list determining unit is used for obtaining the list of the incomplete method according to the first incomplete method and the second incomplete method.
In a third aspect, the present application provides an electronic device, comprising: the system comprises a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory are communicated with each other through the communication bus;
the memory is used for storing a computer program;
the processor, when executing the computer program, is configured to implement the method of any of the first aspect.
In a fourth aspect, the present application provides a computer-readable storage medium storing computer instructions for causing a computer to perform the method of any one of the first aspects.
The embodiment of the application provides a software installation package processing method and device for reducing the size of a software installation package, electronic equipment and a storage medium, wherein the method comprises the following steps: acquiring a list of incomplete methods in a third-party library of the software installation package; positioning according to the list of the incomplete methods to obtain corresponding methods to be deleted in a third party library; deleting the method nodes corresponding to the methods to be deleted in the third-party library through operation byte codes; wherein, the expression form of the method to be deleted is the method node. Compared with the prior art, the technical scheme provided by the embodiment of the application has the following advantages: the size of the installation package can be automatically deleted, the complicated manual deletion work can be effectively reduced, and the method can delete the method nodes corresponding to the methods to be deleted in a byte code operation mode, so that the package size can be further reduced on the basis of the related technology, the final software installation package can occupy less storage space, and a user is more willing to download and install.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the invention and together with the description, serve to explain the principles of the invention.
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, and it is obvious for those skilled in the art that other drawings can be obtained according to the drawings without inventive exercise.
Fig. 1 is a schematic flowchart of a software installation package processing method according to an embodiment of the present application;
fig. 2 is a schematic flowchart of another software installation package processing method according to an embodiment of the present application;
FIG. 3 is a flowchart illustrating a method of one embodiment of step S1 shown in FIG. 1;
fig. 4 is a schematic structural diagram of functional modules of a software installation package processing apparatus according to an embodiment of the present application;
FIG. 5 is a functional block diagram of one embodiment of the module 2 shown in FIG. 4;
fig. 6 is a schematic structural diagram of functional modules of another software installation package processing apparatus according to an embodiment of the present application;
FIG. 7 is a functional block diagram of one embodiment of the module 1 shown in FIG. 4;
fig. 8 is a schematic structural diagram of an electronic device according to an embodiment of the present application.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are some embodiments of the present application, but not all embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
Fig. 1 is a software installation package processing method provided in an embodiment of the present application, including the following steps S1 to S3:
s1, acquiring a list of incomplete methods of the incomplete methods in a third-party library of the software installation package;
specifically, the incomplete methods are codes corresponding to useless methods in the software installation package, and each incomplete method has unique identification information such as a name, an address or a link corresponding to the incomplete method; therefore, the list of incomplete methods is: recording a list of unique identification information corresponding to each incomplete method;
s2, positioning according to the list of the incomplete methods to obtain corresponding methods to be deleted in the third party library;
the third-party library is a class library except a local class library and a system class library and can be called, and in software development, in order to accelerate development progress, the third-party library can reduce the condition that developers compile corresponding software codes by themselves; however, there are many useless methods with a certain size in the third-party library, and a part of storage space of the system is occupied after the whole software installation package is installed; the incomplete method is identification information such as a name or a number which is present in a list of incomplete methods and used for representing uniqueness of the incomplete method, and the method to be deleted is a method which is specifically present in a third-party library;
specifically, the method comprises the following steps: determining each incomplete method through a list of incomplete methods, and then positioning one by one according to the name or number of each incomplete method to obtain each corresponding method in a third-party library;
s3, deleting the method nodes corresponding to the methods to be deleted in the third-party library through operation byte codes; wherein, the expression form of the method to be deleted is the method node;
specifically, because the form corresponding to each method is a method node (methods nodes), after the method to be deleted is located, the method to be deleted is deleted, that is, the method node (methods nodes) corresponding to the method is deleted, so that a useless method is deleted, and byte codes (specifically, in java, codes which can be read by a virtual machine are called byte codes; namely class files in java) are reduced, thereby achieving the purpose of reducing the size of the software installation package; wherein the operation byte code is: dynamically editing existing classes by using the operation byte codes of the open source library, for example, when CGLib, ASM and Javassist are run;
taking application to an android software installation package as an example: when the APK package (the abbreviation of Android package, namely Android installation package (APK) is compiled by the method, the APK file is in a file format similar to Symbian Sis or Sisx, and can be installed by directly transmitting the APK file to an Android simulator or an Android mobile phone for execution), the method is not needed. This reduces the size of the bytecode and thus the packet size. The process of compiling the APK package comprises the following steps: firstly, compiling a source code into a class file (embodied in a byte code form), then compiling the class file into a dex file, and finally packaging the dex file and a resource file together to obtain an apk file; the method is carried out when the class file is compiled into the dex file.
In some embodiments, before obtaining, according to the list positioning of the incomplete method in step s2, each corresponding method to be deleted in the third party library, the following steps are included:
obtaining all methods in a third party library;
that is, all methods (i.e., bytecodes) in the third party library are obtained; the method specifically comprises the following steps:
generally, each class node in a third-party library can be called through an ASM framework, and each class node is output in a file stream form; the third-party library can be edited in a byte code operation mode;
obtaining all method nodes (MethodSods) in a class (class) corresponding to the class node in the third-party library through the class node;
that is, there will be multiple classes in the third party library, and there will be multiple methods in each class, and each method has a unique method node; specifically, the class node includes a method (i.e., method) of the class; and the above-mentioned method node is stored in the method field; preferably, all class nodes and method nodes can be acquired in a traversal mode;
in some embodiments, as in the foregoing processing method, obtaining each corresponding to-be-deleted method in the third party library according to the list positioning of the incomplete method specifically includes:
determining method operation code nodes corresponding to the incomplete methods according to the list of the incomplete methods;
specifically, each incomplete method in the list of incomplete methods is distinguished and recorded through its unique identifier (such as name and other information); the identification of each incomplete method exists in the method operation code node, so that the method operation code node corresponding to each incomplete method can be determined through the list of the incomplete methods;
respectively positioning in each class through a method operation code node (MethodInSenNode) to obtain a method to be deleted corresponding to the incomplete method in the list of incomplete methods;
that is, the method nodes (MethodNodes) corresponding to the incomplete methods in the list of incomplete methods in each class can be located by the method opcode node, so as to obtain the method to be deleted.
Further, as can be seen from the above, the bytecode corresponding to the method to be deleted is a method node existing in the class node, and therefore, after the method node corresponding to each method to be deleted is obtained by the above method positioning, all methods to be deleted in the class can be deleted through the class node; after traversing all classes in the third-party library, deleting all methods to be deleted in the list of the incomplete methods; thereby achieving the purposes of reducing the byte codes in the third-party library and reducing the size of the software installation package; generally, the step of deleting the method node in this embodiment is performed in the ASM framework.
As shown in fig. 2, in some embodiments, the processing method as described above further includes:
s4, acquiring a first method located in a preset white list; the white list comprises N first methods, wherein N is an integer greater than or equal to 0;
specifically, in some cases, even if some methods (i.e., the first method) in the third-party library are detected to be the incomplete methods, some methods may exist in the software installation package, but need to be saved even if the methods exist in the list of the incomplete methods (for example, some Android basic components are also detected as the incomplete methods when the incomplete methods are detected by prosuard, and if the methods are deleted, the third-party library cannot be found during the software operation, so that the methods need to be retained).
S5, filtering the list of the incomplete methods according to the first method, removing the first method from all the incomplete methods in the list of the incomplete methods to obtain the remaining incomplete methods, and obtaining the list of the filtered incomplete methods according to the remaining incomplete methods;
that is, according to the white list and the list of the incomplete methods, determining a second method to be deleted, which is consistent with the first method, in the methods to be deleted; then, filtering the second method to be deleted in the list of the incomplete methods, so as to obtain a list of filtered incomplete methods which does not completely comprise the first method, wherein elements in the list of the filtered incomplete methods are the remaining incomplete methods;
obtaining each corresponding method to be deleted in the third party library according to the list positioning of the incomplete method, which specifically comprises the following steps:
and positioning according to the list of the filtered incomplete methods to obtain corresponding methods to be deleted in the third party library.
Therefore, the list of the incomplete method can be filtered through the white list, and the third-party library can be ensured to be normally called through the filtering, so that the normal operation of the software is ensured.
As shown in fig. 3, in some embodiments, the aforementioned processing method, step S1, is to obtain a list of incomplete methods in the third-party library of the software installation package, including steps S11 to S13 as follows:
s11, obtaining a first stub method which is not called in the software installation package; and/or
S12, acquiring a second incomplete method which calls a nonexistent method or the first incomplete method in the software installation package; that is, the mutual calling relationship between the methods in the third-party library is obtained, and the mutual calling relationship can be used to determine whether a method a exists or not and determine whether a non-existing method b is called or not, so that the method a should be deleted actually; in addition, since the method c calling the first stub method has the same problem as the method a after the first stub method is deleted, the method c also needs to be deleted; after determining the first incomplete method and the mutual calling relationship, determining a method c calling the first incomplete method;
s13, obtaining a list of the incomplete methods according to the first incomplete method and/or the second incomplete method;
that is to say: when the second incomplete method does not exist, the list from the first incomplete method to the incomplete method can be only used; when the first incomplete method does not exist, the list of the incomplete methods can be obtained only according to the second incomplete method; when the first and second incomplete methods exist at the same time, the list of the incomplete methods needs to be obtained according to the first and second incomplete methods.
Therefore, the method is used for traversing relative to a defect method, more useless methods can be obtained, and the size of the application can be further reduced.
And generally, a first incomplete method is obtained through alarm information sent by ProGuard. After the method in this embodiment is adopted, a second incomplete method can be obtained on the basis of the first incomplete method and the call relation, and then each incomplete method (the first incomplete method and the second incomplete method) is recorded to obtain a list of incomplete methods.
As shown in fig. 4, according to another embodiment of the present application, there is provided a software installation package processing apparatus including:
the list acquisition module 1 is used for acquiring a list of incomplete methods in the software installation package;
the positioning module 2 is used for positioning according to the list of the incomplete methods to obtain each corresponding method to be deleted in the third party library; the software installation package comprises a third party library;
a deleting module 3, configured to delete, through an operation bytecode, the method node corresponding to each method to be deleted in the third-party library; wherein, the expression form of the method to be deleted is a method node.
Specifically, the specific process of implementing the functions of each module in the apparatus according to the embodiment of the present invention may refer to the related description in the method embodiment, and is not described herein again.
As shown in fig. 5, in some embodiments, the positioning module 2, such as the aforementioned processing device, includes:
a first determining unit 21, configured to determine, according to the list of incomplete methods, a method operation code node corresponding to each incomplete method;
and a method positioning unit 22, configured to separately position, in each class, a method to be deleted corresponding to the list of the incomplete methods by using the method operation code node.
Specifically, the specific process of implementing the functions of each module in the apparatus according to the embodiment of the present invention may refer to the related description in the method embodiment, and is not described herein again.
As shown in fig. 6, in some embodiments, the processing apparatus as described above, further includes:
the first method module 4 is used for acquiring a first method in a preset white list; the white list comprises N first methods, wherein N is an integer greater than or equal to 0;
a filtering module 5, configured to filter the list of the incomplete methods according to the first method, obtain remaining incomplete methods after removing the first method from all the incomplete methods in the list of the incomplete methods, and obtain a list of the filtered incomplete methods according to the remaining incomplete methods.
Specifically, the specific process of implementing the functions of each module in the apparatus according to the embodiment of the present invention may refer to the related description in the method embodiment, and is not described herein again.
As shown in fig. 7, in some embodiments, as the foregoing processing device, the list obtaining module 1 includes:
a first obtaining unit 11, configured to obtain a first stub method that is not called in the software installation package;
a second obtaining unit 12, configured to obtain a second incomplete method that calls a non-existing method in the software installation package;
a list determining unit 13, configured to obtain a list of the incomplete methods according to the first incomplete method and/or the second incomplete method.
Specifically, the specific process of implementing the functions of each module in the apparatus according to the embodiment of the present invention may refer to the related description in the method embodiment, and is not described herein again.
As shown in fig. 8, according to another embodiment of the present application, an embodiment of the present application further provides an electronic device, including: as shown in fig. 6, the electronic device may include: the system comprises a processor 1501, a communication interface 1502, a memory 1503 and a communication bus 1504, wherein the processor 1501, the communication interface 1502 and the memory 1503 complete communication with each other through the communication bus 1504.
A memory 1503 for storing a computer program;
the processor 1501 is configured to implement the steps of the above-described method embodiments when executing the program stored in the memory 1503.
The bus mentioned in the electronic device may be a Peripheral Component Interconnect (PCI) bus, an Extended Industry Standard Architecture (EISA) bus, or the like. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, only one thick line is shown, but this does not mean that there is only one bus or one type of bus.
The communication interface is used for communication between the electronic equipment and other equipment.
The Memory may include a Random Access Memory (RAM) or a Non-Volatile Memory (NVM), such as at least one disk Memory. Optionally, the memory may also be at least one memory device located remotely from the processor.
The Processor may be a general-purpose Processor, including a Central Processing Unit (CPU), a Network Processor (NP), and the like; but also Digital Signal Processors (DSPs), Application Specific Integrated Circuits (ASICs), Field Programmable Gate Arrays (FPGAs) or other Programmable logic devices, discrete Gate or transistor logic devices, discrete hardware components.
Embodiments of the present application further provide a computer-readable storage medium, which stores computer instructions, and the computer instructions enable a computer to execute the steps of the above method embodiments.
It should be noted that, for the above-mentioned apparatus, electronic device and non-transitory computer-readable storage medium embodiments, since they are substantially similar to the method embodiments, the description is simple, and for the relevant points, refer to the partial description of the method embodiments.
It is noted that, in this document, relational terms such as "first" and "second," and the like, may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other identical elements in a process, method, article, or apparatus that comprises the element.
The foregoing are merely exemplary embodiments of the present invention, which enable those skilled in the art to understand or practice the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims (10)

1. A software installation package processing method is characterized by comprising the following steps:
acquiring a list of incomplete methods in a third-party library of the software installation package;
positioning according to the list of the incomplete methods to obtain corresponding methods to be deleted in a third party library;
deleting the method nodes corresponding to the methods to be deleted in the third-party library through operation byte codes; wherein, the expression form of the method to be deleted is the method node.
2. The processing method according to claim 1, wherein the obtaining of the corresponding each to-be-deleted method in the third party repository according to the list positioning of the incomplete method specifically comprises:
determining a method operation code node corresponding to each incomplete method according to the list of the incomplete methods;
and respectively positioning the operation code nodes in each class by the method to obtain the method to be deleted corresponding to the list of the incomplete methods.
3. The processing method of claim 1, further comprising:
acquiring a first method in a preset white list; the white list comprises N first methods, wherein N is an integer greater than or equal to 0;
filtering the list of the incomplete methods according to the first method, removing the first method from all the incomplete methods in the list of the incomplete methods to obtain a residual incomplete method, and obtaining the list of the filtered incomplete methods according to the residual incomplete method;
the method for deleting corresponding to the third party library is obtained according to the list positioning of the incomplete method, and specifically comprises the following steps:
and positioning according to the list of the filtered incomplete methods to obtain corresponding methods to be deleted in the third party library.
4. The processing method of claim 1, wherein the obtaining the list of defective methods in the third-party library of software installation packages comprises:
acquiring a first stub method which is not called in the software installation package; and/or
Acquiring a second incomplete method of the software installation package, wherein the second incomplete method calls a nonexistent method;
and obtaining the list of the incomplete method according to the first incomplete method and/or the second incomplete method.
5. A software installation package processing apparatus, comprising:
the list acquisition module is used for acquiring a list of incomplete methods in a third-party library of the software installation package;
the positioning module is used for positioning according to the list of the incomplete methods to obtain each corresponding method to be deleted in the third party library; wherein the software installation package comprises the third party library;
the deleting module is used for deleting the method nodes corresponding to the methods to be deleted in the third-party library through operation byte codes; wherein, the expression form of the method to be deleted is the method node.
6. The processing apparatus as in claim 5, wherein the positioning module comprises:
a first determining unit, configured to determine, according to the list of incomplete methods, a method operation code node corresponding to each incomplete method;
and the method positioning unit is used for respectively positioning in each class through the method operation code nodes to obtain the method to be deleted corresponding to the list of the incomplete methods.
7. The processing apparatus as in claim 5, further comprising:
the first method module is used for acquiring a first method in a preset white list; the white list comprises N first methods, wherein N is an integer greater than or equal to 0;
and the filtering module is used for filtering the list of the incomplete methods according to the first method, removing the first method from all the incomplete methods in the list of the incomplete methods to obtain the residual incomplete methods, and obtaining the list of the filtered incomplete methods according to the residual incomplete methods.
8. The processing apparatus as claimed in claim 5, wherein the list obtaining module comprises:
a first obtaining unit, configured to obtain a first stub method that is not called in the software installation package;
a second obtaining unit, configured to obtain a second incomplete method that calls a non-existing method in the software installation package;
a list determining unit, configured to obtain a list of the incomplete methods according to the first incomplete method and/or the second incomplete method.
9. An electronic device, comprising: the system comprises a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory are communicated with each other through the communication bus;
the memory is used for storing a computer program;
the processor, when executing the computer program, implementing the processing method of any one of claims 1-4.
10. A computer-readable storage medium storing computer instructions for causing a computer to perform the processing method of any one of claims 1 to 4.
CN201910867133.1A 2019-09-12 2019-09-12 Software installation package processing method and device, electronic equipment and storage medium Pending CN110704074A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910867133.1A CN110704074A (en) 2019-09-12 2019-09-12 Software installation package processing method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910867133.1A CN110704074A (en) 2019-09-12 2019-09-12 Software installation package processing method and device, electronic equipment and storage medium

Publications (1)

Publication Number Publication Date
CN110704074A true CN110704074A (en) 2020-01-17

Family

ID=69195330

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910867133.1A Pending CN110704074A (en) 2019-09-12 2019-09-12 Software installation package processing method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN110704074A (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140325497A1 (en) * 2013-04-28 2014-10-30 Zhihong Zhao Method and Apparatus for Upgrading Application
US20150331882A1 (en) * 2013-01-30 2015-11-19 Tencent Technology (Shenzhen) Co., Ltd. Redundant file deletion method, apparatus and storage medium
CN108614702A (en) * 2016-12-28 2018-10-02 阿里巴巴集团控股有限公司 Bytecode-optimized method and device
CN108874443A (en) * 2018-06-26 2018-11-23 深圳市乐唯科技开发有限公司 A kind of comprehensive various ways are come the method that reduces apk size

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150331882A1 (en) * 2013-01-30 2015-11-19 Tencent Technology (Shenzhen) Co., Ltd. Redundant file deletion method, apparatus and storage medium
US20140325497A1 (en) * 2013-04-28 2014-10-30 Zhihong Zhao Method and Apparatus for Upgrading Application
CN108614702A (en) * 2016-12-28 2018-10-02 阿里巴巴集团控股有限公司 Bytecode-optimized method and device
CN108874443A (en) * 2018-06-26 2018-11-23 深圳市乐唯科技开发有限公司 A kind of comprehensive various ways are come the method that reduces apk size

Similar Documents

Publication Publication Date Title
CN108459962B (en) Code normalization detection method and device, terminal equipment and storage medium
CN110941528B (en) Log buried point setting method, device and system based on fault
CN111708655A (en) Application crash processing method, device and system
CN109933350B (en) Method and device for embedding codes in application and electronic equipment
WO2019056475A1 (en) Automated test task management method and apparatus, device, and storage medium
CN111124480B (en) Method and device for generating application program package, electronic equipment and storage medium
CN111967017A (en) Method and device for generating dependency relationship, terminal equipment and storage medium
CN111124382A (en) Attribute assignment method and device in Java and server
CN109558145A (en) Installation package volume optimization method and device for android application
CN114253587A (en) Application program updating method and device, electronic equipment and readable storage medium
CN111399849B (en) Method and system for determining application program installation package
CN110647463B (en) Method and device for restoring test breakpoint and electronic equipment
CN110704074A (en) Software installation package processing method and device, electronic equipment and storage medium
CN110941443A (en) Method and device for modifying file name in SDK and electronic equipment
JP2004094374A (en) Logging system
CN111045746A (en) Code expansion method and framework
CN113127367B (en) Defect detection method for Android dynamic permission application
CN110989985B (en) Maven-based dependency package management method, device, computer equipment and storage medium
JP5024252B2 (en) Trace information acquisition device, trace information acquisition program, and trace information acquisition method
CN110908869B (en) Application program data monitoring method, device, equipment and storage medium
CN110275710B (en) Java local interface consistency checking method and system, storage medium and terminal
CN113282541A (en) File calling method and device and electronic equipment
CN112965697A (en) Code file generation method and device and electronic equipment
CN111399842A (en) Code compiling method and device
CN111273940A (en) Method and device for uploading program file to code warehouse

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200117

RJ01 Rejection of invention patent application after publication