CN107168749B - Compiling method, device, equipment and computer readable storage medium - Google Patents

Compiling method, device, equipment and computer readable storage medium Download PDF

Info

Publication number
CN107168749B
CN107168749B CN201710401413.4A CN201710401413A CN107168749B CN 107168749 B CN107168749 B CN 107168749B CN 201710401413 A CN201710401413 A CN 201710401413A CN 107168749 B CN107168749 B CN 107168749B
Authority
CN
China
Prior art keywords
file
code
application
compiled
type
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
CN201710401413.4A
Other languages
Chinese (zh)
Other versions
CN107168749A (en
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201710401413.4A priority Critical patent/CN107168749B/en
Publication of CN107168749A publication Critical patent/CN107168749A/en
Application granted granted Critical
Publication of CN107168749B publication Critical patent/CN107168749B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

The embodiment of the invention discloses a compiling method, which comprises the following steps: acquiring a static file corresponding to a first code to be compiled of an application to be installed, and acquiring a first file based on an interface file of the application to be installed; the first file is a text file for storing the program code of the application to be installed; dividing a second code to be compiled according to the function of the second code to be compiled in the first file to obtain at least two code modules; compiling the codes to be compiled in each code module respectively to obtain a first type of file; generating a second type file of a preset type based on the static file, the first file and the first type file; generating a second file based on the resource of the application to be installed, and obtaining an installation package of the application to be installed based on the second type file and the second file; the second file is a file including resource information of an application to be installed. The embodiment of the invention also discloses a compiling device, equipment and a computer readable storage medium.

Description

Compiling method, device, equipment and computer readable storage medium
Technical Field
The present invention relates to a compiling technology in the field of computers, and in particular, to a compiling method, apparatus, device, and computer-readable storage medium.
Background
In the development process of an application program of an Android operating system, for a large project, compiling needs to occupy a large amount of time of a developer, and meanwhile, because a large amount of memory and Central Processing Unit (CPU) resources need to be consumed during compiling, the developer is in an idle state due to the fact that a computer is blocked during compiling, and development efficiency is affected. Meanwhile, in the prior art, when compiling the code, the code is compiled as a whole. When a developer changes the code or the code changes due to the function update of the application program, all the code needs to be recompiled to enable the code to be effective. However, this also increases the amount of work and calculation, and takes longer.
Disclosure of Invention
In order to solve the above technical problems, embodiments of the present invention desirably provide a compiling method, apparatus, device, and computer-readable storage medium, which solve the problem that when some codes are modified in the existing code compiling scheme, all codes need to be recompiled, thereby reducing workload and computation amount, reducing time, and improving efficiency.
The technical scheme of the invention is realized as follows:
in a first aspect, a compiling method is provided, where the method includes:
determining a static file corresponding to a first code to be compiled of an application to be installed, and obtaining a first file based on an interface file of the application to be installed; the first file is a text file for storing the program code of the application to be installed;
dividing a second code to be compiled according to the function of the second code to be compiled in the first file to obtain at least two code modules; wherein the function of the second code to be compiled is pre-stored;
compiling the codes to be compiled in each code module respectively to obtain a first type of file;
generating a second type of file of a preset type based on the static file, the first file and the first type of file;
generating a second file based on the resource of the application to be installed, and obtaining an installation package of the application to be installed based on the second type of file and the second file; and the second file is a file comprising the resource information of the application to be installed.
In a second aspect, a compiling apparatus is provided, the apparatus including: a first acquisition unit, a processing unit, a second acquisition unit and a generation unit, wherein:
the first obtaining unit is used for determining a static file corresponding to a first to-be-compiled code of an application to be installed and obtaining a first file based on an interface file of the application to be installed; the first file is a text file for storing the program code of the application to be installed;
the processing unit is used for dividing a second code to be compiled into at least two code modules according to the function of the second code to be compiled in the first file; wherein the function of the second code to be compiled is pre-stored;
the second acquisition unit is used for compiling the codes to be compiled in each code module respectively to obtain a first type of file;
the generating unit is used for generating a second type of file of a preset type based on the static file, the first file and the first type of file;
the first obtaining unit is further configured to generate a second file based on the resource of the application to be installed, and obtain an installation package of the application to be installed based on the second type file and the second file; and the second file is a file comprising the resource information of the application to be installed.
In a third aspect, a compiling apparatus is provided, the apparatus including: a memory and a processor, wherein:
the memory is used for storing the static file corresponding to the application to be installed;
the processor is used for determining a static file corresponding to a first code to be compiled of an application to be installed and obtaining a first file based on an interface file of the application to be installed; the first file is a text file for storing the program code of the application to be installed; dividing a second code to be compiled according to the function of the second code to be compiled in the first file to obtain at least two code modules; wherein the function of the second code to be compiled is pre-stored; compiling the codes to be compiled in each code module respectively to obtain a first type of file; generating a second type of file of a preset type based on the static file, the first file and the first type of file; generating a second file based on the resource of the application to be installed, and obtaining an installation package of the application to be installed based on the second type file and the second file; and the second file is a file comprising the resource information of the application to be installed.
In a fourth aspect, a computer-readable storage medium is provided, in which one or more computer programs are stored which, when executed by a processor, implement the steps of the method of the first aspect.
The compiling method, the compiling device, the compiling equipment and the computer readable storage medium provided by the embodiment of the invention determine a static file corresponding to a first code to be compiled of an application to be installed, obtain a first file based on an interface file of the application to be installed, the first file is a text file for storing a program code of the application to be installed, divide a second code to be compiled according to the function of the second code to be compiled in the first file to obtain at least two code modules, compile the code to be compiled in each code module respectively to obtain a first type of file, generate a second type of file of a preset type based on the static file, the first file and the first type of file, finally generate a second file based on the resource of the application to be installed, obtain an installation package of the application to be installed based on the second type of file and the second file, the second file is a file including the resource information of the application to be installed, compile the code according to the code modules obtained after division when compiling the code, compile the code according to the code modules, and only need to recompute the problem of the existing code when some codes change occurs, and reduce the recomputation amount of the recomputation work of the code.
Drawings
Fig. 1 is a flowchart illustrating a compiling method according to an embodiment of the present invention;
FIG. 2 is a schematic diagram of a code module obtained by division according to an embodiment of the present invention;
fig. 3 is a schematic diagram of automatically determining whether to add a dex file after code module division and compilation according to an embodiment of the present invention;
FIG. 4 is a flowchart illustrating another compiling method according to an embodiment of the invention;
FIG. 5 is a schematic structural diagram of a compiling apparatus according to an embodiment of the invention;
fig. 6 is a schematic structural diagram of a compiling apparatus according to an embodiment of the present invention.
Detailed Description
The technical solution in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention.
An embodiment of the present invention provides a compiling method, which is shown in fig. 1 and includes the following steps:
step 101, obtaining a static file corresponding to a first code to be compiled of an application to be installed, and obtaining a first file based on an interface file of the application to be installed.
The first file is a text file for storing the program code of the application to be installed.
Specifically, the step 101 of obtaining a static file corresponding to a first to-be-compiled code of the application to be installed, and obtaining the first file based on the interface file of the application to be installed may be implemented by a compiling device, where the compiling device may be a terminal capable of compiling and generating an installation package of the application program to be installed, and may be a mobile terminal. In a specific implementation, the terminal may be a terminal that is specially used by a developer when developing an installation package of an application program, for example, a desktop computer, a notebook computer, and the like.
The first code to be compiled may be a program code written by a programmer and used for implementing each function of the application to be installed, the static file may be an r.java file, and the specific r.java file may be generated by processing a resource file in the program code of the application to be installed using aapt (Android Packaging Tool) under an Android Software Development Kit (SDK). The resource file may specifically refer to files such as pictures and character strings in a program code of the application to be installed.
The interface file may be an aidl file, and the first file may be a corresponding java file; the first file can be generated by processing an aidl (Android Interface Definition Language) file in the program code of the application to be installed by using an aidl tool under the SDK of the Android, and the java file can be stored in a/gen directory; for example, if the aidl file is an a.aidl file, the java file generated correspondingly is an a.java file.
And 102, dividing a second code to be compiled into at least two code modules according to the function of the second code to be compiled in the first file.
Wherein the function of the second code to be compiled is pre-stored.
Specifically, the step 102 may be implemented by a compiling device, which divides the second code to be compiled into at least two code modules according to the function of the second code to be compiled in the first file. The second code to be compiled may be program code in a java file, for example in an a. The function of the second code to be compiled can be that different program codes in the java file correspond to different functions for realizing the application to be installed. In the divided code modules, the functions that can be realized by the application to be installed corresponding to each code module are different. The second code to be compiled is different from the first code to be compiled.
103, compiling the codes to be compiled in each code module respectively to obtain a first type of file.
Specifically, step 103 compiles the code to be compiled in each code module, and the first type of file obtained may be implemented by a compiling device. The first type of file may be a corresponding class file, which includes compiled program code that can be recognized by a machine (terminal).
And step 104, generating a second type of file of a preset type based on the static file, the first file and the first type of file.
Specifically, the step 104 of generating a second type of file of a preset type based on the static file, the first file and the first type of file may be implemented by a compiling device; the preset type of second type file may be obtained by packaging the obtained static file, the first file and the first type file and then performing certain processing, and specifically may be obtained by packaging the obtained r.java file, java file and class file and then performing certain processing. Dex file, where the preset type may be a file type that a machine (terminal) can recognize.
And 105, generating a second file based on the resource of the application to be installed, and obtaining an installation package of the application to be installed based on the second type file and the second file.
The second file is a file including resource information of the application to be installed.
Specifically, step 104 is to generate a second file based on the resource of the application to be installed, and obtain an installation package of the application to be installed based on the second type of file and the second file, which may be implemented by the compiling device; the second file may be a resources.ap _ file, and the second file may be obtained by processing a resource of the application to be installed using an aapt tool under the SDK of the Android. The resource of the application to be installed may be information such as a picture and a character string of the application to be installed.
Obtaining the installation package of the application to be installed based on the second type of file and the second file may be implemented in the following manner: packaging a second type of file (class.dex file) and a second file (resources.ap _ file) by using an Android package creation (Android package builder) tool under the SDK of the Android to generate an unsigned Android package (Android package, apk), and then signing the unsigned apk package by using a JAVA self-contained jarsiner command to obtain the Android package; the finally generated installation package for generating the application to be installed is an apk package which can be installed on a middle terminal (for example, a mobile phone), and the apk package at this time includes signature information.
The compiling method provided by the embodiment of the invention determines a static file corresponding to a first code to be compiled of an application to be installed, obtains a first file based on an interface file of the application to be installed, the first file is a text file for storing a program code of the application to be installed, divides a second code to be compiled according to the function of a second code to be compiled in the first file to obtain at least two code modules, compiles the code to be compiled in each code module respectively to obtain a first type of file, generates a second type of file of a preset type based on the static file, the first file and the first type of file, finally generates a second file based on the resource of the application to be installed, obtains an installation package of the application to be installed based on the second type of file and the second file, and compiles the code according to the code modules obtained after division when compiling the code, just needs to recompile the code in the code module where the changed code is located when some codes are changed without recompiling the need of recompiling the code, reduces the recompilation work amount of the recompilation of all codes, and reduces the recompilation work amount of the recompilation required code, thereby reducing the recompilation work amount and reducing the recompilation work of the recompilation.
Based on the foregoing embodiments, an embodiment of the present invention provides a compiling method, including the following steps:
step 201, the compiling device determines a static file corresponding to a first code to be compiled of the application to be installed, and obtains the first file based on an interface file of the application to be installed.
The first file is a text file for storing the program code of the application to be installed.
Step 202, the compiling device divides the second code to be compiled into at least two code modules according to the function of the second code to be compiled in the first file.
Wherein the function of the second code to be compiled is pre-stored.
Specifically, the number of the code modules obtained by division is determined by the functions of the application to be installed, and if the application to be installed has ten functions, the number of the obtained code modules is ten.
In the embodiment of the invention, a code version control tool such as a Switching Virtual Networking (SVN) technology is used for compiling and optimizing a program code of an application to be installed in an Android system based on an Apache ant tool, a plug-in mechanism is mainly introduced in the whole project, namely the code to be compiled is divided into code modules, the code modules can comprise a main code module and other code modules according to the relation with the application to be installed, and the other code modules can be independently compiled into jar packages as plug-ins when being compiled; then, the plug-in class is quoted by the main code module in a jar package mode, namely the other code modules can be plug-ins, so that the code structure can be clear; and finally, compiling according to the code modules obtained by dividing to realize the dynamic loading of the codes. For example, if the program code corresponding to the application to be installed (instant messaging application) can be divided into a main code module and three remaining code modules, which can be plug-in 1, plug-in 2 and plug-in 3, the structure shown in fig. 2 is obtained.
And 203, screening the code module where the code to be compiled which is irrelevant to the function corresponding to the application to be installed in the code modules obtained by dividing by the compiling device is located to obtain a redundant code module.
Specifically, the to-be-compiled code unrelated to the function corresponding to the to-be-installed application may refer to a program code that is not used when the function of the to-be-installed application is realized by the program code. For example, the application to be installed is an instant messaging application, and the corresponding functions of the instant messaging application before update include: payment, voice chat, video chat, file transfer and the like, wherein the corresponding updated functions of the instant messaging application comprise: voice chat, video chat, and file transfer; therefore, the corresponding updated functions of the instant messaging application do not include the payment function, and at this time, the codes to be compiled in the divided code modules need to be screened to obtain all the program codes corresponding to the payment function. At this time, the redundant code module is a code module to which all program codes corresponding to the payment function belong; and the codes to be compiled which are irrelevant to the functions corresponding to the applications to be installed are all program codes corresponding to the payment functions in the instant messaging application.
And step 204, compiling the codes to be compiled in other code modules except the redundant code module by the compiling device to obtain a first type of file.
Specifically, the compiling device firstly obtains other code modules except the redundant code module from the divided code modules, and then compiles the codes to be compiled in the other code modules by using an SVN tool based on an Apache tool to obtain the corresponding class file.
Step 205, the compiling device generates a second type file of a preset type based on the static file, the first file and the first type file.
And step 206, the compiling device generates a second file based on the resource of the application to be installed, and obtains an installation package of the application to be installed based on the second type file and the second file.
The second file is a file including resource information of the application to be installed.
It should be noted that, for the explanation of the same steps or concepts in the present embodiment as in the other embodiments, reference may be made to the description in the other embodiments.
The compiling method provided by the embodiment of the invention determines a static file corresponding to a first code to be compiled of an application to be installed, obtains a first file based on an interface file of the application to be installed, the first file is a text file for storing a program code of the application to be installed, divides a second code to be compiled according to functions of a second code to be compiled in the first file to obtain at least two code modules, compiles the code to be compiled in each code module respectively to obtain a first class of files, generates a second class of files of a preset type based on the static file, the first file and the first class of files, finally generates a second file based on resources of the application to be installed, obtains an installation package of the application to be installed based on the second class of files and the second file, and compiles the code according to the code modules obtained after division when compiling the code, so that the code is compiled according to the code modules obtained after division when some codes are changed, the recompilation of the codes is not required, and the recompilation efficiency of the existing code is reduced, and the recompilation of the existing code is reduced.
Based on the foregoing embodiments, an embodiment of the present invention provides a compiling method, including the following steps:
step 301, the compiling device determines a static file corresponding to a first code to be compiled of the application to be installed, and obtains the first file based on the interface file of the application to be installed.
The first file is a text file for storing the program code of the application to be installed.
Step 302, the compiling device divides the second code to be compiled into at least two code modules according to the function of the second code to be compiled in the first file.
And step 303, the compiling device screens code modules where codes to be compiled, which are irrelevant to the functions corresponding to the applications to be installed, are located in the code modules obtained by the division, so as to obtain redundant code modules.
And step 304, compiling the codes to be compiled in other code modules except the redundant code module by the compiling device to obtain a first type of file.
Step 305, the compiling device sets the maximum storage number of the second type file.
And the maximum storage number is the number of the methods which can be stored in the second type of files at most.
In particular, the set maximum storage number of classes may be determined by the capability of the number of methods that a file of the dex type may store, for example, the maximum storage number may be 65536, and the like. A method in a classes.
Step 306, the compiling device generates a second type file based on the maximum storage number, the static file, the first file and the first type file.
Specifically, after the maximum storage number of classes and dex files is set, the compiling device may first package the obtained r.java files, java files and class files, then compile and sort the files generated by packaging, and finally set the files subjected to the sorting processing after compiling as corresponding subclass files according to the set maximum storage number.
And 307, the compiling device generates a second file based on the resource of the application to be installed, and obtains an installation package of the application to be installed based on the second type file and the second file.
Based on the foregoing embodiment, when compiling a to-be-compiled code in a code module obtained by dividing in a process of generating an installation package of a certain to-be-installed application for the second time, the method may further include the following steps:
and 308, the compiling device acquires code modules except the redundant code module in the divided code modules to obtain the residual code modules.
Step 309, the compiling device compares the code to be compiled in the remaining code modules with the preset code.
Specifically, the preset code may be a code pre-stored in the remote svn server; the preset code may be obtained by uploading a code obtained by compiling each time when a corresponding to-be-installed application installation package is generated in the past to a remote svn server, and storing the received code by the svn server. That is, the code of any application that has been compiled at least once is stored in the remote svn server. When the codes to be compiled in the remaining code modules are compared with the codes stored in the remote svn server, the compiling device compares the codes to be compiled in the remaining code modules with the corresponding codes stored in the remote svn server, namely, the codes to be compiled in the remaining code modules and the codes stored in the remote svn server correspond to the same application program.
And step 310, the compiling device determines whether to recompile the code to be compiled in the rest code modules or not based on the comparison result.
Specifically, if the codes to be compiled in the remaining code modules are completely the same as the preset codes, the codes to be compiled in the remaining code modules do not need to be recompiled; if the codes to be compiled in the remaining code modules are different from the preset codes, the codes to be compiled in the remaining code modules need to be recompiled.
It should be noted that, for the explanation of the same steps or concepts in the present embodiment as in the other embodiments, reference may be made to the description in the other embodiments.
The compiling method provided by the embodiment of the invention determines a static file corresponding to a first code to be compiled of an application to be installed, obtains a first file based on an interface file of the application to be installed, the first file is a text file for storing a program code of the application to be installed, divides a second code to be compiled according to functions of a second code to be compiled in the first file to obtain at least two code modules, compiles the code to be compiled in each code module respectively to obtain a first class of files, generates a second class of files of a preset type based on the static file, the first file and the first class of files, finally generates a second file based on resources of the application to be installed, obtains an installation package of the application to be installed based on the second class of files and the second file, and compiles the code according to the code modules obtained after division when compiling the code, so that the code is compiled according to the code modules obtained after division when some codes are changed, the recompilation of the codes is not required, and the recompilation efficiency of the existing code is reduced, and the recompilation of the existing code is reduced. Meanwhile, whether a new dex file is added or not can be automatically determined according to the number of methods in the compiled file, so that manual operation of a user is avoided, and the method number limitation is automatically broken through.
An embodiment of the present invention provides a compiling method, including the steps of:
step 401, the compiling device determines a static file corresponding to a first code to be compiled of the application to be installed, and obtains the first file based on the interface file of the application to be installed.
The first file is a text file for storing the program code of the application to be installed.
Step 402, the compiling device divides the second code to be compiled according to the function of the second code to be compiled in the first file to obtain at least two code modules.
Wherein the function of the second code to be compiled is pre-stored.
And 403, screening the code module where the code to be compiled which is irrelevant to the function corresponding to the application to be installed in the code modules obtained by dividing by the compiling device is located to obtain a redundant code module.
Step 404, the compiling device compiles the codes to be compiled in other code modules except the redundant code module to obtain a first type of file.
Step 405, the compiling device sets the maximum storage number of the second type file.
And the maximum storage number is the number of the methods which can be stored in the second type of files at most.
And step 406, the compiling device packages the static file, the first file and the first type of file, and then compiles and orders the static file, the first file and the first type of file to obtain a third file.
Specifically, the packed static file, the first file and the first type of file can be compiled by using a dx tool under Android sdk, and the compiled files are sequenced to obtain a third file.
Step 407, the compiling device sets the file which must be loaded when the application to be installed in the third file is started as the first subclass file of the preset type.
Specifically, the file that must be loaded when the application to be installed in the third file is started refers to a file that will be loaded immediately when the application to be installed in the third file is started; for example, it may be a file that is loaded immediately when the instant messaging application is started. Wherein the preset type is a type corresponding to the dex file.
Setting a file which is loaded when the application to be installed in the third file is started as a first subclass file of a preset type, wherein the first subclass file can be obtained by storing a method included in the file which is loaded when the application to be installed in the third file is started in the first subclass file of the preset type. The first sub-class file may be a dex file.
And step 408, the compiling device acquires other files in the third file except the file which must be loaded when the application to be installed is started, and a fourth file is obtained.
Specifically, after acquiring the other files in the third file except the file that must be loaded when the application to be installed is started in step 408 and acquiring the fourth file, step 409 or steps 410 to 412 may be selectively executed;
step 409, if the number of methods in the fourth file is less than or equal to the preset value, the compiling device sets the fourth file as a second subclass file of the preset type.
The second class files comprise a first subclass file and a second subclass file.
Specifically, the number of methods in the fourth file may refer to the total number of methods corresponding to the codes in the fourth file. The fourth file is set as a second subclass file of the preset type, and the method included in the fourth file may be stored in the second subclass file of the preset type, that is, the second subclass file is obtained. Wherein the second sub-class file may be another dex file. The first and second sub-class files are of the same file type, but the first and second sub-class files are two different files.
Step 410, if the number of methods in the fourth file is greater than the preset value, the compiling device sets the file with the number of methods in the fourth file equal to the preset value as a second sub-class file.
Specifically, if the number of methods in the fourth file is greater than the preset value, it is indicated that the storage space of one dex file cannot store the number of methods in the fourth file, and at this time, methods with the number of methods equal to 65536 in the fourth file may be obtained first, and these methods are stored in the second sub-class file, so as to obtain the second sub-class file.
In step 411, the compiling apparatus calculates an absolute value of a difference between the method number in the fourth file and a preset value.
Step 412, the compiling device adds at least one class file of a preset type according to the relationship between the absolute value of the difference and the preset value, and moves the method with the method number larger than the preset value in the fourth file into the added class file of at least one preset type and sets the added class file as a second subclass file.
Specifically, if the absolute value of the difference between the number of methods in the fourth file and the preset value is less than or equal to the preset value (65536), a class file of a preset type may be newly added, and the corresponding method is stored in the newly added class file of the preset type, so as to obtain a second sub-class file; if the absolute value of the difference between the method number in the fourth file and the preset numerical value is greater than the preset numerical value (65536), the number of class files of the preset type to be added can be judged according to the multiple relation between the absolute value of the difference and the 65536, and the corresponding method is stored in the corresponding class file of the added preset type, so that the second sub-class file is obtained. And under the condition that the number of the methods in the fourth file is larger than a preset value, the second sub-class file comprises at least one class file.
Wherein step 413 needs to be executed after both step 409 and step 412.
Step 413, the compiling device generates a second file based on the resource of the application to be installed, and obtains an installation package of the application to be installed based on the first subclass file, the second subclass file and the second file.
Based on the foregoing embodiment, the method further comprises the steps of:
and 414, the compiling device acquires the code modules except the redundant code module in the divided code modules to obtain the residual code modules.
Step 415, the compiling device compares the codes to be compiled in the remaining code modules with the preset codes.
And step 416, if the code to be compiled in the remaining code modules is changed compared with the preset code, the compiling device acquires the code to be updated.
And the code to be updated is the code to be compiled in the residual code module, which is changed compared with the preset code.
Step 417, the compiling device recompiles the code to be updated, and updates the corresponding code in the first type file by using the code obtained after recompilation.
Specifically, codes to be compiled in java files of applications to be installed can be divided into a code module 1, a code module 2 and the like according to a flow chart shown in fig. 3, then svn is used for comparing the codes to be compiled in the code module with preset codes, if one of the results of Status _ Modified, status _ Added and Status _ unvensized is positive, the codes to be compiled are recompiled, and then the processing is performed according to the method for setting the dex file in the invention, so that a corresponding dex file is obtained.
Judging whether the code to be compiled in the residual code module is changed compared with the preset code can be realized by an svn tool; svn supports various variable attributes, and the scheme only uses four of the attributes, namely Status _ Modified: indicating whether it is modified; status _ Added: indicating whether a file is added; status _ MISSING: indicating whether a file is deleted or not; status _ uncovered: indicating whether a file is added but not added to the svn path. When Status _ Modified, status _ Added or Status _ under detection is used, as long as one of the results is satisfied, it indicates that the code to be compiled in the remaining code module is changed compared with the preset code, and the code to be compiled in the remaining code module needs to be recompiled.
It should be noted that, for the explanation of the same steps or concepts in the present embodiment as in the other embodiments, reference may be made to the description in the other embodiments.
The compiling method provided by the embodiment of the invention determines a static file corresponding to a first code to be compiled of an application to be installed, obtains a first file based on an interface file of the application to be installed, the first file is a text file for storing a program code of the application to be installed, divides a second code to be compiled according to the function of a second code to be compiled in the first file to obtain at least two code modules, compiles the code to be compiled in each code module respectively to obtain a first type of file, generates a second type of file of a preset type based on the static file, the first file and the first type of file, finally generates a second file based on the resource of the application to be installed, obtains an installation package of the application to be installed based on the second type of file and the second file, and compiles the code according to the code modules obtained after division when compiling the code, just needs to recompile the code in the code module where the changed code is located when some codes are changed without recompiling the need of recompiling the code, reduces the recompilation work amount of the recompilation of all codes, and reduces the recompilation work amount of the recompilation required code, thereby reducing the recompilation work amount and reducing the recompilation work of the recompilation. Meanwhile, whether a new dex file is added or not can be automatically determined according to the number of methods in the compiled file, so that manual operation of a user is avoided, and the method number limitation is automatically broken through.
Based on the foregoing embodiments, as shown in fig. 4, a complete compiling flowchart corresponding to the compiling method provided by the embodiment of the invention is shown. The method comprises the steps that AIdl files are converted into Java interface files which can be processed by a compiler through an AIdl tool; the resource file is processed into a final resources.arsc through aapt, and an R.java file is generated so that the source code can conveniently access the resources; the Java compiler uniformly compiles R.java, java source codes and the generated Java interface file into a class file; meanwhile, comparing by using an SVN tool according to the divided functional modules, and if the obtained result is Status _ Modified, status _ Added, status _ Missing or Status _ underversion (newly Added but not Added to the SVN path), compiling the modules by using a Java compiler; class files are not in a format recognizable by the Android system and thus are also converted into recognizable dex files using dex tools. All needed files such as third-party libraries and other files can be added; when packing is carried out by using a dex tool, a main module is required to be packed to a main dex firstly, then the number of methods of other classes in a directory is traversed, and if the number of methods is larger than 65536, a dex is required to be added newly; and then, the generated dex, the resource package and other resources generate an initial apk file package through the apkbuilder. At this time, the generated apk file package is not signed and optimized; the signature may be by a Jarsigner tool, or other similar tool. If in the Debug mode, the keystore used for signing is the default of the system, otherwise, a developer needs to provide a private key thereof to complete the signing process.
Based on the foregoing embodiments, an embodiment of the present invention provides a compiling apparatus 5, which can be applied to the compiling method provided in the foregoing illustrated embodiment, and as shown in fig. 5, the apparatus includes: a first acquisition unit 51, a processing unit 52, a second acquisition unit 53 and a generation unit 54, wherein:
the first obtaining unit 51 is configured to determine a static file corresponding to a first to-be-compiled code of an application to be installed, and obtain a first file based on an interface file of the application to be installed.
The first file is a text file for storing the program code of the application to be installed.
The processing unit 52 is configured to divide the second code to be compiled into at least two code modules according to the function of the second code to be compiled in the first file.
Wherein the function of the second code to be compiled is pre-stored.
The second obtaining unit 53 is configured to compile the code to be compiled in each code module, so as to obtain a first type of file.
The generating unit 54 is configured to generate a second type file of a preset type based on the static file, the first file, and the first type file.
The first obtaining unit 51 is further configured to generate a second file based on the resource of the application to be installed, and obtain an installation package of the application to be installed based on the second type file and the second file.
The second file is a file including resource information of the application to be installed.
The compiling device provided by the embodiment of the invention determines a static file corresponding to a first code to be compiled of an application to be installed, obtains a first file based on an interface file of the application to be installed, the first file is a text file for storing a program code of the application to be installed, divides a second code to be compiled according to the function of a second code to be compiled in the first file to obtain at least two code modules, compiles the code to be compiled in each code module to obtain a first class of file, generates a second class of file of a preset type based on the static file, the first file and the first class of file, finally generates a second file based on a resource of the application to be installed, obtains an installation package of the application to be installed based on the second class of file and the second file, and compiles the code according to the code modules obtained after division when compiling the code, so that the code is compiled according to the code modules obtained after division when some codes are changed, the recompilation of the codes is not required, and the recompilation efficiency of the existing code is reduced, and the recompilation of the existing code is reduced.
Specifically, the second acquiring unit includes: a screening module and a compiling module, wherein:
and the screening module is used for screening the code module where the to-be-compiled code which is irrelevant to the function corresponding to the to-be-installed application is located in the divided code modules to obtain the redundant code module.
And the compiling module is used for compiling the codes to be compiled in other code modules except the redundant code module to obtain a first type of file.
Specifically, the generation unit includes: a setting module and a generating module, wherein:
and the setting module is used for setting the maximum storage number of the second type of files.
And the maximum storage number is the number of the methods which can be stored in the second type of files at most.
And the generation module is used for generating a second type of file based on the maximum storage number, the static files, the first file and the first type of file.
Further, the generation module is specifically configured to perform the following steps:
and after the static file, the first file and the first class file are packaged, compiling and sequencing are carried out to obtain a third file.
And setting files which are loaded when the application to be installed in the third file is started as first subclass files of a preset type.
And acquiring other files in the third file except the file which must be loaded when the application to be installed is started, and acquiring a fourth file.
And if the number of the methods in the fourth file is less than or equal to the preset value, setting the fourth file as a second subclass file of the preset type.
The second class files comprise a first subclass file and a second subclass file.
Further, the generating module is specifically configured to perform the following steps:
and if the number of methods in the fourth file is larger than the preset value, setting the file with the number of methods in the fourth file equal to the preset value as a second sub-class file.
And calculating the absolute value of the difference value between the method number and the preset value in the fourth file.
And newly adding at least one class file of a preset type according to the relation between the absolute value of the difference value and the preset value, moving the method of which the method number in the fourth file is greater than the preset value into the newly added class file of at least one preset type, and setting the method as a second subclass file.
Further, the compiling apparatus further includes: a comparison unit, wherein:
the first obtaining unit 51 is further configured to obtain code modules, except for the redundant code module, from the divided code modules, to obtain remaining code modules.
And the comparison unit is used for comparing the codes to be compiled in the residual code modules with preset codes.
The processing unit 52 is further configured to determine whether to recompile the code to be compiled in the remaining code modules based on the comparison result.
Specifically, the processing unit includes: an acquisition module and an update module, wherein:
and the obtaining module is used for obtaining the code to be updated if the code to be compiled in the rest code modules is changed compared with the preset code.
And the code to be updated is the code to be compiled in the residual code module, which is changed compared with the preset code.
And the updating module is used for recompiling the code to be updated and updating the corresponding code in the first type of file by using the recompiled code.
It should be noted that, in the present embodiment, reference may be made to the interaction process in the compiling method provided in the foregoing illustrated embodiment, and details are not described here again.
The compiling device provided by the embodiment of the invention determines a static file corresponding to a first code to be compiled of an application to be installed, obtains a first file based on an interface file of the application to be installed, the first file is a text file for storing a program code of the application to be installed, divides a second code to be compiled according to the function of a second code to be compiled in the first file to obtain at least two code modules, compiles the code to be compiled in each code module to obtain a first class of file, generates a second class of file of a preset type based on the static file, the first file and the first class of file, finally generates a second file based on a resource of the application to be installed, obtains an installation package of the application to be installed based on the second class of file and the second file, and compiles the code according to the code modules obtained after division when compiling the code, so that the code is compiled according to the code modules obtained after division when some codes are changed, the recompilation of the codes is not required, and the recompilation efficiency of the existing code is reduced, and the recompilation of the existing code is reduced. Meanwhile, whether a new dex file is added or not can be automatically determined according to the number of methods in the compiled file, so that manual operation of a user is avoided, and the method number limitation is automatically broken through.
Based on the foregoing embodiment, an embodiment of the present invention provides a compiling apparatus 6, which may be applied to the compiling method provided in the foregoing illustrated embodiment, and as shown in fig. 6, the compiling apparatus may include: a memory 61 and a processor 62, wherein:
and the memory 61 is used for storing the static files corresponding to the applications to be installed.
The processor 62 is configured to obtain a static file corresponding to a first code to be compiled of an application to be installed from the memory 61, and obtain a first file based on an interface file of the application to be installed; the first file is a text file for storing a program code of an application to be installed; dividing a second code to be compiled according to the function of the second code to be compiled in the first file to obtain at least two code modules; compiling the codes to be compiled in each code module respectively to obtain a first type of file; generating a second type file of a preset type based on the static file, the first file and the first type file; generating a second file based on the resource of the application to be installed, and obtaining an installation package of the application to be installed based on the second type file and the second file; the second file is a file including resource information of the application to be installed.
It should be noted that, in the present embodiment, reference may be made to the interaction process in the compiling method provided in the foregoing illustrated embodiment for the interaction process between the memory and the processor, and details are not described here again.
Based on the foregoing embodiments, an embodiment of the present invention provides a computer-readable storage medium, in which one or more computer programs are stored, and the computer programs, when executed by a processor, implement the steps of the compiling method shown in the foregoing embodiments.
In practical applications, the first obtaining Unit 51, the Processing Unit 52, the second obtaining Unit 53, the generating Unit 54, the screening module, the compiling module, the setting module, the generating module, the comparing Unit, the obtaining module and the updating module may be implemented by a Central Processing Unit (CPU), a microprocessor Unit (MPU), a Digital Signal Processor (DSP) or a Field Programmable Gate Array (FPGA) located in the wireless data transmitting device.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of a hardware embodiment, a software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, optical storage, and the like) having computer-usable program code embodied therein.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
The above description is only a preferred embodiment of the present invention, and is not intended to limit the scope of the present invention.

Claims (13)

1. A method of compiling, the method comprising:
acquiring a static file corresponding to a first code to be compiled of an application to be installed, and acquiring a first file based on an interface file of the application to be installed; the first file is a text file for storing the program code of the application to be installed;
dividing a second code to be compiled according to the function of the second code to be compiled in the first file to obtain at least two code modules; wherein the function of the second code to be compiled is pre-stored;
screening a code module where a code to be compiled which is irrelevant to the function corresponding to the application to be installed in the two code modules obtained by dividing is located to obtain a redundant code module;
compiling codes to be compiled in other code modules except the redundant code module to obtain a first type of file;
generating a second type of file of a preset type based on the static file, the first file and the first type of file;
generating a second file based on the resource of the application to be installed, and obtaining an installation package of the application to be installed based on the second type file and the second file; and the second file is a file comprising the resource information of the application to be installed.
2. The method according to claim 1, wherein the generating a second type of file of a preset type based on the static file, the first file and the first type of file comprises:
setting the maximum storage number of the second type of files; wherein the maximum storage number is the number of the methods which can be stored in the second type of files at most;
and generating the second type of file based on the maximum storage number, the static file, the first file and the first type of file.
3. The method of claim 2, wherein generating the second class of files based on the maximum storage number, the static files, the first files, and the first class of files comprises:
after the static file, the first file and the first type of file are packaged, compiling and sequencing are carried out to obtain a third file;
setting files which must be loaded when the application to be installed in the third file is started as first subclass files of a preset type;
acquiring other files in the third file except the file which must be loaded when the application to be installed is started to obtain a fourth file;
if the number of methods in the fourth file is less than or equal to a preset value, setting the fourth file as a second subclass file of a preset type; wherein the second class of files includes the first subclass of files and the second subclass of files.
4. The method of claim 3, wherein generating the second class of files based on the maximum storage number, the static files, the first files, and the first class of files further comprises:
if the number of the methods in the fourth file is larger than the preset value, setting the file with the number of the methods in the fourth file equal to the preset value as the second sub-class file;
calculating the absolute value of the difference between the method number in the fourth file and the preset numerical value;
and newly adding at least one class file of a preset type according to the relation between the absolute value of the difference value and the preset value, moving the method of which the number of methods in the fourth file is greater than the preset value into the newly added class file of the at least one preset type, and setting the method as the second sub-class file.
5. The method of claim 1, further comprising:
acquiring code modules except the redundant code module in the two divided code modules to obtain residual code modules;
comparing the codes to be compiled in the residual code modules with preset codes;
and determining whether to recompile the codes to be compiled in the residual code modules or not based on the comparison result.
6. The method of claim 5, wherein determining whether to recompile the code to be compiled in the remaining code modules based on the comparison comprises:
if the codes to be compiled in the residual code modules are changed compared with the preset codes, obtaining codes to be updated; the code to be updated is a code to be compiled in the residual code module, which is changed compared with the preset code;
and recompiling the code to be updated, and updating the corresponding code in the first type of file by using the recompiled code.
7. A compiling apparatus characterized in that the apparatus comprises: a first acquisition unit, a processing unit, a second acquisition unit and a generation unit, wherein:
the first obtaining unit is used for obtaining a static file corresponding to a first to-be-compiled code of an application to be installed and obtaining a first file based on an interface file of the application to be installed; the first file is a text file for storing the program code of the application to be installed;
the processing unit is used for dividing a second code to be compiled into at least two code modules according to the function of the second code to be compiled in the first file; wherein the function of the second code to be compiled is pre-stored;
the second acquisition unit includes: a screening module and a compiling module, wherein:
the screening module is used for screening a code module where a code to be compiled which is irrelevant to the function corresponding to the application to be installed in the two divided code modules is located to obtain a redundant code module;
the compiling module is used for compiling codes to be compiled in other code modules except the redundant code module to obtain a first type of file;
the generating unit is used for generating a second type of file of a preset type based on the static file, the first file and the first type of file;
the first obtaining unit is further configured to generate a second file based on the resource of the application to be installed, and obtain an installation package of the application to be installed based on the second type file and the second file; and the second file is a file comprising the resource information of the application to be installed.
8. The apparatus of claim 7, wherein the generating unit comprises: a setting module and a generating module, wherein:
the setting module is used for setting the maximum storage number of the second type of files; wherein the maximum storage number is the number of the methods which can be stored in the second type of files at most;
the generating module is configured to generate the second class of files based on the maximum storage number, the static files, the first files, and the first class of files.
9. The apparatus of claim 8, wherein the generation module is specifically configured to:
after the static file, the first file and the first type of file are packaged, compiling and sequencing are carried out to obtain a third file;
setting files which must be loaded when the application to be installed in the third file is started as first subclass files of a preset type;
acquiring other files in the third file except the file which must be loaded when the application to be installed is started to obtain a fourth file;
if the number of methods in the fourth file is less than or equal to a preset value, setting the fourth file as a second subclass file of a preset type; wherein the second class of files includes the first subclass of files and the second subclass of files.
10. The apparatus of claim 9, wherein the generating module is further specifically configured to:
if the number of methods in the fourth file is larger than the preset value, setting the file with the number of methods in the fourth file equal to the preset value as the second sub-class file;
calculating the absolute value of the difference between the method number in the fourth file and the preset numerical value;
and newly adding at least one class file of a preset type according to the relation between the absolute value of the difference value and the preset value, moving the method of which the number of methods in the fourth file is greater than the preset value into the newly added class file of the at least one preset type, and setting the method as the second sub-class file.
11. The apparatus of claim 7, further comprising: a comparison unit, wherein:
the first obtaining unit is further configured to obtain a code module, except the redundant code module, of the two divided code modules to obtain a remaining code module;
the comparison unit is used for comparing the codes to be compiled in the residual code modules with preset codes;
and the processing unit is further used for determining whether to recompile the codes to be compiled in the remaining code modules or not based on the comparison result.
12. A compiling device characterized in that the device comprises: a memory and a processor, wherein:
the memory is used for storing a static file corresponding to the application to be installed;
the processor is used for acquiring a static file corresponding to a first to-be-compiled code of an application to be installed from the memory and obtaining a first file based on an interface file of the application to be installed; the first file is a text file for storing the program code of the application to be installed; dividing a second code to be compiled according to the function of the second code to be compiled in the first file to obtain at least two code modules; screening a code module where a code to be compiled which is irrelevant to the function corresponding to the application to be installed in the two code modules obtained by dividing is located to obtain a redundant code module; compiling codes to be compiled in other code modules except the redundant code module to obtain a first type of file; generating a second type file of a preset type based on the static file, the first file and the first type file; generating a second file based on the resource of the application to be installed, and obtaining an installation package of the application to be installed based on the second type file and the second file; and the second file is a file comprising the resource information of the application to be installed.
13. A computer-readable storage medium, in which one or more computer programs are stored which, when executed by a processor, implement the steps of the method of claims 1 to 6.
CN201710401413.4A 2017-05-31 2017-05-31 Compiling method, device, equipment and computer readable storage medium Active CN107168749B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710401413.4A CN107168749B (en) 2017-05-31 2017-05-31 Compiling method, device, equipment and computer readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710401413.4A CN107168749B (en) 2017-05-31 2017-05-31 Compiling method, device, equipment and computer readable storage medium

Publications (2)

Publication Number Publication Date
CN107168749A CN107168749A (en) 2017-09-15
CN107168749B true CN107168749B (en) 2022-11-29

Family

ID=59821261

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710401413.4A Active CN107168749B (en) 2017-05-31 2017-05-31 Compiling method, device, equipment and computer readable storage medium

Country Status (1)

Country Link
CN (1) CN107168749B (en)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108279904A (en) * 2017-12-26 2018-07-13 努比亚技术有限公司 Code compiling method and terminal
CN110119274A (en) 2018-02-05 2019-08-13 北京智明星通科技股份有限公司 A kind of method, apparatus and electric terminal, computer readable storage medium of data compilation
CN108563442A (en) * 2018-02-28 2018-09-21 北京智行鸿远汽车有限公司 Code compiling method and device
CN112948026A (en) * 2019-11-26 2021-06-11 Oppo广东移动通信有限公司 Hotspot code processing method and device, server, electronic equipment and storage medium
CN113031953A (en) * 2019-12-09 2021-06-25 Oppo广东移动通信有限公司 Application program pre-compiling method and device, electronic equipment and server
CN111309334B (en) * 2020-02-18 2023-09-01 北京奇艺世纪科技有限公司 Method, device, computer equipment and storage medium for generating software installation package
CN111309335B (en) * 2020-02-28 2023-08-15 腾讯音乐娱乐科技(深圳)有限公司 Compiling method and device of plug-in application and computer readable storage medium
CN111414308B (en) * 2020-03-26 2023-08-22 抖音视界有限公司 Application package processing method and application running method and device
CN112162851B (en) * 2020-09-14 2022-12-13 Oppo(重庆)智能科技有限公司 dex pre-compiling method, device, computer equipment and storage medium
CN112947929B (en) * 2021-01-28 2023-11-24 抖音视界有限公司 Method, device, computer equipment and medium for constructing application program installation package
CN112882720B (en) * 2021-03-15 2024-03-22 抖音视界有限公司 Compiling method and device
CN113407165B (en) * 2021-06-29 2023-04-07 抖音视界有限公司 SDK generation and self-upgrade method, device, readable medium and equipment
CN116701234B (en) * 2023-08-04 2024-02-02 腾讯科技(深圳)有限公司 Application program debugging method and device, computer equipment and storage medium

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102193812B (en) * 2011-06-03 2014-03-26 深圳市茁壮网络股份有限公司 Code compiling method, host computer and system
US8949802B1 (en) * 2011-10-18 2015-02-03 Google Inc. Sharding program compilation for large-scale static analysis
CN106293849B (en) * 2016-08-18 2020-01-31 华为技术有限公司 application updating method and terminal

Also Published As

Publication number Publication date
CN107168749A (en) 2017-09-15

Similar Documents

Publication Publication Date Title
CN107168749B (en) Compiling method, device, equipment and computer readable storage medium
CN110083382B (en) Cross-platform content management and distribution system
KR102010508B1 (en) System and method for updating source code files
US9471288B2 (en) Compile based obfuscation
WO2017185606A1 (en) Overlay mechanism-based apk development method and system
CN110059456B (en) Code protection method, code protection device, storage medium and electronic equipment
JP2015531502A (en) Generate native code from intermediate language code for applications
US20130081002A1 (en) Selective data flow analysis of bounded regions of computer software applications
CN112882718B (en) Compiling processing method, device, equipment and storage medium
US20140040858A1 (en) Method and apparatus for generating resource efficient computer program code
US8127282B2 (en) Recompilation of a class with a java static variable
CN110058861B (en) Source code processing method and device, storage medium and electronic equipment
CN107508846B (en) Updating method and system of application client and terminal equipment
CN110333872A (en) A kind of processing method of application, device, equipment and medium
CN113342323A (en) Method and device for software online development
CN108304164B (en) Business logic development method and development system
CN115098105B (en) Container cloud performance test evaluation implementation method, device, equipment and medium
CN115576560A (en) Hot reloading method, device, equipment and medium for dynamic loader
CN113448585B (en) Compiling method and device of thread pool, electronic equipment and storage medium
CN106547519B (en) Information processing method and system
CN113778451A (en) File loading method and device, computer system and computer readable storage medium
CN105117420A (en) Method and apparatus for updating word stock of input method
US20230418576A1 (en) Protection, obfuscation, and optimization of binary executables using recompilation
US20240338185A1 (en) Automatic runtime execution hardening through static system application programming interface (api) data mapping
CN117785245A (en) Source code source closing method and function updating method for angular project

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