CN114119340A - Method and device for managing activities of application based on LVGL - Google Patents

Method and device for managing activities of application based on LVGL Download PDF

Info

Publication number
CN114119340A
CN114119340A CN202111223928.2A CN202111223928A CN114119340A CN 114119340 A CN114119340 A CN 114119340A CN 202111223928 A CN202111223928 A CN 202111223928A CN 114119340 A CN114119340 A CN 114119340A
Authority
CN
China
Prior art keywords
application
lvgl
activity
newly
function
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
CN202111223928.2A
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.)
ASR Microelectronics Co Ltd
Original Assignee
ASR Microelectronics 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 ASR Microelectronics Co Ltd filed Critical ASR Microelectronics Co Ltd
Priority to CN202111223928.2A priority Critical patent/CN114119340A/en
Publication of CN114119340A publication Critical patent/CN114119340A/en
Priority to PCT/CN2022/123737 priority patent/WO2023066025A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation

Abstract

The application discloses a management method of activities of an application based on LVGL. Step S10: the activity of the application is defined as an object in the light-weight multi-purpose graphic library LVGL, and the activity of the application is used as the only object which is allowed to be added in the screen display chain table of the LVGL. Step S20: when an application activity needs to be newly built, calling the function of a newly built object of the LVGL, taking the activity as an object, newly adding a node on the head of a screen display linked list, and storing the object. Step S30: when the activity of an application needs to be deleted, the function of deleting the object of the LVGL is called, the object of the activity is deleted, and at the moment, the LVGL automatically recycles the deleted active object of the application and the linked list, the external storage space and the animation sub-thread of all the sub-objects. The application realizes the function of managing the application activities by modifying and limiting the mechanism of the existing screen display linked list of the LVGL in an expanding way.

Description

Method and device for managing activities of application based on LVGL
Technical Field
The present application relates to a method for managing an application in a Graphical User Interface (GUI) of a mobile electronic device.
Background
In mobile electronic devices such as mobile phones and smartwatches, applications (apps) draw User Interfaces (UIs) through windows provided by activities. An actively served window will typically fill the screen (screen), but may also be smaller than the screen and float above other actively served windows. Typically, one activity implements one interface in an application. An electronic device may contain multiple applications, each of which may be an interface or multiple interfaces, meaning that the electronic device needs to switch between multiple activities. For example, a user's operation to place a call on a mobile electronic device involves switching between multiple activities. Firstly, the desktop display activity is kept, and the activity of opening a browsing phone book (address book) is newly added; the user selects a telephone number, closes the activity of browsing the telephone book and opens the activity of displaying the call after clicking the connection button; and after the user clicks the hang-up button, closing the conversation activity and returning to the desktop display activity. Typically, one activity in the host application will be designated as a main activity (main activity), which is the first interface that appears when the user launches the application. Each activity may initiate another activity to perform a different operation. An activity may initiate other activities belonging to the same application, as well as activities belonging to other applications.
The existing mobile electronic device (for example, a mobile phone) manages the activities of an application in a stack (stack) or linked list (linked list) manner, that is, there is an independent space to manage the information of the activities, and the stack and the linked list technically implement the requirements of activity insertion, activity deletion, activity exchange and activity lookup.
LVGL (Light and virtual Graphics Library) is a graphic Library used to create graphical user interfaces for mobile electronic devices. LVGL provides basic control libraries such as buttons, text boxes, picture boxes, etc.; management mechanisms for the controls are also provided, but without a logical layer of applications, do not provide a management solution for the activities of the applications required by the mobile electronic device. Strictly speaking, the activity of an application is a concept in an android (android) operating system, and there is no concept of an activity of an application in the LVGL. However, in the LVGL or other GUI development frameworks, there is still a case where one application has multiple interfaces, and one application implements multiple interfaces respectively through multiple abstract logics, which are similar to the concept of "application activity" in android, and thus is expressed by using the term "application activity".
LVGL provides a multi-level linked list management mechanism to manage all graphical user interface objects. The linked list at the highest layer is a screen display linked list for rendering, the linked list is an empty linked list during initialization, and the screen display linked list needs to be traversed during each rendering. The main thread of the graphical user interface renders a screen picture once every 30 milliseconds, traverses objects on each node from a screen display linked list, calculates the corresponding bitmap data in the screen according to the displayable area and display parameters of each object, and superposes the bitmap data as a foreground layer to a background layer (a cache area for displaying output). The main thread of the graphical user interface also reads the linked list of each object and continues to access the child objects on the linked list nodes of the object. And by analogy, traversing all the linked lists from the high layer to the bottom layer, enabling all objects in all the linked lists to participate in the superposition of the foreground image layer to the background image layer once, and finally displaying the image effect of the graphical user interface of the screen in the screen by using the data of the buffer area displayed and output.
LVGL provides the functionality of creating an object (obj), which requires the provision of the object's parent object pointer to determine which link list is added to the multi-level link list. Each object has its own linked list to manage its children, so creating an object is inserting it as a node into the linked list of the parent object. The process of creating the multiple layers of the graphical user interface is described from top to bottom in order: if the graphic user interface needs to display a pattern, an object obj _1 and its new link list ll _1 are dynamically established for the pattern, and the object obj _1 is inserted into the head node of the screen display link list. If the pattern of an icon is added, an object obj _2 and a new linked list ll _2 thereof are dynamically established for the pattern, and the object obj _2 is inserted into the head node of the screen display linked list. There are two nodes on the screen display linked list, and the objects of the two nodes have their own empty linked list. If one of the objects obj _1 is taken as a parent object, an object obj _1_1 of a picture resource and an empty linked list ll _1_1 thereof are newly added on the linked list ll _1 thereof. This results in a two-level linked list structure. And the object obj _1_1 of the second-level linked list continues to build new child objects obj _1_1_1 and the linked list ll _1_1 of the child objects downwards, and a three-level linked list structure is expanded. By analogy, a multi-level linked list structure can be expanded according to the effect of the actual graphic user interface on the picture.
LVGL creates an external storage space for each object for storing data only related to this object. LVGL creates a child thread of animation for each object. This sub-thread is bound to this object and can access this object and its external memory space by using the pointer of the object as a parameter.
LVGL provides the function of deleting objects. When an object is deleted, the linked list is displayed on the screen, each object is searched, and the linked list of the object continues to be matched with the sub-object. And matching the pointer of the object to be deleted by traversing all the objects in all the multi-level linked lists. After the object pointer to be deleted is determined, the object is taken as a parent object, the linked list of the object is traversed, all child objects lower than the hierarchy of the object are deleted, and finally the matched object is deleted. The deletion here includes deleting the child animation thread of the object, deleting its external memory space, and deleting the object itself.
Disclosure of Invention
The technical problem to be solved by the application is to add a logic layer for managing the activity of the application in a screen display linked list of an LVGL on the basis of not adding a stack or a linked list for specially managing the activity of the application. Therefore, the special development of a set of active management linked list of new application is omitted, and the code is simplified.
In order to solve the above technical problem, the method for managing activities of an application based on LVGL of the present application includes the following steps. Step S10: the activity of the application is defined as an object in the light-weight multi-purpose graphic library LVGL, and the activity of the application is used as the only object which is allowed to be added in the screen display chain table of the LVGL. Step S20: when an application activity needs to be newly built, calling the function of a newly built object of the LVGL, taking the activity as an object, newly adding a node on the head of a screen display linked list and storing the object; the active objects of the newly-built application comprise basic attributes of the LVGL object, namely a linked list, an external storage space, namely nodes and an animation child thread. Step S30: when the activity of an application needs to be deleted, the function of deleting the object of the LVGL is called, the object of the activity is deleted, and at the moment, the LVGL automatically recycles the deleted active object of the application and the linked list, the external storage space and the animation sub-thread of all the sub-objects. The steps S20 and S30 are performed in reverse order or simultaneously. The method realizes the function of managing the application activities by modifying and limiting the existing mechanism of the screen display linked list of the LVGL in an expanding way.
Further, in step S10, activities belonging to one application are used as objects in the LVGLs, and activities belonging to different applications are also used as objects in the LVGLs. The present application emphasizes each activity as an object in a LVGL application, regardless of whether the activities belong to the same application or to different applications.
Further, in step S20, the new active object of the application further has one or more of the following additional variables, and all the additional variables are stored in the external storage space of the new active object of the application. The first incremental variable is the serial number of the activity of the application, which is used to uniquely identify each application's activity. The second new variable is a pointer of the new function and is used for calling the new child object function. The third newly added variable is a pointer of the pre-delete function and is used for calling the pre-delete function. Each new variable is used to implement a different function.
Further, in step S30, if the deleted application applies for a special resource in the new process, the pre-delete function is first called through the pointer of the pre-delete function, and all the special resources applied in the new process of the application are released; the function of deleting the object of the LVGL is then invoked, deleting the active object. The special resource refers to a resource which is applied for use except the basic attribute of the LVGL object when the activity of the newly-built application is an object; these special resources are not requested by the function of the new object of the LVGL and therefore cannot be automatically released by the function of the deleted object of the LVGL. This is a specific description of the third additional variable being used to handle a particular situation.
Further, if a common control needs to be used in a certain graphical user interface, taking an active object of an application as a parent object, calling a function of a newly-built child object through a pointer of a newly-built function, and adding a common control child object to the active object of the application; the common control sub-object comprises any one or more of a picture box, a text box and a sliding box. This is the effect of the second additional variable.
Furthermore, each common control sub-object also contains the basic attribute of the LVGL object after being newly built, namely a linked list of the sub-object, an external storage space of the sub-object and an animation sub-thread of the sub-object; when an application's active object is deleted, its child objects along with their animation child threads and external storage space are automatically cleared by the LVGL. The existing mechanism that the LVGL automatically deletes all the sub-objects of an object when deleting the object is fully utilized.
Further, the first newly added variable is used as a basis for matching active objects of the applications in the screen display linked list. This is the effect of the first new increment.
Further, a topmost node in the screen display linked list is variable; and inserting a new node into the topmost layer of the screen display linked list every time when the active object of the application is newly built, wherein the rendering program of the LVGL considers that the interface realized by the active object of the application corresponding to the topmost layer node in the screen display linked list is the interface displayed by the topmost layer, so that the active object of the application corresponding to the node inserted last in the screen display linked list is the interface displayed by the topmost layer. This is how to determine the active objects of the application to which the interface currently being displayed corresponds.
The application also provides a management device of the LVGL-based application activity, which comprises a preprocessing unit, an activity new building unit and an activity deleting unit. The preprocessing unit is used for defining the activity of the application as an object in a lightweight multi-purpose graphic library LVGL, and taking the activity of the application as the only one object allowed to be added in a screen display chain table of the LVGL. The system comprises a movable new building unit, a virtual graphics library (LVGL) and a screen display linked list, wherein the movable new building unit is used for calling the function of a new object of the LVGL when an application activity needs to be built, using the activity as an object, newly adding a node on the head of the screen display linked list and storing the object; the active objects of the newly-built application comprise basic attributes of the LVGL object, namely a linked list, an external storage space, namely nodes and an animation child thread. The activity deleting unit is used for calling the function of deleting the object of the LVGL when the activity of one application needs to be deleted, and deleting the object of the activity, wherein the LVGL automatically recycles the deleted active object of the application and the linked list, the external storage space and the animation sub-thread of all the sub-objects. The device realizes the function of managing the application activity by modifying and limiting the existing mechanism of the screen display linked list of the LVGL in an expanding way.
Further, the activity new building unit sets one or more of the newly-built variables for the active object of the newly-built application, and all the newly-built variables are stored in the external storage space of the active object of the newly-built application. The first incremental variable is the serial number of the activity of the application, which is used to uniquely identify each application's activity. The second new variable is a pointer of the new function and is used for calling the new child object function. The third newly added variable is a pointer of the pre-delete function and is used for calling the pre-delete function. Each new variable is used to implement a different function.
The application has the technical effects that no newly added stack or chain table is used for managing the application activity, modification and supplement are carried out on the basis of the existing screen display chain table in the LVGL, the screen display chain table of the LVGL is used for managing the application activity, and the development of program codes is greatly simplified.
Drawings
Fig. 1 is a flowchart illustrating a method for managing activities of an LVGL-based application according to the present application.
Fig. 2 is a schematic structural diagram of an activity management apparatus for LVGL-based applications proposed in the present application.
The reference numbers in the figures illustrate: 10 is a preprocessing unit, 20 is an active new unit, and 30 is an active delete unit.
Detailed Description
In mobile electronic devices, the activities of applications are managed, and it is most easily conceivable to add a set of stacks by using the android (android) scheme, and manage the activities of multi-level applications in a push and pop manner. Alternatively, a linked list is added to manage the activities of the multi-level application.
The overall idea of the application is to multiplex the existing screen display linked list in the LVGL without adding a new stack or a new linked list. By analyzing the existing multilevel linked list management mechanism of the LVGL, the method can delete an object, delete all the sub-objects of the object together, and empty the memory space (external memory space) and the animation sub-thread allocated to the object and all the sub-objects. And the application activity also needs a set of automatic recovery mechanism, so if the existing multilayer linked list management mechanism provided by the LVGL is used for managing the application activity, the automatic recovery of the application activity can be realized only by deleting one object. Therefore, the application breaks through the conventional thinking of the ordinary technical personnel in the field and designs the screen display linked list in the LVGL. However, this solution of the present application also requires modification or supplementation of some of the existing mechanisms in the screen display chain table in the LVGL.
Referring to fig. 1, the method for managing activities of an LVGL-based application provided by the present application includes the following steps.
Step S10: each activity (activity) is defined as an object in the LVGL and the activity of the application is taken as the only one object allowed to be added in the screen display linked list of the LVGL. Each activity belonging to one application is treated as multiple objects, and each activity belonging to a different application is treated as multiple objects.
The objects allowed to be added in the existing LVGL screen display linked list are some common control objects such as buttons, text boxes, picture boxes, etc. The method modifies the application, on one hand, the application activity is also used as an object to be allowed to be added in the LVGL screen display chain table, on the other hand, the screen display chain table is limited to be the only chain table for managing the application activity, only the application activity object can be added in the screen display chain table, and other common control objects cannot be added.
Step S20: when an application activity needs to be newly built, calling the function of a newly built object of the LVGL, taking the activity as an object, newly adding a node on the head of a screen display linked list, and storing the object. The newly added node contains the basic attribute of the LVGL object, namely a linked list of the LVGL object is owned to manage the sub-objects, an external storage space is owned to store parameters or variables, and an animation sub-thread management mechanism bound with the object is owned.
Preferably, the present application also adds three variables specifically to the active object of the application. Each object in the LVGL has its own external memory space (i.e. node) and the three newly added variables are stored in the external memory space of the active object of each application.
The first incremental variable is the serial number of the application's activity, which is the number used to uniquely identify the activity.
The second newly added variable is a pointer of the newly created function, and the newly created child object function can be called through the pointer and used for creating a new child object for the activity.
The third new added variable is a pointer of a pre-deleting function, and the pre-deleting function can be called through the pointer, so that the special resources applied by the application activity in the new building process are released before the active object of the application is deleted. The special resources refer to resources which are applied for use except basic attributes (a linked list, an external storage space and an animation sub-thread; applied by the existing new object mechanism of the LVGL) of the LVGL object when the activity of the newly added application is an object, and comprise a cache space, a task and the like. These special resources are not applied by the existing new object mechanism of the LVGL and therefore cannot be automatically released by the existing reclaim (delete object) mechanism of the LVGL. When the active objects of the application are deleted, the special resources are not needed any more, and can be released through the pre-deletion function, so that the memory leakage is avoided. For example, when an application activity is newly created as an object in the screen display linked list of the LVGL, the activity opens a plurality of picture files, and the picture files are cached in a memory space after being decompressed for the first time. The memory space is not applied in the default code of the LVGL and belongs to the requirement of special customization, and the memory space cannot be released by the existing object deleting mechanism of the LVGL. This memory space is released by the user invoking a pre-delete function.
Step S30: when an application activity needs to be deleted, the function of deleting the object of the LVGL is called, the object of the activity is deleted, at the moment, the LVGL can automatically recover the deleted application activity object and the linked lists, the external storage space and the animation sub-thread of all the sub-objects, a set of codes for recovering the sub-objects and resources are saved, and the code overhead for managing the resources is reduced. This applies to the situation where the active object of the deleted application has not applied for a particular resource during the new creation.
If the deleted application active object applies for special resources in the new building process, firstly calling a pre-deleting function through a pointer (a third newly added variable) of the pre-deleting function, and releasing all the special resources applied in the active object new building process; the function of deleting the object of the LVGL is then invoked, deleting the active object.
The order of step S20 and step S30 is not strictly limited, and any of them may be used.
According to the method, the innovation of the application does not provide a linked list mechanism, but fully inherits the function of the existing screen display linked list in the LVGL and carries out appropriate supplement and modification, so that the switching management among activities of multiple applications is realized by using the existing screen display linked list in the LVGL on the basis of not increasing excessive codes.
In the application, the screen display linked list no longer allows adding common control objects, but only adds active objects of the application. Aiming at the requirement that a common control needs to be used in a certain graphical user interface, the method and the device perform the following processing. Taking an active object of an application as a parent object, calling a function of a newly-built child object through a pointer (a second newly-added variable) of a newly-built function, and adding a common control child object for the active object of the application. The common control sub-objects comprise a picture box, a text box, a slide box and the like. This allows the activities of the application to independently create and manage the common control sub-objects belonging to the graphical user interface of the activity. When the activity of this application is deleted, its child objects are all cleared, including the animation child threads and external storage space for these child objects. After being newly built, each common control sub-object also contains the basic attribute of the LVGL object, namely a linked list of the sub-object, an external storage space of the sub-object and an animation sub-thread of the sub-object.
The application can match the application activities in the screen display linked list according to the sequence number (first newly-increased variable) of the application activities, so that the application can conveniently find the external storage space of the application activities, and further modify the application activities. For example, the activity of an application in the background state is found and adjusted to the activity of an application in which the foreground is visible. And when the timing time of one second is up, finding the activity of a certain application and modifying the parameter of the recording time of the application. And as such directed destruction in accordance with the serial number of the application's activity.
The application can also query the activity of the application at the top layer in the screen display linked list for querying the activity of the application which is being visible, so that the application can conveniently find the external storage space of the activity of the application, and further modify the activity of the application. Such as to have the activity of the currently displayed application exit. The top level (head) node in the screen display chain list is variable, and the active object of the application corresponding to the top level node is used for realizing the interface currently displayed. Each time an active object of an application is newly built, a new node is inserted into the topmost layer of the screen display linked list. The rendering program of the LVGL considers that an interface implemented by an application activity corresponding to a topmost node in the screen display linked list is an interface that a topmost (top) layer needs to display, so that an active object of the application corresponding to a node inserted last in the screen display linked list is the interface that the topmost layer needs to display.
Referring to fig. 2, the apparatus for managing activities of an application based on LVGL in the present application includes a preprocessing unit 10, an activity creating unit 20, and an activity deleting unit 30.
The preprocessing unit 10 is used to define each activity as an object in the LVGL and to treat the applied activity as the only one object allowed to be added in the screen display chain table of the LVGL.
The activity new creation unit 20 is configured to, when an activity of an application needs to be created, invoke a function of a new object of the LVGL, add a node to a head of the screen display linked list as an object of the activity, and store the object. The newly added node contains the basic attribute of the LVGL object-the linked list of the object, the external storage space of the object, the animation child thread of the object, and preferably three variables.
The first incremental variable is the serial number of the application's activity, which is the number used to uniquely identify the activity.
The second newly added variable is a pointer of the newly created function, and the newly created child object function can be called through the pointer and used for creating a new child object for the activity.
The third new added variable is a pointer of a pre-deleting function, and the pre-deleting function can be called through the pointer, so that the special resources applied by the application activity in the new building process are released before the active object of the application is deleted.
The activity deleting unit 30 is configured to, when an activity of an application needs to be deleted, invoke a function of deleting an object of the LVGL, and delete the object of the activity, where the LVGL may automatically recycle the deleted object of the activity of the application and the linked lists, the external storage space, and the animation sub-threads of all sub-objects thereof.
If the deleted application active object applies for special resources in the new building process, firstly calling a pre-deleting function through a pointer (a third newly added variable) of the pre-deleting function, and releasing all the special resources applied in the active object new building process; the function of deleting the object of the LVGL is then invoked, deleting the active object.
The method and the device develop the management mechanism of the activity of the application by utilizing the existing screen display linked list of the LVGL and a multi-level linked list management mechanism. Due to the fact that the existing chain table mechanism of the LVGL is multiplexed, not only is code overhead saved, but also a plurality of existing functions are inherited, and meanwhile, necessary modification and innovation are carried out. When many child objects are created for an application activity and the application activity is to be closed finally, the active object of the application is destroyed only by calling the existing object deleting manner of the LVGL. At this time, the resources related to the object and the resources related to all the sub-objects of the object are all destroyed and recycled through the mechanism of the LVGL and the newly added pre-deletion function, so that a set of codes for recycling the sub-objects and the resources are omitted. The application has the advantages that the LVGL code is simply modified, and the expected function is achieved; the activities of multiple applications may be switched at will.
The above are merely preferred embodiments of the present application and are not intended to limit the present application. Various modifications and changes may occur to those skilled in the art. Any modification, equivalent replacement, improvement and the like made within the spirit and principle of the present application shall be included in the protection scope of the present application.

Claims (10)

1. A management method of the activity of the application based on LVGL is characterized by comprising the following steps;
step S10: defining the activity of the application as an object in a light multipurpose graphic library (LVGL), and taking the activity of the application as the only one object allowed to be added in a screen display chain table of the LVGL;
step S20: when an application activity needs to be newly built, calling the function of a newly built object of the LVGL, taking the activity as an object, newly adding a node on the head of a screen display linked list and storing the object; the newly-built active objects of the application comprise basic attributes of LVGL objects, namely a linked list, an external storage space, namely nodes and animation child threads;
step S30: when an application activity needs to be deleted, calling the function of deleting the object of the LVGL, deleting the object of the activity, and automatically recycling the deleted application activity object and the linked lists, the external storage space and the animation sub-threads of all the sub-objects of the deleted application activity object by the LVGL;
the steps S20 and S30 are performed in reverse order or simultaneously.
2. The method for managing activities of an LVGL-based application according to claim 1, wherein in the step S10, a plurality of activities belonging to one application are regarded as objects in a plurality of LVGLs, and a plurality of activities belonging to different applications are regarded as objects in a plurality of LVGLs.
3. The method for managing activities of an LVGL-based application according to claim 1, wherein in the step S20, the active object of the newly-created application further has one or more of the following additional variables, and all the additional variables are stored in the external storage space of the active object of the newly-created application;
the first newly added variable is the serial number of the activity of the application and is used for uniquely identifying the activity of each application;
the second newly added variable is a pointer of the newly created function and is used for calling the newly created child object function;
the third newly added variable is a pointer of the pre-delete function and is used for calling the pre-delete function.
4. The method for managing the activities of an LVGL-based application according to claim 3, wherein in the step S30, if the active object of the deleted application applies for a special resource during the new creation process, the pre-delete function is first called through the pointer of the pre-delete function, and all the special resources applied during the new creation process of the active object are released; then calling the function of deleting the object of the LVGL, and deleting the active object;
the special resource refers to a resource which is applied for use except the basic attribute of the LVGL object when the activity of the newly-built application is an object; these special resources are not requested by the function of the new object of the LVGL and therefore cannot be automatically released by the function of the deleted object of the LVGL.
5. The method of claim 3, wherein if a graphical user interface requires the use of a common control, the method comprises using an active object of an application as a parent object, calling a function of a newly-built child object through a pointer of the newly-built function, and adding a common control child object to the active object of the application; the common control sub-object comprises any one or more of a picture box, a text box and a sliding box.
6. The method of claim 5, wherein each generic control sub-object is created to also contain the basic attributes of the LVGL object-the linked list of the sub-object, the external storage space of the sub-object, the animation sub-thread of the sub-object; when an application's active object is deleted, its child objects along with their animation child threads and external storage space are automatically cleared by the LVGL.
7. The method of claim 3, wherein the first argument is used as a basis for matching the objects of the application's activities in the on-screen display chain.
8. The method of managing activities of an LVGL-based application of claim 1, wherein a top-most node in said screen display chain list is variable; and inserting a new node into the topmost layer of the screen display linked list every time when the active object of the application is newly built, wherein the rendering program of the LVGL considers that the interface realized by the active object of the application corresponding to the topmost layer node in the screen display linked list is the interface displayed by the topmost layer, so that the active object of the application corresponding to the node inserted last in the screen display linked list is the interface displayed by the topmost layer.
9. A management device of the activity of the application based on LVGL is characterized by comprising a preprocessing unit, an activity new building unit and an activity deleting unit;
the preprocessing unit is used for defining the activity of the application as an object in a light multipurpose graphic library (LVGL), and taking the activity of the application as the only one object allowed to be added in a screen display chain table of the LVGL;
the system comprises a movable new building unit, a virtual graphics library (LVGL) and a screen display linked list, wherein the movable new building unit is used for calling the function of a new object of the LVGL when an application activity needs to be built, using the activity as an object, newly adding a node on the head of the screen display linked list and storing the object; the newly-built active objects of the application comprise basic attributes of LVGL objects, namely a linked list, an external storage space, namely nodes and animation child threads;
the activity deleting unit is used for calling the function of deleting the object of the LVGL when the activity of one application needs to be deleted, and deleting the object of the activity, wherein the LVGL automatically recycles the deleted active object of the application and the linked list, the external storage space and the animation sub-thread of all the sub-objects.
10. The apparatus of claim 9, wherein the activity creation unit further sets one or more of newly added variables for the active object of the newly created application, all of the newly added variables being stored in the external storage space of the active object of the newly created application;
the first newly added variable is the serial number of the activity of the application and is used for uniquely identifying the activity of each application;
the second newly added variable is a pointer of the newly created function and is used for calling the newly created child object function;
the third newly added variable is a pointer of the pre-delete function and is used for calling the pre-delete function.
CN202111223928.2A 2021-10-18 2021-10-18 Method and device for managing activities of application based on LVGL Pending CN114119340A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202111223928.2A CN114119340A (en) 2021-10-18 2021-10-18 Method and device for managing activities of application based on LVGL
PCT/CN2022/123737 WO2023066025A1 (en) 2021-10-18 2022-10-08 Method and apparatus for managing activities of applications on basis of lvgl

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111223928.2A CN114119340A (en) 2021-10-18 2021-10-18 Method and device for managing activities of application based on LVGL

Publications (1)

Publication Number Publication Date
CN114119340A true CN114119340A (en) 2022-03-01

Family

ID=80376038

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111223928.2A Pending CN114119340A (en) 2021-10-18 2021-10-18 Method and device for managing activities of application based on LVGL

Country Status (2)

Country Link
CN (1) CN114119340A (en)
WO (1) WO2023066025A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114860137A (en) * 2022-03-18 2022-08-05 恒鸿达科技有限公司 Left-right circulating sliding method, device, equipment and medium for lvgl interface
CN114860140A (en) * 2022-03-18 2022-08-05 恒鸿达科技有限公司 Method and device for realizing cyclic sliding of lvgl interface based on configuration
WO2023066025A1 (en) * 2021-10-18 2023-04-27 翱捷科技股份有限公司 Method and apparatus for managing activities of applications on basis of lvgl
CN117055988A (en) * 2023-07-11 2023-11-14 荣耀终端有限公司 Lightweight operating system optimization processing method and electronic equipment

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116737670B (en) * 2023-08-11 2023-11-17 英诺达(成都)电子科技有限公司 Method, device, equipment and storage medium for deleting UPF file

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112199087A (en) * 2020-10-13 2021-01-08 Oppo广东移动通信有限公司 Configuration method, device, equipment and storage medium of application development environment
CN112562022A (en) * 2021-01-25 2021-03-26 翱捷科技股份有限公司 Picture display method and system of electronic equipment
WO2021168468A1 (en) * 2021-03-26 2021-08-26 Innopeak Technology, Inc. Method and system for flexible graphics enhancement and execution
CN113326086B (en) * 2021-05-18 2022-08-23 翱捷科技股份有限公司 GIF picture display method and device based on LVGL
CN114119340A (en) * 2021-10-18 2022-03-01 翱捷科技股份有限公司 Method and device for managing activities of application based on LVGL

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023066025A1 (en) * 2021-10-18 2023-04-27 翱捷科技股份有限公司 Method and apparatus for managing activities of applications on basis of lvgl
CN114860137A (en) * 2022-03-18 2022-08-05 恒鸿达科技有限公司 Left-right circulating sliding method, device, equipment and medium for lvgl interface
CN114860140A (en) * 2022-03-18 2022-08-05 恒鸿达科技有限公司 Method and device for realizing cyclic sliding of lvgl interface based on configuration
CN114860140B (en) * 2022-03-18 2023-05-02 恒鸿达科技有限公司 Configuration-based lvgl interface cyclic sliding method and device
CN114860137B (en) * 2022-03-18 2023-06-27 恒鸿达科技有限公司 Left-right circular sliding method, device, equipment and medium of lvgl interface
CN117055988A (en) * 2023-07-11 2023-11-14 荣耀终端有限公司 Lightweight operating system optimization processing method and electronic equipment

Also Published As

Publication number Publication date
WO2023066025A1 (en) 2023-04-27

Similar Documents

Publication Publication Date Title
CN114119340A (en) Method and device for managing activities of application based on LVGL
US6330717B1 (en) Process and system for developing an application program for a distributed adaptive run-time platform
US6324619B1 (en) Process and system for managing run-time adaptation for general purpose distributed adaptive applications
US7392483B2 (en) Transformation of platform specific graphical user interface widgets migrated between heterogeneous device platforms
US7281248B2 (en) Virtualized and realized user interface controls
US7013435B2 (en) Three dimensional spatial user interface
US7441200B2 (en) Method and apparatus for designing, rendering and programming a user interface
JP4195444B2 (en) Method and system for extending file system APIs
US7934162B2 (en) Running state migration of platform specific graphical user interface widgets between heterogeneous device platforms
US6281896B1 (en) Data processor controlled interface with multiple tree of elements views expandable into individual detail views
JP2723208B2 (en) Data processing system
US7398476B2 (en) Graphical list grouping widget and methods of use thereof
US20110258534A1 (en) Declarative definition of complex user interface state changes
Chapuis et al. Metisse is not a 3D desktop!
JPH1063462A (en) Method for expressing group of graphic object and computer control graphic display system
CA2287413A1 (en) Hardware accelerator for an object-oriented programming language
CN107315580A (en) Component processing method, device and the equipment of user interface, computer-readable recording medium
CN105677371A (en) Method and system for quickly generating software interface
US20050289450A1 (en) User interface virtualization
US7409642B2 (en) Method and system for applying user interface elements to data
US20050216883A1 (en) API for building semantically rich diagramming tools
EP2987076B1 (en) Application-to-application launch windowing
JP2004102343A (en) Screen display processing device and method, and computer program
US20240143350A1 (en) Rules Based User Interface Generation
JPH04313118A (en) Attribute data managing method

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