CN111610982A - Method, device and related system for developing application program - Google Patents

Method, device and related system for developing application program Download PDF

Info

Publication number
CN111610982A
CN111610982A CN201910143169.5A CN201910143169A CN111610982A CN 111610982 A CN111610982 A CN 111610982A CN 201910143169 A CN201910143169 A CN 201910143169A CN 111610982 A CN111610982 A CN 111610982A
Authority
CN
China
Prior art keywords
application program
function
codes
module
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.)
Granted
Application number
CN201910143169.5A
Other languages
Chinese (zh)
Other versions
CN111610982B (en
Inventor
王玉鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201910143169.5A priority Critical patent/CN111610982B/en
Publication of CN111610982A publication Critical patent/CN111610982A/en
Application granted granted Critical
Publication of CN111610982B publication Critical patent/CN111610982B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

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

Abstract

The invention discloses a method, a device and a related system for developing an application program. The method comprises the following steps: packaging the function codes developed aiming at the specified functions and the resources required to be called for operating the function codes into function modules; storing at least one functional module in a native file directory of an application program and/or a cloud server; compiling and packaging the native codes comprising the basic codes, the resources to be called, the protocol engine for calling the functional module, the functional codes and the basic code calling mapping relation library; and obtaining an installation package containing the compiled native codes and the functional modules stored in the native file directory, or obtaining an installation package containing the compiled native codes. The application program is decoupled into different functional modules, and each functional module does not need to be compiled and installed, so that the trouble that the functional codes of the application program are modified each time to be compiled, packaged and installed again in a whole can be avoided, and the development and the update of the application program are more rapid and efficient.

Description

Method, device and related system for developing application program
Technical Field
The invention relates to the technical field of software development and service decoupling, in particular to a method, a device and a related system for developing an application program.
Background
In the development of the conventional android application, each time a source code project is modified, the modified source code project needs to be recompiled and packaged, and then the recompiled and packaged program package is installed on the mobile terminal device.
In the development process of each application, multiple times of debugging and modification of the source code are often required, each modification may be only a local change made to a problem on a certain aspect, and if the local modification needs to be recompiled, packaged and installed, time and labor are wasted.
Disclosure of Invention
In view of the above, the present invention has been developed to provide a method, apparatus, and related system for application development that overcome, or at least partially address, the above-identified problems.
In a first aspect, an embodiment of the present invention provides a method for developing an application program, including:
packaging the function codes developed aiming at the specified functions and the resources required to be called for operating the function codes into function modules;
storing at least one functional module into a native file directory of an application program and/or storing at least one functional module into a cloud server;
compiling and packaging a native code of an application program, wherein the native code comprises a basic code of the application program, a resource required to be called for running the application program, a protocol engine for calling the function module and a function code and basic code calling mapping relation library;
and obtaining an application program installation package containing the compiled application program native codes and the functional modules stored in the native file directory of the application program, or obtaining the application program installation package containing the compiled application program native codes.
In some alternative embodiments, the function code is a function code that includes a custom scripting language.
In some optional embodiments, after obtaining the application installation package, the method further includes:
pushing the application program installation package to a user terminal so that the user terminal can operate the installation package to install the application program and call corresponding resources to operate the application program;
and the user terminal calls a mapping relation library according to the function codes and the basic codes, calls the function codes which are downloaded from the original file directory and/or from the cloud server and need to be operated, and operates the called function codes on the corresponding protocol engine.
In some optional embodiments, after the functional module is packaged, the method further includes:
encrypting the packaged functional module according to a preset method; accordingly, the method can be used for solving the problems that,
and when the function code is called, decrypting the function module where the function code is located according to a corresponding method.
In some optional embodiments, after the function code is updated, the method further includes:
packaging the function codes and resources required to be called for running the function codes into new function modules, and storing the new function modules into a native file directory of an application program or a cloud server; obtaining an application program installation package containing compiled application program native codes and the functional module;
or, the function code and the resource required to be called for running the function code are packaged into a new function module, and the new function module is pushed to the user terminal;
or, the function codes and resources required to be called for running the function codes are packaged into new function modules, and the new function modules are stored in a cloud server.
In a second aspect, an embodiment of the present invention provides an apparatus for application development, including:
the encapsulation module is used for encapsulating the function codes developed aiming at the specified functions and the resources required to be called for operating the function codes into the function modules;
the storage module is used for storing the functional module packaged by the packaging module into a native file directory of an application program and/or storing the functional module into a cloud server;
the compiling and packaging module is used for compiling and packaging a native code of the application program, wherein the native code comprises a basic code of the application program, a resource required to be called when the application program is operated, a protocol engine used for calling the function module, and a mapping relation library called by the function code and the basic code;
and the obtaining module is used for obtaining an application program installation package containing the application program native code compiled by the compiling and packaging module and the function module stored in the native file directory of the application program by the storage module, or obtaining the application program installation package containing the application program native code compiled by the compiling and packaging module.
In a third aspect, an embodiment of the present invention provides a system for developing an application program, including:
the system comprises a development client and at least one user terminal, wherein the development client is provided with a device for developing the application program;
and the user terminal is used for operating the installation package to realize the installation of the application program after receiving the application program installation package pushed by the development client, and calling corresponding resources to operate the application program.
In some optional embodiments, the user terminal is specifically configured to:
and calling a mapping relation library according to the function codes and the basic codes, calling the function codes which are downloaded from the native file directory and/or the cloud server and need to be operated, and operating the called function codes on the corresponding protocol engine.
In some optional embodiments, the user terminal is further configured to:
and when the function code is called, decrypting the function module where the function code is located according to a corresponding method.
In a fourth aspect, embodiments of the present invention provide a computer-readable storage medium having stored thereon computer instructions, which when executed by a processor, implement the above-described method for application development.
The technical scheme provided by the embodiment of the invention has the beneficial effects that at least:
1. packaging the function codes developed aiming at the specified functions and the resources required to be called for operating the function codes into function modules; storing at least one functional module in a native file directory of an application program and/or a cloud server; compiling and packaging the native codes comprising the basic codes, the resources to be called, the protocol engine for calling the functional module, the functional codes and the basic code calling mapping relation library; and obtaining an installation package containing the compiled native codes and the functional modules stored in the native file directory, or obtaining an installation package containing the compiled native codes. The application program is decoupled out of the functional modules aiming at different functions, and each functional module does not need to be compiled and installed, so that the trouble of wholly compiling, packaging and reinstalling the functional codes of the application program again due to modification of the functional codes of the application program at each time can be avoided, time and labor are saved, unnecessary repeated work is reduced, and the development and the update of the application program are quicker and more efficient.
2. And storing the at least one functional module into a native file directory of the application program and/or storing the at least one functional module into the cloud server. All the functional modules are not stored in the native file directory of the application program, but some secondary functional modules are screened and stored in the cloud server and downloaded for use when needed, so that the load of the installation package can be reduced, the installation package is more convenient to transmit, and the storage space occupied by the installation package is reduced.
Additional features and advantages of the invention will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. The objectives and other advantages of the invention will be realized and attained by the structure particularly pointed out in the written description and claims hereof as well as the appended drawings.
The technical solution of the present invention is further described in detail by the accompanying drawings and embodiments.
Drawings
The accompanying drawings, which are included to provide a further understanding of the invention and are incorporated in and constitute a part of this specification, illustrate embodiments of the invention and together with the description serve to explain the principles of the invention and not to limit the invention. In the drawings:
FIG. 1 is a flow chart of a method for application development in an embodiment of the invention;
FIG. 2 is a flowchart illustrating a method for invoking a function code to be executed downloaded from a native file directory according to an embodiment of the present invention;
FIG. 3 is a schematic structural diagram of an apparatus for application development according to an embodiment of the present invention;
fig. 4 is a schematic structural diagram of the system for developing the application program according to the embodiment of the present invention.
Detailed Description
Exemplary embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While exemplary embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure may be embodied in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.
In order to solve the problem that time and labor are wasted because recompiling, packaging and installing are required to modify the source code of the application program every time in the prior art, the embodiment of the invention provides a method for developing the application program, recompiling, packaging and installing are not required to update the function code every time, so that a lot of repeated operations are avoided, and the development efficiency is improved.
Examples
The embodiment of the invention provides a method for developing an application program, the flow of which is shown in fig. 1, and the method comprises the following steps:
step S11: and encapsulating the function codes developed aiming at the specified functions and the resources required to be called for running the function codes into function modules.
That is, one functional module includes functional code that needs to be run to implement a corresponding function and resources that need to be called to run the functional code.
The resources to be called for running the function code may be pictures or configuration files. A configuration file is a collection of settings and files that an application system needs to load a desired environment for a user when using an application.
In one embodiment, the function code may be a function code containing a custom scripting language.
The functional codes are not traditional Java, C or C + + codes and the like, but higher-level custom script languages are used, and the functional codes can run in a CPU and a memory without being compiled in advance, so that the development and the quality improvement of the application programs are improved and the effect is improved.
Java is a primary object-oriented programming language, is a native development language of the android system, and can be run in a CPU and a memory only after being compiled in advance. C is a process-oriented programming language that needs to be compiled in advance to run in the CPU and memory. C + + is a superset of C, and can be used for procedural programming in C language, object-based programming featuring abstract data types, and object-oriented programming featuring inheritance and polymorphism, and can be compiled in advance to run in CPU and memory.
In one embodiment, after the functional module is packaged, the packaged functional module may be encrypted according to a preset method. The specific encryption algorithm can adopt a symmetric encryption algorithm or an asymmetric encryption algorithm.
Symmetric encryption: it refers to an encryption method using a single-key cryptosystem, in which the same key can be used for both encryption and decryption of information, and this encryption method is also called single-key encryption.
Asymmetric encryption: unlike symmetric encryption algorithms, asymmetric encryption algorithms require two keys: a public key and a private key. The public key and the private key are a pair, and if the public key is used for encrypting data, only the corresponding private key can be used for decrypting the data; if the data is encrypted with a private key, it can only be decrypted with the corresponding public key.
The symmetric encryption algorithm has the advantages of small calculated amount, high encryption and decryption speed and high efficiency; asymmetric encryption has the advantage of high security. Therefore, the symmetric encryption algorithm can be selected when the data volume is large and the security requirement is not so high, and the asymmetric encryption algorithm can be selected when the data volume is not so large and the security requirement is relatively high.
The packaged functional module is encrypted, so that the functional module can be prevented from being attacked and cracked by a third party.
Step S12: and storing the at least one functional module into a native file directory of the application program and/or storing the at least one functional module into the cloud server.
Some basic functions, such as a search function of map software, are directly used after a user installs an application program, and even when no network exists, offline search is possible. The functional modules for realizing the functions need to be stored in the native file directory of the application program, such as the alert directory of the android system.
Some functions are not so important, such as displaying a driving achievement ranking list, various operation activities and the like, and the functions can be used only when a user clicks a relevant page or has a network. The functional modules of the functions are not required to be put into a native file directory of the application program and stored in the cloud server. The function modules can be stored in a server distributed by the cloud and specially used for storing the function modules.
All the functional modules are not stored in the original file directory of the application program, but some secondary functional modules are screened and stored in the cloud server and downloaded for use when needed, so that the load of the installation package can be reduced, the installation package is more convenient to transmit, and the storage space occupied by the installation package is reduced.
The steps S11 and S12 may be executed after step S11 is executed, and then step S12 is executed. Or alternatively, two steps are performed alternately, and each time one functional module is packaged, or each time one functional module is packaged and encrypted, the functional module is stored in a native file directory of an application program or a cloud server.
Step S13: and compiling and packaging the native code of the application program.
The development of the application program in the embodiment of the invention can be redeveloped on the basis of the native code of the application program, but the development of the application program is not simply to fill in new code on the basis of the native code, but to develop each function to be developed into a functional module separately.
After the application program is installed and run in the mobile terminal, when the function module developed for each function is required to be run, the function code of the called function module is required to be run on the corresponding protocol engine. The protocol engine runs the function code through a relational library of function code and base code call mappings.
Therefore, the native code of the application program can comprise the basic code of the application program, the resource required to be called for running the application program, a protocol engine for calling the functional module and a functional code and basic code call mapping relation library.
Because the operation of each functional module is executed after being analyzed by the corresponding protocol engine, each functional module does not need to be compiled. The method is only needed to be placed at a corresponding position, downloaded when needed and operated through a protocol engine.
Step S14: and obtaining an application program installation package containing the compiled application program native codes and the functional modules stored in the native file directory of the application program, or obtaining the application program installation package containing the compiled application program native codes.
When one or more functional modules with corresponding functions are stored in a native file directory of the application program, the obtained application program installation package comprises compiled native codes of the application program and the functional modules; and when the native file directory of the application program does not store the functional module, the obtained application program installation package only contains the compiled native code of the application program.
According to the method, the application program is decoupled out of the functional modules aiming at different functions, each functional module does not need to be compiled and installed, the trouble that the functional codes of the application program are modified at every time and are compiled, packaged and installed again in a whole mode can be avoided, time and labor are saved, unnecessary repeated work is reduced, and the application program is developed more quickly and efficiently.
In an embodiment, after the application installation package is obtained, the application installation package is pushed to the user terminal, so that the user terminal runs the installation package to install the application, and calls a corresponding resource to run the application; the user terminal calls a mapping relation library according to the function codes and the basic codes, calls the function codes which are downloaded from the original file directory and/or from the cloud server and need to be operated, and operates the called function codes on the corresponding protocol engine.
When the function code to be run downloaded from the native file directory is called, as shown in fig. 2, the following steps may be specifically performed:
step S21: and searching whether a corresponding functional module exists in a preset directory.
If yes, go to step S22; if not, go to step S24.
Step S22: and judging whether the version meets the preset version requirement or not.
If yes, go to step S23; if not, step S24 is executed.
Step S23: and calling the function code of the corresponding function module.
If the corresponding functional module is decrypted, the functional module is called before, and the functional code is called directly; if the corresponding functional module is encrypted, the functional module is decrypted according to the corresponding algorithm, and then the functional code of the functional module is called.
Step S24: and copying the corresponding functional module from the original file directory of the application program to a preset directory, decrypting the functional module according to the corresponding method, and calling the functional code of the functional module.
Specifically, the preset directory may be a certain directory of the local space; the preset directory can also be a native file directory of the application program, and at this time, the preset directory does not need to be copied, and the preset directory is directly decrypted and the function code is called.
Specifically, the method for calling the function code to be executed downloaded from the cloud server is basically the same as the method for calling the function code to be executed downloaded from the raw file directory, but in step S24, the corresponding function module needs to be downloaded to the preset directory remotely through the network, and the function code is called by decrypting the function module according to the corresponding method.
In an alternative embodiment, when the function code is updated, any one of the following cases may be included:
1. the method comprises the steps of packaging a function code and a resource required to be called for running the function code into a new function module, and storing the new function module into a native file directory of an application program or a cloud server; and obtaining an application program installation package containing the compiled application program native codes and the function modules.
This situation requires a new installation package to be reinstalled and run.
2. And encapsulating the function codes and the resources required to be called for running the function codes into a new function module, and pushing the new function module to the user terminal. The user terminal can operate the corresponding function code after decryption only by storing the new function module in the native file directory of the application program.
3. And packaging the function codes and resources required to be called for running the function codes into new function modules, and storing the new function modules into the cloud server.
The user terminal needs to download a new function module on line, store the new function module in the appointed file directory, and operate the corresponding function code after decryption.
Based on the same inventive concept, an embodiment of the present invention further provides an apparatus for developing an application program, where the structure of the apparatus is shown in fig. 3, and the apparatus includes:
a packaging module 31, configured to package, as a function module, a function code developed for a specified function and a resource to be called for running the function code;
the saving module 32 is configured to store the functional module encapsulated by the at least one encapsulating module 31 in a native file directory of an application program and/or store the at least one functional module in a cloud server;
the compiling and packing module 33 is configured to compile and pack a native code of the application, where the native code includes a basic code of the application, a resource that needs to be called when the application is run, a protocol engine used for calling the function module, and a mapping relation library called by the function code and the basic code;
an obtaining module 34, configured to obtain an application installation package including the application native code compiled by the compiling and packaging module 33 and the function module stored in the native file directory of the application by the saving module 32, or obtain an application installation package including the application native code compiled by the compiling and packaging module 33.
In some optional embodiments, the apparatus for developing an application program may further include:
a pushing module 35, configured to push the application installation package obtained by the obtaining module 34 to the user terminal, so that the user terminal runs the installation package to implement installation of the application, and invokes a corresponding resource to run the application.
In some optional embodiments, the apparatus for developing an application program may further include:
and the encryption module 36 is configured to encrypt the functional module encapsulated by the encapsulation module 31 according to a preset method.
In some optional embodiments, the apparatus for developing an application program may further include:
the updating module 37 is configured to encapsulate, after the function code is updated, the function code and a resource that needs to be called for running the function code as a new function module, and store the new function module in a native file directory of an application program or a cloud server; obtaining an application program installation package containing compiled application program native codes and the functional module; or, the function code and the resource required to be called for running the function code are packaged into a new function module, and the new function module is pushed to the user terminal; or, the function codes and resources required to be called for running the function codes are packaged into new function modules, and the new function modules are stored in a cloud server.
With regard to the apparatus in the above-described embodiment, the specific manner in which each module performs the operation has been described in detail in the embodiment related to the method, and will not be elaborated here.
Based on the same inventive concept, an embodiment of the present invention further provides a system for developing an application program, where the structure of the system is shown in fig. 4, and the system includes:
a development client 41 and at least one user terminal 42, wherein the development client 41 is provided with a device for developing the application program;
the user terminal 42 is configured to receive the application installation package pushed by the development client 41, run the installation package to implement installation of the application, and call corresponding resources to run the application.
In some optional embodiments, the user terminal 42 is specifically configured to:
and calling a mapping relation library according to the function codes and the basic codes, calling the function codes which are downloaded from the native file directory and/or the cloud server and need to be operated, and operating the called function codes on the corresponding protocol engine.
In some optional embodiments, the user terminal 42 is further configured to:
and when the function code is called, decrypting the function module where the function code is located according to a corresponding method.
Based on the same inventive concept, the embodiment of the present invention also provides a computer readable storage medium, on which computer instructions are stored, and when the instructions are executed by a processor, the method for developing the application program is implemented.
Unless specifically stated otherwise, terms such as processing, computing, calculating, determining, displaying, or the like, may refer to an action and/or process of one or more processing or computing systems or similar devices that manipulates and transforms data represented as physical (e.g., electronic) quantities within the processing system's registers and memories into other data similarly represented as physical quantities within the processing system's memories, registers or other such information storage, transmission or display devices. Information and signals may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof.
It should be understood that the specific order or hierarchy of steps in the processes disclosed is an example of exemplary approaches. Based upon design preferences, it is understood that the specific order or hierarchy of steps in the processes may be rearranged without departing from the scope of the present disclosure. The accompanying method claims present elements of the various steps in a sample order, and are not intended to be limited to the specific order or hierarchy presented.
In the foregoing detailed description, various features are grouped together in a single embodiment for the purpose of streamlining the disclosure. This method of disclosure is not to be interpreted as reflecting an intention that the claimed embodiments of the subject matter require more features than are expressly recited in each claim. Rather, as the following claims reflect, invention lies in less than all features of a single disclosed embodiment. Thus, the following claims are hereby expressly incorporated into the detailed description, with each claim standing on its own as a separate preferred embodiment of the invention.
Those of skill would further appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure.
The steps of a method or algorithm described in connection with the embodiments disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor such the processor can read information from, and write information to, the storage medium. Of course, the storage medium may also be integral to the processor. The processor and the storage medium may reside in an ASIC. The ASIC may reside in a user terminal. Of course, the processor and the storage medium may reside as discrete components in a user terminal.
For a software implementation, the techniques described herein may be implemented with modules (e.g., procedures, functions, and so on) that perform the functions described herein. The software codes may be stored in memory units and executed by processors. The memory unit may be implemented within the processor or external to the processor, in which case it can be communicatively coupled to the processor via various means as is known in the art.
What has been described above includes examples of one or more embodiments. It is, of course, not possible to describe every conceivable combination of components or methodologies for purposes of describing the aforementioned embodiments, but one of ordinary skill in the art may recognize that many further combinations and permutations of various embodiments are possible. Accordingly, the embodiments described herein are intended to embrace all such alterations, modifications and variations that fall within the scope of the appended claims. Furthermore, to the extent that the term "includes" is used in either the detailed description or the claims, such term is intended to be inclusive in a manner similar to the term "comprising" as "comprising" is interpreted when employed as a transitional word in a claim. Furthermore, any use of the term "or" in the specification of the claims is intended to mean a "non-exclusive or".

Claims (10)

1. A method of application development, comprising:
packaging the function codes developed aiming at the specified functions and the resources required to be called for operating the function codes into function modules;
storing at least one functional module into a native file directory of an application program and/or storing at least one functional module into a cloud server;
compiling and packaging a native code of an application program, wherein the native code comprises a basic code of the application program, a resource required to be called for running the application program, a protocol engine for calling the function module and a function code and basic code calling mapping relation library;
and obtaining an application program installation package containing the compiled application program native codes and the functional modules stored in the native file directory of the application program, or obtaining the application program installation package containing the compiled application program native codes.
2. The method of claim 1, wherein the function code is a function code comprising a custom scripting language.
3. The method of claim 1, after obtaining the application installation package, further comprising:
pushing the application program installation package to a user terminal so that the user terminal can operate the installation package to install the application program and call corresponding resources to operate the application program;
and the user terminal calls a mapping relation library according to the function codes and the basic codes, calls the function codes which are downloaded from the original file directory and/or from the cloud server and need to be operated, and operates the called function codes on the corresponding protocol engine.
4. The method of claim 3, after encapsulating the functional module, further comprising:
encrypting the packaged functional module according to a preset method; accordingly, the method can be used for solving the problems that,
and when the function code is called, decrypting the function module where the function code is located according to a corresponding method.
5. The method of any of claims 1-4, wherein when the function code is updated, further comprising:
packaging the function codes and resources required to be called for running the function codes into new function modules, and storing the new function modules into a native file directory of an application program or a cloud server; obtaining an application program installation package containing compiled application program native codes and the functional module;
or, the function code and the resource required to be called for running the function code are packaged into a new function module, and the new function module is pushed to the user terminal;
or, the function codes and resources required to be called for running the function codes are packaged into new function modules, and the new function modules are stored in a cloud server.
6. An apparatus for application development, comprising:
the encapsulation module is used for encapsulating the function codes developed aiming at the specified functions and the resources required to be called for operating the function codes into the function modules;
the storage module is used for storing the functional module packaged by the packaging module into a native file directory of an application program and/or storing the functional module into a cloud server;
the compiling and packaging module is used for compiling and packaging a native code of the application program, wherein the native code comprises a basic code of the application program, a resource required to be called when the application program is operated, a protocol engine used for calling the function module, and a mapping relation library called by the function code and the basic code;
and the obtaining module is used for obtaining an application program installation package containing the application program native code compiled by the compiling and packaging module and the function module stored in the native file directory of the application program by the storage module, or obtaining the application program installation package containing the application program native code compiled by the compiling and packaging module.
7. A system for developing an application program, comprising a development client and at least one user terminal, wherein the development client is provided with the device for developing the application program according to claim 6;
and the user terminal is used for operating the installation package to realize the installation of the application program after receiving the application program installation package pushed by the development client, and calling corresponding resources to operate the application program.
8. The apparatus as claimed in claim 7, wherein said ue is specifically configured to:
and calling a mapping relation library according to the function codes and the basic codes, calling the function codes which are downloaded from the native file directory and/or the cloud server and need to be operated, and operating the called function codes on the corresponding protocol engine.
9. The apparatus of claim 8, wherein the user terminal is further configured to:
and when the function code is called, decrypting the function module where the function code is located according to a corresponding method.
10. A computer-readable storage medium having stored thereon computer instructions, which when executed by a processor, implement the method of application development of any of claims 1-5.
CN201910143169.5A 2019-02-26 2019-02-26 Application program development method, device and related system Active CN111610982B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910143169.5A CN111610982B (en) 2019-02-26 2019-02-26 Application program development method, device and related system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910143169.5A CN111610982B (en) 2019-02-26 2019-02-26 Application program development method, device and related system

Publications (2)

Publication Number Publication Date
CN111610982A true CN111610982A (en) 2020-09-01
CN111610982B CN111610982B (en) 2023-05-16

Family

ID=72205324

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910143169.5A Active CN111610982B (en) 2019-02-26 2019-02-26 Application program development method, device and related system

Country Status (1)

Country Link
CN (1) CN111610982B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113918170A (en) * 2021-11-19 2022-01-11 杭州涂鸦信息技术有限公司 Software product development method, device, equipment and medium
CN116991380A (en) * 2023-09-21 2023-11-03 腾讯科技(深圳)有限公司 Application program construction method and device, electronic equipment and storage medium

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105373390A (en) * 2015-12-03 2016-03-02 北京小鸟科技发展有限责任公司 OEM-oriented online software customization packaging release method and apparatus
CN105630522A (en) * 2014-10-31 2016-06-01 阿里巴巴集团控股有限公司 Web application updating method, apparatus and system
WO2017087801A1 (en) * 2015-11-20 2017-05-26 Google Inc. Dynamic update of an application in compilation and deployment
CN106919398A (en) * 2017-03-06 2017-07-04 山东浪潮云服务信息科技有限公司 A kind of software distribution method and device
CN107193544A (en) * 2017-04-01 2017-09-22 北京五八信息技术有限公司 A kind of application component melts forwarding method and device
US10007501B1 (en) * 2017-05-19 2018-06-26 Central South University Method of deploying applications rapidly based on customized android platform
CN108595200A (en) * 2018-04-19 2018-09-28 北京微播视界科技有限公司 Code update method, figure update method, device, storage medium and terminal
CN108897562A (en) * 2018-06-27 2018-11-27 腾讯科技(深圳)有限公司 Installation kit update method, device, medium and equipment

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105630522A (en) * 2014-10-31 2016-06-01 阿里巴巴集团控股有限公司 Web application updating method, apparatus and system
WO2017087801A1 (en) * 2015-11-20 2017-05-26 Google Inc. Dynamic update of an application in compilation and deployment
CN105373390A (en) * 2015-12-03 2016-03-02 北京小鸟科技发展有限责任公司 OEM-oriented online software customization packaging release method and apparatus
CN106919398A (en) * 2017-03-06 2017-07-04 山东浪潮云服务信息科技有限公司 A kind of software distribution method and device
CN107193544A (en) * 2017-04-01 2017-09-22 北京五八信息技术有限公司 A kind of application component melts forwarding method and device
US10007501B1 (en) * 2017-05-19 2018-06-26 Central South University Method of deploying applications rapidly based on customized android platform
CN108595200A (en) * 2018-04-19 2018-09-28 北京微播视界科技有限公司 Code update method, figure update method, device, storage medium and terminal
CN108897562A (en) * 2018-06-27 2018-11-27 腾讯科技(深圳)有限公司 Installation kit update method, device, medium and equipment

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
黎桐辛;韩心慧;简容;肖建国;: "支持加壳应用的Android非侵入式重打包方法研究" *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113918170A (en) * 2021-11-19 2022-01-11 杭州涂鸦信息技术有限公司 Software product development method, device, equipment and medium
CN116991380A (en) * 2023-09-21 2023-11-03 腾讯科技(深圳)有限公司 Application program construction method and device, electronic equipment and storage medium
CN116991380B (en) * 2023-09-21 2024-01-09 腾讯科技(深圳)有限公司 Application program construction method and device, electronic equipment and storage medium

Also Published As

Publication number Publication date
CN111610982B (en) 2023-05-16

Similar Documents

Publication Publication Date Title
US10152594B2 (en) Method and device for identifying virus APK
CN104731625B (en) A kind of method, apparatus and mobile terminal loading plug-in unit
JP6815385B2 (en) Systems and methods for code obfuscation of applications
US9600668B2 (en) Method and device for extracting characteristic code of APK virus
CN107168749B (en) Compiling method, device, equipment and computer readable storage medium
US20130185799A1 (en) Trusted installation of a software application
CN104462959A (en) Reinforcement protection method, sever and system for android app
CN104714827A (en) Plug-in update method and device
EP3296906A1 (en) Method for protecting dex file from being decompiled in android system
CN104965712A (en) Application reinforcing protection method and apparatus and mobile terminal
CN108647032B (en) Application loading method and device, computer device and computer readable storage medium
CN106415491B (en) Application protection method, server and terminal
CN108279941B (en) Application program compression method and device
CN111930382B (en) Application page access method, device and equipment
US9141363B2 (en) Application construction for execution on diverse computing infrastructures
CN111316230B (en) Method and equipment for generating patch package
CN105577813A (en) Update method and system for web hybrid application
CN107508846B (en) Updating method and system of application client and terminal equipment
CN111610982B (en) Application program development method, device and related system
US20170177395A1 (en) Embedded architecture based on process virtual machine
CN109343970B (en) Application program-based operation method and device, electronic equipment and computer medium
CN104156247A (en) Application upgrading method and device
CN105260200A (en) Processing method and device for upgrading operating system
CN110610080B (en) Application isolation implementation method, mobile terminal, computer equipment and storage medium
CN112416395A (en) Hot repair updating method and device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant