CN103176774A - Compiling method, compiling device and compiling system of application program - Google Patents

Compiling method, compiling device and compiling system of application program Download PDF

Info

Publication number
CN103176774A
CN103176774A CN2011104337379A CN201110433737A CN103176774A CN 103176774 A CN103176774 A CN 103176774A CN 2011104337379 A CN2011104337379 A CN 2011104337379A CN 201110433737 A CN201110433737 A CN 201110433737A CN 103176774 A CN103176774 A CN 103176774A
Authority
CN
China
Prior art keywords
application program
terminal
server
substep
source code
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN2011104337379A
Other languages
Chinese (zh)
Inventor
丘文辉
杭国强
谭丽丽
余东辉
张云
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Mobile Group Guangdong Co Ltd
Original Assignee
China Mobile Group Guangdong 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 China Mobile Group Guangdong Co Ltd filed Critical China Mobile Group Guangdong Co Ltd
Priority to CN2011104337379A priority Critical patent/CN103176774A/en
Publication of CN103176774A publication Critical patent/CN103176774A/en
Pending legal-status Critical Current

Links

Images

Abstract

The invention provides a compiling method, a compiling device and a compiling system of an application program and relates to the programming field. The compiling method, the compiling device and the compiling system of the application program are used for solving the technical problem that a user unfamiliar with programming can not generate the application program with a simple method in the prior art. The compiling method of the application program comprises the steps of obtaining the type of a terminal and the type of a function to be realized according to a request of the terminal, obtaining a corresponding source code according to the type of the terminal and the type of the function to be realized, obtaining a material document uploaded by the terminal, obtaining configuration parameters of the application program, compiling the source code and the material document according to the configuration parameters and generating the application program, and sending the application program to the terminal. The compiling method of the application program is simple in operation.

Description

The Compilation Method of application program, device and system
Technical field
The present invention relates to the programming field, refer to especially a kind of Compilation Method, device and system of application program.
Background technology
In prior art, normal exploitation compiling flow process comprises as follows:
1, application program is write: belong to the application development stage, its basic procedure comprises demand analysis, design, coding, module testing and integration testing etc.
2, compiling application program: adopt methods such as obscuring packing, program's source code and material are packaged into an application program according to special algorithm, can move on true environment after this Application testing passes through.Every kind of cell phone platform application program has its specific Compilation Method, and principle is had nothing in common with each other, but basic ideas are consistent, is all generally to compile by the distinctive compiler of this language.
In addition, also have some to unpack the compilation tool of packing about mobile phone, for example, can compile the application program of the S60.sis/sisx of Nokia form, Windows Mobile.cab form on the PC platform, this technology has following characteristics:
Most compilation tools run on the Windows system platform, can unpack application program, update routine package informatin, compiling application program;
Separate packet procedures: a handset program is put in this mobile phone unpacks in the packing program, get final product display part program's source code and detailed configuration information;
The update routine process: by reading its source code, seek and oneself want the part revised, by the manual modification program's source code to reach update routine and show and the purpose of partial function;
Compilation process: compile for the amended program of top step, this mobile phone unpacks program compiler technique of compiling is provided, and namely amended source code is compiled again, by PC system simulation program environment, generates a new application program of mobile phone.
Along with mobile interconnected development, increasing personal development person puts in mobile phone application and development trend.But cell phone platform is various at present, and it is high that the compiling system of various cell phone platforms enters gate threshold, the exploitation of give using and adaptively brought a lot of difficulties, a lot of people have good intention and exploitation enthusiasm, but only are good at wherein a kind of or are not good at exploitation and the compiling of various cell phone platforms.For above-mentioned compilation tool or Compilation Method, beginner and the user who is unfamiliar with use need to spend a lot of time and study the knowledge that unpacks and pack that compiling relates to, and want to regenerate an application program, difficulty or apparent.
Summary of the invention
The technical problem to be solved in the present invention is to provide a kind of Compilation Method, device and system of application program, makes the user can utilize existing source code to generate application program, does not need to programme.
For solving the problems of the technologies described above, embodiments of the invention provide technical scheme as follows:
On the one hand, provide a kind of Compilation Method of application program, comprising:
According to the request of terminal, obtain the terminal type of described terminal and function type to be achieved;
According to described terminal type and described function type to be achieved, obtain corresponding source code;
Obtain the material file that described terminal is uploaded;
Obtain the configuration parameter of application program;
According to described configuration parameter, described source code and described material file are compiled, generate application program;
Described application program is sent to described terminal.
Described according to described terminal type and described function type to be achieved, the step of obtaining corresponding source code comprises:
According to described terminal type and described function type to be achieved, obtain at least one corresponding indicating template and send to described terminal;
According to the first instruction of described terminal, select an indicating template from described at least one indicating template;
Obtain the source code corresponding to described indicating template of selection.
The described step of obtaining the configuration parameter of application program comprises:
According to the second instruction of described terminal, the described indicating template of selecting is modified;
Extract the configuration parameter of amended described indicating template, as the configuration parameter of described application program.
Described configuration parameter comprises: the terminal type that the display properties at the interface of application program and/or application program are adaptive.
Described according to described configuration parameter, described source code and described material file are compiled, the step that generates application program is specially:
According to the described configuration parameter that described terminal arranges, generating configuration file;
Described source code, described material file and described configuration file are compiled, generate application program.
Described according to described configuration parameter, described source code and described material file are compiled, before generating the step of application program, described method also comprises:
Whether the attribute that judges described material file meets the first predetermined condition; As be no, described material file modified or point out described terminal to modify; And/or
Judge whether described configuration parameter meets the second predetermined condition, as be no, point out described terminal to modify.
Described described source code, described material file and described configuration file are compiled, the step that generates application program comprises: carry out pretreated substep; The substep that makes an explanation; The substep that compiles or collect; The substep that links or pack into;
During at least two, set four servers when the task of described compiling;
First server is carried out at least two pretreated substeps;
Second server is carried out the substep of at least two explanations;
The 3rd server is carried out the substep of at least two compilings or compilation;
The substep that the 4th server is carried out at least two links or packed into.
Set respectively i buffer zone at least in described four servers; Each described buffer zone is used for described substep of operation; I is the natural number greater than 1;
During greater than the quantity i of buffer zone, utilize a described i buffer zone to move respectively the substep of described front i described compiler task as the quantity n of compiler task in each server, n is the natural number greater than 1;
After the substep of current i described compiler task is finished dealing with, whether judge n-i greater than i, if be yes, utilize a described i buffer zone to move respectively sequence number in each server and be the substep of the described compiler task of i+1 to i+i; If be no, utilize a described i buffer zone to move respectively the substep of described n-i described compiler task in each server.
On the other hand, provide a kind of compiler server of application program, it is characterized in that, comprising:
The first acquisition module according to the request of terminal, obtains the terminal type of described terminal and function type to be achieved;
The second acquisition module according to described terminal type and described function type to be achieved, obtains corresponding source code;
The 3rd acquisition module obtains the material file that described terminal is uploaded;
The 4th acquisition module obtains the configuration parameter of application program;
Collector according to described configuration parameter, compiles described source code and described material file, generates application program;
Transmitting element sends to described terminal with described application program.
Described the second acquisition module comprises:
First obtains submodule, according to treating adaptive terminal type and function type to be achieved, obtains at least one corresponding indicating template and sends to described terminal;
The chooser module according to the first instruction of described terminal, is selected an indicating template from described at least one indicating template;
Second obtains submodule, obtains the source code corresponding to described indicating template of selection.
Described the 3rd acquisition module comprises:
Revise submodule, according to the second instruction of described terminal, the described indicating template of selecting is modified;
Extract submodule, extract the configuration parameter of amended described indicating template, as the configuration parameter of described terminal setting.
On the other hand, provide a kind of compiling system of application program, comprising: terminal and server group;
Described server group according to the request of described terminal, is obtained the terminal type of described terminal and function type to be achieved; According to described terminal type and described function type to be achieved, obtain corresponding source code; Obtain the material file that described terminal is uploaded; Obtain the configuration parameter of application program; According to described configuration parameter, described source code and described material file are compiled, generate application program; Described application program is sent to described terminal;
Described terminal sends the terminal type of described terminal and function type to be achieved from described server group; Receive described application program from described server winding.
Described server group compiles and is specially: carry out pre-service; Make an explanation; Compile or collect; Link or pack into;
During at least two, described server group comprises at least four servers when the task of described compiling;
First server is used for carrying out at least two pretreated substeps;
Second server is for the substep of carrying out at least two explanations;
The 3rd server is used for the substep of carrying out at least two compilings or collecting;
The 4th server is used for the substep of carrying out at least two links or packing into.
Be set with respectively i buffer zone at least in described four servers; Each described buffer zone is used for operation one sub-steps.
Embodiments of the invention have following beneficial effect:
In such scheme, obtain the source code of realizing user's appointed function; Obtain the material file that the user uploads; Obtain the configuration parameter that the user arranges; According to described configuration parameter, described source code and described material file are compiled, generate application program.Like this, the user can utilize existing source code and upload to material, generates application program.
Description of drawings
Fig. 1 is the schematic flow sheet of the Compilation Method of a kind of application program shown in the present;
Fig. 2 is the structural representation of the compiler server of a kind of application program shown in the present;
Fig. 3 is the structural representation of the compiler server of a kind of application program shown in the present;
Fig. 4 is the structural representation of the compiling system of application program shown in the present;
Fig. 5 is the schematic flow sheet of revising template in the compiling system of application program shown in the present;
Fig. 6 is the schematic flow sheet that the compiling system of application program shown in the present is processed;
Fig. 7 is the schematic diagram that the compiling system of application program shown in the present is carried out parallel processing.
Embodiment
For technical matters, technical scheme and advantage that embodiments of the invention will be solved is clearer, be described in detail below in conjunction with the accompanying drawings and the specific embodiments.
As shown in Figure 1, the Compilation Method for a kind of application program shown in the present comprises:
Step 11 according to the request of terminal, is obtained the terminal type of described terminal and function type to be achieved;
Step 12 according to terminal type and function type to be achieved, is obtained corresponding source code; For example, maintain in advance different a plurality of source codes, the adaptive different terminal type of different source codes, different source codes is realized different function types.One of them is for being used for making the source code of e-book, and one of them is for being used for making the source code of electron album, and the function that can realize according to terminal type and the wish of user's input is selected corresponding source code.
Step 13 is obtained the material file that terminal is uploaded; For example, when the user selects to make the source code of electron album, can point out user's upload pictures.When the user selects to make the source code of e-book, can point out the user to upload the text of the content of preserving book.
Step 14 is obtained the configuration parameter of application program;
Step 15 according to described configuration parameter, compiles described source code and described material file, generates application program.For example, after compiling, can generate e-book or electron album.Like this, for the user who is unfamiliar with programming, also can generate the application program of predetermined function.Described configuration parameter comprises: the terminal type that the display properties at the interface of application program and/or application program are adaptive.For example, configuration parameter can be for the color of the display interface of the e-book that generates etc., also can be for the switch speed of each picture in electron album etc.When a source code can adaptive multiple terminal type, can according to the terminal type that arranges in configuration parameter, generate corresponding application program.Also can according to the display properties that arranges in configuration parameter, generate the application program of corresponding display interface.
Step 16 sends to described terminal with described application program
Wherein, step 12 comprises:
Step 121 according to treating adaptive terminal type and function type to be achieved, shows at least one indicating template; For example, according to function, indicating template is classified, for example, the indicating template of e-book is divided into a class, and the indicating template of electron album is divided into a class.
Step 122 according to the first instruction of user, is selected an indicating template from described at least one indicating template;
Step 123 is obtained the source code corresponding to described indicating template of selection.
Step 14 comprises:
According to the second instruction of user, the described indicating template of selecting is modified; For example, dissatisfied to the display properties of indicating template as the user, can edit indicating template.For example, when selecting the indicating template of electron album, can position and the background color of the photograph album in indicating template be arranged.Amended indicating template is shown, the user can intuitively see amended display effect.
Extract the configuration parameter of amended described indicating template, as the configuration parameter of described user's setting.
Step 15 is specially:
Step 151 is according to the described configuration parameter that the user arranges, generating configuration file; When configuration parameter is the display properties parameter, the pattern file in display properties parameter generating configuration file.
Step 152 compiles described source code, described material file and described configuration file, generates application program.
Optionally, before step 151, described method also comprises:
Step 150 judges whether the attribute of described material file meets the first predetermined condition; As be no, described material file modified or point out the user to modify; And/or judge whether described configuration parameter meets the second predetermined condition, as be no, point out the user to modify.The first predetermined condition is such as the form that can think material file or file size and file type etc.The second predetermined condition such as the threshold value that can think parameter etc.For example, when making the electron album application program, require if the picture byte that the user uploads surpasses, picture is compressed, perhaps point out the user to modify.
Wherein, described according to described configuration parameter, described source code and described material file are compiled, the step that generates application program is specially: carry out pretreated substep; The substep that makes an explanation; The substep that compiles or collect; The substep that links or pack into;
During at least two, set four servers when the task of described compiling;
First server is carried out at least two pretreated substeps;
Second server is carried out the substep of at least two explanations;
The 3rd server is carried out the substep of at least two compilings or compilation;
The substep that the 4th server is carried out at least two links or packed into.
Carry out two sub-steps in the server and cause data collision, set respectively i buffer zone at least in described four servers; Each described buffer zone is used for described substep of operation; I is the natural number greater than 1.
For example, set respectively i (for example, being four) buffer zone in each server, when the task of described compiling is n (for example, being two),
First server is carried out two pretreated substeps simultaneously; Wherein, first buffer zone of first server is used for carrying out first pretreated substep, and second buffer zone of first server is used for carrying out second pretreated substep.
Second server is carried out the substep of two explanations simultaneously; Wherein, first buffer zone of second server is used for carrying out the substep of first explanation, and second buffer zone of second server is used for carrying out the substep of second explanation.
The 3rd server is carried out the substep of two compilings or compilation simultaneously; First buffer zone of the 3rd server is used for carrying out the substep of first compiling or compilation, and second buffer zone of the 3rd server is used for carrying out the substep of second compiling or compilation.
The substep that the 4th server is carried out simultaneously two links or packed into.The substep that first buffer zone of the 4th server is used for first link of execution or packs into, second buffer zone of the 4th server are used for carrying out second substep that links or pack into.
During greater than the quantity i of buffer zone, utilize a described i buffer zone to move respectively the substep of described front i described compiler task as the quantity n of compiler task in each server, n is the natural number greater than 1;
After the substep of current i described compiler task is finished dealing with, whether judge n-i greater than i, if be yes, utilize a described i buffer zone to move respectively sequence number in each server and be the substep of the described compiler task of i+1 to i+i; If be no, utilize a described i buffer zone to move respectively the substep of described n-i described compiler task in each server.
For example, set respectively i (for example, i is 2) buffer zone in each server, when the task of described compiling is n (for example, n is 6), at first, complete front 2 compiler tasks, then complete the 3rd and 4 compiler task, then complete the 5th and 6 compiler task.
As shown in Figure 2, the compiler server for a kind of application program of the present invention comprises:
The first acquisition module 21 according to the request of terminal, obtains the terminal type of described terminal and function type to be achieved;
The first acquisition module 22 according to terminal type and function type to be achieved, obtains corresponding source code;
The second acquisition module 23 obtains the material file that the terminal user uploads;
The 3rd acquisition module 24 obtains the configuration parameter of application program;
Collector 25 according to described configuration parameter, compiles described source code and described material file, generates application program.
Transmitting element 26 sends to described terminal with described application program.
Described the second acquisition module 22 comprises:
First obtains submodule, according to treating adaptive terminal type and function type to be achieved, obtains at least one indicating template and sends to described terminal;
The chooser module according to the first instruction of terminal user, is selected an indicating template from described at least one indicating template;
Second obtains submodule, obtains the source code corresponding to described indicating template of selection.
Described the 3rd acquisition module 23 comprises:
Revise submodule, according to the second instruction of terminal user, the described indicating template of selecting is modified;
Extract submodule, extract the configuration parameter of amended described indicating template, as the configuration parameter of described terminal user's setting.
Described collector comprises: carry out pretreated submodule; The submodule that makes an explanation; The submodule that compiles or collect; The submodule that links or pack into.
As shown in Figure 3, the compiling system for a kind of application program of the present invention comprises: terminal 31 and server group;
Described server group according to the request of described terminal, is obtained the terminal type of described terminal and function type to be achieved; According to described terminal type and described function type to be achieved, obtain corresponding source code; Obtain the material file that described terminal is uploaded; Obtain the configuration parameter of application program; According to described configuration parameter, described source code and described material file are compiled, generate application program; Described application program is sent to described terminal 31;
Described terminal 31 sends the terminal type of described terminal and function type to be achieved from described server group; Receive described application program from described server winding.
During at least two, described server group comprises four servers when the task of described compiling;
First server 41 is used for carrying out at least two pretreated substeps;
Second server 42 is for the substep of carrying out at least two explanations;
The 3rd server 43 is used for the substep of carrying out at least two compilings or collecting;
The 4th server 44 is used for the substep of carrying out at least two links or packing into.
Be set with respectively i buffer zone at least in described four servers; Each described buffer zone is used for described substep of operation.
Application scenarios of the present invention is below described.A kind of compiling system of the application program that need not to programme can be applied to the compiling of terminal (for example being mobile phone) application program, can take server architecture mode shown in Figure 4, comprising: user side and the compiler server end of initiating compiling.
Compiler server end: whole compiler servers are combined into a large system, i.e. virtual server group.In the virtual server group, Clustering is crossed by the UNICOM between server, and Servers-all is incorporated into together by network cluster or data cluster.From the angle of use, whole system can be used as a station server, by mutual between each compiler server in the management virtual rack group of data center.Like this, when wherein a compiler server breaks down, be the slight reduction overall performance, but can not affect the use of normal compilation function; Recover normal when this compiler server fault is got rid of, improved widely the stability of compiler server.Based on above-mentioned hardware structure, the task of batch compilation application program is distributed to each compiler server carry out, but the batch compilation application program.When visit capacity is enough large, start queuing mechanism; When wherein having one or more server to break down, according to the return signal of server, the processing when carrying out server failure still can normally move basic function.
Data center: can manage the file-sharing function between each compiler server concentratedly, distribute each compiler server to complete a certain task within certain period.Owing to connecting between each compiler server closely, data center can concentrate performance compiler server group's computing power;
When needs are concentrated when completing a large-scale task, data center assigns the task to each compiler server in the virtual server group, can share pressure between compiler server, allows compiler server process separately a certain module, greatly dwindled the activity duration, namely compiler server adopts the dividing potential drop technology.
All distribute by data center when executing the task between compiler server, when a plurality of tasks are placed in program compiler simultaneously, can call simultaneously compiler directive, when sharing a compiling buffer zone, may cause the program's source code conflict and finally pack unsuccessfully.The mode that this programme has taked multiple buffer to process, buffer zone quantity can arrange.Buffer zone quantity equals the quantity that can execute the task simultaneously, has solved the problem of compiling conflict, has realized the function that multiple utility program compiles simultaneously;
When compiler server broke down, namely the process of the three-way handshake between data center and compiler server was unsuccessful, and data center can temporarily stop access and the operation to this compiler server, did not affect the normal operation of other compiler server function;
The compiler server file resource is shared, and can easily complete identical task between each compiler server and takies few resource, has improved the overall calculation ability.
Server adopts queuing mechanism.Be specially: when compiler server compiling job task had been expired, compiler server returned to full status signal, and data center is temporary in task in the task buffer zone, waits for that compiler server returns to the empty stack signal.When returning to the empty stack signal, continue that compiler task is distributed to each server and carry out.Namely.
In addition, the present invention proposes the form of goods shelf template, can select and editing template for the user, thereby realize the displaying pattern that the user expects.For the user, by goods shelf template, the user only need to select template in the page, revises template by graphic interface and shows, then uploads material, can complete the compiling of application program of mobile phone.Easy and simple to handle, need not programming basic.The specific implementation principle is as follows:
The template of each cell phone platform application program is placed in front end, selects for the user.The user can select the template that oneself needs, and can revise the displaying pattern of template, specifically with reference to figure 5.
Template amending method: the attribute that browser end is showed by adjusting template, attribute comprises height, width, background, color, position etc., attribute is preserved and is uploaded to template platform after completing modification, the platform end compares according to the attribute that imports parameter application programs original template into.
Template switch district effect: its corresponding display module (corresponding to above-mentioned display module) is arranged in each application program, and the mode such as extract by separation, the attribute that display module can be had focuses in configuration file, it is the configuration file that the attribute in goods shelf template is compared, the platform end can be modified to configuration file according to the contact between attribute, reaches the effect of the template of revising application program.
Below illustrate the process of Compilation Method:
Configure required development environment: the Linux/Windows platform; Sysbiam, Windows Mobile, Android, J2ME development environment etc.The development environment of configurating mobile application program, need configuration surroundings on compiler server.The development environment of above-mentioned several application program of mobile phone all can normally move on the Linux/Windows platform, namely can complete compilation facility.Template is to import parameter into by the goods shelf template module to be determined, as imports parameter into for empty, selects the acquiescence template.
The bulk treatment flow process is as shown in Figure 6:
Then user side login virtual server group proceeds as follows:
At first, the adaptive selection of type: selecting needs type corresponding to generator program then to enter goods shelf template;
Then, goods shelf template is chosen: select the template that needs or approach the template that needs;
Then, edit model: template is modified in front-end platform;
Then, template is submitted to: submit the template after editing to or directly select template to submit to;
Then, template judgement: if template is passed through, directly submit to, otherwise will return to modification;
Then, wait routine generates: the virtual server group can complete program compilation within a certain period of time, returns to the application program download address;
At last, down load application and installation: application is downloaded to mobile phone then installs and uses.
Virtual server the group be handled as follows:
At first, preserve goods shelf template: the amended template of user is preserved;
Then, conversion module: the template that the user uploads is analyzed, and comprising the modification change of attribute, the modification of type pattern is adaptive, and finally converts pattern file corresponding to program under each type platform to.
Then, provide type procedure basis source code: preserve each type source code basic function, types of functionality is separated, remained in configuration file, wherein pattern file, program attribute and some basic functions are all configurable, after the server stores piece provides source code, only need import some basic parameters into, just can satisfy the needs of program compilation, when certain parameter is sky, to adopt default parameters, to increase the compiling chance of success.
Then, generator program code: procedure basis source code, template configuration file, material file and the default configuration file corresponding according to type generate the program source code that a cover can run well and test.
Then, calling program error detection: program code is carried out error detection; If pass through, submit compiling; Do not pass through, return;
Then, calling system compilation facility: owing to having configured each platform development system in system, so have the System build function, this scheme is the adjusting system compilation facility automatically, when the code error detection by the time, can generate application after calling this function within the short time, and rationally utilize the advantage of shared memory between server, greatly increase buffer zone, realized the purpose of compiling in enormous quantities;
At last, generate application program.
The following describes to work in coordination with in virtual server in the present invention and realize the processing procedure that multiple utility program compiles simultaneously, thereby realize that multiple utility program gets compiling simultaneously.
The shortcoming of prior art: can not compile simultaneously a plurality of application programs, must wait for that an application program finishes just can compile for the second time after compiling.Reason is: during program compiler, buffer zone can only be processed the compiling data of an application program, and when compiling a plurality of program simultaneously, can cause producing because buffer zone is chaotic compile error.
In this programme, multiple buffer is set in server.In order to solve the problem of compiling data collision confusion, taked the function to the buffer zone piecemeal.Setting buffer zone quantity is i (configurable), when carrying out n compiler task simultaneously, needs n buffer stopper, if will satisfy when compiling simultaneously n program this moment, should establish i>n; When i<n, can only carry out simultaneously i task, enable the compiling queuing mechanism, the compiling failure that avoids conflict and produce.
The just data space that buffer zone takies, do not affect server performance, the compiling buffer zone of an application program only needs the space of 1M left and right, and concerning the virtual server group that a plurality of servers form, 10,000 application program buffer stoppers to be set simultaneously, only need the hard drive space of 10G.
The compiling of application flow process: the compiling flow process comprises pre-service, explanation, compiling, (the Sysbiam program compilation comprises compilation), links or pack into.
When single task is processed (n=1): because the time that individual task compiling is required is shorter, so data center does not need task is carried out substep, too much step can make the program compiler inefficiency that becomes on the contrary; When data center receives individual task, with the server that traversal can work, the Random assignment compiler task, establishing whole flow process required time is ti.
When the task in the buffer number weight range is processed (n<i): it is as above shown in Figure 7 that data center carries out temporary transient classification to Servers-all, and task A, B, C, D compile flow process simultaneously, needs through following four flow processs:
(1) at first preprocessing server A processes simultaneously to four tasks (A.1, B.1, C.1, D.1), and the time used is t1; Wherein, be A.1 the first substep of first task, that is: B.1 the pre-service substep, be the first substep of the second task, that is: the pre-service substep, as follows.
(2) explain that server B after receiving the signal that server A finishes dealing with, makes an explanation simultaneously to four tasks (A.2, B.2, C.2, D.2), the time used is t2; A.2 be the second substep of first task, that is: explain substep, as follows.
(3) when the first two action was completed, compiler server C began task A is processed, and compiling takes t3.Middle distribution due to buffer zone needs a little time, so a period of time is carried out task compiling B.3 again after A.3 task compiles, establishing the reaction time is tn, and as shown in Figure 7, it is t3+3tn that the compiling of namely completing four tasks needs the time;
(4) the linked server D time of (A.4, B.4, C.4, D.4) of beginning to execute the task formally carries out when server C completes compiling, and namely A, B, C, D execution time differ tn, link required time t4.
As described above, single task required time ti, ti=t1+t2+t3+t4; And carry out simultaneously four task A, B, C, the D required time is ti=t1+t2+t3+3Tn+t4; The quantity of carrying out simultaneously task is i, and namely required time is single task time ti+ (i-1) tn.
When the task outside the buffer number weight range is processed (n>i), getting wherein, i task compiles four-stage, other n-i task is waited at the task buffer zone, i task treatment scheme is consistent with above-mentioned multitasking flow process, wait for that i task is disposed, n-i task repeats this flow process again.
The process that following concrete example explanation multitask compiles simultaneously.
Object: user A, user B.
Task: generate Sysbiam S60 application A, Android application program B.
The scheme explanation: user A wants that user B wants to generate an Android application program B by generating a Sysbiam S60 application A.And these two tasks were submitted in the same time; Whole flow process, outer at server except the front end display module, other flow process all belongs to server built-in function process, with this example explanation this programme flow process and corresponding functional description.
User A and user B enter front end display module (representing with form of websites), have selected respectively acquiescence template A and acquiescence template B, and have carried out template and revise, user A corresponding templates C after revising, user B corresponding templates D; Upload according to demand afterwards the application material, comprising picture and information content, final template C, D are committed to the template switch district, and material is committed to the material storage block.
The material storage block judges whether material is up to specification, and the material that part falls short of specifications is repaired, and returns to defective information in the time can't repairing, and allows the user again upload;
The template switch district compares template C, D and the existing application pattern file of uploading, and template C, D are write again according to the standard of pattern file, generates the pattern file.
When the template switch action is being carried out with the material storage action, transition zone can send request to type program file storehouse, return to respectively Sysbiam S60 and Android procedure basis file, pattern file, satisfactory material file unification after conversion are sent to the automatic detection zone of system.
According to the trace routine of Programming, the template compiling is carried out in the combination of basic document, pattern file, material file checked; If the mistake of detecting returns to that the template switch district reconfigures and reporting errors; Pass through if detect, enter program buffer and wait in line order.
At this moment, data center processes whole compilation process.If current compiling buffer stopper quantity is 2, can only compile 2 application programs simultaneously.Certainly, under actual conditions, buffer stopper quantity can arrange larger, and for example 10,000.If the idle quantity of current buffer stopper is less than 2 o'clock, the compiling of application program must be by waiting in line, and, can compile simultaneously more than or equal to 2 the time when the buffer stopper amount of space.
Application A, the B of compiling after completing forwards program storage block to, is issued to the front end display module, provides the user to download, and user A, user B can download application A, program B after completing in the front end display module.
This programme has following beneficial effect:
(1) by goods shelf template, the user only need to select template in the page, revises template by graphic interface and shows, the source code of each goods shelf template is pre-stored in server, and the user can realize compiling at the basis that need not to programme; The present invention operates simple and easy, has solved the high problem of development requirement threshold.
(2) mode that adopts virtual server group's the compiler server network architecture and taked multiple buffer to process, buffer zone quantity can arrange, and has solved the problem of compiling conflict, has realized the function that multiple utility program compiles simultaneously.The background support server is taked task distribution mode and multiple buffer treatment mechanism, can generate in enormous quantities application program simultaneously.
(3) development environment of configuration of the present invention normally runs on windows and Linux platform, just can move program compiler on the server system platforms such as Windows and Linux.
(4) due to the change of compile mode, configured the development environment of Android and J2ME in server, new compile mode can be realized the Compilation Method of Android and J2ME.
(5) virtual server framework and the disposal route thereof of batch compilation of the present invention can realize cross-platform, as to generate in enormous quantities each cell phone platform application program.
(6) the adaptive all kinds of cell phone platforms of the present invention have proposed the template conception of shelf, have solved type various, the problem that application program can't be adaptive.
One of ordinary skill in the art will appreciate that, realize that all or part of step in above-described embodiment method is to come the relevant hardware of instruction to complete by program, described program can be stored in a computer read/write memory medium, this program is when carrying out, comprise the step as above-mentioned embodiment of the method, described storage medium, as: magnetic disc, CD, read-only store-memory body (Read-Only Memory, ROM) or random store-memory body (Random Access Memory, RAM) etc.
In each embodiment of the method for the present invention; the sequence number of described each step can not be used for limiting the sequencing of each step; for those of ordinary skills, under the prerequisite of not paying creative work, the priority of each step is changed also within protection scope of the present invention.
The above is the preferred embodiment of the present invention; should be pointed out that for those skilled in the art, under the prerequisite that does not break away from principle of the present invention; can also make some improvements and modifications, these improvements and modifications also should be considered as protection scope of the present invention.

Claims (14)

1. the Compilation Method of an application program, is characterized in that, comprising:
According to the request of terminal, obtain the terminal type of described terminal and function type to be achieved;
According to described terminal type and described function type to be achieved, obtain corresponding source code;
Obtain the material file that described terminal is uploaded;
Obtain the configuration parameter of application program;
According to described configuration parameter, described source code and described material file are compiled, generate application program;
Described application program is sent to described terminal.
2. the Compilation Method of application program according to claim 1, is characterized in that, and is described according to described terminal type and described function type to be achieved, and the step of obtaining corresponding source code comprises:
According to described terminal type and described function type to be achieved, obtain at least one corresponding indicating template and send to described terminal;
According to the first instruction of described terminal, select an indicating template from described at least one indicating template;
Obtain the source code corresponding to described indicating template of selection.
3. the Compilation Method of application program according to claim 2, is characterized in that, the described step of obtaining the configuration parameter of application program comprises:
According to the second instruction of described terminal, the described indicating template of selecting is modified;
Extract the configuration parameter of amended described indicating template, as the configuration parameter of described application program.
4. the Compilation Method of application program according to claim 1, is characterized in that, described configuration parameter comprises: the terminal type that the display properties at the interface of application program and/or application program are adaptive.
5. the Compilation Method of application program according to claim 1, is characterized in that,
Described according to described configuration parameter, described source code and described material file are compiled, the step that generates application program is specially:
According to the described configuration parameter that described terminal arranges, generating configuration file;
Described source code, described material file and described configuration file are compiled, generate application program.
6. the Compilation Method of application program according to claim 1, is characterized in that, and is described according to described configuration parameter, and described source code and described material file are compiled, and before generating the step of application program, described method also comprises:
Whether the attribute that judges described material file meets the first predetermined condition; As be no, described material file modified or point out described terminal to modify; And/or
Judge whether described configuration parameter meets the second predetermined condition, as be no, point out described terminal to modify.
7. the Compilation Method of application program according to claim 5, is characterized in that, described described source code, described material file and described configuration file compiled, and the step that generates application program comprises: carry out pretreated substep; The substep that makes an explanation; The substep that compiles or collect; The substep that links or pack into;
During at least two, set four servers when the task of described compiling;
First server is carried out at least two pretreated substeps;
Second server is carried out the substep of at least two explanations;
The 3rd server is carried out the substep of at least two compilings or compilation;
The substep that the 4th server is carried out at least two links or packed into.
8. the Compilation Method of application program according to claim 7, is characterized in that, sets respectively i buffer zone at least in described four servers; Each described buffer zone is used for described substep of operation; I is the natural number greater than 1;
During greater than the quantity i of buffer zone, utilize a described i buffer zone to move respectively the substep of described front i described compiler task as the quantity n of compiler task in each server, n is the natural number greater than 1;
After the substep of current i described compiler task is finished dealing with, whether judge n-i greater than i, if be yes, utilize a described i buffer zone to move respectively sequence number in each server and be the substep of the described compiler task of i+1 to i+i; If be no, utilize a described i buffer zone to move respectively the substep of described n-i described compiler task in each server.
9. the compiler server of an application program, is characterized in that, comprising:
The first acquisition module according to the request of terminal, obtains the terminal type of described terminal and function type to be achieved;
The second acquisition module according to described terminal type and described function type to be achieved, obtains corresponding source code;
The 3rd acquisition module obtains the material file that described terminal is uploaded;
The 4th acquisition module obtains the configuration parameter of application program;
Collector according to described configuration parameter, compiles described source code and described material file, generates application program;
Transmitting element sends to described terminal with described application program.
10. the compiler server of application program according to claim 9, is characterized in that, described the second acquisition module comprises:
First obtains submodule, according to treating adaptive terminal type and function type to be achieved, obtains at least one corresponding indicating template and sends to described terminal;
The chooser module according to the first instruction of described terminal, is selected an indicating template from described at least one indicating template;
Second obtains submodule, obtains the source code corresponding to described indicating template of selection.
11. the compiler server of application program according to claim 9 is characterized in that, described the 3rd acquisition module comprises:
Revise submodule, according to the second instruction of described terminal, the described indicating template of selecting is modified;
Extract submodule, extract the configuration parameter of amended described indicating template, as the configuration parameter of described terminal setting.
12. the compiling system of an application program is characterized in that, comprising: terminal and server group;
Described server group according to the request of described terminal, is obtained the terminal type of described terminal and function type to be achieved; According to described terminal type and described function type to be achieved, obtain corresponding source code; Obtain the material file that described terminal is uploaded; Obtain the configuration parameter of application program; According to described configuration parameter, described source code and described material file are compiled, generate application program; Described application program is sent to described terminal;
Described terminal sends the terminal type of described terminal and function type to be achieved from described server group; Receive described application program from described server winding.
13. the compiling system of application program according to claim 12 is characterized in that,
Described server group compiles and is specially: carry out pre-service; Make an explanation; Compile or collect; Link or pack into;
During at least two, described server group comprises at least four servers when the task of described compiling;
First server is used for carrying out at least two pretreated substeps;
Second server is for the substep of carrying out at least two explanations;
The 3rd server is used for the substep of carrying out at least two compilings or collecting;
The 4th server is used for the substep of carrying out at least two links or packing into.
14. the compiling system of application program according to claim 13 is characterized in that, is set with respectively i buffer zone at least in described four servers; Each described buffer zone is used for operation one sub-steps.
CN2011104337379A 2011-12-21 2011-12-21 Compiling method, compiling device and compiling system of application program Pending CN103176774A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2011104337379A CN103176774A (en) 2011-12-21 2011-12-21 Compiling method, compiling device and compiling system of application program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2011104337379A CN103176774A (en) 2011-12-21 2011-12-21 Compiling method, compiling device and compiling system of application program

Publications (1)

Publication Number Publication Date
CN103176774A true CN103176774A (en) 2013-06-26

Family

ID=48636681

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011104337379A Pending CN103176774A (en) 2011-12-21 2011-12-21 Compiling method, compiling device and compiling system of application program

Country Status (1)

Country Link
CN (1) CN103176774A (en)

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103544019A (en) * 2013-11-01 2014-01-29 上海北鸥信息科技有限公司 E-book application program automatic generation achieving method based on application program template
CN103677814A (en) * 2013-11-29 2014-03-26 广州视源电子科技股份有限公司 Procedure acquiring method, procedure acquiring device and procedure acquiring system
CN103838573A (en) * 2014-01-03 2014-06-04 浙江宇天科技股份有限公司 Application program generation method and device
CN103984541A (en) * 2014-04-14 2014-08-13 美的集团股份有限公司 Method and system for generating application procedure based on terminal source codes
WO2015032129A1 (en) * 2013-09-05 2015-03-12 北大方正集团有限公司 iOS APPLICATION AUTOMATIC COMPILATION METHOD AND SYSTEM
CN104615462A (en) * 2015-01-26 2015-05-13 北京邮电大学 Cross-platform mobile application generating server side and system
CN105373430A (en) * 2015-10-13 2016-03-02 惠州Tcl移动通信有限公司 System for dynamic allocation of compiler and method thereof
CN105893018A (en) * 2015-12-14 2016-08-24 乐视网信息技术(北京)股份有限公司 Executable program generation method and apparatus
WO2016188060A1 (en) * 2015-05-22 2016-12-01 小米科技有限责任公司 Method and apparatus for processing application program package
CN107145377A (en) * 2017-03-17 2017-09-08 广州视源电子科技股份有限公司 Software compilation method and system
CN107168756A (en) * 2017-03-31 2017-09-15 捷开通讯(深圳)有限公司 Method, client, service end and the storage device of radio-frequency driven compiling debugging
CN108614705A (en) * 2017-02-07 2018-10-02 腾讯科技(深圳)有限公司 A kind of data compilation processing method and terminal
CN108628620A (en) * 2017-12-12 2018-10-09 百富计算机技术(深圳)有限公司 Implementation method, device, computer equipment and the storage medium of POS application and developments
CN109857406A (en) * 2019-02-15 2019-06-07 上海微小卫星工程中心 Satellite embedded software batch processing system and method
CN109885311A (en) * 2019-01-28 2019-06-14 平安科技(深圳)有限公司 A kind of generation method and equipment of application program
CN110502228A (en) * 2019-08-19 2019-11-26 上海艾卡士网络科技有限公司 A method of VR content creation and generation VR application program based on cloud platform
CN110633118A (en) * 2018-06-21 2019-12-31 绍兴锋芒电子科技有限公司 Program self-making method, device and storage medium
CN111381829A (en) * 2020-03-06 2020-07-07 北京达佳互联信息技术有限公司 Online programming method and device, electronic equipment and storage medium
CN111736841A (en) * 2020-05-25 2020-10-02 广东职业技术学院 Application integration development method and system based on mobile internet
CN112099797A (en) * 2020-08-19 2020-12-18 珠海格力电器股份有限公司 Industrial control screen based function setting method and device and industrial control screen
CN113379388A (en) * 2021-06-18 2021-09-10 北京天健智慧科技有限公司 Method for switching subtask flow of remote physical examination reservation platform according to configuration parameters
CN114328149A (en) * 2021-12-13 2022-04-12 北京五八信息技术有限公司 Compiling time duration statistical method and device, electronic equipment and readable medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060282815A1 (en) * 2005-06-09 2006-12-14 Finite State Machine Labs, Inc. System, method and computer program product for developing, configuring, installing and testing software
CN102231106A (en) * 2011-05-27 2011-11-02 王志勇 Method for generating application code of mobile and general development platform
CN102262538A (en) * 2011-07-26 2011-11-30 中兴通讯股份有限公司 Method and device for processing widget

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060282815A1 (en) * 2005-06-09 2006-12-14 Finite State Machine Labs, Inc. System, method and computer program product for developing, configuring, installing and testing software
CN102231106A (en) * 2011-05-27 2011-11-02 王志勇 Method for generating application code of mobile and general development platform
CN102262538A (en) * 2011-07-26 2011-11-30 中兴通讯股份有限公司 Method and device for processing widget

Cited By (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015032129A1 (en) * 2013-09-05 2015-03-12 北大方正集团有限公司 iOS APPLICATION AUTOMATIC COMPILATION METHOD AND SYSTEM
CN104423955A (en) * 2013-09-05 2015-03-18 北大方正集团有限公司 Method and system for realizing automatic compilation of iOS application
JP2016533592A (en) * 2013-09-05 2016-10-27 ペキン ユニバーシティ ファウンダー グループ カンパニー,リミティド Method and system for automatically compiling an iOS application
CN103544019A (en) * 2013-11-01 2014-01-29 上海北鸥信息科技有限公司 E-book application program automatic generation achieving method based on application program template
CN103677814A (en) * 2013-11-29 2014-03-26 广州视源电子科技股份有限公司 Procedure acquiring method, procedure acquiring device and procedure acquiring system
CN103838573A (en) * 2014-01-03 2014-06-04 浙江宇天科技股份有限公司 Application program generation method and device
CN103984541A (en) * 2014-04-14 2014-08-13 美的集团股份有限公司 Method and system for generating application procedure based on terminal source codes
CN104615462B (en) * 2015-01-26 2018-04-06 北京邮电大学 Cross-platform Mobile solution generation service end and system
CN104615462A (en) * 2015-01-26 2015-05-13 北京邮电大学 Cross-platform mobile application generating server side and system
WO2016188060A1 (en) * 2015-05-22 2016-12-01 小米科技有限责任公司 Method and apparatus for processing application program package
CN105373430A (en) * 2015-10-13 2016-03-02 惠州Tcl移动通信有限公司 System for dynamic allocation of compiler and method thereof
US10810048B2 (en) 2015-10-13 2020-10-20 Huizhou Tcl Mobile Communication Co., Ltd Systems and methods for dynamic allocation of compilation machines
CN105893018A (en) * 2015-12-14 2016-08-24 乐视网信息技术(北京)股份有限公司 Executable program generation method and apparatus
CN108614705B (en) * 2017-02-07 2022-06-03 腾讯科技(深圳)有限公司 Data compiling processing method and terminal
CN108614705A (en) * 2017-02-07 2018-10-02 腾讯科技(深圳)有限公司 A kind of data compilation processing method and terminal
CN107145377A (en) * 2017-03-17 2017-09-08 广州视源电子科技股份有限公司 Software compilation method and system
CN107168756B (en) * 2017-03-31 2021-05-07 捷开通讯(深圳)有限公司 Radio frequency driving compiling and debugging method, client, server and storage device
CN107168756A (en) * 2017-03-31 2017-09-15 捷开通讯(深圳)有限公司 Method, client, service end and the storage device of radio-frequency driven compiling debugging
CN108628620B (en) * 2017-12-12 2021-11-23 百富计算机技术(深圳)有限公司 POS application development implementation method and device, computer equipment and storage medium
CN108628620A (en) * 2017-12-12 2018-10-09 百富计算机技术(深圳)有限公司 Implementation method, device, computer equipment and the storage medium of POS application and developments
CN110633118A (en) * 2018-06-21 2019-12-31 绍兴锋芒电子科技有限公司 Program self-making method, device and storage medium
CN109885311A (en) * 2019-01-28 2019-06-14 平安科技(深圳)有限公司 A kind of generation method and equipment of application program
CN109885311B (en) * 2019-01-28 2023-09-29 平安科技(深圳)有限公司 Application program generation method and device
CN109857406A (en) * 2019-02-15 2019-06-07 上海微小卫星工程中心 Satellite embedded software batch processing system and method
CN110502228A (en) * 2019-08-19 2019-11-26 上海艾卡士网络科技有限公司 A method of VR content creation and generation VR application program based on cloud platform
CN111381829A (en) * 2020-03-06 2020-07-07 北京达佳互联信息技术有限公司 Online programming method and device, electronic equipment and storage medium
CN111736841A (en) * 2020-05-25 2020-10-02 广东职业技术学院 Application integration development method and system based on mobile internet
CN111736841B (en) * 2020-05-25 2023-07-04 广东职业技术学院 Application integration development method and system based on mobile internet
CN112099797B (en) * 2020-08-19 2022-03-04 珠海格力电器股份有限公司 Industrial control screen based function setting method and device and industrial control screen
CN112099797A (en) * 2020-08-19 2020-12-18 珠海格力电器股份有限公司 Industrial control screen based function setting method and device and industrial control screen
CN113379388A (en) * 2021-06-18 2021-09-10 北京天健智慧科技有限公司 Method for switching subtask flow of remote physical examination reservation platform according to configuration parameters
CN113379388B (en) * 2021-06-18 2024-04-09 北京天健智慧科技有限公司 Method for remote physical examination reservation platform to switch subtask flows according to configuration parameters
CN114328149A (en) * 2021-12-13 2022-04-12 北京五八信息技术有限公司 Compiling time duration statistical method and device, electronic equipment and readable medium

Similar Documents

Publication Publication Date Title
CN103176774A (en) Compiling method, compiling device and compiling system of application program
CN104821954B (en) A kind of cross-platform remote procedure calling (PRC) method
CN103135979A (en) Method, device and system for generating terminal applications
CN103595770B (en) Method and device for achieving file downloading through SDK
CN110765013A (en) Automatic flow execution method and system
CN104573287B (en) The Digital Simulation frame design method of unified model is bound based on interface
CN109388667A (en) Modularization big data processing method, system and computer readable storage medium
CN102279766A (en) Method and system for concurrently simulating processors and scheduler
CN104516809A (en) Automated testing system and method
CN109445323B (en) WEB-based distributed intelligent measurement and control software platform design method
CN103279846A (en) Project acceptance method and system based on BIM model
CN107656729A (en) Updating device, method and the computer-readable recording medium of List View
CN107122626A (en) The method and system of the bioinformatic analysis of two generations sequencing DNA mutation detection
CN107370804A (en) Software application treating method and apparatus
CN108038241A (en) Integrated WEB visual workflows method, apparatus, readable storage medium storing program for executing and system
CN112395736A (en) Parallel simulation job scheduling method of distributed interactive simulation system
CN114115840B (en) Variable jump method and device for nuclear power station DCS system application software
CN104050193A (en) Message generating method and data processing system for realizing method
CN114595058A (en) Model training method and device based on GPU (graphics processing Unit) resources, electronic equipment and storage medium
CN109710303A (en) The multi version parallel developing method and system of interactive voice product
CN103309676A (en) Web service encapsulation method and system for ocean numerical modeling regional ocean modeling system (ROMS)
CN108804120A (en) A kind of page makeup method, apparatus, equipment and storage medium
CN110019207A (en) Data processing method and device and script display methods and device
CN106874129A (en) A kind of operating system process scheduling order determines method and control method
CN103809938A (en) Python function operation information automatic recording method and system

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20130626