CN115437762A - Android-based Router container and applet creating method - Google Patents

Android-based Router container and applet creating method Download PDF

Info

Publication number
CN115437762A
CN115437762A CN202210974522.6A CN202210974522A CN115437762A CN 115437762 A CN115437762 A CN 115437762A CN 202210974522 A CN202210974522 A CN 202210974522A CN 115437762 A CN115437762 A CN 115437762A
Authority
CN
China
Prior art keywords
applet
container
project
flutter
main
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
CN202210974522.6A
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.)
Hunan Xingsheng Optimization Network Technology Co ltd
Original Assignee
Hunan Xingsheng Optimization Network 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 Hunan Xingsheng Optimization Network Technology Co ltd filed Critical Hunan Xingsheng Optimization Network Technology Co ltd
Priority to CN202210974522.6A priority Critical patent/CN115437762A/en
Publication of CN115437762A publication Critical patent/CN115437762A/en
Pending legal-status Critical Current

Links

Images

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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • 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/44505Configuring for program initiating, e.g. using registry, configuration files
    • 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

Landscapes

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

Abstract

The invention discloses a method for creating a router container and an applet based on android, which comprises the following steps: modifying the Flutter SDK or customizing the Flutter SDK, and generating an applet installation file corresponding to each project and a main program installation file supporting the operation of the applet; downloading a corresponding small program installation file according to the operation of a user during operation, and installing and operating; constructing a Flutter container; and constructing a multi-process running environment, judging the running mode of the applet or the APP by using the DartEntryPoint and the window. The invention provides a multi-process + Flutter container scheme which can support the simultaneous operation of a plurality of small program applications; the previous running state is still reserved after the small program exits; various ways of determining whether the current operating environment is operating in an applet or a standalone APP are provided.

Description

Android-based Router container and applet creating method
Technical Field
The invention belongs to the technical field of mobile application, and particularly relates to a method for creating a router container and an applet based on android.
Background
Along with the rapid development of mobile services, the development of mobile APP developed by a certain manufacturer can reach more than tens of types, service or target population is finely divided in the prior art, a strategy of multi-APP vertical coverage is planned, different APPs are used by different roles (work types), so that not only are the services focused, but also the APPs can be iterated rapidly. However, as the service boundary extends, the same user may have multiple roles or need to participate in multiple services at the same time, and during the operation, the user may need to use multiple APPs of a certain manufacturer at the same time, and the switching between multiple APPs may cause the use cost of the user to increase greatly, and the experience is very unfriendly.
To solve the above problem, it is a common practice in the art to create a super APP and then aggregate different business programs in the form of "applets", such as WeChat applets, payment applets, etc. Most of the industries are mixed development mainly based on protogenesis, but APP of main services of some manufacturers is developed based on a cross-platform framework Flutter, and in addition, no applet solution based on the Flutter for an Android platform exists in the current industry.
For other small program schemes in the industry, such as WeChat and Paibao small programs, rendering is basically performed through WebView, but the rendering effect and experience of WebView are different from those of native implementation, and on the contrary, the self-drawing engine mode of Fluter can achieve experience close to native and is more efficient than that of WebView.
Disclosure of Invention
The small program framework based on the Flutter version is used for supporting each service of a manufacturer to be used in a small program mode, so that not only can the current service module be migrated and aggregated at low cost, but also the corresponding service program can be issued according to the actual needs of a user. In view of this, the invention provides an android-based router container and an applet creating method, which includes the following steps:
modifying the Flatter SDK or customizing the Flatter SDK, and generating an applet installation file corresponding to each project and a main program installation file supporting the applet operation;
downloading a corresponding small program installation file according to the operation of a user during operation, and installing and operating;
constructing a Flutter container comprising: taking Activity as a single Flutter container, registering a plurality of activities in an android manifest file in a main project in advance, and designating different processes; maintaining the relation between the small program currently running and the container in the main project: when a main project receives an instruction for starting a certain small program, firstly, judging whether the small program is in an operating container or not, if so, directly starting the corresponding container, if not, selecting one from the un-started containers for starting, and after a new container is started, sending a broadcast to a main program, and updating the relation between the currently operating small program and the container by the main program; after miniAppActivity is started, a FluteTerene is created, the name of the applet is started as required, and the path of the corresponding libapp. The Flutter container implements a caching policy: under the ordinary condition, when the applet quits, the current process is automatically killed to release resources when the Activity finish is carried out, if the Activity finish is set as the resident applet, the container is kept in the background, and the container is pulled up again when the applet is started next time, so that the rapid starting is realized;
and constructing a multi-process running environment, judging the running mode of the applet or the APP by using DartEntryPoint and window.
Further, the modified Flutter SDK includes a newly added Flutter built miniApp, and the compiling process of the applet compiling instruction is as follows:
compiling and generating an installation file supporting a main program APK and an applet;
modifying the APK resource compiling process, and removing a package path aiming at the applet resource;
and modifying the APK resource compiling process, and automatically decompressing and repacking the APK when the small program installation file is compiled.
Further, the generating an applet installation file corresponding to each project and a main program installation file supporting applet operation includes:
according to the configuration of the small program platform, the Flutter engineering code which needs to be packaged into the small program is pulled from a code warehouse and is placed in an appointed catalogue of a main project;
running a Flutter SDK customized command compilation under a main project root directory, adding each project under a small program directory into pubsepc.yaml dependence of the main project in a package form by the command, then executing a construction process of a main program Flutter apk, and generating a main program installation package after the construction is finished;
after the main program is built, the program engineering directories are sequentially entered, the apk files of the small programs are firstly built, and then the resource directories and the libapp.
Further, the corresponding applet installation file is downloaded according to the operation of the user, installed and operated, and the specific operation process is as follows:
a user selects an applet to be used in an applet store, automatically downloads a corresponding applet installation file from a background after clicking, and verifies the installation file;
starting a new process and a new container, and appointing to execute a corresponding installation file when the fluterEngine is started;
and switching to a new interface, and enabling the user to operate when the small program interface is successfully rendered.
Further, the customized Flutter SDK includes automatically constructing an applet main project and a container, and automatically constructing an applet installation file:
automatically constructing a small program main project and a container: constructing a small program Flutter project under an automatic scanning specified catalog, and automatically adding a package dependence in a main project pubspec.yaml; analyzing all package dependencies of the main project, automatically processing version conflicts which may exist after the multiple projects are combined, adding android plug-in dependencies to the main project, and copying all the small program project resource files to the main project; switching to a main project root directory, starting to construct a main project, and generating a main project apk file;
automatically constructing an applet installation file: and switching to an applet project directory, starting to construct an applet project, unpacking to obtain an ao file libapp.
Further, the dartenrypoint determination method specifically includes:
if the container runs with the applet, when the container starts to create the fluterEngine, the DartentryPoint is appointed to be a specific entry function, and the current running with the APP or the applet is judged through different entry functions.
Further, the window default child name determination method specifically includes: if the container runs in the applet, the specified parameters are set through setInitialRoute when the container starts to create the FluterEngine, after starting, whether the container runs in the applet is judged through whether the window.
The invention has the following beneficial effects:
by modifying the Flutter SDK, the invention can automatically construct a Flutter container and an applet running package according to a plurality of Flutter projects, and developers can still develop and apply the Flutter APP project structure and can flexibly configure to run in an independent APP form or an applet form.
Aiming at a scene that a plurality of applets operate simultaneously, the invention provides a multi-process + Flutter container scheme which can support the simultaneous operation of a plurality of applets, and aiming at a scene that a certain applet uses at a high frequency, an optional container resident mechanism is provided, namely, the previous operation state is still kept after the applet exits, and the quick start can be realized when the applet is started next time, so that the user experience is greatly improved.
Aiming at the possible demand difference of the applet or the independent APP, the invention provides a plurality of ways for a developer to judge that the current running environment runs in the applet or the independent APP.
Aiming at the demands of different users for using different applets, the invention provides the solution of the applet application store, and the users can search, download, install, uninstall and upgrade the applets which need to be used by themselves in the main program.
Drawings
FIG. 1 is a flow diagram of applet compilation according to the present invention;
FIG. 2 is an applet store interface diagram of the present invention;
FIG. 3 is a diagram of the applet and container correspondence of the present invention;
figure 4 is an applet start-up flow diagram of the present invention.
Detailed Description
The invention is further described with reference to the accompanying drawings, but the invention is not limited in any way, and any alterations or substitutions based on the teaching of the invention are within the scope of the invention.
The creating method of the invention is divided into two parts of compiling period and running time. The specific process of the compile time is as follows:
in the compiling stage, the small program installation files corresponding to all projects and the main program installation files supporting the small program operation are constructed from a plurality of Flutter warehouses mainly through modification of the Flutter SDK. As shown in fig. 1, the specific compiling process is as follows:
1. and pulling the Flutter engineering code which needs to be packaged into the applet from the code warehouse according to the applet platform configuration, and placing the Flutter engineering code into the specified catalog of the main project.
2. Running a Flutter SDK customized command compilation under a main project root directory, adding each project under the small program directory into pubsepc.yaml dependence of the main project in a package form by the command, then executing a construction process of a main program Flutter apk, and after the construction is finished, generating a main program installation package.
3. After the main program is built, the program engineering directories are sequentially entered, the apk files of the small programs are firstly built, and then the resource directories and the libapp.
Wherein, the Flatter SDK modification mainly comprises adding a Flatter built miniApp as a small program compiling instruction, and the approximate compiling process
The Flutter SDK modification mainly includes a newly added applet compiling instruction Flutter built miniApp, and a general compiling process is shown in a applet compiling flow chart in fig. 1, and mainly includes:
1) And compiling generation of the APK and the APK of the main program and the installation files of the small programs is supported.
2) And modifying the APK resource compiling process, and removing a "package" path aiming at the small program resource.
3) And modifying the APK resource compiling process, and automatically decompressing and repacking the APK when the small program installation file is compiled.
The runtime includes:
the runtime phase mainly downloads the corresponding applet installation files according to the operation of the user, installs and runs, and the applet store interface is shown in the figure 2 for summarizing the applet application store interface diagram. The specific operation process is as follows:
1. and selecting the small program to be used by the user in the small program store, automatically downloading the corresponding small program installation file from the background after clicking, and verifying the installation file.
2. And starting a new process and container, and appointing to execute a corresponding installation file when the fluterEngine is started.
3. And switching to a new interface, and enabling a user to operate when the small program interface is successfully rendered.
The main technical scheme for customizing the Flutter SDK is as follows:
1. automatically constructing a small program main project and a container: the building begins to automatically scan the applet Flutter project under the specified directory and automatically add package dependencies to the master project pubspec. And then analyzing all package dependencies of the main project, automatically processing version conflicts which may exist after the multiple projects are merged, adding android plug-in dependencies to the main project, and copying each applet project resource file to the main project. And switching to a root directory of the main project, starting to construct the main project, and generating a main project apk file.
2. Automatically constructing an applet installation file: and switching to an applet project directory, starting to construct an applet project, unpacking to obtain an aot file library pp.
The main technical scheme of the Flutter container and the multiple processes is as follows:
1) Flutterer multi-container operating environment implementation
Implementation scheme of the flutter container: taking Activity as a single Flutter container, registering a plurality of Activities in an android manifest file in the main project in advance, and designating different processes, namely different Activity containers run in different processes.
Flutter container and applet management scheme: maintaining the relation between the small program and the container currently running in the main project, referring to a small program and container corresponding diagram in figure 3, when the main project receives an instruction for starting a certain small program, firstly judging whether the small program is in the running container, if so, directly starting the corresponding container, if not, selecting one from the un-started containers for starting, after a new container is started, sending a broadcast to the main program, and updating the relation between the small program and the container currently running by the main program.
A flutter container creation mode: after miniAppActivity is started, a Flutengine is created, the name of the applet is started as required, the path of the corresponding libapp.
Caching strategy of the flutter container: under the ordinary condition, when the applet quits, the current process is automatically killed to release resources when the Activity finish is carried out, if the Activity finish is set to be resident, the container is kept in the background, and the container is pulled up again when the applet is started next time, so that the quick start is realized. The invention provides a multi-process and Flutter container scheme, which can support the simultaneous operation of a plurality of small programs, and provides an optional container resident mechanism aiming at a scene of high-frequency use of a certain small program, namely, the small program still keeps the previous operation state after exiting, and can be quickly started when being started next time, thereby greatly improving the user experience.
2) Judging mode of applet or APP operation mode
a, judging mode of DartEntryPoint: if the applet is used for running, when the container starts to create the fluterengine, the dartenrypoint is appointed to be a specific entry function, such as miniAppMain (), and the current running of the APP or the applet can be judged according to different entry functions.
Window. Defaulttaume judgment mode: if the container runs in the applet, when the container starts to create the fluterengine, a specified parameter is set through setInitialRoute, for example, the specified parameter is set to "miniApp", and after starting, whether the container runs in the applet can be judged through whether the window.
The invention is suitable for development based on the Flutter framework, and realizes a system of the small program by the Flutter framework.
The invention has the following beneficial effects:
by modifying the Flutter SDK, the invention can automatically construct a Flutter container and an applet running package according to a plurality of Flutter projects, and a developer can still develop and apply the Flutter APP project structure and can flexibly configure to run in an independent APP form or an applet form.
Aiming at a scene that a plurality of applets run simultaneously, the invention provides a multi-process + Flutter container scheme, which can support the simultaneous running of a plurality of applets, and aiming at a scene that a certain applet uses at a high frequency, an optional container resident mechanism is provided, namely, the previous running state is still kept after the applet exits, and the quick start can be realized when the applet is started next time, so that the user experience is greatly improved.
Aiming at the possible demand difference of the applet or the independent APP, the invention provides a plurality of ways for a developer to judge that the current running environment runs in the applet or the independent APP.
Aiming at the demands of different users for using different applets, the invention provides the solution of the applet application store, and the users can search, download, install, uninstall and upgrade the applets which need to be used by themselves in the main program.
The word "preferred" is used herein to mean serving as an example, instance, or illustration. Any aspect or design described herein as "preferred" is not necessarily to be construed as advantageous over other aspects or designs. Rather, use of the word "preferred" is intended to present concepts in a concrete fashion. The term "or" as used in this application is intended to mean an inclusive "or" rather than an exclusive "or". That is, unless specified otherwise, or clear from context, "X employs A or B" is intended to include any of the permutations as natural. That is, if X employs A; x is B; or X employs both A and B, then "X employs A or B" is satisfied in any of the foregoing examples.
Also, although the disclosure has been shown and described with respect to one or an implementation, equivalent alterations and modifications will occur to others skilled in the art based upon a reading and understanding of this specification and the annexed drawings. The present disclosure includes all such modifications and alterations, and is limited only by the scope of the appended claims. In particular regard to the various functions performed by the above described components (e.g., elements, etc.), the terms used to describe such components are intended to correspond, unless otherwise indicated, to any component which performs the specified function of the described component (e.g., that is functionally equivalent), even though not structurally equivalent to the disclosed structure which performs the function in the herein illustrated exemplary implementations of the disclosure. In addition, while a particular feature of the disclosure may have been disclosed with respect to only one of several implementations, such feature may be combined with one or other features of the other implementations as may be desired and advantageous for a given or particular application. Furthermore, to the extent that the terms "includes," has, "" contains, "or variants thereof are used in either the detailed description or the claims, such terms are intended to be inclusive in a manner similar to the term" comprising.
Each functional unit in the embodiments of the present invention may be integrated into one processing module, or each unit may exist alone physically, or a plurality of units or more than one unit are integrated into one module. The integrated module can be realized in a hardware mode, and can also be realized in a software functional module mode. The integrated module, if implemented in the form of a software functional module and sold or used as a stand-alone product, may also be stored in a computer readable storage medium. The storage medium mentioned above may be a read-only memory, a magnetic or optical disk, etc. Each apparatus or system described above may execute the storage method in the corresponding method embodiment.
In summary, the above-mentioned embodiment is an implementation manner of the present invention, but the implementation manner of the present invention is not limited by the above-mentioned embodiment, and any other changes, modifications, substitutions, combinations, and simplifications which do not depart from the spirit and principle of the present invention should be regarded as equivalent replacements within the protection scope of the present invention.

Claims (7)

1. The android-based Router container and applet creating method is characterized by comprising the following steps of:
modifying the Flutter SDK or customizing the Flutter SDK, and generating an applet installation file corresponding to each project and a main program installation file supporting the operation of the applet;
downloading a corresponding small program installation file according to the operation of a user during operation, and installing and operating;
constructing a Flutter container comprising: taking Activity as a single Flutter container, registering a plurality of activities in an android manifest file in a main project in advance, and designating different processes; maintaining the relation between the small program currently running and the container in the main project: when a main project receives an instruction for starting a certain small program, firstly, judging whether the small program is in an operating container or not, if so, directly starting the corresponding container, if not, selecting one from the un-started containers for starting, and after a new container is started, sending a broadcast to a main program, and updating the relation between the currently operating small program and the container by the main program; after miniAppActivity is started, a FluteEngine is created, the name of the applet is started as required, the path of the corresponding libapp. The Flutter container implements a caching policy: under the ordinary condition, when the applet quits, the current process is automatically killed to release resources when the Activity finish is carried out, if the Activity finish is set as the resident applet, the container is kept in the background, and the container is pulled up again when the applet is started next time, so that the rapid starting is realized;
and constructing a multi-process running environment, judging the running mode of the applet or the APP by using DartEntryPoint and window.
2. The android-based Fluter container and applet creating method according to claim 1, wherein the modified Fluter SDK includes a newly added applet compiling instruction Fluter built miniApp, and the compiling process of the applet compiling instruction is as follows:
compiling and generating an installation file supporting a main program APK and an applet;
modifying the APK resource compiling process, and removing a package path aiming at the applet resource;
and modifying the APK resource compiling process, and automatically decompressing and repacking the APK when supporting the small program installation file compiling.
3. The android-based flute container and applet creating method according to claim 1, wherein the generating an applet installation file corresponding to each project and a main program installation file supporting applet running includes:
according to the configuration of the small program platform, the Flutter engineering code which needs to be packaged into the small program is pulled from a code warehouse and is placed in an appointed catalogue of a main project;
running a Flutter SDK customized command compilation under a main project root directory, adding each project under a small program directory into pubsepc.yaml dependence of the main project in a package form by the command, then executing a construction process of a main program Flutter apk, and generating a main program installation package after the construction is finished;
after the main program is built, the program engineering directories are sequentially entered, the apk files of the small programs are firstly built, and then the resource directories and the libapp.
4. The android-based flute container and applet creating method according to claim 1, wherein the corresponding applet installation file is downloaded according to a user operation, installed and run, and the specific running process is as follows:
a user selects an applet to be used in an applet store, automatically downloads a corresponding applet installation file from a background after clicking, and verifies the installation file;
starting a new process and a new container, and appointing to execute a corresponding installation file when the fluterEngine is started;
and switching to a new interface, and enabling the user to operate when the small program interface is successfully rendered.
5. The android-based flute container and applet creating method according to claim 1, wherein the custom flute SDK includes automatically building applet main project and container and automatically building applet installation files:
automatically constructing a small program main project and a container: constructing an applet Flutter project under an automatic scanning specified directory, and automatically adding a package dependency in a main project pubspec.yaml; analyzing all package dependencies of the main project, automatically processing version conflicts which may exist after the multiple projects are combined, adding android plug-in dependencies to the main project, and copying all the applet project resource files to the main project; switching to a main project root directory, starting to construct a main project, and generating a main project apk file;
automatically constructing an applet installation file: and switching to an applet project directory, starting to construct an applet project, unpacking to obtain an ao file libapp.
6. The android-based flute container and applet creating method according to claim 1, wherein the dartenrypoint determining manner specifically includes:
if the container runs with the applet, when the container starts to create the FlutterEngine, the dartenrypoint is appointed to be a specific entry function, and the current running with the APP or the applet is judged according to different entry functions.
7. The android-based flute container and applet creating method according to claim 1, wherein the window.
If the container runs in the applet, the specified parameters are set through setInitialRoute when the container starts to create the fluterEngine, after starting, whether the container runs in the applet is judged through window.
CN202210974522.6A 2022-08-15 2022-08-15 Android-based Router container and applet creating method Pending CN115437762A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210974522.6A CN115437762A (en) 2022-08-15 2022-08-15 Android-based Router container and applet creating method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210974522.6A CN115437762A (en) 2022-08-15 2022-08-15 Android-based Router container and applet creating method

Publications (1)

Publication Number Publication Date
CN115437762A true CN115437762A (en) 2022-12-06

Family

ID=84242986

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210974522.6A Pending CN115437762A (en) 2022-08-15 2022-08-15 Android-based Router container and applet creating method

Country Status (1)

Country Link
CN (1) CN115437762A (en)

Similar Documents

Publication Publication Date Title
KR100952251B1 (en) Servicing a component base software product
EP3204849B1 (en) Systems and methods to update source code files
US7971201B2 (en) Multiple operating device version software generating system and multiple operating device version software generation support program and method
CN105657191B (en) Application increment upgrading method and system based on Android system
CN105446712B (en) Application program defect repairing method and device
CN103309683B (en) The software patch embedding grammar of hardware device and device
US9213559B2 (en) Method and device for publishing and implementing wireless application
CN111309451A (en) Method for realizing cross compilation of Docker mirror images
JP4931343B2 (en) System, method, program, and apparatus for providing self-installing software components for performing network services
CN108614701A (en) A kind of (SuSE) Linux OS method for customizing and device
US20030037326A1 (en) Method and system for installing staged programs on a destination computer using a reference system image
CN112882718B (en) Compiling processing method, device, equipment and storage medium
CN111610976B (en) Heterogeneous application transplanting method and device and computer equipment
CN109857432B (en) Hot updating method and device for game application
CN111722868A (en) Method for quickly transplanting high-version linux kernel of Shenwei firewall
CN110688140B (en) Code management method and terminal
CN115437762A (en) Android-based Router container and applet creating method
CN101840337B (en) Method for customizing reducing system applied to packet capture application
CN113849200B (en) Installation optimization method and system for android application in android compatible environment
CN113849181A (en) Cross compiling tool chain construction method and device, electronic equipment and storage medium
CN114816475A (en) Method, device, equipment and medium for updating embedded operating system
CN113821228A (en) Method for building ROS or ROS-like project based on layered container mirror image
CN110362320B (en) Command implementation method and device of application development platform
CN116594661B (en) Singlechip upgrading method for ensuring matching of firmware and engineering in compiling stage
Shariff et al. Locale Themes for Android Application size reduction

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