CN106126290A - Application program optimization method, Apparatus and system - Google Patents
Application program optimization method, Apparatus and system Download PDFInfo
- Publication number
- CN106126290A CN106126290A CN201610481961.8A CN201610481961A CN106126290A CN 106126290 A CN106126290 A CN 106126290A CN 201610481961 A CN201610481961 A CN 201610481961A CN 106126290 A CN106126290 A CN 106126290A
- Authority
- CN
- China
- Prior art keywords
- file
- application program
- executable file
- dynamic base
- signature
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
The embodiment of the present invention provides a kind of application program optimization method, Apparatus and system, and the method includes: obtain the to be optimized application program installation kit being applicable to mobile terminal, obtains the executable file installed for application program from described application program installation kit;The dynamic base being used for carrying custom code instrument that will previously generate, is injected in described executable file;Described executable file embeds and newly describes file for replace former description file;The executable file comprising described dynamic base and described new description file is signed again;Again the executable file after signature is packed, the application program installation kit after being optimized;Application program installation kit after described optimization is for installing the application program after optimizing on mobile terminals.Can pre-install in the case of APP need not, the simple and convenient realization optimization to application program, it is not necessary to complicated analyzing and processing, save time, laborsaving, efficient.
Description
Technical field
The present invention relates to mobile Internet applied technical field, espespecially a kind of application program optimization method, Apparatus and system.
Background technology
Along with the development of development of Mobile Internet technology, drive on line to (Online To Offline, O2O) market under line
Development, thus caused the exploitation upsurge of mobile applications (APP).Many developers hanker after APP reverse-engineering, he
Wish to go to optimize the system of mobile terminal or application, such as, Internet operating system (iOS) or Android from reverse angle
(Android) operating system.
In prior art, the method for optimization application has plug-in application (Logos Tweak is called for short tweak) method.Its
Principle, can be with hook as it is shown in figure 1, the method needs to install a tweak plug-in unit in the operating system of terminal unit
(hook) function of system add custom code, reaches the purpose of optimization system or application program.Tweak mode need with
Based on one allows third party developer operationally to carry out the framework that extended operation system replaced by code, such as:
MobieSubstrate framework.
The method needs to have configured the development environment of Logos Tweak, then writes the code of tweak, code main
Content is to be hooked certain functional based method of APP by hook, and is added to custom code, when APP goes to this side
During method, just can be according to the code added to transport the operation of control program.In order to obtain the function entrance of other APP, need profit
Derive instrument (such as class-dump) with header file and derive the header file (.h file) of APP, by analyzing and repeatedly attempting, really
Surely want the function of hook, the optimization to APP could be realized.
This mode needs to pre-install Logos Tweak on an operating system, and this is the equal of one does not has icon
APP, just can write other APP of optimization, it is achieved get up cumbersome after installation;And this mode needs APP to be optimized
Carry out loaded down with trivial details analysis, owing to current Mobile solution is more complicated, comprise substantial amounts of header file and analyze from these header files
The function that going out needs is a time-consuming process.
As can be seen here, for realizing the mode that the APP installed in operating system is optimized in prior art, its operation
Complexity, needs pre-installation analysis operation during the APP optimized, and optimization complicated, wastes time and energy.
Summary of the invention
The embodiment of the present invention provides a kind of application program optimization method, Apparatus and system, deposits in order to solving in prior art
Application program optimize time operation complexity, analyze complicated, the problem wasted time and energy.
On the one hand, embodiments provide a kind of application program optimization method, including:
Application program optimization method, it is characterised in that including:
Obtain the to be optimized application program installation kit being applicable to mobile terminal, obtain from described application program installation kit
The executable file installed for application program;
The dynamic base being used for carrying custom code instrument that will previously generate, is injected in described executable file;
Described executable file embeds and newly describes file for replace former description file;
The executable file comprising described dynamic base and described new description file is signed again;
Again the executable file after signature is packed, the application program installation kit after being optimized;Described optimization
After application program installation kit on mobile terminals install optimize after application program.
In some optional embodiments, the described dynamic base being used for carrying custom code instrument that will previously generate,
It is injected in described executable file, specifically includes:
According to the store path of dynamic base, obtain the dynamic base for carrying custom code instrument previously generated;
According to the store path of executable file, use the loading dynamic base order of loading classes in command library, by obtain
Described dynamic base is injected in the executable file under the store path of executable file.
In some optional embodiments, described executable file embeds the new description for replacing former description file
File, specifically includes:
Create include certificate newly developed, mountable device information, application program identification APPID file is newly described;
With the former description file under the new store path describing file replacement executable file created.
In some optional embodiments, the executable file comprising described dynamic base and described new description file is carried out
Again sign, specifically include:
Read application information file, obtain unique identification string bundleID and the group of certificate newly developed of application program
Mark taemID;
Construct one with application unique mark application-identifier and development teams mark
Com.apple.developer.team-identifier is key, the dictionary being value with bundleID and teamID;
By in the dictionary write code signature file of structure;
Use signature order that code signature file is signed again, complete the signature again to executable file.
In some optional embodiments, use Integrated Development Tool Xcode establishment described dynamically on a personal computer
Storehouse.
The embodiment of the present invention also provides for a kind of application program and optimizes device, including:
Acquisition module, for obtaining the to be optimized application program installation kit being applicable to mobile terminal, from described application journey
Sequence installation kit obtains the executable file installed for application program;
Injection module, for the dynamic base being used for carrying custom code instrument that will previously generate, be injected into described can
Perform in file;
Replacement module, newly describes file for embedding in described executable file for replace former description file;
Signature blocks, for again signing the executable file comprising described dynamic base and described new description file
Name;
Packetization module, for the executable file after signature again is packed, the application program peace after being optimized
Dress bag;Application program installation kit after described optimization is for installing the application program after optimizing on mobile terminals.
In some optional embodiments, described injection module, specifically for:
According to the store path of dynamic base, obtain the dynamic base for carrying custom code instrument previously generated;
According to the store path of executable file, use the loading dynamic base order of loading classes in command library, by obtain
Described dynamic base is injected in the executable file under the store path of executable file.
In some optional embodiments, described replacement module, specifically for:
Create include certificate newly developed, mountable device information, application program identification APPID file is newly described;
With the former description file under the new store path describing file replacement executable file created.
In some optional embodiments, described signature blocks, specifically for:
Read application information file, obtain unique identification string bundleID and the group of certificate newly developed of application program
Mark taemID;
Construct one with application unique mark application-identifier and development teams mark
Com.apple.developer.team-identifier is key, the dictionary being value with bundleID and teamID;
By in the dictionary write code signature file of structure;
Use signature order that code signature file is signed again, complete the signature again to executable file.
The embodiment of the present invention also provides for a kind of application program and optimizes system, including: mobile terminal and personal computer;
Described personal computer includes that above-mentioned application program optimizes device;
Described mobile terminal, the application program installation kit after installing described optimization.
Technique scheme has the advantages that adds dynamically the executable file in application program installation kit
Storehouse, newly embedded description file of laying equal stress on, packing of again signing, obtain new application program installation kit, the method need not at end
Install on end device operating system and optimize in the case of APP, it is achieved to the optimization of APP to be mounted, it is simple that it realizes process
Convenient, it is not necessary to application program is carried out complicated analysis operation, time saving and energy saving, highly versatile.
Accompanying drawing explanation
In order to be illustrated more clearly that the embodiment of the present invention or technical scheme of the prior art, below will be to embodiment or existing
In having technology to describe, the required accompanying drawing used is briefly described, it should be apparent that, the accompanying drawing in describing below is only this
Some embodiments of invention, for those of ordinary skill in the art, on the premise of not paying creative work, it is also possible to
Other accompanying drawing is obtained according to these accompanying drawings.
Fig. 1 is the principle schematic of application program optimization method in prior art;
Fig. 2 is the flow chart of application program optimization method in the embodiment of the present invention one;
Fig. 3 is the flow chart of application program optimization method in the embodiment of the present invention two;
Fig. 4 is the structural representation that in the embodiment of the present invention, application program optimizes system;
Fig. 5 is the structural representation that in the embodiment of the present invention, application program optimizes device.
Detailed description of the invention
Below in conjunction with the accompanying drawing in the embodiment of the present invention, the technical scheme in the embodiment of the present invention is carried out clear, complete
Describe, it is clear that described embodiment is only a part of embodiment of the present invention rather than whole embodiments wholely.Based on
Embodiment in the present invention, it is every other that those of ordinary skill in the art are obtained under not making creative work premise
Embodiment, broadly falls into the scope of protection of the invention.
During in order to solve that application program optimizes present in prior art, need pre-installation, analyze complicated, waste time and energy
Problem, the embodiment of the present invention provides a kind of application program optimization method, it is possible to realize application in the case of not pre-installing APP
The optimization of program, and realize simply, conveniently, highly versatile.The inventive method mainly includes generating dynamic base Dylib, dynamic base
It is injected in APP, APP embeds description file (Moibleprovision), APP is signed again and is packaged into new peace
Several process steps such as dress wraps, such as Fructus Mali pumilae application file (iPhoneApplication, IPA).Below by concrete
Embodiment is described in detail.
Embodiment one
The application program optimization method that the embodiment of the present invention one provides, its flow process is as in figure 2 it is shown, comprise the steps:
Step S101: obtain the to be optimized application program installation kit being applicable to mobile terminal.
Obtain application program installation kit to be optimized, the application program installation kit obtained is changed or decompressed, such as
IPA bag, is a file with ipa as suffix name, actually one compressed package (zip bag), can convert thereof into zip and solve
Pressure, in order to the executable file wherein comprised, changing or decompress failure procedures will be terminated.
Step S102: obtain the executable file installed for application program from application program installation kit.
File after application program installation kit decompresses obtains out executable file.
Step S103: the dynamic base being used for carrying custom code instrument that will previously generate, is injected into executable file
In.
Dynamic base can previously generate on a personal computer, and dynamic base (Dylib) is used to carry custom code
Instrument, needs to encode in the Integrated Development Tool (Xcode) of Mac OS X platform and generate.Xcode is used to create dynamic base
Dylib, clicks on file new projects (File-new-Project) order and just can create the program file of Dylib type.Generate
After Dylib, need to be injected in the executable file of application program Dylib so that can in application program running
Call Dylib.
When injecting dynamic base in executable file, from the store path of dynamic base, obtain the dynamic base previously generated,
It is injected under executable file store path in the executable file of storage, it is possible to use the loading of loading classes in command library
Dynamic base order realizes.
Step S104: embed in executable file and newly describe file for replace former description file.
In order to allow mobile terminal set up applications, needs are embedded in application program by new description file.This
Time, create include certificate newly developed, mountable device information, application program identification (APP ID) file is newly described, with establishment
The new file that describes replace the former description file under the store path of executable file, it is achieved new description written matter is embedded into
In application program.
Step S105: the executable file comprising dynamic base and new description file is signed again.
In order to corresponding with the description file embedded, it should application program is signed again, need a new certificate and
Generate new code signature file (application-identifier entitlements).If enterprise version exploitation certificate,
Then this application program can be able to be installed on all mobile terminals.
Step S106: the executable file after signature again is packed, the application program installation kit after being optimized.
Wherein, the application program installation kit after optimization is for installing the application program after optimizing on mobile terminals.
Use compressing file (such as zip) order, Application Folder is compressed, compresses it into new installation
Bag, the new installation kit of such as IPA form.Application Folder can include new execution file and pacify from application program
Dress bag solves the alternative document of extrusion.
Embodiment two
The embodiment of the present invention two provides a kind of concrete methods of realizing that above-mentioned application program optimizes, its flow process as it is shown on figure 3,
Comprise the steps:
Step S201: obtain the to be optimized application program installation kit being applicable to mobile terminal.
Step S202: application program installation kit is converted and decompresses.
Application program installation kit is usually the file after a compression, can obtain after compressed file is converted and decompressed
Installation file to application program.
Step S203: obtain the executable file in application program installation kit.
From the application program installation folder after decompression, obtain executable file therein carry out follow-up optimization process.
Step S204: according to the store path of dynamic base, obtain previously generate for carrying custom code instrument
Dynamic base.
Step S205: according to the store path of executable file, uses the loading dynamic base order of loading classes in command library,
The dynamic base of acquisition is injected in the executable file under the store path of executable file.
Dynamic base Dylib being injected in executable file, this process uses in command library (mach-o) framework and adds
Carry LC_LOAD_DYLIB and the LC_LOAD_WEAK_DYLIB the two loading command of (loader) class.After injecting successfully,
Enter on personal computer or mobile terminal in APP catalogue to use and check application program installation kit dynamic base list commands
(otool-L) it can be seen that executable file has contained the Dylib file of generation.If injecting unsuccessfully, flow process also can be by
Terminate.
Wherein, LC_LOAD_WEAK_DYLIB specifies dynamic base order for loading, and as do not found, can stop journey immediately
Sequence;LC_LOAD_WEAK_DYLIB: load and specify dynamic base order (optional), as do not found, also may proceed to run.
Step S204-step 205 realizes the dynamic base being used for carrying custom code instrument that will previously generate, and is injected into
In executable file.
Step S206: create the new description including certificate newly developed, mountable device information, application program identification APPID
File.
Describing file is the prerequisite file of application development, wherein comprises for exploitation certificate, can install
Equipment and the description of APPID.When therefore generating new description file, it is also desirable to comprise these information, the new description literary composition of generation
Part can be stored in Developer Central or other storage positions specified.
Step S207: with the former description file under the new store path describing file replacement executable file created.
Download from Developer Central or other storage positions specified and describe file, then this is described file and replace APP
Description file (such as embedded.mobileprovision file) under catalogue.
Step S206-step 207 realizes embedding in executable file and newly describes file for replace former description file.
Step S208: read application information file, obtains unique identification string (bundleID) and newly of application program
Group mark (taemID) of exploitation certificate.
Again signing application program is also that optimization is necessary, by reading application information file, such as
Info.plist file, it is possible to obtain unique identification string (bundleID) of APP, obtains the teamID of new authentication, in order to update
These information of application program, make the program file of optimization to use.
Step S209: construct one with the unique mark (application-identifier) of application and development teams mark
(com.apple.developer.team-identifier) it is key, the dictionary being value with bundleID and teamID.
Above-mentioned bundleID is application one concrete identifier of uniquely identified in fact, and teamID is exploitation group in fact
The concrete identifier that badge is known.Such as: in a code signature file, it is so to represent:
Application-identifier:bundleID
Com.apple.developer.team-identifier:teamID
Step S210: by the dictionary write code signature file of structure.
Step S211: use signature order that code signature file is signed again, complete the weight to executable file
New signature.
By the signature again of executable file is realized the signature again to application program.Use signature order, such as
Codesign order, signs again to APP.
Step S212: by the executable file after signature again and the alternative document solving extrusion from application program installation kit
Convert together and compress, the application program installation kit after being optimized.
Again, after signature application program installs the executable file comprised in file, the application program obtained will be decompressed before
File is compressed into new installation kit, the installation kit of such as IPA form.Such as: can be realized by input zip-qr order
Export new application program installation kit.
Based on same inventive concept, the embodiment of the present invention also provides for a kind of application program and optimizes system, its structure such as Fig. 4 institute
Show, including: mobile terminal 401 and personal computer 402.Mobile terminal 401 and personal computer 403 all can arrange more than one
Individual, can be arranged as required to multiple.
Mobile terminal 401, the application program installation kit after installing optimization.
Personal computer 402 includes that application program optimizes device 403, to be optimized is applicable to mobile terminal for obtaining
Application program installation kit, from described application program installation kit obtain for application program install executable file;Will be pre-
The dynamic base for carrying custom code instrument first generated, is injected in described executable file;Literary composition is performed described
Part embeds and newly describes file for replace former description file;To comprising holding of described dynamic base and described new description file
Style of writing part is signed again;Again being packed by the executable file after signature, the application program after being optimized is installed
Bag;Application program installation kit after described optimization is for installing the application program after optimizing on mobile terminals.
Preferably, above-mentioned personal computer 402, specifically for the store path according to dynamic base, acquisition previously generates
For carrying the dynamic base of custom code instrument;According to the store path of executable file, use loading classes in command library
Load dynamic base order, the dynamic base of acquisition is injected in the executable file under the store path of executable file.
Preferably, above-mentioned personal computer 402, include certificate newly developed, mountable device information specifically for establishment, answer
By program identification APPID, file is newly described;With create new describe that file replaces under the store path of executable file former
File is described.
Preferably, above-mentioned personal computer 402, specifically for reading application information file, obtain application program
The group mark taemID of unique identification string bundleID and certificate newly developed;Construct one with application-identifier
It is key with com.apple.developer.team-identifier, the dictionary being value with bundleID and teamID;Will structure
Dictionary write code signature file in;Use signature order that code signature file is signed again, complete performing
Again the signature of file.
Preferably, above-mentioned personal computer 402, specifically for using Xcode to create described dynamic base.
Above-mentioned application program optimizes device, and its structure is as it is shown in figure 5, include: acquisition module 501, injection module 502, replace
Die change block 503, signature blocks 504 and packetization module 505.
Acquisition module 501, for obtaining the to be optimized application program installation kit being applicable to mobile terminal, from application program
Installation kit obtains the executable file installed for application program.
Injection module 502, for the dynamic base being used for carrying custom code instrument that will previously generate, is injected into and can hold
In style of writing part.
Replacement module 503, newly describes file for embedding in executable file for replace former description file.
Signature blocks 504, for carrying out again the executable file comprising described dynamic base and described new description file
Signature.
Packetization module 505, for the executable file after signature again is packed, the application program after being optimized
Installation kit;Wherein, the application program installation kit after optimization is for installing the application program after optimizing on mobile terminals.
Preferably, above-mentioned injection module 502, specifically for the store path according to dynamic base, obtain the use previously generated
Dynamic base in carrying custom code instrument;According to the store path of executable file, in use command library, loading classes adds
Carry dynamic base order, the described dynamic base obtained is injected in the executable file under the store path of executable file.
Preferably, above-mentioned replacement module 503, include certificate newly developed, mountable device information, application specifically for creating
Program identification APPID file is newly described;With create new describe that file replaces under the store path of executable file former retouch
State file.
Preferably, above-mentioned signature mould 504 pieces, specifically for reading application information file, obtain application program only
The group mark taemID of one identification string bundleID and certificate newly developed;Construct one with application-identifier and
Com.apple.developer.team-identifier is key, the dictionary being value with bundleID and teamID;By structure
In dictionary write code signature file;Use signature order that code signature file is signed again, complete performing literary composition
Again the signature of part.
Above-mentioned application program optimization method, system and the device that the embodiment of the present invention provides, for being applicable to internet operation
For system (IOS) systematic difference program optimization, by a self-defined dynamic base being similar to small-sized APP, use Fructus Mali pumilae
Development language (Obiective-C) is write, and the control that can extend Internet operating system SDK (iOS SDK) comes
Inject custom code.Except some parameters of needs manual configuration, in writing dynamic base, importing, again signing, be packaged in
Whole method flow can in computer operating system, under such as Apple Computers system (MAC) environment use XCODE compiling
Rear one-key operation, it is not necessary to rely on other IDEs (IDE) and decompiling instrument.
Said method is owing to have employed dynamic base Dylib, and self-defined degree is high;Have employed in command library (mach-o) framework
The order such as loading dynamic base, convenient inject dynamic base;Owing to dynamic base being injected, embedding new description certificate, again signs
Being computer operating system with the packing big functional realiey of installation kit four, under such as Apple Computers system (MAC OS X) is certainly
Dynamic chemical industry tool, as long as choosing each file to get final product the installation kit that a step generation is new, simplifies manual operation.The method need not
Pre-install application program on mobile terminal, can realize, to the application program optimization on mobile terminal, it also avoid loaded down with trivial details dividing
Analysis step, simplifies operation, improves speed and efficiency.
Those skilled in the art are it will also be appreciated that the various illustrative components, blocks listed of the embodiment of the present invention
(illustrative logical block), unit, and step can pass through electronic hardware, computer software, or both knots
Conjunction realizes.For clearly showing that the replaceability (interchangeability) of hardware and software, above-mentioned various explanations
Property parts (illustrative components), unit and step the most universally describe their function.Such merit
Can be to realize depending on specifically applying the design requirement with whole system by hardware or software.Those skilled in the art
Can be for every kind of specific application, it is possible to use the function described in the realization of various methods, but this realization is understood not to
Scope beyond embodiment of the present invention protection.
Various illustrative logical block described in the embodiment of the present invention, or unit can pass through general processor,
Digital signal processor, special IC (ASIC), field programmable gate array or other programmable logic device, discrete gate
Or transistor logic, discrete hardware components, or the design of any of the above described combination realize or operate described function.General place
Reason device can be microprocessor, and alternatively, this general processor can also be any traditional processor, controller, microcontroller
Device or state machine.Processor can also realize by calculating the combination of device, such as digital signal processor and microprocessor,
Multi-microprocessor, one or more microprocessors one Digital Signal Processor Core of associating, or any other like configuration
Realize.
It is soft that method described in the embodiment of the present invention or the step of algorithm can be directly embedded into hardware, processor performs
Part module or the combination of both.Software module can be stored in RAM memory, flash memory, ROM memory, EPROM storage
Other any form of storage medium in device, eeprom memory, depositor, hard disk, moveable magnetic disc, CD-ROM or this area
In.Exemplarily, storage medium can be connected with processor, so that processor can read information from storage medium, and
Write information can be deposited to storage medium.Alternatively, storage medium can also be integrated in processor.Processor and storage medium can
To be arranged in ASIC, ASIC can be arranged in user terminal.Alternatively, processor and storage medium can also be arranged at use
In different parts in the terminal of family.
In one or more exemplary designs, the above-mentioned functions described by the embodiment of the present invention can be at hardware, soft
The combination in any of part, firmware or this three realizes.If realized in software, these functions can store and computer-readable
On medium, or it is transmitted on the medium of computer-readable with one or more instructions or code form.Computer readable medium includes electricity
Brain stores medium and is easy to so that allowing computer program transfer to the telecommunication media in other place from a place.Storage medium is permissible
It is that any general or special computer can be with the useable medium of access.Such as, such computer readable media can include but
It is not limited to RAM, ROM, EEPROM, CD-ROM or other optical disc storage, disk storage or other magnetic storage device, or other
What may be used for carrying or storage can be by general or special computer or general or special handling with other with instruction or data structure
Device reads the medium of the program code of form.Additionally, any connection can be properly termed computer readable medium, example
As, if software is by coaxial cable, fiber optic cables, double from a web-site, server or other remote resource
Twisted wire, Digital Subscriber Line (DSL) or with the wireless way for transmittings such as the most infrared, wireless and microwave be also contained in defined
In computer readable medium.Described video disc (disk) and disk (disc) include Zip disk, radium-shine dish, CD, DVD, floppy disk
And Blu-ray Disc, disk is generally with magnetic duplication data, and video disc generally carries out optical reproduction data with laser.Combinations of the above
Can also be included in computer readable medium.
Above-described detailed description of the invention, has been carried out the purpose of the present invention, technical scheme and beneficial effect further
Describe in detail, be it should be understood that the detailed description of the invention that the foregoing is only the present invention, be not intended to limit the present invention
Protection domain, all within the spirit and principles in the present invention, any modification, equivalent substitution and improvement etc. done, all should comprise
Within protection scope of the present invention.
Claims (10)
1. an application program optimization method, it is characterised in that including:
Obtain the to be optimized application program installation kit being applicable to mobile terminal, obtain from described application program installation kit and be used for
The executable file that application program is installed;
The dynamic base being used for carrying custom code instrument that will previously generate, is injected in described executable file;
Described executable file embeds and newly describes file for replace former description file;
The executable file comprising described dynamic base and described new description file is signed again;
Again the executable file after signature is packed, the application program installation kit after being optimized;After described optimization
Application program installation kit is for installing the application program after optimizing on mobile terminals.
2. the method for claim 1, it is characterised in that described being used for of previously generating is carried custom code instrument
Dynamic base, be injected in described executable file, specifically include:
According to the store path of dynamic base, obtain the dynamic base for carrying custom code instrument previously generated;
According to the store path of executable file, use the loading dynamic base order of loading classes in command library, described in obtaining
Dynamic base is injected in the executable file under the store path of executable file.
3. the method for claim 1, it is characterised in that embed in described executable file and be used for replacing former description literary composition
Part file is newly described, specifically include:
Create include certificate newly developed, mountable device information, application program identification APPID file is newly described;
With the former description file under the new store path describing file replacement executable file created.
4. the method for claim 1, it is characterised in that to comprising holding of described dynamic base and described new description file
Style of writing part is signed again, specifically includes:
Read application information file, obtain unique identification string bundleID of application program and the group mark of certificate newly developed
taemID;
Construct one with application unique mark application-identifier and development teams mark
Com.apple.developer.team-identifier is key, the dictionary being value with bundleID and teamID;
By in the dictionary write code signature file of structure;
Use signature order that code signature file is signed again, complete the signature again to executable file.
5. the method as described in claim 1-4 is arbitrary, it is characterised in that use Integrated Development Tool on a personal computer
Xcode creates described dynamic base.
6. an application program optimizes device, it is characterised in that including:
Acquisition module, for obtaining the to be optimized application program installation kit being applicable to mobile terminal, pacifies from described application program
Dress bag obtains the executable file installed for application program;
Injection module, for the dynamic base being used for carrying custom code instrument that will previously generate, is injected into and described can perform
In file;
Replacement module, newly describes file for embedding in described executable file for replace former description file;
Signature blocks, for again signing to the executable file comprising described dynamic base and described new description file;
Packetization module, for the executable file after signature again is packed, the application program installation kit after being optimized;
Application program installation kit after described optimization is for installing the application program after optimizing on mobile terminals.
7. device as claimed in claim 6, it is characterised in that described injection module, specifically for:
According to the store path of dynamic base, obtain the dynamic base for carrying custom code instrument previously generated;
According to the store path of executable file, use the loading dynamic base order of loading classes in command library, described in obtaining
Dynamic base is injected in the executable file under the store path of executable file.
8. device as claimed in claim 6, it is characterised in that described replacement module, specifically for:
Create include certificate newly developed, mountable device information, application program identification APPID file is newly described;
With the former description file under the new store path describing file replacement executable file created.
9. device as claimed in claim 6, it is characterised in that described signature blocks, specifically for:
Read application information file, obtain unique identification string bundleID of application program and the group mark of certificate newly developed
taemID;
Construct one with application unique mark application-identifier and development teams mark
Com.apple.developer.team-identifier is key, the dictionary being value with bundleID and teamID;
By in the dictionary write code signature File of structure;
Use signature order that code signature file is signed again, complete the signature again to executable file.
10. an application program optimizes system, it is characterised in that including: mobile terminal and personal computer;
Described personal computer includes that the application program as described in claim 6-9 is arbitrary optimizes device;
Described mobile terminal, the application program installation kit after installing described optimization.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610481961.8A CN106126290B (en) | 2016-06-27 | 2016-06-27 | Application program optimization method, apparatus and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610481961.8A CN106126290B (en) | 2016-06-27 | 2016-06-27 | Application program optimization method, apparatus and system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106126290A true CN106126290A (en) | 2016-11-16 |
CN106126290B CN106126290B (en) | 2019-08-13 |
Family
ID=57266308
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610481961.8A Active CN106126290B (en) | 2016-06-27 | 2016-06-27 | Application program optimization method, apparatus and system |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106126290B (en) |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107315602A (en) * | 2017-05-12 | 2017-11-03 | 广东网金控股股份有限公司 | The upgrade method and terminal of a kind of application program |
CN107329901A (en) * | 2017-07-31 | 2017-11-07 | 腾讯科技(深圳)有限公司 | Packet grasping means, terminal, server and storage medium |
CN107621939A (en) * | 2017-09-18 | 2018-01-23 | 北京奇虎科技有限公司 | A kind of optimizing application method and device |
CN108446219A (en) * | 2018-03-01 | 2018-08-24 | 网易宝有限公司 | Operating method, system, medium and the computing device of application program |
CN108681473A (en) * | 2018-05-18 | 2018-10-19 | 广州酷狗计算机科技有限公司 | Application program generation, operation method, device, computer equipment and storage medium |
CN108958826A (en) * | 2017-05-22 | 2018-12-07 | 北京京东尚科信息技术有限公司 | The method and apparatus of dynamic configuration application installation package |
CN109101244A (en) * | 2018-07-20 | 2018-12-28 | 珠海宏桥高科技有限公司 | A kind of ios system integration automatic packaging method |
CN109213686A (en) * | 2018-10-22 | 2019-01-15 | 网易(杭州)网络有限公司 | Using backpack body inspection method, device, storage medium, processor and server |
CN109491664A (en) * | 2018-11-08 | 2019-03-19 | 腾讯科技(深圳)有限公司 | Generation method, device, equipment and the storage medium of iOS application program |
CN109725924A (en) * | 2017-10-27 | 2019-05-07 | 深圳安软信创技术有限公司 | A kind of function integrated approach based on iOS application |
CN109753322A (en) * | 2017-08-29 | 2019-05-14 | 武汉斗鱼网络科技有限公司 | To the acceleration method and device of application program on a kind of ios platform |
CN109814897A (en) * | 2018-12-18 | 2019-05-28 | 福建新大陆支付技术有限公司 | A kind of application file management method and system |
CN110032501A (en) * | 2019-04-01 | 2019-07-19 | 北京奇艺世纪科技有限公司 | A kind of processing method, device and the electronic equipment of APP installation kit |
CN110275832A (en) * | 2019-06-19 | 2019-09-24 | 北京字节跳动网络技术有限公司 | Starting time-consuming test method, system, equipment and the medium of application program |
CN110297643A (en) * | 2019-06-04 | 2019-10-01 | 平安科技(深圳)有限公司 | Method, apparatus, equipment and the storage medium of application program injection dynamic base |
CN110362487A (en) * | 2019-07-11 | 2019-10-22 | 腾讯科技(深圳)有限公司 | A kind of test method and device of application program |
CN110851204A (en) * | 2019-11-08 | 2020-02-28 | 北京字节跳动网络技术有限公司 | Application starting method and device and application packaging method and device |
CN112148597A (en) * | 2020-09-16 | 2020-12-29 | 北京基调网络股份有限公司 | Method for eliminating iOS device authorization dialog box, test method and storage medium |
CN112214253A (en) * | 2020-09-11 | 2021-01-12 | 拓尔思信息技术股份有限公司 | Method and device for starting Java program, electronic device and nonvolatile storage medium |
CN112464228A (en) * | 2020-09-09 | 2021-03-09 | 北京升鑫网络科技有限公司 | Application layer command auditing method, device and system and storage medium |
CN112825035A (en) * | 2019-11-21 | 2021-05-21 | 北京搜狗科技发展有限公司 | Program installation file generating and processing method and device |
CN113138867A (en) * | 2021-04-20 | 2021-07-20 | 上海上讯信息技术股份有限公司 | Method, device and equipment for realizing communication between application programs |
CN113190834A (en) * | 2021-01-29 | 2021-07-30 | 统信软件技术有限公司 | File signature method, computing device and storage medium |
CN113419735A (en) * | 2021-05-31 | 2021-09-21 | 荣耀终端有限公司 | Plug-in optimization method and device |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080134221A1 (en) * | 2006-11-30 | 2008-06-05 | Microsoft Corporation | Dynamic linked library add-on features |
CN104021321A (en) * | 2014-06-17 | 2014-09-03 | 北京奇虎科技有限公司 | Reinforcing protection method and device for software installation package |
CN104680039A (en) * | 2013-11-28 | 2015-06-03 | 腾讯科技(深圳)有限公司 | Data protection method and device of application installation package |
CN105512521A (en) * | 2015-12-25 | 2016-04-20 | 北京奇虎科技有限公司 | Reinforcement and protection method and system for software installation package |
-
2016
- 2016-06-27 CN CN201610481961.8A patent/CN106126290B/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080134221A1 (en) * | 2006-11-30 | 2008-06-05 | Microsoft Corporation | Dynamic linked library add-on features |
CN104680039A (en) * | 2013-11-28 | 2015-06-03 | 腾讯科技(深圳)有限公司 | Data protection method and device of application installation package |
CN104021321A (en) * | 2014-06-17 | 2014-09-03 | 北京奇虎科技有限公司 | Reinforcing protection method and device for software installation package |
CN105512521A (en) * | 2015-12-25 | 2016-04-20 | 北京奇虎科技有限公司 | Reinforcement and protection method and system for software installation package |
Cited By (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107315602B (en) * | 2017-05-12 | 2021-02-12 | 广东网金控股股份有限公司 | Application program upgrading method and terminal |
CN107315602A (en) * | 2017-05-12 | 2017-11-03 | 广东网金控股股份有限公司 | The upgrade method and terminal of a kind of application program |
CN108958826B (en) * | 2017-05-22 | 2022-06-07 | 北京京东尚科信息技术有限公司 | Method and device for dynamically configuring application installation package |
CN108958826A (en) * | 2017-05-22 | 2018-12-07 | 北京京东尚科信息技术有限公司 | The method and apparatus of dynamic configuration application installation package |
CN107329901A (en) * | 2017-07-31 | 2017-11-07 | 腾讯科技(深圳)有限公司 | Packet grasping means, terminal, server and storage medium |
CN107329901B (en) * | 2017-07-31 | 2021-09-28 | 腾讯科技(深圳)有限公司 | Data packet capturing method, terminal, server and storage medium |
CN109753322A (en) * | 2017-08-29 | 2019-05-14 | 武汉斗鱼网络科技有限公司 | To the acceleration method and device of application program on a kind of ios platform |
CN109753322B (en) * | 2017-08-29 | 2022-04-15 | 武汉斗鱼网络科技有限公司 | Method and device for accelerating application program on IOS platform |
CN107621939A (en) * | 2017-09-18 | 2018-01-23 | 北京奇虎科技有限公司 | A kind of optimizing application method and device |
CN107621939B (en) * | 2017-09-18 | 2021-01-29 | 北京奇虎科技有限公司 | Application optimization method and device |
CN109725924A (en) * | 2017-10-27 | 2019-05-07 | 深圳安软信创技术有限公司 | A kind of function integrated approach based on iOS application |
CN108446219A (en) * | 2018-03-01 | 2018-08-24 | 网易宝有限公司 | Operating method, system, medium and the computing device of application program |
CN108681473A (en) * | 2018-05-18 | 2018-10-19 | 广州酷狗计算机科技有限公司 | Application program generation, operation method, device, computer equipment and storage medium |
CN109101244A (en) * | 2018-07-20 | 2018-12-28 | 珠海宏桥高科技有限公司 | A kind of ios system integration automatic packaging method |
CN109213686A (en) * | 2018-10-22 | 2019-01-15 | 网易(杭州)网络有限公司 | Using backpack body inspection method, device, storage medium, processor and server |
CN109491664A (en) * | 2018-11-08 | 2019-03-19 | 腾讯科技(深圳)有限公司 | Generation method, device, equipment and the storage medium of iOS application program |
CN109814897A (en) * | 2018-12-18 | 2019-05-28 | 福建新大陆支付技术有限公司 | A kind of application file management method and system |
CN109814897B (en) * | 2018-12-18 | 2022-04-19 | 福建新大陆支付技术有限公司 | Application program file management method and system |
CN110032501A (en) * | 2019-04-01 | 2019-07-19 | 北京奇艺世纪科技有限公司 | A kind of processing method, device and the electronic equipment of APP installation kit |
CN110032501B (en) * | 2019-04-01 | 2023-04-25 | 北京奇艺世纪科技有限公司 | APP installation package processing method and device and electronic equipment |
CN110297643A (en) * | 2019-06-04 | 2019-10-01 | 平安科技(深圳)有限公司 | Method, apparatus, equipment and the storage medium of application program injection dynamic base |
CN110297643B (en) * | 2019-06-04 | 2024-01-30 | 平安科技(深圳)有限公司 | Method, device, equipment and storage medium for injecting application program into dynamic library |
CN110275832A (en) * | 2019-06-19 | 2019-09-24 | 北京字节跳动网络技术有限公司 | Starting time-consuming test method, system, equipment and the medium of application program |
CN110362487B (en) * | 2019-07-11 | 2024-05-10 | 腾讯科技(深圳)有限公司 | Application program testing method and device |
CN110362487A (en) * | 2019-07-11 | 2019-10-22 | 腾讯科技(深圳)有限公司 | A kind of test method and device of application program |
CN110851204B (en) * | 2019-11-08 | 2023-04-18 | 北京字节跳动网络技术有限公司 | Application starting method and device and application packaging method and device |
CN110851204A (en) * | 2019-11-08 | 2020-02-28 | 北京字节跳动网络技术有限公司 | Application starting method and device and application packaging method and device |
CN112825035A (en) * | 2019-11-21 | 2021-05-21 | 北京搜狗科技发展有限公司 | Program installation file generating and processing method and device |
CN112464228B (en) * | 2020-09-09 | 2021-07-27 | 北京升鑫网络科技有限公司 | Application layer command auditing method, device and system and storage medium |
CN112464228A (en) * | 2020-09-09 | 2021-03-09 | 北京升鑫网络科技有限公司 | Application layer command auditing method, device and system and storage medium |
CN112214253B (en) * | 2020-09-11 | 2024-02-02 | 拓尔思信息技术股份有限公司 | Java program starting method and device, electronic device and nonvolatile storage medium |
CN112214253A (en) * | 2020-09-11 | 2021-01-12 | 拓尔思信息技术股份有限公司 | Method and device for starting Java program, electronic device and nonvolatile storage medium |
CN112148597A (en) * | 2020-09-16 | 2020-12-29 | 北京基调网络股份有限公司 | Method for eliminating iOS device authorization dialog box, test method and storage medium |
CN113190834A (en) * | 2021-01-29 | 2021-07-30 | 统信软件技术有限公司 | File signature method, computing device and storage medium |
CN113190834B (en) * | 2021-01-29 | 2024-09-24 | 统信软件技术有限公司 | File signing method, computing device and storage medium |
CN113138867A (en) * | 2021-04-20 | 2021-07-20 | 上海上讯信息技术股份有限公司 | Method, device and equipment for realizing communication between application programs |
CN113419735B (en) * | 2021-05-31 | 2022-04-19 | 荣耀终端有限公司 | Plug-in optimization method and device |
CN113419735A (en) * | 2021-05-31 | 2021-09-21 | 荣耀终端有限公司 | Plug-in optimization method and device |
Also Published As
Publication number | Publication date |
---|---|
CN106126290B (en) | 2019-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106126290A (en) | Application program optimization method, Apparatus and system | |
CN104375849B (en) | Load the method and device of kernel | |
CN102289378B (en) | Method for automatically generating APP (Application) | |
KR102059705B1 (en) | Adaptive portable libraries | |
CN102246150B (en) | Transforming user script code for debugging | |
CN111367510B (en) | Android function module development method and device | |
CN109491695A (en) | A kind of increment updating method of integrated Android application | |
CN111090433A (en) | Data processing method, device and storage medium | |
CN104317625A (en) | Dynamic loading method for APK files | |
CN103095838A (en) | Method for upgrading Android smartphone software through downloading incremental upgrade package | |
CN104573416A (en) | Method and device for generating application installation package and executing application | |
CN104899025A (en) | Method and device for generating channel package | |
CN104318155A (en) | Dynamic loading method capable of guarding against reverse APK file | |
CN111045686B (en) | Method for improving decompilation speed of application, intelligent terminal and storage medium | |
CN110321131A (en) | Service Component packaging method, system and server | |
CN104090946A (en) | Method and device for adding information to application installation package | |
CN111209001A (en) | Method, system, equipment and medium for batch generation of APKs of android channels | |
US11029934B2 (en) | Method and system for updating legacy software | |
CN106055375A (en) | Application program installation method and device | |
KR102141749B1 (en) | APP program execution method and device | |
CN104133676A (en) | Function execution method and function execution device based on scripts | |
CN109871241A (en) | A kind of configuration method of Cross-environment application server | |
CN103761107A (en) | Software package customizing device and method | |
CN105389180B (en) | A kind of USB port configurableization method based on Android platform | |
CN114706564A (en) | Software package manufacturing method and device, electronic equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |