CN117348948A - Applet engine running on self-contained App - Google Patents

Applet engine running on self-contained App Download PDF

Info

Publication number
CN117348948A
CN117348948A CN202311647205.4A CN202311647205A CN117348948A CN 117348948 A CN117348948 A CN 117348948A CN 202311647205 A CN202311647205 A CN 202311647205A CN 117348948 A CN117348948 A CN 117348948A
Authority
CN
China
Prior art keywords
applet
file
engine
app
jsx
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
CN202311647205.4A
Other languages
Chinese (zh)
Other versions
CN117348948B (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.)
Nanjing Zhangkong Network Science & Technology Co ltd
Original Assignee
Nanjing Zhangkong Network Science & Technology 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 Nanjing Zhangkong Network Science & Technology Co ltd filed Critical Nanjing Zhangkong Network Science & Technology Co ltd
Priority to CN202311647205.4A priority Critical patent/CN117348948B/en
Publication of CN117348948A publication Critical patent/CN117348948A/en
Application granted granted Critical
Publication of CN117348948B publication Critical patent/CN117348948B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/658Incremental updates; Differential updates
    • 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

Abstract

The invention provides an applet engine running on an own App, which is integrated in the own App through an interface and a mechanism on the own App; the applet engine comprises a compiler and a document object model interface; the compiler is used for acquiring an applet file sent by the own App in response to the triggering operation of a user, converting the applet file into a JSX component and then sending the JSX component to the document object model interface; the document object model interface is used for activating the JSX component to enable the JSX component to run, and transmitting the rendering instruction generated by the JSX component during running to the rendering engine of the self-owned App to enable the rendering engine to complete the rendering of the applet page in the self-owned App. The applet engine can run the applet directly on the owned App independent of the third party platform.

Description

Applet engine running on self-contained App
Technical Field
The invention relates to the technical field of computers, in particular to an applet engine running on an own App.
Background
With the rapid development of the mobile internet, more and more enterprises and individuals begin to use WeChat applets, payment treasures applets and the like to expand services. However, these third party platforms have limited applet functionality and require frequent data interactions with the backend server, resulting in significant limitations.
Currently, some applet engines based on cloud protogenesis, such as FinClip, mpaas, uniapp, etc., appear on the market. Although these engines promote a certain development efficiency, there are certain limitations such as the need to additionally build a server environment, lower data security, and the like.
FinClip: finClip is a solution to embed an applet in an App, similar to the present invention. However, an additional server environment needs to be built, the data security is low, and the server environment depends on specific tools such as FinCinp IDE.
mpaas: mpaas is a mobile development platform, providing an integrated solution for applet, app development. But the complexity of switching between different platforms is too high and the security of the data is low depending on the third party platform.
uniapp: uniapp is a cross-platform application development framework that supports compiling code to different platforms. Although having high development efficiency, frequent data interaction with the backend server is still required, and depends on a specific tool such as HBuilder X. And uniapp still needs to publish different versions of applications on different platforms.
Thus, existing applet container techniques have the following problems:
1. additional building of server environments
2. Data security is low
3. Relying on a third party platform
4. Dependent on particular tools such as FinCinp IDE, HBuilder X, etc
5. Frequent data interactions with the backend server are required.
Disclosure of Invention
The invention aims to: the present invention aims at least partially to overcome the drawbacks of the prior art by proposing an applet engine running on an own App, which engine is able to run applets directly on an own App independently of a third party platform.
The invention comprises the following steps: in order to achieve the above purpose, the present invention proposes the following technical solutions:
an applet engine running on an owned App, the applet engine integrated in the owned App through an interface and mechanism on the owned App; the applet engine comprises a compiler and a document object model interface;
the compiler is used for acquiring an applet file sent by the own App in response to the triggering operation of a user, converting the applet file into a JSX component and then sending the JSX component to the document object model interface;
the document object model interface is used for activating the JSX component to enable the JSX component to run, and transmitting the rendering instruction generated by the JSX component during running to the rendering engine of the self-owned App to enable the rendering engine to complete the rendering of the applet page in the self-owned App.
In some possible implementations, after the applet engine accesses the native App, the native App preloads network resources and the rendering engine.
In some possible embodiments, the applet engine further has an offline package delta update mechanism, specifically including:
acquiring an original version file and a target version file of the applet file;
calculating a hash value of the original version file to obtain a first hash value;
calculating a hash value of the target version file to obtain a second hash value;
determining whether the original version file and the target version file are identical based on the first hash value and the second hash value; if the original version file and the target version file are different, generating a difference file by adopting a difference algorithm based on the original version file and the target version file, wherein the difference file is used for describing all the change contents from the original version file to the target version file;
packaging the difference file into an incremental update package;
validating said delta update package to ensure that it can be properly applied to said original version file to generate said target version file;
and issuing the increment update package.
In some possible implementations, the offline package delta update further includes:
and realizing an updating program at the user end, wherein the updating program can download the increment updating package and apply the increment updating package to the original version file so as to generate the target version file.
In some possible embodiments, the applet file is written from JS and Rust; the compiler converts the applet file into the JSX component, specifically comprising:
constructing a parser by using a parser generator library in Rust, and constructing a corresponding grammar tree for the WXML file in the applet file;
traversing the grammar tree, and converting each WXML element and attribute in the grammar tree into a corresponding JSX code;
and recombining the converted JSX grammar tree into a JSX code in the form of a character string to obtain the JSX component.
In some possible implementations, the document object model interface activates the JSX component to cause the JSX component to operate, specifically including:
judging the type of the applet file;
rendering pages and components which do not contain canvas elements in the applet file in a virtual DOM mode;
and (3) performing data hijacking by adopting the Reflect to realize rendering of canvas elements in the applet file.
In some possible embodiments, if the native App is an ios application, a Nitro engine is employed as the applet engine.
In some possible embodiments, if the native App is an android application, a webkit v8 engine is employed as the applet engine.
In some possible embodiments, the applet engine uses an IO channel to transmit data to enable data interaction with the native App.
In some possible embodiments, the rendering engine is further configured to add an entry button on a start page or a main interface of the owned App, and the user may enter the applet page by clicking the entry button.
The beneficial effects are that: compared with the prior art, the invention has the following advantages:
the invention constructs the front end frame containing the compiler and the document object model interface through the applet container integration technology, and provides a scheme for directly running the applet in the own App without depending on a third party platform by interacting with a rendering engine in the own App.
Drawings
FIG. 1 is a schematic diagram of an applet front end framework according to an embodiment;
fig. 2 is a workflow diagram of an applet engine according to an embodiment.
Detailed Description
The invention will be further described with reference to the drawings and the specific examples. It is to be understood that the invention may be embodied in various forms and that the exemplary and non-limiting embodiments shown in the drawings and described below are not intended to limit the invention to the specific embodiments described.
It is to be understood that the technical features listed above for the different embodiments may be combined with each other where technically feasible to form further embodiments within the scope of the invention. Furthermore, the particular examples and embodiments described herein are not limiting and corresponding modifications may be made to the structures, steps, and sequences set forth above without departing from the scope of the invention.
The present embodiment proposes an applet engine running on an own App to at least partially overcome the technical drawbacks described above.
Referring to FIG. 1, FIG. 1 illustratively shows a front end framework of an applet engine integrated on an owned App, comprising: the rendering engine Webview, compiler, and document object model interface DOM. The rendering engine Webview is a rendering engine with an App and is used for responding to the triggering operation of a user to send a corresponding applet file to the compiler, the rendering engine can add an entry button on a starting page or a main interface of the App, and the user can enter the applet page by clicking the entry button. The compiler is used to convert the applet file into JSX components, which are then sent to the document object model interface DOM. The document object model interface DOM is used for activating the JSX component so as to enable the JSX component to operate, a rendering instruction generated when the JSX component operates is transmitted to a rendering engine, the rendering engine executes the rendering instruction, and the applet page rendering is completed in the self App.
Through the scheme, the applet engine can directly run the applet on the own App without depending on a third party platform.
The components of the front end frame structure described above are described in detail below in conjunction with fig. 2.
Referring to fig. 2, fig. 2 shows a workflow diagram of the applet engine according to the present embodiment, the flow is as follows:
firstly, a user selects a button of an applet from a page provided by a rendering engine Webview of an App to trigger the applet engine to work.
After the triggering operation of the user, the rendering engine Webview sends the applet file to be run by the user to the compiler.
The compiler compiles the applet file into a JSX component and sends it to the document object model interface DOM.
The document object model interface DOM judges the type of the received applet file, and then executes different data comparison algorithms according to the type of the applet file to update nodes of the DOM tree, thereby determining rendering modes of different elements in the page to be rendered. For example, it may be determined whether the type of applet file is a WeChat applet, and if so, the node is updated using a data diff algorithm (data contrast algorithm). If not, the nodes are updated using the vdom diff algorithm (virtual node contrast algorithm).
After the DOM of the document object model interface finishes node updating of the DOM tree, a rendering instruction is sent to webview, so that the webview executes the rendering instruction, and the rendering of the applet page is realized.
In this embodiment, the applet engine is integrated into the native App through interfaces and mechanisms on the native App using applet container principles. In the native App, a lightweight WebView (WebView is a network view component, can load and display a webpage and can be regarded as a browser) is used as a rendering engine of the applet, so that better performance and user experience are provided, and meanwhile, the native sandbox isolation of the iframe can be utilized to isolate the applet from the native App, so that the native App and the applet are not mutually influenced in operation, and the stability of the operation of the native App and the applet is ensured.
In the applet engine, various APIs and component libraries, such as JavaScript, CSS, pictures and the like, are integrated to support the basic functions and characteristics of the applet, and a complete applet development tool chain is also provided, including a code editor, a debugger, a simulator and the like, so as to facilitate development and test of a developer; thermal updating and version management of the applet is also supported to improve the iterative efficiency and quality of the applet.
In the applet container, various applets are stored, the applet files being written from JS and Rust, containing files in the wxml/wxss/JS format. To parse applet files, in our applet ecology, esbuild is used to process the wxml portions written by JS and Rust. The esbuild is a quick and extensible JavaScript and TypeScript construction tool, can convert a small program file (wxml/wxs/js) into a JSX format understood by the act, simplifies a complex task, can process a large number of IO operations at the same time, and has extremely high compiling speed.
In the process of converting the applet file into JSX components by the compiler, esbuild can be employed to process the js portion of the applet file. Rust is a system level programming language, and Rust written code can be used to parse WXML part files in applet files and JSX components after applet conversion, and construct corresponding syntax trees.
Specifically, the conversion of applet files into JSX components can take the following specific steps:
realizing a parser by using a parser generator library (such as pest) in Rust, and constructing a corresponding grammar tree for the WXML file;
traversing the syntax tree of the WXML and converting each WXML element and attribute into a corresponding JSX code. Some grammatical differences may need to be handled at this step, such as differences in tags, naming of attributes, etc.
And finally, recombining the converted JSX grammar tree into a JSX code in the form of a character string to obtain the JSX component.
After the JSX component is created. The next step is to activate this component, let it run, and transfer the generated instructions to Webview. webview is a logical-free, purely controlled rendering, and therefore, gives rendering instructions to the built-in applet engine for processing. In some specific embodiments, we implement page rendering using a virtual DOM and a policy that uses the data hijacking DOM operation of reflectance.
The Chinese meaning of DOM is "document object model", which is an interface irrelevant to browser, platform and language, and all standard components in the page can be easily accessed by using the interface; DOM operations can be divided into three aspects, namely DOM Core (Core), HTM-DOM, and CSS-DOM. DOM operations in JQuery mainly include: new, add, delete, modify, and find DOM nodes.
In this embodiment, the rendering of the common page and the component is implemented by adopting a virtual DOM mode, that is, the rendering of the page and the component which do not include special elements such as Canvas (Canvas) is implemented by data hijacking of the Reflect.
Specifically, a fetch synchronization request is used when implementing a Canvas rendering graphical interface (Canvas API). And drawing a graphic interface by using canvas at a logic layer, then sending a synchronous request to a Service Worker through data hijacking of reflection, and finally waiting for the content of Webview by the Service Worker. In this way, the applet engine can smoothly implement common DOM rendering and Canvas (Canvas) element rendering.
In some implementations, the applet engine may be implemented using a JS engine, or alternatively, using a default engine within the client. For example:
for iOS applications, which employ the Safari browser, the nito engine may be used.
For android applications, webkit v8 engines may be employed.
In some implementations, while the JS engine is built in, it is necessary to ensure that the version of the engine matches the version of the applet engine to ensure compatibility.
Meanwhile, the rendering engine and the network resources can be preloaded when the self-contained App is started, so that the network request and loading time can be reduced, the starting time of the applet is accelerated, and the user experience is improved.
In some implementations, the applet engine further includes an offline package delta update mechanism, including:
and acquiring an original version file and a target version file of the applet file.
And calculating a hash value of the original version file to obtain a first hash value.
And calculating a hash value of the target version file to obtain a second hash value.
Determining whether the original version file and the target version file are identical based on the first hash value and the second hash value; if the original version file and the target version file are different, a difference file is generated by adopting a difference algorithm, and the difference file is used for describing all the change contents from the original version file to the target version file.
The difference file is packaged into an incremental update package.
The delta update package is validated to ensure that it can be properly applied to the original version file to generate the target version file.
Issuing an incremental update package: the incremental update package is published to the system or user that needs to be updated, and the user can download and apply this incremental update package instead of re-downloading the entire target version.
Application delta update package: at the user end, an update program is implemented, which is capable of downloading and applying the incremental update package to the original version file to generate the target version file.
In some implementations, the applet engine transmits data through the IO channel instead of HTTP requests, which may improve the data acquisition efficiency of the applet. The use of local storage or other efficient IO approaches may be considered to avoid unnecessary network overhead. When designing an IO channel, security and integrity of data need to be ensured, and the data is prevented from being tampered or damaged.
According to the method, the front end framework comprising the compiler and the document object model interface is constructed through the applet container integration technology, and the scheme of directly running the applet in the own App without depending on a third party platform is provided through interaction with the rendering engine in the own App.
On the other hand, by adopting the scheme, the self-contained pages and the pages of the applet can be realized by using one set of codes, so that the multi-terminal codes can be uniformly pulled, and the technical effect of reducing the development amount can be realized.
The technical features of the above-described embodiments may be arbitrarily combined, and all possible combinations of the technical features in the above-described embodiments are not described for brevity of description, however, as long as there is no contradiction between the combinations of the technical features, they should be considered as the scope of the description.
The above examples illustrate only a few embodiments of the invention, which are described in detail and are not to be construed as limiting the scope of the invention. It should be noted that it will be apparent to those skilled in the art that several variations and modifications can be made without departing from the spirit of the invention, which are all within the scope of the invention. Accordingly, the scope of protection of the present invention is to be determined by the appended claims.

Claims (10)

1. An applet engine running on an owned App, wherein the applet engine is integrated in the owned App through an interface and mechanism on the owned App; the applet engine comprises a compiler and a document object model interface;
the compiler is used for acquiring an applet file sent by the own App in response to the triggering operation of a user, converting the applet file into a JSX component and then sending the JSX component to the document object model interface;
the document object model interface is used for activating the JSX component to enable the JSX component to operate, and transmitting a rendering instruction generated by the JSX component during operation to the rendering engine of the self-owned App to enable the rendering engine to complete rendering of the applet page in the self-owned App.
2. The applet engine as in claim 1, wherein said own App preloads network resources and said rendering engine upon said applet engine accessing said own App.
3. The applet engine according to claim 1, wherein said applet engine further has an offline package delta update mechanism, comprising in particular:
acquiring an original version file and a target version file of the applet file;
calculating a hash value of the original version file to obtain a first hash value;
calculating a hash value of the target version file to obtain a second hash value;
determining whether the original version file and the target version file are identical based on the first hash value and the second hash value; if the original version file and the target version file are different, generating a difference file by adopting a difference algorithm based on the original version file and the target version file, wherein the difference file is used for describing all the change contents from the original version file to the target version file;
packaging the difference file into an incremental update package;
validating said delta update package to ensure that it can be properly applied to said original version file to generate said target version file;
and issuing the increment update package.
4. The applet engine as in claim 3, wherein said offline package delta update further comprises:
and realizing an updating program at the user end, wherein the updating program can download the increment updating package and apply the increment updating package to the original version file so as to generate the target version file.
5. The applet engine as in claim 1, wherein said applet file is written from JS and Rust; the compiler converts the applet file into the JSX component, specifically comprising:
constructing a parser by using a parser generator library in Rust, and constructing a corresponding grammar tree for the WXML file in the applet file;
traversing the grammar tree, and converting each WXML element and attribute in the grammar tree into a corresponding JSX code;
and recombining the converted JSX grammar tree into a JSX code in the form of a character string to obtain the JSX component.
6. The applet engine according to claim 1, wherein the document object model interface activates the JSX component to cause the JSX component to run, comprising in particular:
judging the type of the applet file;
rendering pages and components which do not contain canvas elements in the applet file in a virtual DOM mode;
and rendering canvas elements in the applet file by adopting a data hijacking strategy of reflection.
7. The applet engine according to claim 1, wherein if said native App is an ios application, a nitroengine is employed as said applet engine.
8. The applet engine according to claim 1, wherein if the native App is an android application, a webkit v8 engine is employed as the applet engine.
9. The applet engine as in claim 1, wherein said applet engine employs an IO channel to transfer data to enable data interaction with said native App.
10. The applet engine of claim 1, wherein said rendering engine is further configured to add an entry button to a start page or main interface of said owned App, said applet page being accessed by a user clicking said entry button.
CN202311647205.4A 2023-12-04 2023-12-04 Applet engine running on self-contained App Active CN117348948B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311647205.4A CN117348948B (en) 2023-12-04 2023-12-04 Applet engine running on self-contained App

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311647205.4A CN117348948B (en) 2023-12-04 2023-12-04 Applet engine running on self-contained App

Publications (2)

Publication Number Publication Date
CN117348948A true CN117348948A (en) 2024-01-05
CN117348948B CN117348948B (en) 2024-03-22

Family

ID=89367785

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311647205.4A Active CN117348948B (en) 2023-12-04 2023-12-04 Applet engine running on self-contained App

Country Status (1)

Country Link
CN (1) CN117348948B (en)

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108268262A (en) * 2017-12-27 2018-07-10 广东耐思尼克信息技术有限公司 Realize the method, apparatus and system that HTML is converted to wechat small routine
CN108664248A (en) * 2018-05-14 2018-10-16 北京汉能光伏投资有限公司 A kind of generation method and device of wechat small routine
CN109375918A (en) * 2018-11-23 2019-02-22 天津字节跳动科技有限公司 Interface rendering method, device, electronic equipment and the storage medium of small routine
CN110888645A (en) * 2019-10-12 2020-03-17 贝壳技术有限公司 Method, device and storage medium for converting into small program
CN111124576A (en) * 2019-12-23 2020-05-08 焦点科技股份有限公司 Multi-platform applet and H5 page adaptation method and system
CN111580879A (en) * 2020-04-30 2020-08-25 北京字节跳动网络技术有限公司 Applet running method and device, electronic equipment and computer storage medium
CN112764757A (en) * 2021-01-18 2021-05-07 深圳前海微众银行股份有限公司 Applet processing method, device, equipment and storage medium
CN112861057A (en) * 2021-02-10 2021-05-28 北京百度网讯科技有限公司 Page rendering method, device and equipment based on small program and storage medium
CN113515286A (en) * 2021-05-08 2021-10-19 上海安畅网络科技股份有限公司 Applet generating and running method, device, equipment and storage medium
CN113885967A (en) * 2021-10-22 2022-01-04 北京字跳网络技术有限公司 Method, device, equipment and medium for starting small program
CN115220803A (en) * 2021-04-16 2022-10-21 腾讯云计算(长沙)有限责任公司 Data processing method and equipment
CN115586893A (en) * 2021-07-05 2023-01-10 京东科技控股股份有限公司 Cross-platform software development system and method
CN116225385A (en) * 2023-01-09 2023-06-06 杭州易现先进科技有限公司 Method, equipment and storage medium for running rendering engine across applet platforms

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108268262A (en) * 2017-12-27 2018-07-10 广东耐思尼克信息技术有限公司 Realize the method, apparatus and system that HTML is converted to wechat small routine
CN108664248A (en) * 2018-05-14 2018-10-16 北京汉能光伏投资有限公司 A kind of generation method and device of wechat small routine
CN109375918A (en) * 2018-11-23 2019-02-22 天津字节跳动科技有限公司 Interface rendering method, device, electronic equipment and the storage medium of small routine
CN110888645A (en) * 2019-10-12 2020-03-17 贝壳技术有限公司 Method, device and storage medium for converting into small program
CN111124576A (en) * 2019-12-23 2020-05-08 焦点科技股份有限公司 Multi-platform applet and H5 page adaptation method and system
CN111580879A (en) * 2020-04-30 2020-08-25 北京字节跳动网络技术有限公司 Applet running method and device, electronic equipment and computer storage medium
CN112764757A (en) * 2021-01-18 2021-05-07 深圳前海微众银行股份有限公司 Applet processing method, device, equipment and storage medium
CN112861057A (en) * 2021-02-10 2021-05-28 北京百度网讯科技有限公司 Page rendering method, device and equipment based on small program and storage medium
CN115220803A (en) * 2021-04-16 2022-10-21 腾讯云计算(长沙)有限责任公司 Data processing method and equipment
CN113515286A (en) * 2021-05-08 2021-10-19 上海安畅网络科技股份有限公司 Applet generating and running method, device, equipment and storage medium
CN115586893A (en) * 2021-07-05 2023-01-10 京东科技控股股份有限公司 Cross-platform software development system and method
CN113885967A (en) * 2021-10-22 2022-01-04 北京字跳网络技术有限公司 Method, device, equipment and medium for starting small program
CN116225385A (en) * 2023-01-09 2023-06-06 杭州易现先进科技有限公司 Method, equipment and storage medium for running rendering engine across applet platforms

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
康娇兰: ""基于微信小程序的区块链商城系统的设计与实现"", 《中国优秀硕士学位论文全文数据库信息科技辑》, 15 January 2023 (2023-01-15), pages 138 - 556 *
张琼: ""‘全民阅读’背景下基于微信小程序的图书社交平台设计及实现"", 《图书情报导刊》, 22 October 2020 (2020-10-22), pages 29 - 34 *
李亚男: ""基于微信小程序的轻量化AR关键技术研究与系统实现"", 《中国优秀硕士学位论文全文数据库 信息科技辑》, 15 January 2022 (2022-01-15), pages 138 - 620 *

Also Published As

Publication number Publication date
CN117348948B (en) 2024-03-22

Similar Documents

Publication Publication Date Title
US9063765B2 (en) System and methods for distributed execution of computer executable programs utilizing asymmetric translation
Taivalsaari et al. Web browser as an application platform
US8683319B2 (en) Shared script files in multi-tab browser
US8978023B2 (en) Canonical mechanism for securely assembling features into a mobile application
US7779429B2 (en) Method and machine-readable medium for building distributed software
CN108279902B (en) Lua script technology based multi-terminal sharing bottom layer framework generation and application method
US20230036980A1 (en) Micro-frontend system, sub-application loading method, electronic device, computer program product, and computer-readable storage medium
US9471704B2 (en) Shared script files in multi-tab browser
MXPA06000085A (en) Refrigerator door and refrigerator therewith.
US11474796B1 (en) Build system for distributed applications
CN112114890A (en) Method, device and equipment for processing small program and storage medium
MXPA06000106A (en) Web application architecture.
CN110716720A (en) Method and device for realizing application hot deployment
CN112799663A (en) Page display method and device, computer readable storage medium and electronic equipment
CN112052235A (en) Method and device for migrating block chain transaction data
CN111723314B (en) Webpage display method and device, electronic equipment and computer readable storage medium
CN117348948B (en) Applet engine running on self-contained App
CN116362336B (en) Model reasoning interaction method, electronic equipment and readable storage medium
US11048488B2 (en) Software code optimizer and method
US11429358B2 (en) Representing asynchronous state machine in intermediate code
CN111427770B (en) Resource testing method and related equipment
CN113469740A (en) Advertisement data acquisition method, device, equipment and storage medium
JPH11328138A (en) Distributed computer system
Ambler et al. Browserify
CN117354114B (en) Data service release method and system based on cloud native architecture

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