CN117632452A - Application processing method and electronic equipment - Google Patents

Application processing method and electronic equipment Download PDF

Info

Publication number
CN117632452A
CN117632452A CN202210972739.3A CN202210972739A CN117632452A CN 117632452 A CN117632452 A CN 117632452A CN 202210972739 A CN202210972739 A CN 202210972739A CN 117632452 A CN117632452 A CN 117632452A
Authority
CN
China
Prior art keywords
application
terminal
audio
background
running
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
CN202210972739.3A
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202210972739.3A priority Critical patent/CN117632452A/en
Priority to PCT/CN2023/111084 priority patent/WO2024037353A1/en
Publication of CN117632452A publication Critical patent/CN117632452A/en
Pending legal-status Critical Current

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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Telephone Function (AREA)

Abstract

The embodiment of the application provides an application processing method and electronic equipment, wherein when an application running in a background is playing audio, whether the duration of an audio stream cached in a buffer of an AudioFlinger is greater than or equal to a first preset duration is detected; and in response to the time length of the audio stream buffered in the buffer being greater than or equal to the first preset time length, freezing the application, and when the application is frozen, continuing to play the audio by the application. In the embodiment of the application, for the application perceived by the user during background running, on the premise of not affecting user experience, if the user can continue to hear music, freezing management can be performed.

Description

Application processing method and electronic equipment
Technical Field
The embodiment of the application relates to the technical field of terminals, in particular to an application processing method and electronic equipment.
Background
Applications installed on the terminal are more and more, and the rich functions of the applications can facilitate the life of users. When the application runs in the background, terminal resources are occupied, and the terminal resources are tense.
At present, when some applications run in the background, the terminal can freeze the applications with the running time longer than the preset time length so as to reduce the occupation of terminal resources. However, for applications that are perceivable by the user when running in the background, such as an application that plays audio, an application that performs positioning navigation, etc., such applications are being switched to the background by the user, but still perform functions perceivable by the user, such as playing audio, performing positioning navigation, etc. So that the terminal will not freeze the applications, which still occupy terminal resources, in order to guarantee the user experience.
Thus, there is a need for a method of processing applications that are user-perceivable when running in the background.
Disclosure of Invention
The embodiment of the application processing method and the electronic device can freeze the application perceived by a user when running in the background.
In a first aspect, an embodiment of the present application provides an application processing method, and an execution body for executing the method may be a terminal or a chip in the terminal, and the terminal is described below as an example. In the method, when an application running in the background is playing audio, a terminal detects whether the duration of an audio stream cached in a buffer of an AudioFlinger is greater than or equal to a first preset duration. In this embodiment of the present application, compared to the buffer of the AudioFlinger in the prior art, the capacity of the buffer of the AudioFlinger may be increased, for example, the buffer of the AudioFlinger in the prior art may buffer 1k audio stream, and the buffer of the AudioFlinger in this embodiment of the present application may buffer 1M audio stream.
The terminal responds to the fact that the time length of the audio stream buffered in the buffer is greater than or equal to the first preset time length, and the fact that enough audio streams are buffered in the buffer can be maintained for playing for a period of time is indicated, so that the terminal can freeze an application running in the background and playing audio, and occupation of the application to terminal resources is reduced. When the application is frozen, the application can continue to play the audio according to the audio cached in the cache, so that after the application is frozen, a user can still hear the background application to play the audio, and the user does not perceive that the background application is frozen.
In the embodiment of the application, for the application perceived by the user during background running, the terminal can perform freezing management so as to reduce the occupation of the application on terminal resources, and in addition, after the application is frozen, the user can continue to hear the music played by the application without affecting the user experience.
In a possible implementation manner, before the terminal detects whether the duration of the audio stream buffered in the buffer of the AudioFlinger is greater than or equal to the first preset duration, the terminal may also respond to a target event, and detect whether an application running in the background is playing audio, where the target event is an event triggered by any one of the following: application start, interface switching, and terminal frame dropping. The terminal can determine that the application is playing audio in response to the audio stream of the application cached in the buffer. And the terminal responds to the audio stream which is not applied and is cached in the cache, and determines that the application does not play audio.
The target event is an event with higher terminal load requirement, such as application start and interface switch, or the target event is an event which characterizes that the terminal has high load, such as terminal frame dropping. In one example, the target event may be understood as: an event that may result in, or may characterize, a terminal high load. In the embodiment of the present application, when the terminal detects the target event, the purpose of executing the application processing method provided in the present application is to: the load of the terminal is reduced, smooth running of the terminal is ensured, and the problems of application blocking, flashing back and the like are avoided to influence user experience.
In one possible implementation manner, after freezing the application, the terminal may further perform countdown, where the countdown duration is a second preset duration, and the second preset duration is smaller than the first preset duration. The purpose of the terminal for countdown is that: before the audio stream buffered in the buffer is completely played, the application is thawed, so that the application continues to buffer the audio stream in the buffer, the audio stream in the buffer is prevented from being completely played, and a user perceives that the audio is interrupted to be played.
And the terminal unfreezes the application when the countdown is finished. The countdown time length is a second preset time length, and the second preset time length is smaller than the first preset time length, so that the audio stream in the buffer can be guaranteed to be continuously buffered before being completely played, and the continuity of the audio can be guaranteed.
In one possible implementation manner, when the terminal detects whether the duration of the audio stream buffered in the buffer of the AudioFlinger is greater than or equal to the first preset duration, if the duration of the audio stream buffered in the buffer is less than the first preset duration, the audio stream buffered in the buffer is represented to be played quickly, so that the terminal may not freeze the application in order not to affect the user experience.
In addition, the terminal may detect whether the application is performing network positioning. The purpose of the terminal to detect whether the application is performing network positioning is to more comprehensively perform freezing management on the application running in the background. It should be understood that network positioning can be understood as positioning of a base station, and positioning accuracy of the network positioning is low, i.e. a terminal can accept lower positioning accuracy, so that an application is frozen for a period of time, and user experience is not affected.
In such an implementation, the terminal freezes the application in response to the application being network located. After the terminal freezes the application, the terminal can count down, and the count down time is a third preset time. The terminal freezing application can reduce the occupation of the application to terminal resources, reduce the terminal load, and the purpose of countdown by the terminal is that: the application is prevented from being frozen for a long time, so that the user perceives that the application is not positioned, and the influence on the user experience is avoided. At the end of the countdown, the terminal may defrost the application, which may proceed with network positioning.
In one possible implementation manner, the terminal detects whether the application is performing network positioning, and if the application is not performing network positioning, the terminal can detect whether the terminal is absolutely stationary. The purpose of the terminal to detect whether the terminal is absolutely stationary is to more comprehensively freeze and manage the application running in the background. It should be understood that absolute rest can be understood as: the position and the posture of the terminal are unchanged.
Under the condition that the terminal is absolutely stationary, the terminal can freeze the application so as to reduce the occupation of the application to terminal resources. In this implementation, the terminal may defrost the application upon detecting a change in the position or posture of the terminal.
The application processing method provided in the embodiment of the present application is described below in conjunction with an internal module included in a terminal, from the perspective of the internal module, where in an example, the terminal includes: a freezing module and a process management module.
The freezing module is used for responding to the fact that the time length of the audio stream cached in the buffer is greater than or equal to the first preset time length, and writing the identification of the process corresponding to the audio stream into a node, wherein the process is the process of the application. And the process management module freezes the process in response to the identifier of the process written in the node.
Correspondingly, when the application needs to be unfrozen, the freezing module writes the process of the application to be unfrozen into a node, and the process management module responds to the identifier written into the node and can unfrozen the process.
In one possible implementation manner, the terminal further includes: and the Location is used for acquiring the position of the terminal and feeding back to the freezing module.
And after the application is subjected to network positioning and frozen, the freezing module responds to the position of the terminal from Location and does not send the position of the terminal to the application. Thus, the application cannot receive the position of the terminal, and thus, the operation such as position update is not performed.
And when the application is in network positioning and the application is unfrozen, the freezing module responds to the position of the terminal from Location and sends the position of the terminal to the application. Thus, the application can receive the position of the terminal and can continue the operations of position updating, position playing and the like.
In a second aspect, embodiments of the present application provide an electronic device, which may include: a processor and a memory. The memory is for storing computer executable program code, the program code comprising instructions; the instructions, when executed by a processor, cause the electronic device to perform the method as in the first aspect.
In a third aspect, embodiments of the present application provide a computer program product comprising instructions which, when run on a computer, cause the computer to perform the method of the first aspect described above.
In a fourth aspect, embodiments of the present application provide a computer-readable storage medium having instructions stored therein, which when run on a computer, cause the computer to perform the method of the first aspect described above.
The advantages of each possible implementation manner of the second aspect to the fourth aspect may be referred to as the advantages brought by the first aspect, and are not described herein.
Drawings
Fig. 1 is a schematic structural diagram of a terminal according to an embodiment of the present application;
FIG. 2 is a flow chart of an embodiment of an application processing method according to the embodiments of the present application;
FIG. 3 is a flowchart illustrating another embodiment of an application processing method according to an embodiment of the present application;
fig. 4 is a schematic flow chart of playing audio by an application according to an embodiment of the present application;
fig. 5 is a schematic flow chart of network positioning by an application provided in an embodiment of the present application;
FIG. 6 is a flowchart illustrating another embodiment of an application processing method according to an embodiment of the present application;
fig. 7 is a schematic structural diagram of an electronic device according to an embodiment of the present application.
Detailed Description
The technical terms used in the embodiments of the present application are defined as follows:
The application runs in the foreground: the terminal runs the application in the foreground, and the application process is a foreground process. When the application runs in the foreground, the terminal displays the interface of the application, and the user can see the interface of the application. Illustratively, if the application is a call application, running in the foreground may be understood as: the terminal displays a call interface. Running an application in the foreground may also be referred to as: the application runs in the foreground.
The application runs in the background: the terminal runs the application in the background, and the application process is a background process. When the application runs in the background, the terminal can display interfaces of other applications, and does not display interfaces of the application running in the background, namely, interfaces of the application running in the background are invisible to the user. Alternatively, the terminal may display an identification characterizing that the application is running in the background on an interface of the other application. When the call application runs in the background, the terminal can display a card representing "in call" on the interface, and the card can display information such as call duration and the like, and can be regarded as an identifier representing that the call application runs in the background. The application running in the background may also be referred to as: the application runs in the background.
The process comprises the following steps: consider the example of a running program, each application running in a separate process.
Freezing: the embodiment of the application refers to the process of freezing an application. Freezing an application may also be understood as the process of freezing an application.
Thawing: thawing the progress of the frozen application.
Running a user-perceivable application in the background: including but not limited to applications that play audio, applications that locate. For example, when an application playing audio runs in the background, the application still continues to play audio, and the user can hear the audio, so that the application playing audio runs in the background and is perceivable to the user. Still another example would be to continue locating the location of the terminal while the locating application is running in the background and playing audio to inform the location of the terminal so that the user can perceive the location of the terminal and therefore the locating application is perceivable to the user while running in the background.
A terminal (terminal) in an embodiment of the present application may be referred to as a User Equipment (UE). For example, the terminal may be a mobile phone, a tablet (portable android device, PAD), a personal digital assistant (personal digital assistant, PDA), a handheld device with a wireless communication function, a computing device, a vehicle-mounted device, or a wearable device, a Virtual Reality (VR) terminal device, an augmented reality (augmented reality, AR) terminal device, a wireless terminal in an industrial control (industrial control), a terminal in a smart home (smart home), or the like, and the form of the terminal is not specifically limited in the embodiments of the present application.
The application occupies terminal resources when running in the foreground or the background, and the terminal resources may include, but are not limited to: resources of a processor in the terminal, memory resources, and input/output (I/O) resources. When the number of applications running in the terminal is large, the terminal is high in load, and the problems of slow response, no response, flash back and the like of the applications can be caused. The application running in the foreground is the application required by the user, and the terminal generally does not freeze the application running in the foreground, but reduces the occupation of terminal resources and reduces the load of the terminal by freezing the application running in the background.
It should be noted that, in order to improve the user experience, in the prior art solutions, the application running in the background where the terminal is frozen does not include an application perceivable by the user. Exemplary, user-perceivable applications include, but are not limited to: and playing the audio and positioning the audio. In some examples, an application that is perceivable by a user while running in the background may be referred to as a target application. When the target application is running in the background, if the terminal freezes the target application, the user can perceive that the terminal does not play audio, does not perform positioning (navigation) and the like, so that the user experience is low, and therefore, the terminal does not freeze the target application when the target application is running in the background at present.
In one embodiment, when the target application runs in the background, the host process of the target application may bind a service process, and the service process completes tasks such as audio playing, positioning, and the like.
In one embodiment, when the target application runs in the background, the terminal may increase the priority of the target application, and the terminal may freeze the low-priority application running in the background, and may not freeze the target application due to the high priority of the target application. In one embodiment, a processing rule of the application running in the background may be preset, and the processing rule of the target application running in the background may be: is not frozen. In such an embodiment, when the target application is running in the background, the terminal does not freeze the target application according to the processing rules of the target application when running in the background.
In order to improve the user experience, the above two implementations adopt different ways, and the target application running in the background is not frozen. The target application running in the background also occupies terminal resources, resulting in high load on the terminal.
In view of this, the embodiment of the application provides an application processing method, which can freeze and defrost an application perceivable by a user when running in the background, so as to reduce terminal resources occupied by the application perceivable by the user when running in the background and reduce terminal load.
Before introducing the application processing method provided by the embodiment of the present application, the structure of the terminal provided by the embodiment of the present application is first described:
fig. 1 is a schematic structural diagram of a terminal according to an embodiment of the present application. Referring to fig. 1, a software system of a terminal may employ a layered architecture that divides the software system of the terminal into several layers, each layer having a distinct role and division, and the layers communicate with each other through software interfaces. In some examples, the software system may be divided into five layers, an application layer (applications), an application framework layer (application framework), an Zhuoyun rows (Android run) and system libraries, a hardware abstraction layer (hardware abstract layer, HAL), and a kernel layer (kernel), respectively. The embodiment of the application does not limit the layering of the software structure of the terminal.
It should be appreciated that the application layer, application framework layer, hardware abstraction layer, and kernel layer involved in embodiments of the present application are illustrated in fig. 1. The modules included in the layers shown in fig. 1 are modules referred to in the embodiments of the present application, and the modules included in the layers below do not constitute a limitation on the structure of the terminal, nor does the hierarchy of the module deployment constitute a limitation on the structure of the terminal. In some examples, the modules shown in fig. 1 may be deployed alone, or several modules may be deployed together, with the division of modules in fig. 1 being one example.
The application layer may include a series of application packages that run applications by calling an application program interface (application programming interface, API) provided by the application framework layer. As shown in fig. 1, the application package may include: target application, audioTrack.
The target application is an application that is perceivable by the user when running in the background. Exemplary, target applications include, but are not limited to: and playing the audio and positioning the audio. By way of example, applications for playing audio may include, but are not limited to: audio class applications, social class applications, navigation class applications, and video class applications. Applications for positioning may include, but are not limited to: audio class applications, social class applications, and navigation class applications. The target application is illustrated in fig. 1 as including an audio class application and a navigation class application.
Taking an audio class application as an example, the audio class application may create an AudioTrack instance when playing audio. AudioTrack for being invoked by an audio class application to decode audio data. In some examples, an audio class application may invoke AudioTrack to decode audio data resulting in an audio stream in pulse code modulation (pulse code modulation, PCM) format.
The application framework layer provides APIs and programming frameworks for application programs of the application layer. The application framework layer includes a number of predefined functions. As shown in fig. 1, the application framework layer may include: audioFlinger, location, a freezing module, an event transmission module, and a foreground and background management module. The AudioFlinger may be regarded as a module for providing an audio processing service, and the Location may be regarded as a module for providing a Location service.
AudioFlinger, the executor of audio strategy, responsible for the transmission of audio stream. A buffer (buffer) may be provided in the AudioFlinger, the buffer being used for buffering the audio stream.
And the Location is used for providing the Location of the terminal for the target application.
The freezing module is used for detecting whether the target application meets the freezing condition or not so as to freeze the target application when the target application meets the freezing condition, and detecting whether the target application meets the thawing condition or not so as to thaw the target application when the target application meets the thawing condition.
And the event transmission module is used for sending an event to the freezing module so as to trigger the freezing module to detect whether the target application meets the freezing condition.
And the foreground and background management module is used for detecting whether the target application runs in the foreground or the background, and synchronizing the information of the target application running in the background with the freezing module when the target application runs in the background.
The hardware abstraction layer may include a plurality of library modules, such as camera library modules, ma Daku modules, speaker library modules, and the like. The application program framework layer can realize the purpose of accessing the hardware of the device by calling the corresponding library module in the hardware abstraction layer. The device hardware may include, for example, motors, cameras, speakers, etc. in the electronic device.
As shown in fig. 1, the hardware abstraction layer may include AudioHAL.
Wherein, audioFlinger can access audio hardware to play audio by calling AudioHAL. Audio hardware such as speakers, etc.
The kernel layer is a layer between hardware and software. The kernel layer is used for driving the hardware so that the hardware works. The kernel layer at least includes display driver, camera driver, audio driver, etc., which is not limited in this embodiment of the present application. As shown in fig. 1, the kernel layer includes: and a process management module and an audio driver.
The process management module is used for managing the process of the target application, and for example, the process management module can freeze or defrost the process of the target application.
And the audio driver is used for driving the audio hardware to work.
It should be understood that the functions of the modules in the various levels of the terminal are briefly described above, and specific functions may be described with reference to fig. 6.
The application processing method provided in the embodiment of the present application is described below with reference to specific embodiments. The following embodiments may be combined with each other, and the same or similar concepts or processes will not be described in detail in some embodiments.
Fig. 2 is a flowchart of an embodiment of an application processing method according to an embodiment of the present application. Referring to fig. 2, the application processing method provided in the embodiment of the present application may include:
s201, detecting whether an application running in the background is playing audio. If yes, execution is S202, otherwise execution is S206.
The application may run in the foreground or background and the terminal may determine that the application is running in the foreground or background. For example, when an application is running in the foreground, the identity of the process of the application is noted as foreground running, and when the application is running in the background, the identity of the process of the application is noted as background running. The terminal can determine that the application runs in the foreground or the background according to the mark of the process identifier.
In some examples, the identification of the process of the application may be a process number of the application. For example, when the audio class application is running in the background, the process number of the audio class application is labeled as background running, and when the navigation class application is running in the background, the process number of the navigation class application is labeled as background running. If the audio class application and the navigation class application are both running in the background, the process number of the audio class application is process 1, the process of the navigation class application is process 2, then the process 1 and the process 2 are marked as background running, and the terminal can determine that the audio class application and the navigation class application are both running in the background according to the process 1 and the process 2 which are marked as background running.
In one embodiment, the terminal may detect in real time whether an application running in the background is playing audio.
In one embodiment, the terminal may detect whether an application running in the background is playing audio in response to a target event to reduce the terminal load. The target event may include, but is not limited to: starting an application, switching interfaces, or sliding off frames, etc. In other words, the terminal may detect whether the background running application is playing audio in response to detecting that the terminal starts an application, switches interfaces, or slips frames.
It should be appreciated that the terminal detects whether the application running in the background is playing audio in response to the target event because: starting an application or switching interface, wherein the terminal load requirement is higher, the terminal load is increased when a target event occurs, the frame is slipped off to represent that the terminal load is higher, in order to ensure user experience and avoid the problem of application blocking caused by the high terminal load, the terminal can detect whether the application running in the background plays audio or not when detecting the target event, and then trigger the terminal to freeze the application running in the background and playing audio, so that the occupation of the playing audio running in the background to the terminal load is reduced, and the terminal load is reduced.
The terminal starting application can be understood as: the terminal creates an application process and starts the application process to start the application. For example, if the application is not started, the user clicks an icon of the application on a desktop of the terminal to trigger the terminal to start the application.
The switching interface can be understood as: the interface of the terminal changes.
The dropped frame of the terminal can be understood as: when the terminal draws the picture frames, the number of the drawn picture frames is smaller than the number of the picture frames corresponding to the refresh rate of the terminal, so that the number of the picture frames displayed by the terminal is reduced, and even the problem of terminal interface blocking is caused. For example, taking the refresh rate of the terminal as 60Hz as an example, the terminal can display 60 frames per second, that is, display one frame every 16.6ms, but when the terminal draws the frames, the number of drawn frames is less than 60, and only 30 frames are drawn, so that the number of frames displayed by the terminal becomes smaller, that is, the terminal drops frames. The sliding frame dropping is a condition in the terminal frame dropping, and the sliding frame dropping can be understood as follows: the interface that appears when the user performs the sliding operation on the terminal interface drops the frame. The terminal drop frames may also include a click-down frame, a drop frame at any interface change, etc., and in some examples, the target event may include a terminal drop frame.
When the application plays the audio, the application can call AudioTrack to decode the audio data to obtain an audio stream. The audio data may be locally stored audio data, or audio data downloaded from a server may be applied, which is not limited in the embodiment of the present application. The application may transmit the decoded audio stream to AudioFlinger, audioFlinger, and may buffer the received audio stream in a buffer of the audioplayer for playing. The AudioFlinger can read the Audio stream in the buffer while buffering the Audio stream, call the audiohal of the hardware abstraction layer and control the Audio hardware to play the Audio.
The terminal can detect whether an audio stream is cached in the buffer or not so as to detect whether an application running in the background plays audio or not. When the buffer is cached with the audio stream, the terminal can determine that the application in the terminal is playing audio, but cannot determine whether the application running in the foreground plays audio or the application running in the background plays audio.
It should be noted that when the application transmits the audio stream obtained by decoding to the AudioFlinger, the application may also send an identifier of a process corresponding to the audio stream to the AudioFlinger, and the terminal may determine, according to the identifier of the process corresponding to the audio stream buffered in the buffer, whether the application running in the foreground plays the audio or the application running in the background plays the audio, in other words, whether the application running in the background is playing the audio. When the identifier of the process corresponding to the audio stream cached in the buffer is the identifier of the process of the application running in the foreground, the terminal can determine that the application running in the foreground is playing audio, and when the identifier of the process corresponding to the audio stream cached in the buffer is the identifier of the process of the application running in the background, the terminal can determine that the application running in the background is playing audio.
For example, when the process identifier corresponding to the audio stream buffered in the buffer is process 1, the terminal may determine that process 1 is marked as running in the background, so that the terminal may determine that the application running in the background is playing audio.
S202, detecting whether the duration of the audio stream buffered in the buffer of the AudioFlinger is greater than or equal to a first preset duration. If yes, execution proceeds to S203, otherwise, execution proceeds to S206.
In the embodiment of the present application, the size of the buffer of the AudioFlinger is increased, and the size of the buffer can be understood as the data size of the buffer capable of accommodating the audio stream. For example, in the prior art, the size of the buffer of the AudioFlinger is 20K, and in this embodiment of the present application, the buffer of the AudioFlinger may be expanded to 1M, that is, the size of the buffer is increased to 1M, so that the AudioFlinger may buffer more audio streams.
The terminal may detect whether a duration of an audio stream buffered in a buffer of the AudioFlinger is greater than or equal to a first preset duration. The first preset time period may be, for example, 10s. In one example, the application may also carry a timestamp of the audio stream when sending the decoded audio stream to the AudioFlinger. The terminal may determine, according to a time stamp of the audio stream buffered in the buffer of the AudioFlinger, a duration of the audio stream buffered in the buffer of the AudioFlinger, so as to detect whether the duration of the audio stream buffered in the buffer of the AudioFlinger is greater than or equal to a first preset duration. For example, the terminal may subtract the earliest timestamp from the latest timestamp of the audio stream buffered in the buffer to obtain the duration of the audio stream buffered in the buffer.
When the duration of the audio stream cached in the buffer is greater than or equal to the first preset duration, the method characterizes that enough audio streams are cached in the buffer, the application running in the background is frozen in a short time, the playing of the audio is not affected, and the terminal can play the audio stream cached in the buffer, so that when the duration of the audio stream cached in the buffer is greater than or equal to the first preset duration, the terminal can freeze the application running in the background and playing the audio. When the duration of the audio stream buffered in the buffer is less than the first preset duration, the audio stream buffered in the buffer is characterized to be less, if the application running in the background is frozen, the audio stream buffered in the buffer is quickly played, the user perceives that the audio playing is interrupted, and in order not to influence the experience of the user, when the duration of the audio stream buffered in the buffer is less than the first preset duration, the terminal can not freeze the application running in the background and playing the audio.
S203, freezing the application.
An application refers to an application that is playing audio in the background. The terminal freezing application can be understood as: the terminal freezes the progress of the application. For example, taking an application as an audio class application as an example, when the audio class application runs in the background and plays audio, if the terminal detects that the duration of the audio stream buffered in the buffer of the AudioFlinger is greater than or equal to the first preset duration, the terminal may freeze the process 1 of the audio class application. After the process 1 of the audio class application is frozen, the audio class application will not call AudioTrack to decode audio data, and will not transmit the decoded audio stream to AudioFlinger.
It should be noted that, in the embodiment of the present application, because the size of the buffer of the AudioFlinger is increased, after the application for playing Audio is frozen, the buffer of the AudioFlinger is also buffered with an Audio stream, so that the AudioFlinger can continue to read the Audio stream in the buffer, call the audiohal of the hardware abstraction layer, and control the Audio hardware to play Audio. In other words, after the application playing the audio is frozen, the terminal may also play the audio, i.e. the user perceives that the audio does not stop playing. It should be appreciated that after the application playing the audio is frozen, the application playing the audio does not occupy terminal resources, and thus the terminal load can be reduced.
S204, counting down, wherein the counting down time is a second preset time.
In order to ensure that the user perceives that the audio played by the application in the background is not interrupted, the terminal can count down after freezing the application so as to defrost the application before the audio stream cached in the buffer of the audioplayer is played, so that the application can continuously call AudioTrack to decode the audio data, continuously transmit the decoded audio stream to the audioplayer, further ensure that the application continuously plays the audio in the background, achieve the aim of enabling the user to perceive that the audio play is not interrupted, and improve user experience. It should be appreciated that the starting point for the terminal to count down may be the time at which the terminal completes the frozen application.
In order to defrost the application before the audio stream buffered in the buffer of the AudioFlinger is played, the countdown duration of the terminal is a second preset duration, and the second preset duration is smaller than the first preset duration. For example, the first preset duration may be 10s, and the second preset duration may be 9s, that is, the terminal may defrost the application when the audio stream buffered in the buffer remains for 1 s.
And S205, thawing the application when the countdown is finished.
The terminal thawing application can be understood as: thawing the progress of the application. After the application is unfrozen, the application can continuously call the AudioTrack to decode the Audio data, continuously transmit the decoded Audio stream to the AudioFlinger, and the AudioFlinger can also continuously buffer the Audio stream in the buffer, call the Audio HAL of the hardware abstraction layer and control the Audio hardware to play the Audio.
In one embodiment, if the countdown has not yet ended, the terminal detects that the application running in the background is switched to the foreground, and the terminal may also defrost the application. Or if the countdown is not finished, the terminal detects the mark representing the background running application displayed on the interface of the user operation terminal, and the terminal can defrost the application. Or if the countdown is not finished, the terminal detects that the user operates a volume key on the terminal to control the volume of the audio played by the application, or the terminal detects that the user operates a key on an earphone connected with the terminal to control the audio played by the application (such as pause, next one, etc.), and the terminal can defrost the application.
S206, detecting whether the application running in the background is performing network positioning. If yes, S207 is executed, and if no, S210 is executed.
The application can be positioned in the background in addition to playing audio in the background running. If the application is positioned in the background, line navigation can be provided for the user, so that the user can also perceive that the application is positioned. In one embodiment, when the application running in the background does not play audio or the duration of the audio stream buffered in the buffer of the AudioFlinger is less than the first preset duration, the terminal may continuously detect whether the application running in the background is performing network positioning, so that the terminal may more comprehensively determine a task executed by the application running in the background, determine whether to freeze the application running in the background, and ensure that the application running in the background is managed more accurately.
The positioning methods commonly used at present comprise: global positioning system (global positioning system, GPS) positioning and base station positioning. Network location can be understood as: and positioning a base station. When the application needs to be located, a registration request can be initiated to the Location, and the registration request is used for indicating the Location to feed back the Location of the terminal to the application when the Location is detected to change. In some examples, the registration request may also include location requirements of the application, such as base station location. The Location responds to the registration request, the Location of the terminal can be obtained in a base station positioning mode, and when the Location of the terminal changes, the Location can call back an interface of the application and feed back the Location of the terminal to the application.
In this example, the terminal may detect whether the background running application initiates a registration request for network positioning to the Location to detect whether the background running application is performing network positioning. If the application running in the background initiates a registration request for network positioning to the Location, the terminal can determine that the application running in the background is performing network positioning, and if the application running in the background does not initiate a registration request for network positioning to the Location, the terminal can determine that the application running in the background is not performing network positioning.
The network positioning method comprises the steps that the positioning accuracy of network positioning is low, when the application running in the background is used for network positioning, the application running in the background can be characterized to receive lower positioning accuracy, so that the terminal detects that the application running in the background is used for network positioning, the terminal can freeze the application running in the background, and the influence on the positioning accuracy is low.
S207, freezing the application.
The freezing application in S207 may refer to the related description in S203. In the embodiment of the application, after the application running in the background and performing network positioning is frozen, the Location can call back the interface of the application when the position of the terminal is changed, and the position of the terminal is fed back to the application, but the application cannot receive the position of the terminal from the Location because the application is in the frozen state.
And S208, counting down, wherein the counting down time is a third preset time.
The third preset time period and the second preset time period may be equal or different. For example, the third preset time period may be different from the second preset time period, for example, the third preset time period may be 1.5s. It should be appreciated that the starting point for the terminal to count down may be the time at which the terminal completes the frozen application.
And S209, thawing the application when the countdown is finished.
The thawing application in S209 may refer to the related description in S205. In the embodiment of the application, after the application running in the background and performing network positioning is defrosted, the application can continuously receive the position of the terminal from Location so as to update the position of the terminal in real time.
It should be understood that, if the third preset duration may be 1.5s, the application is frozen within the duration of 1.5s, and the application does not occupy terminal resources, so as to reduce the terminal load. In addition, because the application performs network positioning, namely the application can accept positioning with lower precision, the application does not update the position of the terminal within the duration of 1.5s, and the user experience is not affected.
S210, detecting whether the terminal is absolutely stationary. If yes, S207 is executed, and if no, S211 is executed.
Absolute rest of the terminal can be understood as: the position and posture of the terminal are not changed. In one embodiment, the terminal may detect whether the Location of the terminal has changed based on the Location of the terminal from Location. In an embodiment, the terminal may include an acceleration sensor, a gyroscope and the like, and the terminal may detect the gesture of the terminal according to data collected by the acceleration sensor, the gyroscope and the like, so as to detect whether the gesture of the terminal changes.
Wherein, when the position and the posture of the terminal are not changed, the terminal can determine that the terminal is absolutely stationary. When the terminal is in absolute standing, the terminal does not need to update the position of the terminal, so that the terminal can freeze the application running in the background, and the resource occupation of the terminal is reduced.
S211, not responding.
When the position or the gesture of the terminal is changed, the terminal determines that the terminal is not absolutely stationary, and the terminal can continue to use network positioning, namely the terminal does not respond and does not freeze the application running in the background.
In the above embodiment, the terminal may determine whether to freeze the application running in the background according to the task that the user can perceive and the corresponding freezing condition, so as to reduce the occupation of the application running in the background to the terminal resource. Among other things, user perceivable tasks are: play audio, locate, etc. In such an embodiment, the user perceivable application running in the background may be executed as described above S201-S211.
In summary, the following describes an application processing method provided in the embodiment of the present application with reference to fig. 3. Referring to fig. 3, the terminal does not freeze the application when the application is running in the foreground. When the application is switched to the background running, for the application which is not perceived by the user, the terminal can freeze the application when the application which is not perceived by the user runs to a preset time period, for the application which is perceived by the user, the terminal can freeze according to the requirement, and the terminal can be understood as freezing the application according to the requirements in the above S201-S211.
In one embodiment, the terminal can adaptively adjust the steps executed by the terminal according to different types of user-perceivable applications running in the background, and the purpose of reducing the occupation of terminal resources by the applications running in the background can also be achieved. For example, a white list may be stored in the terminal, where the white list includes identifiers of different types of applications that are perceivable by the user, and processing steps when the applications run in the background. The identification of applications may include, but is not limited to: the name of the application, the picture, etc. are used to distinguish information of the application.
For example, applications stored in the whitelist may include: a first type of application, a second type of application, and a third type of application. The first type of application only plays audio when running in the background, the second type of application only performs positioning when running in the background, and the third type of application can play audio when running in the background and also perform positioning. Illustratively, the first type of application is a voice book application, an audio class application, a social class application, etc., and the second type of application is a city parking class application. A third type of application, such as a navigation-like application, can be located when running in the background, as well as play navigation audio.
In such an embodiment, the terminal may perform S201-S205 when the first type of application is running in the background. Wherein, when the first type of application does not play audio in the background, the terminal does not feel even if the application is frozen, so when the first type of application does not play audio in the background, the terminal can freeze the first type of application. When the application of the first type plays the audio in the background, if the terminal detects that the duration of the audio stream cached in the buffer of the AudioFlinger is less than the first preset duration, the terminal characterizes that the audio stream cached in the buffer is less, and the terminal can not freeze the application of the first type, so that the AudioFlinger can continue to cache the audio stream in the buffer, continuous audio play is ensured to be uninterrupted, and user experience is improved.
The terminal may perform S206-S211 when the second type of application is running in the background. When the third type of application runs in the background, the terminal may perform S201 to S211. In this embodiment, for different types of applications that are perceivable by a user and run in the background, the terminal may perform different processing operations to detect whether the application satisfies a freezing condition, and when the application satisfies the freezing condition, the terminal may freeze the application to reduce occupation of the application to terminal resources and reduce a terminal load. In addition, in this embodiment, for the first type of application and the second type of application, the terminal may adaptively reduce processing operations and improve processing efficiency.
According to the application processing method provided by the embodiment of the application, aiming at the application which runs in the background and is perceived by the user, the terminal can detect whether the application meets the freezing condition, and then when the application which runs in the background and is perceived by the user meets the freezing condition, the application is frozen, so that the occupation of the application which runs in the background and is perceived by the user to terminal resources can be reduced. In addition, the terminal can count down to defrost the application when the count down is finished, so that the audio playing is not interrupted, and the terminal can continuously update the position of the terminal, so that the user experience is not affected.
The application processing method provided in the embodiment of the present application is described below with reference to the structure of the terminal shown in fig. 1 from the point of interaction between internal modules of the terminal.
Referring to fig. 4, taking an example of playing audio by an application running in the background, the application may download audio data from a server, and the application calls AudioTrack to decode the audio data, thereby obtaining an audio stream. The application may transmit the audio stream to an audioplayer. The AudioFlinger buffers the received Audio stream in a buffer of the AudioFlinger, and invokes an Audio HAL of a hardware abstraction layer to control Audio hardware to play Audio.
Referring to fig. 5, taking network positioning by an application running in the background as an example, the application may initiate a registration request to Location during positioning. The Location may call back the interface of the application when the Location of the terminal changes, and feed back the Location of the terminal to the application. In this embodiment, the freezing module may connect the application and the Location. When the position of the terminal is changed, the interface of the application is called back, and the position of the terminal is fed back to the freezing module. When the application is in a frozen state, the freezing module may not feed back the position of the terminal to the application, i.e. the position of the terminal where the application cannot receive the Location. When the application is in a defrosting state, the freezing module can feed back the position of the terminal from the Location to the application, and the application can receive the position of the terminal.
Referring to fig. 6, the application processing method provided in the embodiment of the present application may include:
s601, the freezing module detects whether an application running in the background is playing audio. If yes, S602 is executed, and if no, S608 is executed.
In one embodiment, the freezing module may detect in real-time whether an application running in the background is playing audio.
In one embodiment, the freezing module may detect whether a background running application is playing audio in response to a target event from the event transmission module. The target event may be described with reference to the correlation in S201. For example, upon detecting that the terminal starts an application, switches interfaces, or slips off frames, etc., the event transmission module may send a target event to the freezing module. The freezing module, in response to the target event, may detect whether an application running in the background is playing the audio event transmission module.
The manner in which the freezing module detects whether the application running in the background is playing audio may be referred to as a related description in S201.
S602, the freezing module detects whether the duration of the audio stream buffered in the buffer of the AudioFlinger is greater than or equal to a first preset duration. If yes, S603 is executed, and if no, S608 is executed.
S602 may refer to the related description in S202.
S603, the freezing module writes the identification of the process of the application running in the background into the node of the kernel layer.
And when the freezing module freezes the application running in the background, the mark of the process of the application running in the background can be written into the node of the kernel layer. Illustratively, the freezing module may write the process number of the background running application to the node of the kernel layer.
In one embodiment, the freezing module may also write a frozen identification in the node to instruct the process management module to freeze the written process.
S604, the process management module freezes the process in response to the identification of the process written in the node.
The process management module may monitor the node, and may detect a state of the process in response to the identification of the process written in the node, where the state of the process includes a frozen state and a unfrozen state. If the process management module detects that the process is in a defrosting state, the process management module freezes the process in response to the identification of the process.
In one embodiment, when the freeze module also writes a frozen identification in the node, the process management module may freeze the process in response to the frozen identification written in the node and the identification of the process.
S605, the freezing module counts down, and the count-down time is a second preset time.
S605 may refer to the related description in S204. S605 and S604 are not distinguished in order, and may be performed simultaneously.
And S606, when the countdown is finished, the freezing module writes the identification of the process of the application running in the background into the node of the kernel layer.
In one embodiment, the freeze module may also write a defreeze identification in the node to indicate defreezing the written process.
S607, the process management module unfreezes the process in response to the identification of the process written in the node.
In one embodiment, the process management module may detect a state of a process in response to an identifier of the process written in the node, and if the process management module detects that the process is in a frozen state, the process management module unfreezes the process in response to the identifier of the process.
In one embodiment, when the freeze module also writes a defreeze identification in the node, the process management module may defreeze the process in response to the defreeze identification written in the node and the identification of the process.
S608, the freezing module detects whether the application running in the background is performing network positioning. If yes, S609 is executed, and if no, S616 is executed.
S608 may refer to the related description in S206.
S609, the freezing module writes the identification of the process of the application running in the background into the node of the kernel layer.
S610, the process management module freezes the process in response to the identification of the process written in the node.
S609 to S610 may refer to the related descriptions in S603 to S604.
S611, the freezing module does not feed back the position of the terminal to the application in response to receiving the position of the terminal from the Location.
In this embodiment, referring to fig. 5, when an application running in the background is in a frozen state, the freezing module may not feed back the position of the terminal to the application when receiving the position of the terminal from the Location.
S612, the freezing module counts down, and the count-down time is a third preset time.
S612 may refer to the related description in S208. S610 and S609 are not distinguished in order, and may be performed simultaneously.
And S613, when the countdown is finished, the freezing module writes the identification of the process of the application running in the background into the node of the kernel layer.
S614, the process management module unfreezes the process in response to the identification of the process written in the node.
S613-S614 can refer to the related description in S606-S607.
S615, the freezing module feeds back the position of the terminal to the application in response to receiving the position of the terminal from the Location.
Referring to fig. 5, when an application running in the background is in a thawing state, the freezing module may feed back the position of the terminal to the application when receiving the position of the terminal from the Location, and the application may update the position of the terminal according to the position of the terminal from the freezing module.
S616, the freezing module detects whether the terminal is absolutely stationary. If yes, S609 is executed, and if no, S617 is executed.
S616 may refer to the related description in S210.
S617, the freezing module does not respond.
When the position or the gesture of the terminal is changed, the freezing module determines that the terminal is not absolutely static, network positioning can be continued, and the freezing module does not freeze the application running in the background.
In one embodiment, some of the steps shown in fig. 6 are optional steps and may be combined with each other. In one embodiment, the modules shown in FIG. 6 may also be combined, with the combined modules being used for the steps performed by the modules.
According to the application processing method provided by the embodiment of the application, the application running in the background and perceived by the user can be frozen and thawed from the interaction angle of the internal modules of the terminal, so that the occupation of the application to terminal resources can be reduced when the application is frozen, and the application can be thawed in time without affecting user experience.
In an embodiment, the embodiment of the application further provides an electronic device, which may be the terminal described in the foregoing embodiment. Referring to fig. 7, the electronic device may include: a processor 701 (e.g., a CPU), and a memory 702. The memory 702 may include a random-access memory (RAM) and may also include a non-volatile memory (NVM), such as at least one magnetic disk memory, in which various instructions may be stored in the memory 702 for performing various processing functions and implementing method steps of the present application.
Optionally, the electronic device related to the present application may further include: a power supply 703, a communication bus 704 and a communication port 705. The communication port 705 is used to enable connection communication between the electronic device and other peripheral devices. In an embodiment of the present application, the memory 702 is used for storing computer executable program code, the program code including instructions; when the processor 701 executes the instructions, the instructions cause the processor 701 of the electronic device to perform the actions in the above method embodiments, which achieve similar principles and technical effects, and are not described herein again.
It should be noted that the modules or components described in the above embodiments may be one or more integrated circuits configured to implement the above methods, for example: one or more application specific integrated circuits (application specific integrated circuit, ASIC), or one or more microprocessors (digital signal processor, DSP), or one or more field programmable gate arrays (field programmable gate array, FPGA), or the like. For another example, when a module above is implemented in the form of a processing element scheduler code, the processing element may be a general purpose processor, such as a central processing unit (central processing unit, CPU) or other processor that may invoke the program code, such as a controller. For another example, the modules may be integrated together and implemented in the form of a system-on-a-chip (SOC).
In the above embodiments, it may be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the processes or functions in accordance with embodiments of the present application are produced in whole or in part. The computer may be a general purpose computer, a special purpose computer, a computer network, or other programmable apparatus. The computer instructions may be stored in or transmitted from one computer-readable storage medium to another, for example, by wired (e.g., coaxial cable, fiber optic, digital Subscriber Line (DSL)), or wireless (e.g., infrared, wireless, microwave, etc.) means from one website, computer, server, or data center. Computer readable storage media can be any available media that can be accessed by a computer or data storage devices, such as servers, data centers, etc., that contain an integration of one or more available media. The usable medium may be a magnetic medium (e.g., floppy Disk, hard Disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid State Disk (SSD)), etc.
The term "plurality" herein refers to two or more. The term "and/or" is herein merely an association relationship describing an associated object, meaning that there may be three relationships, e.g., a and/or B, may represent: a exists alone, A and B exist together, and B exists alone. In addition, the character "/" herein generally indicates that the front and rear associated objects are an "or" relationship; in the formula, the character "/" indicates that the front and rear associated objects are a "division" relationship. In addition, it should be understood that in the description of this application, the words "first," "second," and the like are used merely for distinguishing between the descriptions and not for indicating or implying any relative importance or order.
It will be appreciated that the various numerical numbers referred to in the embodiments of the present application are merely for ease of description and are not intended to limit the scope of the embodiments of the present application.
It should be understood that, in the embodiments of the present application, the sequence number of each process described above does not mean that the execution sequence of each process should be determined by the function and the internal logic of each process, and should not constitute any limitation on the implementation process of the embodiments of the present application.

Claims (10)

1. An application processing method, applied to a terminal, the method comprising:
when an application running in the background is playing audio, detecting whether the duration of an audio stream cached in a buffer of an AudioFlinger is greater than or equal to a first preset duration;
and in response to the time length of the audio stream buffered in the buffer being greater than or equal to the first preset time length, freezing the application, and when the application is frozen, continuing to play the audio by the application.
2. The method of claim 1, wherein after the freezing the application, further comprising:
counting down, wherein the counted down time is a second preset time, and the second preset time is smaller than the first preset time;
at the end of the countdown, the application is thawed.
3. The method according to claim 1 or 2, characterized in that the method further comprises:
detecting whether the application is performing network positioning or not in response to the fact that the duration of the audio stream cached in the cache is smaller than the first preset duration;
freezing the application in response to the application being network located;
counting down, wherein the counted down time is a third preset time;
At the end of the countdown, the application is thawed.
4. A method according to claim 3, characterized in that the method further comprises:
detecting whether the terminal is absolutely stationary or not in response to the application not performing network positioning;
the application is frozen in response to the terminal being absolutely stationary.
5. The method according to any one of claims 1-4, wherein before detecting whether a duration of an audio stream buffered in the buffer of AudioFlinger is greater than or equal to a first preset duration, further comprises:
in response to a target event, detecting whether an application running in the background is playing audio, wherein the target event is triggered by any one of the following events: application start, interface switching, and terminal frame dropping.
6. The method of claim 5, wherein detecting whether an application running in the background is playing audio comprises:
and in response to the audio stream of the application cached in the buffer, determining that the application is playing audio.
7. A method according to claim 3 or 4, characterized in that the terminal comprises: a freezing module and a process management module;
the freezing module responds to the fact that the time length of the audio stream cached in the buffer is greater than or equal to the first preset time length, and the identification of the process corresponding to the audio stream is written into a node, wherein the process is the process of the application;
And the process management module freezes the process in response to the identifier of the process written in the node.
8. The method of claim 7, wherein the terminal further comprises: positioning, where the positioning is used to obtain the position of the terminal and feed back to the freezing module, and the method further includes:
when the application is in network positioning and the application is frozen, the freezing module responds to the position of the terminal from Location and does not send the position of the terminal to the application;
and when the application is in network positioning and the application is unfrozen, the freezing module responds to the position of the terminal from Location and sends the position of the terminal to the application.
9. An electronic device, comprising: a processor and a memory;
the memory stores computer instructions;
the processor executing computer instructions stored in the memory, causing the processor to perform the method of any one of claims 1-8.
10. A computer readable storage medium, characterized in that the computer readable storage medium has stored therein a computer program or instructions, which when executed, implement the method of any of claims 1-8.
CN202210972739.3A 2022-08-15 2022-08-15 Application processing method and electronic equipment Pending CN117632452A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202210972739.3A CN117632452A (en) 2022-08-15 2022-08-15 Application processing method and electronic equipment
PCT/CN2023/111084 WO2024037353A1 (en) 2022-08-15 2023-08-03 Application processing method and electronic device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210972739.3A CN117632452A (en) 2022-08-15 2022-08-15 Application processing method and electronic equipment

Publications (1)

Publication Number Publication Date
CN117632452A true CN117632452A (en) 2024-03-01

Family

ID=89940652

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210972739.3A Pending CN117632452A (en) 2022-08-15 2022-08-15 Application processing method and electronic equipment

Country Status (2)

Country Link
CN (1) CN117632452A (en)
WO (1) WO2024037353A1 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107423127B (en) * 2017-07-31 2020-05-12 Oppo广东移动通信有限公司 Application program control method and device, storage medium and electronic equipment
CN109992378A (en) * 2017-12-29 2019-07-09 广东欧珀移动通信有限公司 Using freezing method, device, terminal and computer readable storage medium
CN110806925B (en) * 2018-08-06 2022-08-23 成都鼎桥通信技术有限公司 Audio playing method and equipment
CN111857859A (en) * 2019-04-30 2020-10-30 中兴通讯股份有限公司 Application control method, device, terminal and computer readable storage medium

Also Published As

Publication number Publication date
WO2024037353A1 (en) 2024-02-22

Similar Documents

Publication Publication Date Title
US10264319B2 (en) Priming media applications and presenting primed media application data
CN110300328B (en) Video playing control method and device and readable storage medium
KR20150025448A (en) Method for sharing media data and an electronic device thereof
CN113127130B (en) Page jump method, device and storage medium
CN111221638B (en) Concurrent task scheduling processing method, device, equipment and medium
CN113259744B (en) Video display method, device, equipment and medium
CN110991260B (en) Scene marking method, device, equipment and storage medium
US20220300144A1 (en) Method, system, and non-transitory computer readable record medium for providing chatroom in 3d form
CN113069760A (en) Resource allocation method, device, computing equipment and computer readable storage medium
CN114443189B (en) Image processing method and electronic equipment
CN113760081B (en) Power consumption processing method based on service and terminal equipment
CN114265713A (en) RDMA event management method, device, computer equipment and storage medium
CN107670276B (en) Game application control method and equipment
CN111682983B (en) Interface display method and device, terminal and server
KR20150068136A (en) Contents download method of electronic apparatus and electronic appparatus thereof
CN117632452A (en) Application processing method and electronic equipment
CN116126744A (en) Memory recycling method and device and terminal equipment
JP2024521963A (en) Data access method, device and non-transitory computer-readable storage medium
WO2022052928A1 (en) Application access method and related apparatus
CN115756868A (en) Memory allocation method, device, equipment, storage medium and computer program product
CN117557701A (en) Image rendering method and electronic equipment
CN113642010B (en) Method for acquiring data of extended storage device and mobile terminal
CN117724852B (en) Cloud computer computing resource allocation method and device
CN112162838B (en) Multimedia file playing method and device and electronic equipment
CN115297144B (en) Node data interaction method and device

Legal Events

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