CN111176629A - Application development method and device - Google Patents

Application development method and device Download PDF

Info

Publication number
CN111176629A
CN111176629A CN201911347591.9A CN201911347591A CN111176629A CN 111176629 A CN111176629 A CN 111176629A CN 201911347591 A CN201911347591 A CN 201911347591A CN 111176629 A CN111176629 A CN 111176629A
Authority
CN
China
Prior art keywords
code
file
source code
label
uploading
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
CN201911347591.9A
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 Construction Bank Corp
Original Assignee
China Construction Bank Corp
CCB Finetech 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 Construction Bank Corp, CCB Finetech Co Ltd filed Critical China Construction Bank Corp
Priority to CN201911347591.9A priority Critical patent/CN111176629A/en
Publication of CN111176629A publication Critical patent/CN111176629A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis

Landscapes

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

Abstract

The invention discloses a method and a device for application development, and relates to the technical field of computers. One embodiment of the method comprises: writing a source code file by using a self-defined code writing language; performing syntax semantic analysis on the source code file to obtain a structured syntax tree; and prompting codes according to the structured syntax tree and a preset label file, and carrying out application development by using a self-defined code writing language. The implementation method can analyze the self-defined grammar semantics, thereby performing functions such as code prompt and self-defined label detection and improving the development efficiency.

Description

Application development method and device
Technical Field
The invention relates to the technical field of computers, in particular to a method and a device for application development.
Background
IDE is an Integrated Development Environment (Integrated Development Environment) abbreviation. The IDE is a programming software that integrates some of the basic tools, basic environments, and other ancillary functions that may be required in the development of a programmer's language. An IDE generally contains three main components: source code Editor (Editor), Compiler, Interpreter (Compiler, Interpreter), and Debugger (Debugger). Developers can access these components through a Graphical User Interface (GUI) and implement the entire code compilation, debugging, and execution process. Present IDEs also provide some high-level auxiliary functions that help programmers provide development efficiency, such as code highlighting, code completion and prompting, syntax error prompting, function tracing, breakpoint debugging, etc.
The integrated development environment is software for editing code, and each door language has its own integrated development environment. Each language corresponds to multiple programming development environments IDE, and different programming developers prefer different integrated development environments. Existing or reasonable, and every existing integrated development environment in the market has unique charm. In the field of mobile banking channels, due to the characteristics of diversity, safety, short development period, complex authority management, variable terminal services and the like of service requirements, a general language on the market cannot well solve the problem, and a language and a corresponding application framework need to be independently developed to solve the requirements.
In the prior art, common IDEs are available on the market, for example: the open source software development integration environment NetBeans IDE, the language grammar supported by NetBeans is a universal language in the market, the self-defined language grammar can not be adapted, the highlight of the self-defined language, the code completion and prompt, the prompt of grammar error, the function tracking, the breakpoint debugging and other functions can not be realized during the development, and the production efficiency can not be well improved.
In the process of implementing the invention, the inventor finds that at least the following problems exist in the prior art:
the existing integrated development environment cannot identify independent languages and grammars developed in the field of bank mobile financial channels, and cannot meet the functional requirements of highlighting codes of the independent languages, completing and prompting codes, prompting grammar errors, tracking functions, debugging breakpoints and the like.
Disclosure of Invention
In view of this, embodiments of the present invention provide a method and an apparatus for application development, which can analyze a customized syntax semantic, thereby performing functions such as code prompting and customized tag detection, and improving development efficiency.
To achieve the above object, according to an aspect of an embodiment of the present invention, there is provided a method of application development.
A method of application development, comprising: writing a source code file by using a self-defined code writing language; performing syntax semantic analysis on the source code file to obtain a structured syntax tree; and prompting codes according to the structured syntax tree and a preset label file, and carrying out application development by using the self-defined code writing language.
Optionally, the code prompting according to the structured syntax tree and a preset tag file includes: judging whether a label needs to be edited or not according to the structured syntax tree and the current input character; if so, acquiring the label type from a preset label file; and assembling the related label data structures into a data structure required by a prompt box to display according to the label type, and displaying through the prompt box to prompt a code.
Optionally, the current input character is obtained by: adding a keyboard monitoring event in the code editing part; and when the monitored event is a key event, acquiring the current input character from the information of the key event.
Optionally, the tag types include a component tag, an attribute tag, and an attribute value tag.
Optionally, after the application development is completed, the method further includes: uploading the code of the application to a server, wherein the uploading process comprises the following steps: compiling codes, packaging resources and uploading resources.
Optionally, after the uploading is successful, the method further includes: and generating a two-dimensional code, and downloading the application by the terminal equipment through scanning the two-dimensional code to perform real machine test.
Optionally, before uploading the code of the application to the server, the method further includes: acquiring all tags in a page and judging whether a designated tag exists; and if so, generating prompt content aiming at the specified label.
Optionally, the method further comprises: the source code file is functionally simulated by embedding a simulator in the integrated development environment.
Optionally, a bi-directional communication channel of messages between native functions and non-native functions is constructed based on an integrated development environment to enable communication between the source code file and the simulator.
Optionally, the communication process between the source code file and the simulator includes: writing a page style from the source code file to determine a layout of components on the page; responding to the triggering behavior of the page, and constructing a communication channel between the source code file and the simulator; registering and responding to monitoring at the integrated development environment end to call native functions through the simulator; and dynamically calling a specified method through a reflection mechanism according to the class name and the method name in the communication protocol, and returning a result to the page after the native function executes the specified method.
According to another aspect of the embodiments of the present invention, an apparatus for application development is provided.
An apparatus for application development, comprising: the code compiling module is used for compiling a source code file by using a self-defined code compiling language; the syntactic analysis module is used for carrying out syntactic semantic analysis on the source code file to obtain a structured syntactic tree; and the code prompting module is used for prompting codes according to the structured syntax tree and a preset label file so as to use the self-defined code writing language for application development.
According to another aspect of the embodiment of the invention, an electronic device for application development is provided.
An electronic device for application development, comprising: one or more processors; the storage device is used for storing one or more programs, and when the one or more programs are executed by the one or more processors, the one or more processors realize the method for application development provided by the embodiment of the invention.
According to yet another aspect of embodiments of the present invention, a computer-readable medium is provided.
A computer readable medium, on which a computer program is stored, which when executed by a processor implements a method of application development provided by an embodiment of the invention.
One embodiment of the above invention has the following advantages or benefits: writing a source code file by using a custom code writing language; performing syntax semantic analysis on the source code file to obtain a structured syntax tree; code prompting is carried out according to the structured syntax tree and a preset tag file, application development is carried out by using a self-defined code writing language, so that self-defined syntax semantics can be analyzed, functions such as code prompting, self-defined tag detection and the like are carried out, and the development efficiency is improved; by embedding a simulator and a debugging panel of a CEF assembly in an integrated development environment, the effect of immediate preview and debugging after code writing are realized; compiling, debugging, packaging and uploading the codes, and generating the two-dimensional codes are completed on the IDE, so that the development and debugging time is shortened, and the effect of previewing on a real machine can be realized by scanning the two-dimensional codes; finally, the cross-platform nature allows developers of different platforms to collaboratively develop the same set of code.
Further effects of the above-mentioned non-conventional alternatives will be described below in connection with the embodiments.
Drawings
The drawings are included to provide a better understanding of the invention and are not to be construed as unduly limiting the invention. Wherein:
FIG. 1 is a schematic diagram of the main steps of a method of application development according to an embodiment of the present invention;
FIG. 2 is a diagram of a parsing process according to an embodiment of the invention;
FIG. 3 is a code prompt flow diagram of an embodiment of the present invention;
FIG. 4 is a diagram illustrating the effect of code hints on component tags, in accordance with one embodiment of the present invention;
FIG. 5 is a schematic diagram of a code hint effect for an attribute tag in accordance with another embodiment of the present invention;
FIG. 6 is a diagram illustrating the effect of code hints on attribute value tags in accordance with yet another embodiment of the present invention;
FIG. 7 is a code upload process diagram of an embodiment of the present invention;
fig. 8 is a schematic diagram illustrating an implementation effect of generating a two-dimensional code according to an embodiment of the present invention;
FIG. 9 is a schematic view of a tag detection flow according to one embodiment of the present invention;
FIG. 10 is a schematic diagram of a host interface layout for an integrated development environment, according to one embodiment of the present invention;
FIG. 11 is a schematic diagram of a communication process between a page implemented by a source code file and a simulator according to an embodiment of the present invention;
FIG. 12 is a schematic diagram of the main modules of an apparatus for application development according to an embodiment of the present invention;
FIG. 13 is an exemplary system architecture diagram in which embodiments of the present invention may be employed;
fig. 14 is a schematic structural diagram of a computer system suitable for implementing a terminal device or a server according to an embodiment of the present invention.
Detailed Description
Exemplary embodiments of the present invention are described below with reference to the accompanying drawings, in which various details of embodiments of the invention are included to assist understanding, and which are to be considered as merely exemplary. Accordingly, those of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the invention. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
IDE is an Integrated Development Environment (Integrated Development Environment) abbreviation. The IDE is a piece of programming software, an application software that integrates some of the basic tools, basic environments, and other ancillary functions that would be required in the development of a programmer's language. An IDE generally contains several main components: code Editor (Editor), Compiler, Interpreter (Compiler, Interpreter), and Debugger (Debugger). Developers can access these components through a Graphical User Interface (GUI) and implement the entire code compilation, debugging, and execution process. Present IDEs also provide some high-level auxiliary functions that help programmers provide development efficiency, such as code highlighting, code completion and prompting, syntax error prompting, function tracing, breakpoint debugging, etc.
The integrated development environment is software for editing code, and each door language has its own integrated development environment. Each language corresponds to multiple programming development environments IDE, and different programming developers prefer different integrated development environments. Existing or reasonable, and every existing integrated development environment in the market has unique charm. In the field of mobile banking channels, due to the characteristics of diversity, safety, short development period, complex authority management, variable terminal services and the like of service requirements, a general language on the market cannot well solve the problem, and a language and a corresponding application framework need to be independently developed to solve the requirements.
Under the existing technical conditions, the general IDE on the market cannot identify the independent language and grammar developed in the field of bank mobile financial channels, and cannot meet the functional requirements of highlighting the code of the independent language, completing and prompting the code, prompting grammar error, tracing functions, debugging breakpoints and the like. In the development process of a developer, functions such as identity authentication, authority identification, authority management and the like need to be performed through some interfaces provided by a bank, and a general IDE in the market cannot perform one-to-one docking with the bank.
In the business developed based on the bank mobile financial channel, the normal development process is as follows: after receiving the requirements, the developer performs the work of service development, deployment, testing and the like on the development language, development framework and development environment specified by the line side. However, in the face of management problems generated by a huge developer group and requirements of the financial industry on the safety of business data and the like, the expert is urgently required to perform authority management, user authentication, transaction interface management and the like on the developed personnel, and the conventional general IDE on the market cannot meet the requirements. And because the user-defined development language, grammar and semantics are used, the general IDE in the market cannot well support the specific functional requirements of code prompt, high grammar brightness, real machine debugging and the like.
Therefore, how to provide a customized IDE for a developer in a service development process to solve the functional requirements of syntax and semantic analysis, syntax highlighting, code prompting, etc. for a specific development language, develop a corresponding functional interface aiming at the requirements of authority management, user authentication, etc., and use the developed customized IDE for application development is a technical problem to be solved by the present invention.
Fig. 1 is a schematic diagram of the main steps of a method of application development according to an embodiment of the present invention. As shown in fig. 1, the method for application development according to the embodiment of the present invention mainly includes the following steps S101 to S103.
Step S101: writing a source code file by using a self-defined code writing language;
step S102: performing syntax semantic analysis on the source code file to obtain a structured syntax tree;
step S103: and prompting codes according to the structured syntax tree and a preset label file, and carrying out application development by using a self-defined code writing language.
FIG. 2 is a diagram illustrating a parsing process according to an embodiment of the present invention. As shown in fig. 2, when the code editor edits and saves the code, the user starts a syntax parser of the code, the source code performs syntax semantic analysis through ANTLR, and then outputs a specified structured syntax tree, and the output structured syntax tree is subsequently used for code prompting, so that the syntax parser is added to the code prompting processor to perform the next code prompting processing.
According to an embodiment of the present invention, the process of performing code prompting according to the structured syntax tree and the preset tag file may mainly include: judging whether a label needs to be edited or not according to the structured syntax tree and the current input character; if so, acquiring the label type from a preset label file; and assembling the related label data structures into a data structure required by a prompt box to display according to the label type, and displaying through the prompt box to prompt a code.
Wherein, the current input character is obtained by the following method: adding a keyboard monitoring event in the code editing part; and when the monitored event is a key event, acquiring the current input character from the information of the key event.
In an embodiment of the present invention, the tag types include, for example, component tags, attribute tags, and attribute value tags.
Fig. 3 is a schematic code prompting flow diagram according to an embodiment of the present invention. As shown in fig. 3, first, a configuration file of the custom tag is read, and an example of the file configuration is, for example:
{
1,// component ID
"View",// tag name such as: < view > < view >, < switch >, etc
Type 1,// type 1 component tag 2 attribute tag 3 attribute value tag value
"relatettrsids" [1,2,3],// associated attribute tag ID
"nodeType":3,
"subTagIds":[]
}。
And reading a series of configuration files, constructing a cache data structure of the custom tag, and adding a keyboard monitoring event to the code editor. And when the user triggers the key event, the event processing is carried out, the source of the event triggering is judged, and whether the label needs to be edited or not is judged by combining the structured syntax tree and the current input character obtained from the key event. Specifically, if the trigger position of the key event meets the specification of the component tag, the data structure of the associated component tag is assembled into a data structure required by a code prompt box to display, the code is converted into a group, and the group is displayed through the prompt box to prompt the code. Among them, the specification of the component tag is, for example: and judging which part is in the range of [ < view class [ < bigLable > ] </view > ], wherein the view is a label name, the class is a label attribute, and the bigLable is a label attribute value according to the cursor position when the key event is triggered currently.
FIG. 4 is a diagram illustrating the effect of code hinting on component tags, according to an embodiment of the present invention. For example: when the keyboard of the user inputs '<' symbol, the editing of the component label is considered to be triggered, so that the corresponding label prompt is carried out on the code of the component label.
Fig. 5 is a schematic diagram of a code hint effect of an attribute tag according to another embodiment of the present invention. Fig. 6 is a schematic diagram illustrating a code hint effect of an attribute value tag according to yet another embodiment of the present invention. As can be seen from fig. 5 and 6, the cursor position at the time of code prompting of the trigger attribute tag and the trigger attribute value tag is different, that is, the current input position is different.
According to another embodiment of the present invention, after the application development is completed, the code of the application may be uploaded to a server, and the uploading process includes: compiling codes, packaging resources and uploading resources. In the prior art, the deployment of the application is generally realized by directly performing offline update on the developed application code by a server. The micro application developed by the invention does not need off-line updating.
After the code of the micro-application is written through the IDE, the micro-application item can be uploaded to the server, and the effect can be previewed on the real machine. The whole uploading process is mainly divided into 3 steps: compiling codes, packaging resources and uploading the resources to a server. And if the 3 steps are successfully executed, the micro application project is uploaded to the server, otherwise, a certain step is wrong or fails, the micro application project is not executed downwards, and the user is prompted as to which step is wrong and the reason of the failure.
Fig. 7 is a schematic diagram of a code uploading process according to an embodiment of the present invention. As shown in fig. 7, the code uploading process of the embodiment of the present invention mainly includes:
(1) compiling code
And calling a compiling command by using java, lang, Runtime, simultaneously monitoring a stream output during compiling, and using a regular matching mark of compiling failure and a mark of compiling success. If the compiling fails, the next execution is not performed, and error information and failure reasons are returned. If the compiling is successful, other steps are continued downwards. The compiling process supports the active interruption of a user, and the compiling process cannot be continuously executed downwards after interruption, so that the whole uploading process is finished;
(2) packaging resources
And packaging and compressing the directory where the code compiled in the last step is located, and using an org. If abnormity occurs during the packing compression, the down execution is not performed any more, and the abnormity information is returned. If the packing compression is successful, continuing to execute the next step;
(3) resource uploading
And sending a post request to the server by using the zip resource package and item information (comprising an AppID, an item remark, version information and the like) by using the httpclient. If the server returns the message of login overtime, the IDE will help the user to automatically log in, if the automatic login is overdue, the IDE will pop up the login window to let the user log in manually, and the user will continue to upload after the login is successful, otherwise, the IDE will cancel the upload. If the server returns a message exceeding the uploading size limit of the resource package, the user needs to be prompted to successfully upload the message after adjusting the size of the project. If the server returns the information that the AppID does not exist, the user needs to be prompted to check the filled AppID. If the uploading time is over due to network reasons, the user can click the re-uploading button, the resource packet can be re-uploaded to the server, and the two previous steps (compiling the project and packaging and compressing) are not required to be re-executed, so that the time of the user for re-waiting for uploading is greatly saved. And if the uploading of the resource packet is finished and no abnormal information is returned, prompting the user that the uploading is successful. And the uploading resource packet supports the active interruption of the user to the server, and the uploading is stopped after the interruption.
According to an embodiment of the present invention, after the micro application code is successfully uploaded, the following steps may be further performed: and generating a two-dimensional code, and downloading the application by scanning the two-dimensional code by the terminal equipment to perform real machine test.
Fig. 8 is a schematic diagram illustrating an implementation effect of generating a two-dimensional code according to an embodiment of the present invention. As shown in fig. 8, after the micro application code is uploaded through the IDE, a two-dimensional code as shown in the figure may also be generated, so that the terminal device may download the application by scanning the two-dimensional code, thereby facilitating the implementation of the real machine test.
According to the embodiment of the invention, before uploading the code of the application to the server, the label in the code of the application can be detected, and the specific process comprises the following steps: acquiring all tags in a page and judging whether a designated tag exists; and if so, generating prompt content aiming at the specified label.
In combination with the application scenario of the embodiment of the invention, for applications in the field of mobile finance, different banks can develop different applications, so that the micro applications can be divided into inline applications and non-inline applications. And when the tags of the pages are limited to be used, the uploading is stopped and the user is prompted which tag of the pages needs to be modified until the tags limited to be used are modified to the application tags in the row, and then the uploading can be continued. Generally, the IDE program has a configuration file inside to support configuring the in-line application specific tags, and all in-line application tags are configured in the configuration file.
FIG. 9 is a schematic diagram of a tag detection flow according to an embodiment of the present invention. As shown in fig. 9, the label detection process mainly includes the following steps:
(1) reading in-line labels
Reading the content of the in-line label configuration file, and storing the in-line labels in the Set. Meanwhile, the part of the tag from the specified beginning is intercepted as the tag for limiting use, and the tag for limiting use is stored in another Set.
(2) Traversing content of a page, matching tags
Json file, and traversing all page files of the pages. The content of each pagefile is read, and each line of the content is traversed. First, determine if the line is annotated, then not check the tag in the line, specifically, if the line is <! If the line is annotated, the next line is continuously traversed without performing label matching operation downwards; if the column is just <! The beginning does not end with- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -. If the line is not the annotated line, obtaining the label of the line by using regular matching, wherein the regular matching uses the Pattern class and the Matcher class under the java. After all the rows of the page file are traversed, the path of the page file is used as a key, and the set A of the tags which are stored and limited to be used is used as a value to be stored in the Map. And finally, judging whether the size () of the Map storing the limited use label is larger than 0, if so, traversing the Map storing the limited use label, and constructing the prompt content using the limited use label so as to guide the user to modify which label on which page.
According to another embodiment of the invention, in the application development process of the invention, a simulator can be embedded in the integrated development environment to perform functional simulation on the source code file. Therefore, the code is convenient to edit, modify and debug, and the application development efficiency is improved.
FIG. 10 is a diagram of a master interface layout for an integrated development environment, in accordance with an embodiment of the present invention. IDE is used as a development tool and is also graphical interface software, many functions need to develop a functional interface, if a set of graphical interface library is re-developed, the problems of high cost, long development period, unstable performance and the like undoubtedly occur, and a compromise scheme is to use a set of mature graphical interface scheme and perform customized development on the basis.
In the embodiment of the invention, the IDE selects Eclipse RCP as a graphic development library, and the interface is customized and developed on the basis. The Eclipse RCP is a function located in the core of an Eclipse platform, provides a standardized component model, comprises menus, toolbars and the like, provides rich interface controls, and enables desktop applications to be developed on the basis of Java easily.
In the layout diagram of the main interface of the IDE shown in fig. 10, the simulator and the debugging panel are open source browser groups CEF (Embedded Framework), and other interface parts are RCP (rich client Platform), SWT (Standard Widget Toolkit) components which are customized and developed according to requirements.
As shown in fig. 10, the left side is a simulator, a developer can edit codes on the right code editor and preview the effect of code functions in real time through the left simulator, and the left simulator is a Chromium Embedded Frame (CEF), which is an open-source Web browser control based on the Google Chromium project, supports Windows, Linux, and Mac platform, and provides a Java interface.
In the current development process of mobile financial services, a plurality of service scenes need to acquire user information of a current login mobile phone or open a camera to take a picture and acquire information such as geographic position, so that development and updating maintenance cost is reduced as much as possible, codes written by a front end can be developed and run at multiple ends at one time, the principle is developed, JavaScript plays a very important role, the JavaScript plays a role in bridging with other technologies, any mobile operating system comprises a container capable of running JavaScript, such as WebView and JSCore, and when the JavaScript is run without running other languages, a running environment needs to be additionally added. JSBridge is just such a bridge, which provides JavaScript with the ability to call Native, which can also manipulate JavaScript. Therefore, the front end part can conveniently use Native capabilities (Native functions) such as geographic positions, cameras and login payment. The JSbridge constructs a channel for message communication between the Native function Native and the non-Native function Native, and is a channel for two-way communication. Thus, in embodiments of the present invention, a bi-directional communication channel of messages between native functions and non-native functions is constructed based on an integrated development environment to enable communication between a source code file and a simulator.
The simulator acts as a mobile phone client, and provides the implementation of a Native interface in a front-end framework for a developer, for example, the developer needs to obtain user information of a current login user, or invokes the front-end framework to initiate a network request, and the like, and JSBridge in the IDE is a bridge for communication between a self-defined code writing language (e.g., H5) and a local function Native, and is used for implementing two-way communication between an H5 page and the Native. To realize the communication between the H5 page and Native, the following three problems are solved:
1. how JavaScript calls Java;
2. method parameters and how callbacks are handled;
3. what is the data format of the communication.
According to the embodiment of the invention, the communication process between the source code file and the simulator comprises the following steps: writing a page style through a source code file to determine a layout of components on a page; responding to the triggering behavior of the page, and constructing a communication channel between the source code file and the simulator; registering and responding to monitoring at an integrated development environment end to call a native function through a simulator; and dynamically calling the specified method through a reflection mechanism according to the class name and the method name in the communication protocol, and returning the result to the page after the native function executes the specified method.
FIG. 11 is a diagram illustrating a communication process between a page and a simulator implemented by a source code file according to an embodiment of the present invention. As shown in fig. 11, the communication process between the page and the simulator implemented by the source code file according to the embodiment of the present invention is mainly as follows:
1. writing a page style through a source code file to determine a layout of components on a page;
2. the JS writing trigger behavior corresponding to the page calls a front-end framework API, and corresponding codes of the JS writing trigger behavior are as follows:
the code simulating calling of front end framework API from the mobile phone terminal and initiating transaction through JSbridge
Figure BDA0002333818680000121
Figure BDA0002333818680000131
The front-end framework calls JSBridge as follows:
JSBridgePlugin JS bridge component
const JSBridgePlugin={
// CEF interface to browser calls (CEF component calls IDE)
cefQuery:function(success,error,requestJsonObj){
try{
V/interface conversion to string
var jsonStr=JSON.stringify(requestJsonObj);
Log ('JSBridgePlugin- -the json string of the request \ r \ n' + jsonStr);
JsBridgeRouter provides a JS bridge counterpart to CEF
V/initiate a network transaction by the query method in the jsBridgeRouter object and return the result to responseStrer
var responseStr=jsBridgeRouter.query(jsonStr);
// string to JSON object
var responseJson=JSON.parse(responseStr);
//console.log("result:"+JSON.stringify(responseJson.result));
V/callback front end frame success or failure interface according to status code
var result=responseJson.result;
var isSuccess=responseJson.isSuccess;
var statusCode=responseJson.statusCode;
// callback success interface
if(isSuccess){
success(result);
}else{
// callback failure interface
var jsonObj={};
jsonObj.error=result;
jsonObj.code=statusCode;
error(jsonObj);
}。
In this embodiment, JSBridge only provides a method for transferring character strings, and the communication protocol structure needs negotiation definition between the H5 end and the Native end, so the structure of the data communication protocol is defined as follows:
{
// class of methods requiring invocation
className:"AAANetwork",
Method name of// class
methodName:"request",
Method type parameters and incoming data
jsonnData: { data: "custom data body" }
};
3. And registering and monitoring at the IDE end and responding to the monitoring. For example: adding monitoring by using a method CefBrowserclient. addMessageRouter, owning callback of JS file by using an onQuery method, and calling a Native method in the callback method;
4. acquiring a class name and a method name in a communication protocol;
5. dynamically calling all implementation class methods exposed to the front end through a Java reflection mechanism;
6. calling back the Java corresponding class of the callback method in the JavaScript, and after the Native executes the implementation class method in the step 5, returning result data to a front end H5 page through CefBrowserclient.
Fig. 12 is a schematic diagram of main modules of an apparatus for application development according to an embodiment of the present invention. As shown in fig. 12, an apparatus 1200 for application development according to an embodiment of the present invention mainly includes a code writing module 1201, a syntax analysis module 1202, and a code prompting module 1203.
A code writing module 1201, configured to write a source code file using a custom code writing language;
a syntax analysis module 1202, configured to perform syntax and semantic analysis on the source code file to obtain a structured syntax tree;
and a code prompting module 1203, configured to perform code prompting according to the structured syntax tree and a preset tag file, so as to perform application development by using the customized code writing language.
According to an embodiment of the present invention, the code prompting module 1203 may be further configured to: judging whether a label needs to be edited or not according to the structured syntax tree and the current input character; if so, acquiring the label type from a preset label file; and assembling the related label data structures into a data structure required by a prompt box to display according to the label type, and displaying through the prompt box to prompt a code.
According to another embodiment of the present invention, the current input character is obtained by: adding a keyboard monitoring event in the code editing part; and when the monitored event is a key event, acquiring the current input character from the information of the key event.
According to yet another embodiment of the present invention, the tag types include a component tag, an attribute tag, and an attribute value tag.
According to an embodiment of the present invention, the apparatus 1200 for application development further includes a code uploading module (not shown in the figure) for: after the application development is completed, uploading the code of the application to a server, wherein the uploading process comprises the following steps: compiling codes, packaging resources and uploading resources.
According to another embodiment of the present invention, the apparatus 1200 for application development further includes a two-dimensional code generating module (not shown in the figure) for: and after the uploading is successful, generating a two-dimensional code, and downloading the application by the terminal equipment through scanning the two-dimensional code to perform real machine testing.
According to another embodiment of the present invention, the apparatus 1200 for application development further comprises a tag detection module (not shown in the figure) for: before uploading the code of the application to a server, acquiring all tags in a page and judging whether a designated tag exists; and if so, generating prompt content aiming at the specified label.
According to a further embodiment of the present invention, the apparatus 1200 for application development further comprises a simulation reality module (not shown in the figure) for: the source code file is functionally simulated by embedding a simulator in the integrated development environment.
According to an embodiment of the invention, a bi-directional communication channel of messages between native functions and non-native functions is constructed based on an integrated development environment to enable communication between the source code file and the simulator.
According to another embodiment of the present invention, the communication process between the source code file and the simulator includes: writing a page style from the source code file to determine a layout of components on the page; responding to the triggering behavior of the page, and constructing a communication channel between the source code file and the simulator; registering and responding to monitoring at the integrated development environment end to call native functions through the simulator; and dynamically calling a specified method through a reflection mechanism according to the class name and the method name in the communication protocol, and returning a result to the page after the native function executes the specified method.
According to the technical scheme of the embodiment of the invention, a source code file is written by using a self-defined code writing language; performing syntax semantic analysis on the source code file to obtain a structured syntax tree; code prompting is carried out according to the structured syntax tree and a preset tag file, application development is carried out by using a self-defined code writing language, so that self-defined syntax semantics can be analyzed, functions such as code prompting, self-defined tag detection and the like are carried out, and the development efficiency is improved; by embedding a simulator and a debugging panel of a CEF assembly in an integrated development environment, the effect of immediate preview and debugging after code writing are realized; compiling, debugging, packaging and uploading the codes, and generating the two-dimensional codes are completed on the IDE, so that the development and debugging time is shortened, and the effect of previewing on a real machine can be realized by scanning the two-dimensional codes; finally, the cross-platform nature allows developers of different platforms to collaboratively develop the same set of code.
Fig. 13 illustrates an exemplary system architecture 1300 to which the method of application development or apparatus of application development of embodiments of the present invention may be applied.
As shown in fig. 13, the system architecture 1300 may include terminal devices 1301, 1302, 1303, a network 1304, and a server 1305. The network 1304 is used to provide a medium for communication links between the terminal devices 1301, 1302, 1303 and the server 1305. The network 1304 may include various connection types, such as wired, wireless communication links, or fiber optic cables, among others.
A user may use terminal devices 1301, 1302, 1303 to interact with a server 1305 over a network 1304 to receive or send messages or the like. Various messaging client applications, such as shopping applications, web browser applications, search applications, instant messaging tools, mailbox clients, social platform software, etc. (examples only) may be installed on the terminal devices 1301, 1302, 1303.
Terminal devices 1301, 1302, 1303 may be various electronic devices having display screens and supporting web browsing, including but not limited to smart phones, tablet computers, laptop portable computers, desktop computers, and the like.
The server 1305 may be a server that provides various services, such as a background management server (for example only) that provides support for shopping websites browsed by users using the terminal devices 1301, 1302, 1303. The backend management server may analyze and perform other processing on the received data such as the product information query request, and feed back a processing result (for example, target push information, product information — just an example) to the terminal device.
It should be noted that the method for application development provided by the embodiment of the present invention is generally executed by the server 1305, and accordingly, an apparatus for application development is generally disposed in the server 1305.
It should be understood that the number of terminal devices, networks, and servers in fig. 13 is merely illustrative. There may be any number of terminal devices, networks, and servers, as desired for implementation.
Referring now to FIG. 14, shown is a block diagram of a computer system 1400 suitable for use with a terminal device or server implementing an embodiment of the present invention. The terminal device or the server shown in fig. 14 is only an example, and should not bring any limitation to the functions and the scope of use of the embodiments of the present invention.
As shown in fig. 14, the computer system 1400 includes a Central Processing Unit (CPU)1401, which can perform various appropriate actions and processes in accordance with a program stored in a Read Only Memory (ROM)1402 or a program loaded from a storage portion 1408 into a Random Access Memory (RAM) 1403. In the RAM 1403, various programs and data necessary for the operation of the system 1400 are also stored. The CPU 1401, ROM 1402, and RAM 1403 are connected to each other via a bus 1404. An input/output (I/O) interface 1405 is also connected to bus 1404.
The following components are connected to the I/O interface 1405: an input portion 1406 including a keyboard, a mouse, and the like; an output portion 1407 including a display such as a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), and the like, and a speaker and the like; a storage portion 1408 including a hard disk and the like; and a communication portion 1409 including a network interface card such as a LAN card, a modem, or the like. The communication section 1409 performs communication processing via a network such as the internet. The driver 1410 is also connected to the I/O interface 1405 as necessary. A removable medium 1411 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is mounted on the drive 1410 as necessary, so that a computer program read out therefrom is installed into the storage section 1408 as necessary.
In particular, according to the embodiments of the present disclosure, the processes described above with reference to the flowcharts may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program embodied on a computer readable medium, the computer program comprising program code for performing the method illustrated in the flow chart. In such an embodiment, the computer program may be downloaded and installed from a network via the communication portion 1409 and/or installed from the removable medium 1411. The computer program performs the above-described functions defined in the system of the present invention when executed by a Central Processing Unit (CPU) 1401.
It should be noted that the computer readable medium shown in the present invention can be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present invention, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In the present invention, however, a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, fiber optic cable, RF, etc., or any suitable combination of the foregoing.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams or flowchart illustration, and combinations of blocks in the block diagrams or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units or modules described in the embodiments of the present invention may be implemented by software, or may be implemented by hardware. The described units or modules may also be provided in a processor, and may be described as: a processor includes a code writing module, a parsing module, and a code hinting module. Where the names of such units or modules do not in some cases constitute a limitation on the unit or module itself, for example, a code writing module may also be described as a "module for writing a source code file using a custom code writing language".
As another aspect, the present invention also provides a computer-readable medium that may be contained in the apparatus described in the above embodiments; or may be separate and not incorporated into the device. The computer readable medium carries one or more programs which, when executed by a device, cause the device to comprise: writing a source code file by using a self-defined code writing language; performing syntax semantic analysis on the source code file to obtain a structured syntax tree; and prompting codes according to the structured syntax tree and a preset label file, and carrying out application development by using the self-defined code writing language.
According to the technical scheme of the embodiment of the invention, a source code file is written by using a self-defined code writing language; performing syntax semantic analysis on the source code file to obtain a structured syntax tree; code prompting is carried out according to the structured syntax tree and a preset tag file, application development is carried out by using a self-defined code writing language, so that self-defined syntax semantics can be analyzed, functions such as code prompting, self-defined tag detection and the like are carried out, and the development efficiency is improved; by embedding a simulator and a debugging panel of a CEF assembly in an integrated development environment, the effect of immediate preview and debugging after code writing are realized; compiling, debugging, packaging and uploading the codes, and generating the two-dimensional codes are completed on the IDE, so that the development and debugging time is shortened, and the effect of previewing on a real machine can be realized by scanning the two-dimensional codes; finally, the cross-platform nature allows developers of different platforms to collaboratively develop the same set of code.
The above-described embodiments should not be construed as limiting the scope of the invention. Those skilled in the art will appreciate that various modifications, combinations, sub-combinations, and substitutions can occur, depending on design requirements and other factors. Any modification, equivalent replacement, and improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims (13)

1. A method of application development, comprising:
writing a source code file by using a self-defined code writing language;
performing syntax semantic analysis on the source code file to obtain a structured syntax tree;
and prompting codes according to the structured syntax tree and a preset label file, and carrying out application development by using the self-defined code writing language.
2. The method of claim 1, wherein code hinting according to the structured syntax tree and a preset tag file comprises:
judging whether a label needs to be edited or not according to the structured syntax tree and the current input character;
if so, acquiring the label type from a preset label file;
and assembling the related label data structures into a data structure required by a prompt box to display according to the label type, and displaying through the prompt box to prompt a code.
3. The method of claim 2, wherein the current input character is obtained by:
adding a keyboard monitoring event in the code editing part;
and when the monitored event is a key event, acquiring the current input character from the information of the key event.
4. The method of claim 2, wherein the tag types include component tags, attribute tags, and attribute value tags.
5. The method of claim 1, wherein after application development is complete, the method further comprises:
uploading the code of the application to a server, wherein the uploading process comprises the following steps: compiling codes, packaging resources and uploading resources.
6. The method of claim 5, wherein after the uploading is successful, further comprising:
and generating a two-dimensional code, and downloading the application by the terminal equipment through scanning the two-dimensional code to perform real machine test.
7. The method of claim 5, prior to uploading the code of the application to the server, further comprising:
acquiring all tags in a page and judging whether a designated tag exists;
and if so, generating prompt content aiming at the specified label.
8. The method of claim 1, further comprising:
the source code file is functionally simulated by embedding a simulator in the integrated development environment.
9. The method of claim 8, wherein a bi-directional communication channel of messages between native and non-native functions is constructed based on an integrated development environment to enable communication between the source code file and the simulator.
10. The method of claim 8 or 9, wherein the communication process between the source code file and the simulator comprises:
writing a page style from the source code file to determine a layout of components on the page;
responding to the triggering behavior of the page, and constructing a communication channel between the source code file and the simulator;
registering and responding to monitoring at the integrated development environment end to call native functions through the simulator;
and dynamically calling a specified method through a reflection mechanism according to the class name and the method name in the communication protocol, and returning a result to the page after the native function executes the specified method.
11. An apparatus for application development, comprising:
the code compiling module is used for compiling a source code file by using a self-defined code compiling language;
the syntactic analysis module is used for carrying out syntactic semantic analysis on the source code file to obtain a structured syntactic tree;
and the code prompting module is used for prompting codes according to the structured syntax tree and a preset label file so as to use the self-defined code writing language for application development.
12. An electronic device for application development, comprising:
one or more processors;
a storage device for storing one or more programs,
when executed by the one or more processors, cause the one or more processors to implement the method of any one of claims 1-10.
13. A computer-readable medium, on which a computer program is stored, which, when being executed by a processor, carries out the method according to any one of claims 1-10.
CN201911347591.9A 2019-12-24 2019-12-24 Application development method and device Pending CN111176629A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911347591.9A CN111176629A (en) 2019-12-24 2019-12-24 Application development method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911347591.9A CN111176629A (en) 2019-12-24 2019-12-24 Application development method and device

Publications (1)

Publication Number Publication Date
CN111176629A true CN111176629A (en) 2020-05-19

Family

ID=70657441

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911347591.9A Pending CN111176629A (en) 2019-12-24 2019-12-24 Application development method and device

Country Status (1)

Country Link
CN (1) CN111176629A (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111857710A (en) * 2020-06-18 2020-10-30 远光软件股份有限公司 Method and device for developing Eclipse plug-in based on embedded chromium
CN111984241A (en) * 2020-07-08 2020-11-24 福建亿能达信息技术股份有限公司 Method, device, equipment and medium for dynamically taking effect of online codes
CN112882690A (en) * 2021-01-28 2021-06-01 北京字节跳动网络技术有限公司 Application development method and device
CN113360406A (en) * 2021-07-01 2021-09-07 上海哔哩哔哩科技有限公司 Method and device for testing JSbridge method of application program
CN113535153A (en) * 2021-07-13 2021-10-22 中国工商银行股份有限公司 Method, device, equipment and medium for encoding custom label
CN113741900A (en) * 2021-08-31 2021-12-03 广州数励科技有限公司 Development method and device for front-end page application and related equipment
CN113835681A (en) * 2021-08-18 2021-12-24 华建数创(上海)科技有限公司 Method for realizing project making of intelligent operation management center through editor

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1991765A (en) * 2005-12-29 2007-07-04 北京金远见电脑技术有限公司 Developing apparatus and method for hand-held terminal application program
CN105357323A (en) * 2015-12-11 2016-02-24 北京京东尚科信息技术有限公司 HTML5 page debugging method and device in APP
CN105389222A (en) * 2015-12-15 2016-03-09 中国科学院声学研究所 Method, apparatus and system for dynamically calling native interface
US20170139690A1 (en) * 2015-11-16 2017-05-18 Sap Se Universal transcompiling framework
CN107239264A (en) * 2016-03-28 2017-10-10 阿里巴巴集团控股有限公司 The generation method and device of code prompt message
CN107704238A (en) * 2017-11-28 2018-02-16 广州市千钧网络科技有限公司 A kind of method and device packed to project
CN107943481A (en) * 2017-05-23 2018-04-20 清华大学 C programmer code specification building method based on multi-model
CN109491924A (en) * 2018-12-21 2019-03-19 北京达佳互联信息技术有限公司 Code detection method, device, terminal and storage medium
CN109683907A (en) * 2018-12-29 2019-04-26 深圳乐信软件技术有限公司 Code completion method, apparatus, equipment and storage medium
CN109783081A (en) * 2018-12-27 2019-05-21 百富计算机技术(深圳)有限公司 A kind of development approach of application program, device and Integrated Development Tool
CN109976831A (en) * 2019-03-28 2019-07-05 山东浪潮通软信息科技有限公司 Data interactive method between a kind of JavaScript and primary APP
CN110502227A (en) * 2019-08-28 2019-11-26 网易(杭州)网络有限公司 The method and device of code completion, storage medium, electronic equipment

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1991765A (en) * 2005-12-29 2007-07-04 北京金远见电脑技术有限公司 Developing apparatus and method for hand-held terminal application program
US20170139690A1 (en) * 2015-11-16 2017-05-18 Sap Se Universal transcompiling framework
CN105357323A (en) * 2015-12-11 2016-02-24 北京京东尚科信息技术有限公司 HTML5 page debugging method and device in APP
CN105389222A (en) * 2015-12-15 2016-03-09 中国科学院声学研究所 Method, apparatus and system for dynamically calling native interface
CN107239264A (en) * 2016-03-28 2017-10-10 阿里巴巴集团控股有限公司 The generation method and device of code prompt message
CN107943481A (en) * 2017-05-23 2018-04-20 清华大学 C programmer code specification building method based on multi-model
CN107704238A (en) * 2017-11-28 2018-02-16 广州市千钧网络科技有限公司 A kind of method and device packed to project
CN109491924A (en) * 2018-12-21 2019-03-19 北京达佳互联信息技术有限公司 Code detection method, device, terminal and storage medium
CN109783081A (en) * 2018-12-27 2019-05-21 百富计算机技术(深圳)有限公司 A kind of development approach of application program, device and Integrated Development Tool
CN109683907A (en) * 2018-12-29 2019-04-26 深圳乐信软件技术有限公司 Code completion method, apparatus, equipment and storage medium
CN109976831A (en) * 2019-03-28 2019-07-05 山东浪潮通软信息科技有限公司 Data interactive method between a kind of JavaScript and primary APP
CN110502227A (en) * 2019-08-28 2019-11-26 网易(杭州)网络有限公司 The method and device of code completion, storage medium, electronic equipment

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
《DREAMWEAVER网页设计与制作》课程组: "《Dreamweaver网页设计与制作》", 北京航空航天大学出版社, pages: 270 - 277 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111857710A (en) * 2020-06-18 2020-10-30 远光软件股份有限公司 Method and device for developing Eclipse plug-in based on embedded chromium
CN111984241A (en) * 2020-07-08 2020-11-24 福建亿能达信息技术股份有限公司 Method, device, equipment and medium for dynamically taking effect of online codes
CN112882690A (en) * 2021-01-28 2021-06-01 北京字节跳动网络技术有限公司 Application development method and device
CN112882690B (en) * 2021-01-28 2024-04-19 抖音视界有限公司 Application development method and device
CN113360406A (en) * 2021-07-01 2021-09-07 上海哔哩哔哩科技有限公司 Method and device for testing JSbridge method of application program
CN113535153A (en) * 2021-07-13 2021-10-22 中国工商银行股份有限公司 Method, device, equipment and medium for encoding custom label
CN113835681A (en) * 2021-08-18 2021-12-24 华建数创(上海)科技有限公司 Method for realizing project making of intelligent operation management center through editor
CN113741900A (en) * 2021-08-31 2021-12-03 广州数励科技有限公司 Development method and device for front-end page application and related equipment
CN113741900B (en) * 2021-08-31 2024-03-19 广州数励科技有限公司 Development method and device of front-end page application and related equipment

Similar Documents

Publication Publication Date Title
CN111176629A (en) Application development method and device
CN110928529B (en) Method and system for assisting operator development
WO2018228211A1 (en) Application conversion method, apparatus and device
CN110531962B (en) Development processing method and device for applet and computer readable storage medium
US10540262B2 (en) Using edit and continue to dynamically set and unset optimizations in source code while debugging
US9223570B2 (en) Migration assistance using compiler metadata
CN102667730A (en) Design time debugging
CN111740948B (en) Data packet issuing method, dynamic updating method, device, equipment and medium
CN110895471A (en) Installation package generation method, device, medium and electronic equipment
CN111399840A (en) Module development method and device
CN111338925A (en) Applet test method, device and system, electronic equipment and storage medium
CN112328219A (en) Service access processing method, device and system and computer equipment
CN115658529A (en) Automatic testing method for user page and related equipment
CN115525282A (en) Method for realizing cross-platform desktop application program and related equipment thereof
CN112988165A (en) Kubernetes-based interactive modeling method and device, electronic equipment and storage medium
CN114217789A (en) Function component expansion method, device, equipment, storage medium and program product
CN112988588B (en) Client software debugging method and device, storage medium and electronic equipment
CN114253537A (en) Form generation method and device, electronic equipment and storage medium
CN113778897A (en) Automatic test method, device, equipment and storage medium of interface
CN110045952B (en) Code calling method and device
CN112631563A (en) System development method and device based on framework, computer equipment and storage medium
CN110018831B (en) Program processing method, program processing apparatus, and computer-readable storage medium
CN111258802A (en) Method for capturing application program crash information and related equipment
CN111459810A (en) Method of constructing application program, programming apparatus, and computer-readable storage medium
US11573787B1 (en) Hot reloading a running application with an unsaved source code change

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
TA01 Transfer of patent application right

Effective date of registration: 20220920

Address after: 25 Financial Street, Xicheng District, Beijing 100033

Applicant after: CHINA CONSTRUCTION BANK Corp.

Address before: 25 Financial Street, Xicheng District, Beijing 100033

Applicant before: CHINA CONSTRUCTION BANK Corp.

Applicant before: Jianxin Financial Science and Technology Co.,Ltd.

TA01 Transfer of patent application right