WO2015176673A1 - Method and device for storing status bar notification, and management handover method and device - Google Patents

Method and device for storing status bar notification, and management handover method and device Download PDF

Info

Publication number
WO2015176673A1
WO2015176673A1 PCT/CN2015/079490 CN2015079490W WO2015176673A1 WO 2015176673 A1 WO2015176673 A1 WO 2015176673A1 CN 2015079490 W CN2015079490 W CN 2015079490W WO 2015176673 A1 WO2015176673 A1 WO 2015176673A1
Authority
WO
WIPO (PCT)
Prior art keywords
status bar
notification
application
manager
interface
Prior art date
Application number
PCT/CN2015/079490
Other languages
French (fr)
Chinese (zh)
Inventor
张迪
马鸣
Original Assignee
北京奇虎科技有限公司
奇智软件(北京)有限公司
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
Priority claimed from CN201410220045.XA external-priority patent/CN105095749B/en
Priority claimed from CN201410220035.6A external-priority patent/CN105094791B/en
Application filed by 北京奇虎科技有限公司, 奇智软件(北京)有限公司 filed Critical 北京奇虎科技有限公司
Publication of WO2015176673A1 publication Critical patent/WO2015176673A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/54Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by adding security routines or objects to programs

Definitions

  • the present invention relates to the field of communications technologies, and in particular, to a method and an apparatus for storing a status bar notification, and a method and apparatus for taking over a status bar notification.
  • the Android platform has hundreds of millions of users as the world's most popular mobile operating system. Its status bar (notification bar) design is an important innovation in the mobile operating system. Applications can send messages to The system status bar allows users to view status bar notifications simply, easily and quickly.
  • the current status bar design also has shortcomings.
  • the status bar can only save transient messages. If the phone is restarted, or the application that sent the notification is killed, or the user accidentally cancels it, it will cause the status. The column notification will not be restored. Users will have such requirements: important status bar notifications that you want to display can be saved, and some missing status bar notifications can be viewed later.
  • the present invention has been made in order to provide a storage method and apparatus for a status bar notification that overcomes the above problems or at least partially solves the above problems, and further provides a method and apparatus for taking over a status bar notification.
  • a storage method of a status bar notification is provided, and a status bar manager is set in an application layer of an operating system, the method comprising: the status bar manager detecting whether an application calls a system framework The system service process in the layer sends an interface of the status bar notification message; when detecting that the application invokes the interface that sends the status bar notification message, the parameter of the status bar notification message sent through the interface is retrieved; the status bar is notified The parameters of the message are converted into data, and the data after the data conversion is stored.
  • a storage device for status bar notification in which a status bar manager is set in an application layer of an operating system, the device comprising: a detecting unit for detecting by the status bar manager Whether the application invokes an interface that sends a status bar notification message to the system service process in the system framework layer; the parameter retrieval unit is configured to: when the detection unit detects that the application invokes the interface that sends the status bar notification message, The parameter of the status bar notification message sent by the interface; the conversion storage unit is configured to perform data conversion on the parameter of the status bar notification message, and store the data after the data conversion.
  • a method for taking over a status bar notification in which a status bar takeover service corresponding to a status bar manager in an application layer is set in a system framework layer of an operating system, the method comprising: Determining, in the status bar manager, a filter condition for a status bar notification of an application; the status bar manager providing the filter condition to the status bar takeover service; the status bar taking over service to a system user interface process Sending a status bar notification display command indicating that the system user interface process only displays satisfaction The status bar notification of the filter condition.
  • a status bar notification receiving device in which a status bar takeover service corresponding to a status bar manager in an application layer is set in a system framework layer of an operating system, the device comprising: a filter condition determining unit, configured to determine, in the status bar manager, a filter condition for a status bar notification of an application; a filter condition providing unit, configured to provide the filter condition to the status bar takeover service; And a control unit, configured to send, by using the status bar takeover service, a status bar notification display command to the system user interface process, to instruct the system user interface process to display only the status bar notification that satisfies the filtering condition.
  • a computer program comprising computer readable code, when said computer readable code is run on a terminal device, causing said terminal device to perform a status bar as described in any of the above A storage method of the notification, or a takeover method that causes the terminal device to perform the status bar notification as described in any of the above.
  • the API call of the status bar notification message is sent to the system server process by the detection application (app), so that the parameter of the status bar notification message is retrieved and passed.
  • the data conversion method implements storage of status bar notifications.
  • selective storage of status bar notifications for a particular application can be implemented by setting storage conditions.
  • the invention enables the status bar notification to be saved like a text message and can be viewed at any time.
  • Figure 1 shows a schematic diagram of the implementation of the status bar
  • FIG. 2 is a schematic diagram showing a storage system architecture of a status bar notification according to an embodiment of the present invention
  • FIG. 3 is a flow chart showing a storage method of a status bar notification according to an embodiment of the present invention.
  • FIG. 4 is a schematic diagram showing the architecture of a takeover system notified by a status bar according to an embodiment of the present invention
  • Figure 5 illustrates a flow chart of a takeover method for status bar notifications in accordance with one embodiment of the present invention.
  • Figure 6 shows schematically a block diagram of a terminal device for carrying out the method according to the invention
  • Fig. 7 schematically shows a storage unit for holding or carrying program code implementing the method according to the invention.
  • the present invention enables the status bar notification to be saved like a short message and can be viewed at any time.
  • the operating system includes an application layer (app layer) and a system framework layer (framework layer), and other layers that may be included from the functional division are not discussed in the present invention.
  • the app layer can be understood as the upper layer, which is responsible for interacting with the user, such as application (app, software) maintenance, and identifying different kinds of click content when the page is clicked to display different context menus and the like.
  • the framework layer acts as the middle layer. The main responsibility of this layer is to forward the user requests obtained by the app layer, such as launching the application, clicking the link, clicking to save the image, etc., and forwarding it to the lower layer; Or distribute it to the upper layer through a message or through an intermediate proxy class to present it to the user.
  • a preferred implementation of the present invention is to improve the app layer and the framework layer, thereby implementing a status bar message storage scheme by utilizing the cooperation of the two layers.
  • a status bar manager may be added at the app layer, and the status bar manager stores the status bar notification according to the set storage policy, for example, notifying the status bar of the more important application set by the user. Store to achieve the purpose of saving important status bar notifications.
  • the physical storage of the status bar notification can be realized, which is convenient for the user to view.
  • NotificationManagerService Notification Management Service
  • NotificationManager Notification Management
  • Notification Management is the services responsible for managing and notifying the background events, that is, the services that implement the status bar notification.
  • NotificationManager is the management class of the status bar notification, responsible for sending notifications, clearing notifications, and so on.
  • NotificationManager is a system Service (service) that must be obtained by the getSystemService() method.
  • Notification is a specific status bar notification object. You can set parameters such as icon (icon format), text, prompt sound, and vibration.
  • the basic parameters required to set up a notification include: An icon (notified icon); A title and expanded message; A PendingIntent; optional parameters include: A Ticker-text message (message message at the top of the status bar); An alert sound; A vibrate setting; A flashing LED setting.
  • Each Notification corresponds to a Notification object.
  • Notification can be detached from the application. This means that Notification will still appear in the status bar even if the application is closed. Once the application is launched again, you can regain control of these Notifications. Such as clearing or replacing them. Therefore, you need to create a PendingIntent object. This object is maintained by the Android system, so the object will still not be released after the application is closed.
  • the application of the app layer sends a status bar notification to the NotificationManagerService of the framework layer through the NotificationManager.notify method; then, in the NotificationManagerService, the status bar notification entry sent by the application is saved in the list; finally, the NotificationManagerService passes the StatusBar.addNotification( The method sends a display status bar notification to the SystemUi (system user interface) process where the system status bar is located, so that the status bar notification sent by the application is displayed in the system status bar.
  • SystemUi system user interface
  • FIG. 2 is a schematic structural diagram of a storage system notified by a status bar according to an embodiment of the present invention.
  • the status bar manager detects the calling API of the application to the NotificationManagerService in the system server process, and transmits the status bar notification message copy of the transmission.
  • the status bar manager does not interfere with the original status bar notification mechanism, only the parameters notified by the status bar are copied and stored.
  • the status bar manager can be understood as an application-implemented function, such as a function in the 360 security guards.
  • the application constructs a Notification entity class when it sends a status bar notification message to indicate a notification to be displayed.
  • the more important parameters required to set up a Notification include: display view and click execution page jump, where clicking the execution page jump can also be called post-click behavior.
  • the display view of the status bar notification is implemented via RemoteViews (remote view).
  • RemoteViews remote view
  • the "view of the layout file (RemoteViews)" is obtained by passing in the id of the layout file; then, the method in the RemoteViews can be called to set the components in the layout (for example, , you can call setTextViewText () to set the TextView component The text, you can call setOnClickPendingIntent () to set the Button's click response event), so you can think of RemoteViews as a collection of all the views contained in the layout file.
  • RemoteViews is a serializable object.
  • the RemoteViews are serialized to obtain a byte stream, and then the byte stream is stored in a physical file such as a disk to implement permanent storage.
  • Serializable is the process of writing the state of an object to a byte stream.
  • serialization is to save the state of the object, and the saved object state can be read out again.
  • the apply method is a javascript function, which is a method of hijacking another object, inheriting the attributes of another object.
  • PendingIntent The click execution page jump of the status bar notification is implemented by PendingIntent.
  • the PendingIntent itself is not serializable, but the event handler maintained by the ActvityManagerService.
  • the handle actually corresponds to an Intent object, which can be persisted.
  • Pending represents an upcoming event or an upcoming event.
  • the PendingIntent class is used to handle what is going to happen. For example, in Notification Notification, it is used to jump to the page, but not immediately.
  • the Intent is started in time, and the Intent disappears with the disappearance of the activity (one of the Android components).
  • PendingIntent can be regarded as a wrapper for the Intent.
  • getPliveIntent is obtained through getActivity, getBroadcast, getService.
  • the current activity can't start the Intent it contains immediately. Instead, it calls Intent when executing PendingIntent externally.
  • the PendingIntent holds the Context of the current App, it gives the external App a capability that allows the external App to execute the Intent in the PendingIntent just like the current App, even if the current App does not exist at the time of execution.
  • the Intent can be executed by the Context in the PendingIntent.
  • Persistence is the preservation of data (such as objects) into a permanently stored storage device (such as a disk).
  • the status bar notification is important or not. It is of course important for the important status bar to inform the user that it can be stored for later viewing, and vice versa for unimportant status bar notifications.
  • the notification item of the specific application is stored according to the storage condition set in advance, so that only the status bar notification of the application(s) can be selectively stored.
  • the status bar manager of the app layer may provide an interface for setting a storage condition to the user, and store a status bar notification of the application that satisfies the storage condition according to the storage condition. This scenario uses the way the user sets the application to which the status bar notifications are to be saved, and selects which status bar notifications to persist which applications to save.
  • the status bar manager may also pre-fetch a list of applications that need to store the Notification and provide it to the user for reference when setting the storage conditions.
  • the list of applications can be obtained through the configuration of the cloud server.
  • Cloud servers are based on a large number of sample operations and The artificial intelligence method is configured, including sandboxing, static code analysis, dynamic code feature scanning, etc., so it has the advantages of large and accurate samples. Of course, you can also use the default list of applications in the status bar manager without additional user settings.
  • the user can be provided with a stored status bar notification through the display interface, so that the user can view it when necessary.
  • a notification viewing interface can be provided in the status bar manager when the user opens or logs in. The interface displays the stored status bar notifications to the user.
  • status bar notifications may contain sensitive data content and need to be considered for encrypted storage.
  • the status bar manager encrypts the serialized or persistent data, and then stores the encrypted data in a physical file such as a disk.
  • the encryption key corresponding to the encryption key is used for decryption.
  • the embodiment of the present invention does not limit the encryption algorithm.
  • a popular encryption algorithm such as DES (Data Encryption Standard) algorithm, 3DES (Triple DES) algorithm, RC2 and RC4 symmetric algorithm, and IDEA (Intellational Data Encryption Algorithm) international data may be used. Encryption algorithm, RSA algorithm, etc.
  • FIG. 3 is a flowchart of a method for storing a status bar notification according to an embodiment of the present invention.
  • the status bar manager is set in the application layer (app layer) of the operating system, and the method includes:
  • the status bar manager detects whether the application invokes an interface that sends a status bar notification message to a system server process in the system framework layer;
  • the API call of the status bar notification message sent by the app to the NotificationManagerService in the sysytem server process is detected.
  • S303 Perform data conversion on the parameter of the status bar notification message, and store the data after the data conversion.
  • Data transfer is the process of changing data from one representation to another.
  • data conversion includes, but is not limited to, serialization and persistence.
  • the purpose of data conversion is to obtain a data form that can be used for storage in a physical file.
  • the parameters of the more important status bar notification message include two: display view parameters, click to execute page jump parameters.
  • the process of displaying the view parameters is: serializing the remote view (RemoteViews) object that implements the display view to get the byte stream, and then storing the byte stream in the physical file; when you need to view the status bar notification, from the physical
  • the byte stream is read from the file, and the byte stream is deserialized into a RemoteViews object, and then the display view is constructed according to the RemoteViews object.
  • the process of clicking and executing the page jump parameter is: obtaining an intent object corresponding to an upcoming event (PendingIntent) object that implements a click execution page jump, and persisting the Intent object.
  • PendingIntent an intent object corresponding to an upcoming event
  • the step of setting the storage condition may be further included to enable selective storage of the status bar notification of the specific application according to the storage condition.
  • the storage condition for the status bar notification of the application is determined; wherein the status bar manager stores only the status bar notification of the application that satisfies the storage condition according to the storage condition.
  • the storage condition may be set in various manners, for example, receiving a user setting manner to determine a storage condition, or pre-acquiring a list of applications that need to store a status bar notification to determine a storage condition.
  • the user setting and the application list may be combined. Use, that is, provide a list of pre-acquired applications to the user for reference, and the user finalizes the storage conditions after setting.
  • the application list is preferably obtained from the cloud server.
  • the storage method of the status bar notification provided by the present invention, by detecting that the app sends an API call of the status bar notification message to the system server process, the parameter of the status bar notification message is retrieved, and the serialization or persistent mode is implemented.
  • the storage of status bar notifications Preferably, selective storage of status bar notifications for a particular application can be implemented by setting storage conditions. The invention enables the status bar notification to be saved like a text message and can be viewed at any time.
  • the present invention also provides a storage device for status bar notification.
  • the device can be implemented by hardware, software or a combination of software and hardware.
  • the device may refer to a functional module inside the terminal, or may refer to the smart terminal itself, as long as the smart terminal includes functions for implementing the device.
  • the storage device notified by the status bar is used for an operating system of the smart terminal, and the operating system includes an application layer and a system framework layer, wherein a status bar manager is set in an application layer of the operating system, and the device includes: detecting a unit, configured to detect, by the status bar manager, whether an application invokes an interface that sends a status bar notification message to a system service process in a system framework layer; a parameter retrieval unit, configured to: when the detection unit detects an application call When the interface of the status bar notification message is sent, the parameter of the status bar notification message sent through the interface is retrieved; the conversion storage unit is configured to perform data conversion on the parameter of the status bar notification message, and the data is converted. The data is stored.
  • the conversion storage unit is specifically configured to: serialize parameters of the status bar notification message, or/and persist the parameters of the status bar notification message, and serialize and/or persist. After the data is stored.
  • the conversion storage unit is specifically configured to serialize a remote view object that implements the display view to obtain a byte stream, and then use a word stream.
  • the throttle is stored in a physical file.
  • the method may further include: a viewing unit, configured to read the byte stream from the physical file when the status bar notification needs to be viewed, and deserialize the byte stream into a remote view object, and then deserialize according to the deserialization
  • the resulting remote view object constructs a display view.
  • the conversion storage unit is specifically configured to acquire an intent object corresponding to an upcoming event object that implements the click execution page jump. , persisting the intent object.
  • the device further comprises: a storage condition determining unit, configured to determine the pin in the status bar manager The storage condition notified to the status bar of the application; at this time, the conversion storage unit stores only the status bar notification of the application that satisfies the storage condition according to the storage condition.
  • the device further includes: an application list obtaining unit, configured to pre-acquire a list of applications that need to store a status bar notification for the status bar manager; at this time, the conversion storage unit is configured according to the application list To determine the storage criteria for the application's status bar notifications.
  • the device further includes: a storage setting unit, configured to provide a storage condition setting interface to the user by using the status bar manager, and receive a storage setting of the status bar notification by the user.
  • the application list is obtained from a cloud server.
  • the device further includes: a notification viewing unit, configured to provide a notification viewing interface for viewing the stored status bar notification, and display the stored status bar notification to the user through the notification viewing interface.
  • a notification viewing unit configured to provide a notification viewing interface for viewing the stored status bar notification, and display the stored status bar notification to the user through the notification viewing interface.
  • the device further includes: an encryption unit, configured to encrypt the serialized or persistent data; at this time, the conversion storage unit is configured to store the encrypted data.
  • an encryption unit configured to encrypt the serialized or persistent data
  • Android's status bar gives users some malicious adware to take advantage of while viewing the message. Some malicious adwares even include some normal software that frequently pops up multiple status bar messages. If the user does not clean up in time, the status bar will have dozens of status bar messages at the same time, most of which are useless messages to the user, which has seriously disturbed the user. .
  • the present invention proposes a takeover scheme of status bar notification, which can greatly reduce the disturbance caused by the useless status bar notification to the user, and does not make the user lose important.
  • Status bar notification proposes a takeover scheme of status bar notification, which can greatly reduce the disturbance caused by the useless status bar notification to the user, and does not make the user lose important.
  • a preferred implementation of the present invention is to improve the app layer and the framework layer, thereby utilizing the synergy of the two layers to implement a status bar message takeover solution.
  • a system service called a status bar takeover service may be added in the framework layer, and the status bar takeover service filters the status bar notification according to the notification item filtering policy set by the status layer manager of the app layer, for example, maliciously
  • the application's status bar notifications are filtered, and only the status bar notifications after filtering are displayed, and the useless status bar notifications do not bother the user.
  • the notification management service of the framework layer is invoked through the status bar manager of the app layer, thereby achieving the purpose of viewing all status bar notifications.
  • the processing and relaying of the NotificationManagerService in the system_server process of the framework layer is required, and finally the SystemUi is responsible for displaying.
  • the status bar takeover service corresponding to the app layer status bar manager is added in the framework layer, which is equivalent to running a specific code in the system_server process, and then replacing the handle sent to the SystemUi command, thereby Selectively blocking the NotificationManagerService to send a status bar display command to the sytemUi process to achieve the purpose of taking over the status bar.
  • FIG. 4 is a schematic structural diagram of a takeover system notified by a status bar according to an embodiment of the present invention.
  • the status bar notification takeover implementation is divided into two major parts.
  • the first part is the status bar takeover service added in the framework layer. It runs in the system_server process and is used to filter the status bar notification entries according to the preset conditions, so that only the status bar notification after filtering is displayed in the system status bar. That is, through the code injection method, the status bar takeover service detects that the system server process calls the status bar to notify the display of the interface (API), and the status bar takes over the service to call the interface, thereby sending a status bar notification display command to the SystemUi process, only Show status bar notifications that meet the filter criteria.
  • the second part is the status bar manager running in the app layer.
  • the NotificationManagerService By calling the NotificationManagerService, for example, calling the NotificationManagerService via the GetAllNotifications method, it can be used to view all current status bar notification lists, including the status bar notification items that are hidden in the system status bar. It can be understood that the status bar takeover service and the status bar manager are corresponding, and it can be understood that the background part of the status bar takes over and the user interface part, and the two operate in cooperation. On the one hand, the status bar manager determines the filter condition of the status bar notification, and provides the filter condition to the status bar to take over the service; on the other hand, the status bar manager calls the NotificationManagerService in the system_server process to obtain and display the list saved in the NotificationManagerService. All status bar notifications. Among them, the status bar manager can be understood as an application-implemented function, such as a function in the 360 security guards.
  • the notification item is filtered according to the preset filter condition, so that only the status bar notification of some (application) applications can be selectively taken over.
  • the status bar manager of the app layer can provide the user with an interface for setting the filtering condition, and provide the status bar takeover service after the user setting is completed.
  • the user can select certain IM (instant messaging) software and online banking software to be whitelisted applications, and the status bar notifications of these applications can still be sent to the system status bar normally.
  • Users can also select certain software as blacklisted applications, and status bar notifications for these blacklisted applications will not be sent to the system status bar.
  • users can also use a combination of whitelist and blacklist.
  • the whitelist of the application or the blacklist of the application can be pre-fetched by the status bar manager and provided to the user, so that the user can refer to when setting the filtering condition.
  • a blacklist or a whitelist is configured on the cloud server to obtain a whitelist of applications or a blacklist of applications. Because the cloud solution is based on a large number of sample operations and artificial intelligence methods, including sandboxing, static code analysis, dynamic code feature scanning, etc., it has the advantages of large and accurate samples. Of course, you can also use the default whitelist or / and blacklist of the status bar manager directly, without user settings.
  • FIG. 5 is a flowchart of a method for taking over a status bar notification according to an embodiment of the present invention.
  • the status bar takeover service corresponding to the status bar manager in the application layer (app layer) is set in the system framework layer (framework layer) of the operating system, and the method includes:
  • S501 determining, in the status bar manager, a filter condition for the status bar notification of the application
  • the status bar manager can provide a setting interface to the user, and the user sets the filtering conditions, for example, setting a status bar notification that allows some applications to be displayed, and setting a status bar notification that prohibits displaying other applications. .
  • it can be combined with the pre-acquired application whitelist to allow display A status bar notification for the application in the application whitelist.
  • application whitelists and application blacklists can be combined. Users can make adjustments based on the default application whitelist and/or application blacklist, or they can use the default method directly.
  • the application whitelist or the application blacklist is obtained as described above and can be obtained from the cloud server.
  • S502 The status bar manager provides the filter condition to the status bar takeover service
  • the status bar manager and the status bar takeover service are two parts of the app layer and the framework layer respectively implementing the status bar of the present invention, and the two operate in cooperation.
  • the filter condition is sent to the status bar takeover service.
  • the status bar takes over the service or directly obtains the implementation of the filter condition.
  • the status bar takeover service sends a status bar notification display command to the system user interface (SystemUi) process, instructing the system user interface (SystemUi) process to display only the status bar notification that satisfies the filtering condition on the smart terminal.
  • the status bar takeover service is required to replace the NotificationManagerService in the system server process in the prior art to call the SystemUi process.
  • the SystemUi process is not called by the NotificationManagerService, but is detected by the code injection mode, and the status bar takeover service detects
  • the system server process invokes the status bar to notify the interface (API) that displays the command, which is invoked by the status bar takeover service to send a status bar notification display command to the SystemUi process.
  • the notification display command instructs the SystemUi process to display the status bar notification that satisfies the filtering condition only on the smart terminal, thereby filtering the malicious notification or reducing the notification interference problem.
  • the status bar manager provides the user with the ability to view status bar notifications.
  • the NotificationManagerService in the system server process is responsible for creating a Notification and saving the Notification in the status bar notification list.
  • the present invention does not interfere with this step, that is, the NotificationManager requests will still create and save the notifications requested by all applications, and the present invention only takes over when the subsequent call to the SystemUi process, so that only the notification after filtering is displayed.
  • the status bar notification list can be obtained by calling the NotificationManagerService through the status bar manager, so that all status bar notifications can be displayed to the user.
  • the notification display interface is convenient for the user to view all status bar notifications.
  • the status bar manager invokes the notification management service in the system framework layer to obtain a status bar notification list saved in the notification management service; then displays all status bar notifications in the list to the user through the notification display interface.
  • the method for taking over the status bar notification provided by the present invention only the status bar notification that satisfies the filtering condition is displayed by controlling the SystemUi process, and the status bar notification that does not satisfy the filtering condition is not displayed, thereby greatly reducing the More or malicious application status bar notifications, reducing interference to users.
  • the setting of the filtering condition may be selected by the application whitelist and/or blacklist mode, and only the status bar notification of the specific application may be selected for display, and the status bar notification is not performed for the application whose history is blacklisted. display.
  • the ability to view all status bar notifications provided by the status bar manager makes it easy for users to view all status bar notifications and avoid the loss of important status bar notifications.
  • the present invention also provides a takeover device for status bar notification.
  • the device can be implemented by hardware, software or a combination of software and hardware.
  • the device may refer to a functional module inside the terminal, or may refer to the smart terminal itself, as long as the smart terminal includes functions for implementing the device.
  • the takeover device notified by the status bar is used for an operating system of the smart terminal, wherein a status bar takeover service corresponding to the status bar manager in the application layer is set in a system framework layer of the operating system, and the device includes: filtering a condition determining unit, configured to determine, in the status bar manager, a filter condition for a status bar notification of an application; a filter condition providing unit, configured to provide the filter condition to the status bar takeover service; and notify display control And a unit, configured to send, by using the status bar takeover service, a status bar notification display command to the system user interface process, to instruct the system user interface process to display only the status bar notification that satisfies the filtering condition on the smart terminal.
  • the apparatus further includes: a status bar notification display unit, configured to invoke, by the status bar manager, the notification management service in the system framework layer to obtain a status bar notification list saved by the notification management service;
  • the status bar manager is used to display all status bar notifications in the list to the user.
  • the apparatus further comprises: a notification management service unit, configured to receive, by the notification management service, a status bar notification message sent by one or more application programs, and save the received status bar notification message in a status bar notification list in.
  • a notification management service unit configured to receive, by the notification management service, a status bar notification message sent by one or more application programs, and save the received status bar notification message in a status bar notification list in.
  • the device further includes: a system user interface process takeover unit, configured to detect, by means of code injection, an interface of the system service process calling status bar to notify the display command, wherein the interface is invoked by the status bar to take over the interface, thereby enabling
  • the notification display control unit sends a status bar notification display command to the system user interface process.
  • the apparatus further includes: an application list obtaining unit, configured to pre-acquire an application whitelist or/and an application blacklist for the status bar manager; the filtering condition determining unit is configured according to the application whitelist Or / and the application blacklist to determine the filter criteria for the application's status bar notifications.
  • the method further includes a filtering condition setting unit, configured to provide a filtering condition setting interface to the user through the status bar manager, and receive a filtering setting of the status bar notification by the user.
  • the application whitelist or/and the application blacklist are obtained from the cloud server.
  • the device further includes: a notification viewing unit, configured to provide a notification viewing interface, and display, by the notification viewing interface, all status bar notifications in the status bar notification list to the user.
  • a notification viewing unit configured to provide a notification viewing interface, and display, by the notification viewing interface, all status bar notifications in the status bar notification list to the user.
  • the operating system comprises a Linux kernel based operating system for a smart mobile terminal,
  • the operating system is an Andriod operating system.
  • the method for taking over the status bar notification provided by the present invention only the status bar notification that satisfies the filtering condition is displayed through the control system user interface process, and the status bar notification that does not satisfy the filtering condition is not displayed, thereby greatly Reduce the status bar notifications for excessive or malicious applications, reducing interference to users.
  • the setting of the filtering condition may be selected by the application whitelist and/or blacklist mode, and only the status bar notification of the specific application may be selected for display, and the status bar notification is not performed for the application whose history is blacklisted. display.
  • the ability to view all status bar notifications provided by the status bar manager makes it easy for users to view all status bar notifications and avoid the loss of important status bar notifications.
  • modules in the devices of the embodiments can be adaptively changed and placed in one or more devices different from the embodiment.
  • the modules or units or components of the embodiments may be combined into one module or unit or component, and further they may be divided into a plurality of sub-modules or sub-units or sub-components.
  • any combination of the features disclosed in the specification, including the accompanying claims, the abstract and the drawings, and any methods so disclosed, or All processes or units of the device are combined.
  • Each feature disclosed in this specification (including the accompanying claims, the abstract and the drawings) may be replaced by alternative features that provide the same, equivalent or similar purpose.
  • Various component embodiments of the present invention may be implemented in hardware or on one or more processors
  • a microprocessor or digital signal processor may be used in practice to implement some or all of the status bar notification storage device and the status bar notification takeover device in accordance with an embodiment of the present invention.
  • the invention can also be implemented as a device or device program (e.g., a computer program and a computer program product) for performing some or all of the methods described herein.
  • Such a program implementing the invention may be stored on a computer readable medium or may be in the form of one or more signals. Such signals may be downloaded from an Internet website, provided on a carrier signal, or provided in any other form.
  • FIG. 6 shows a terminal device that can implement the storage method of the status bar notification or the takeover method of the status bar notification according to the present invention.
  • the terminal device conventionally includes a processor 610 and a computer program product or computer readable medium in the form of a memory 620.
  • the memory 620 may be an electronic memory such as a flash memory, an EEPROM (Electrically Erasable Programmable Read Only Memory), an EPROM, a hard disk, or a ROM.
  • Memory 620 has a memory space 630 for program code 631 for performing any of the method steps described above.
  • storage space 630 for program code may include various program code 631 for implementing various steps in the above methods, respectively.
  • the program code can be read from or written to one or more computer program products.
  • Such computer program products include program code carriers such as hard disks, compact disks (CDs), memory cards or floppy disks.
  • Such a computer program product is typically a portable or fixed storage unit as described with reference to FIG.
  • the storage unit may have a storage section, a storage space, and the like arranged similarly to the storage 620 in the terminal device of FIG.
  • the program code can be compressed, for example, in an appropriate form.
  • the storage unit comprises computer readable code 631', ie code that can be read by a processor, such as 610, which when executed by the terminal device causes the terminal device to perform each of the methods described above step.

Abstract

A method and a device for storing a status bar notification, and a management handover method and device are disclosed in the present invention. A status bar manager is provided in the application program layer of the operating system. The method for storing a status bar notification comprises: the status bar manager checks whether an application program invokes an interface to send a status bar notification message to the system server processes in the system framework layer; upon determining the application program invokes an interface to send a status bar notification message, said manager retrieves via said interface parameters for the sent status bar notification message; and, performs data conversion on parameters of said message, and stores the converted data. The invention allows for status bar notifications to be saved in the same manner short messages are saved, making it easy to check said notifications.

Description

状态栏通知的存储方法及装置以及接管方法及装置Method and device for storing status bar notification and method and device for taking over 技术领域Technical field
本发明涉及通信技术领域,具体涉及一种状态栏通知的存储方法及装置,以及一种状态栏通知的接管方法及装置。The present invention relates to the field of communications technologies, and in particular, to a method and an apparatus for storing a status bar notification, and a method and apparatus for taking over a status bar notification.
背景技术Background technique
安卓(Android)平台作为全球最流行的移动操作系统已经具有了数以亿计的用户,其状态栏(通知栏)设计可谓是移动操作系统中的很重要的创新,应用程序可以把消息发送到系统状态栏,用户可以简单、方便和快捷的查看状态栏通知。The Android platform has hundreds of millions of users as the world's most popular mobile operating system. Its status bar (notification bar) design is an important innovation in the mobile operating system. Applications can send messages to The system status bar allows users to view status bar notifications simply, easily and quickly.
然而,当前的状态栏设计也存在不足之处,状态栏只能保存瞬时消息,如果手机被重启了,或者是发送通知的应用程序被kill掉,或者是用户不小心取消掉等,都会导致状态栏通知不会再被还原。用户会存在这样的需求:希望显示过的重要状态栏通知可以保存起来,还有一些漏掉的状态栏通知可以事后查看。However, the current status bar design also has shortcomings. The status bar can only save transient messages. If the phone is restarted, or the application that sent the notification is killed, or the user accidentally cancels it, it will cause the status. The column notification will not be restored. Users will have such requirements: important status bar notifications that you want to display can be saved, and some missing status bar notifications can be viewed later.
发明内容Summary of the invention
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的状态栏通知的存储方法及装置,以及进一步提供了态栏通知的接管方法及装置。In view of the above problems, the present invention has been made in order to provide a storage method and apparatus for a status bar notification that overcomes the above problems or at least partially solves the above problems, and further provides a method and apparatus for taking over a status bar notification.
依据本发明的一个方面,提供一种状态栏通知的存储方法,在操作系统的应用程序层中设置状态栏管理器,所述方法包括:所述状态栏管理器检测应用程序是否调用向系统框架层中的系统服务进程发送状态栏通知消息的接口;当检测到应用程序调用发送状态栏通知消息的接口时,调取通过所述接口发送的状态栏通知消息的参数;将所述状态栏通知消息的参数进行数据转换,并将经过数据转换后的数据进行存储。According to an aspect of the present invention, a storage method of a status bar notification is provided, and a status bar manager is set in an application layer of an operating system, the method comprising: the status bar manager detecting whether an application calls a system framework The system service process in the layer sends an interface of the status bar notification message; when detecting that the application invokes the interface that sends the status bar notification message, the parameter of the status bar notification message sent through the interface is retrieved; the status bar is notified The parameters of the message are converted into data, and the data after the data conversion is stored.
依据本发明的另一个方面,提供一种状态栏通知的存储装置,在操作系统的应用程序层中设置状态栏管理器,所述装置包括:检测单元,用于通过所述状态栏管理器检测应用程序是否调用向系统框架层中的系统服务进程发送状态栏通知消息的接口;参数调取单元,用于当所述检测单元检测到应用程序调用发送状态栏通知消息的接口时,调取通过所述接口发送的状态栏通知消息的参数;转换存储单元,用于将所述状态栏通知消息的参数进行数据转换,将经过数据转换后的数据进行存储。According to another aspect of the present invention, a storage device for status bar notification is provided, in which a status bar manager is set in an application layer of an operating system, the device comprising: a detecting unit for detecting by the status bar manager Whether the application invokes an interface that sends a status bar notification message to the system service process in the system framework layer; the parameter retrieval unit is configured to: when the detection unit detects that the application invokes the interface that sends the status bar notification message, The parameter of the status bar notification message sent by the interface; the conversion storage unit is configured to perform data conversion on the parameter of the status bar notification message, and store the data after the data conversion.
依据本发明的一个方面,提供一种状态栏通知的接管方法,在操作系统的系统框架层中设置与应用程序层中的状态栏管理器相对应的状态栏接管服务,所述方法包括:在所述状态栏管理器中确定针对应用程序的状态栏通知的过滤条件;所述状态栏管理器将所述过滤条件提供给所述状态栏接管服务;所述状态栏接管服务向系统用户界面进程发送状态栏通知显示命令,指示所述系统用户界面进程仅显示满足 所述过滤条件的状态栏通知。According to an aspect of the present invention, a method for taking over a status bar notification is provided, in which a status bar takeover service corresponding to a status bar manager in an application layer is set in a system framework layer of an operating system, the method comprising: Determining, in the status bar manager, a filter condition for a status bar notification of an application; the status bar manager providing the filter condition to the status bar takeover service; the status bar taking over service to a system user interface process Sending a status bar notification display command indicating that the system user interface process only displays satisfaction The status bar notification of the filter condition.
依据本发明的另一个方面,提供一种状态栏通知的接管装置,在操作系统的系统框架层中设置与应用程序层中的状态栏管理器相对应的状态栏接管服务,所述装置包括:过滤条件确定单元,用于在所述状态栏管理器中确定针对应用程序的状态栏通知的过滤条件;过滤条件提供单元,用于将所述过滤条件提供给所述状态栏接管服务;通知显示控制单元,用于利用所述状态栏接管服务向系统用户界面进程发送状态栏通知显示命令,指示所述系统用户界面进程仅显示满足所述过滤条件的状态栏通知。According to another aspect of the present invention, a status bar notification receiving device is provided, in which a status bar takeover service corresponding to a status bar manager in an application layer is set in a system framework layer of an operating system, the device comprising: a filter condition determining unit, configured to determine, in the status bar manager, a filter condition for a status bar notification of an application; a filter condition providing unit, configured to provide the filter condition to the status bar takeover service; And a control unit, configured to send, by using the status bar takeover service, a status bar notification display command to the system user interface process, to instruct the system user interface process to display only the status bar notification that satisfies the filtering condition.
依据本发明的一个方面,还提供了一种计算机程序,包括计算机可读代码,当所述计算机可读代码在终端设备上运行时,导致所述终端设备执行如上述任一个所述的状态栏通知的存储方法,或者导致所述终端设备执行如上述任一项所述的状态栏通知的接管方法。According to an aspect of the invention there is also provided a computer program comprising computer readable code, when said computer readable code is run on a terminal device, causing said terminal device to perform a status bar as described in any of the above A storage method of the notification, or a takeover method that causes the terminal device to perform the status bar notification as described in any of the above.
依据本发明的另一个方面,还提供了一种计算机可读介质,其中存储了如上所述的计算机程序。According to another aspect of the present invention, there is also provided a computer readable medium storing a computer program as described above.
可见,本发明提供的状态栏通知的存储方法中,通过检测应用程序(app)向系统服务(system server)进程发送状态栏通知消息的API调用,从而调取状态栏通知消息的参数,并通过数据转换方式实现对状态栏通知的存储。优选的,可以通过设置存储条件的方式,实现对特定应用程序的状态栏通知的选择性存储。本发明使得状态栏通知可以像短信一样保存起来,任何时候都可以查看。It can be seen that, in the storage method of the status bar notification provided by the present invention, the API call of the status bar notification message is sent to the system server process by the detection application (app), so that the parameter of the status bar notification message is retrieved and passed. The data conversion method implements storage of status bar notifications. Preferably, selective storage of status bar notifications for a particular application can be implemented by setting storage conditions. The invention enables the status bar notification to be saved like a text message and can be viewed at any time.
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。The above description is only an overview of the technical solutions of the present invention, and the above-described and other objects, features and advantages of the present invention can be more clearly understood. Specific embodiments of the invention are set forth below.
附图说明DRAWINGS
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:Various other advantages and benefits will become apparent to those skilled in the art from a The drawings are only for the purpose of illustrating the preferred embodiments and are not to be construed as limiting. Throughout the drawings, the same reference numerals are used to refer to the same parts. In the drawing:
图1示出了状态栏实现架构示意图;Figure 1 shows a schematic diagram of the implementation of the status bar;
图2示出了根据本发明一个实施例的状态栏通知的存储系统架构示意图;2 is a schematic diagram showing a storage system architecture of a status bar notification according to an embodiment of the present invention;
图3示出了根据本发明一个实施例的状态栏通知的存储方法流程图FIG. 3 is a flow chart showing a storage method of a status bar notification according to an embodiment of the present invention.
图4示出了根据本发明一个实施例的状态栏通知的接管系统架构示意图;4 is a schematic diagram showing the architecture of a takeover system notified by a status bar according to an embodiment of the present invention;
图5示出了根据本发明一个实施例的状态栏通知的接管方法流程图。Figure 5 illustrates a flow chart of a takeover method for status bar notifications in accordance with one embodiment of the present invention.
图6示意性地示出了用于执行根据本发明的方法的终端设备的框图;以及Figure 6 shows schematically a block diagram of a terminal device for carrying out the method according to the invention;
图7示意性地示出了用于保持或者携带实现根据本发明的方法的程序代码的存储单元。Fig. 7 schematically shows a storage unit for holding or carrying program code implementing the method according to the invention.
具体实施例 Specific embodiment
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。Exemplary embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While the embodiments of the present invention have been shown in the drawings, the embodiments Rather, these embodiments are provided so that this disclosure will be more fully understood and the scope of the disclosure will be fully disclosed.
如前所述的,针对现有技术中无法保存状态栏通知的问题,本发明使得状态栏通知可以像短信一样保存起来,任何时候都可以查看。As described above, in view of the problem that the status bar notification cannot be saved in the prior art, the present invention enables the status bar notification to be saved like a short message and can be viewed at any time.
本领域技术人员理解,操作系统包括应用程序层(app层)和系统框架层(framework层),至于从功能划分上有可能包括的的其他层本发明则不作讨论。其中,通常app层可以理解为上层,负责与用户交互的界面,例如应用程序(app,软件)维护、以及点击页面时识别不同种类的点击内容从而显示不同的上下文菜单等。通常framework层作为中间层,这一层的主要职责是,将app层获得的用户请求,如启动用用程序、点击链接、点击保存图片之类,转发往下层去;将下层处理好的内容,或者通过消息,或者通过中间代理类,来分发至上层,对用户展现出来。Those skilled in the art understand that the operating system includes an application layer (app layer) and a system framework layer (framework layer), and other layers that may be included from the functional division are not discussed in the present invention. Among them, usually the app layer can be understood as the upper layer, which is responsible for interacting with the user, such as application (app, software) maintenance, and identifying different kinds of click content when the page is clicked to display different context menus and the like. Usually the framework layer acts as the middle layer. The main responsibility of this layer is to forward the user requests obtained by the app layer, such as launching the application, clicking the link, clicking to save the image, etc., and forwarding it to the lower layer; Or distribute it to the upper layer through a message or through an intermediate proxy class to present it to the user.
本发明一种优选实现方式是,对app层和framework层进行改进,从而利用这两层的协同配合实现状态栏消息存储方案。具体的,可以在app层层增加一个状态栏管理器,该状态栏管理器根据设定的存储策略,对状态栏通知进行存储,例如将用户设定的较为重要的应用程序的状态栏通知进行存储,达到保存重要状态栏通知的目的。通过本发明,可实现状态栏通知的物理存储,方便用户查看。A preferred implementation of the present invention is to improve the app layer and the framework layer, thereby implementing a status bar message storage scheme by utilizing the cooperation of the two layers. Specifically, a status bar manager may be added at the app layer, and the status bar manager stores the status bar notification according to the set storage policy, for example, notifying the status bar of the more important application set by the user. Store to achieve the purpose of saving important status bar notifications. Through the invention, the physical storage of the status bar notification can be realized, which is convenient for the user to view.
为了更好地理解本发明,首先介绍android的状态栏实现原理及架构。In order to better understand the present invention, the principle and architecture of the status bar of android are first introduced.
本领域技术人员理解,整个android框架的基础是运行在system server(系统服务)进程中的服务。其中,NotificationManagerService(通知管理服务)和NotificationManager(通知管理)是负责管理和通知后台事件的服务,也就是实现状态栏通知的服务。发送一个状态栏通知必须用到两个类:NotificationManager和Notification(通知)。其中,NotificationManager是状态栏通知的管理类,负责发通知、清除通知等。NotificationManager是一个系统Service(服务),必须通过getSystemService()方法来获取。Notification是具体的状态栏通知对象,可以设置icon(图标格式)、文字、提示声音、振动等参数。例如,设置一个通知需要的基本参数包括:An icon(通知的图标);A title and expanded message(通知的标题和内容);A PendingIntent(点击通知执行页面跳转);可选的参数包括:A ticker-text message(状态栏顶部提示消息);An alert sound(提示音);A vibrate setting(振动);A flashing LED setting(灯光)。Those skilled in the art understand that the basis of the entire android framework is a service running in the system server process. Among them, NotificationManagerService (Notification Management Service) and NotificationManager (Notification Management) are the services responsible for managing and notifying the background events, that is, the services that implement the status bar notification. There are two classes that must be used to send a status bar notification: NotificationManager and Notification. Among them, NotificationManager is the management class of the status bar notification, responsible for sending notifications, clearing notifications, and so on. NotificationManager is a system Service (service) that must be obtained by the getSystemService() method. Notification is a specific status bar notification object. You can set parameters such as icon (icon format), text, prompt sound, and vibration. For example, the basic parameters required to set up a notification include: An icon (notified icon); A title and expanded message; A PendingIntent; optional parameters include: A Ticker-text message (message message at the top of the status bar); An alert sound; A vibrate setting; A flashing LED setting.
创建和显示一个Notification需要如下5步:Creating and displaying a Notification requires the following five steps:
1.通过getSystemService方法获得一个NotificationManager对象。1. Get a NotificationManager object through the getSystemService method.
2.创建一个Notification对象。每一个Notification对应一个Notification对象。在这一步需要设置显示在屏幕上方状态栏的通知消息、通知消息前方的图像资源ID和发出通知的时间。 2. Create a Notification object. Each Notification corresponds to a Notification object. In this step, you need to set the notification message displayed in the status bar at the top of the screen, the image resource ID in front of the notification message, and the time when the notification is sent.
3.由于Notification可以与应用程序脱离。也就是说,即使应用程序被关闭,Notification仍然会显示在状态栏中。当应用程序再次启动后,又可以重新控制这些Notification。如清除或替换它们。因此,需要创建一个PendingIntent对象。该对象由Android系统负责维护,因此,在应用程序关闭后,该对象仍然不会被释放。3. Because Notification can be detached from the application. This means that Notification will still appear in the status bar even if the application is closed. Once the application is launched again, you can regain control of these Notifications. Such as clearing or replacing them. Therefore, you need to create a PendingIntent object. This object is maintained by the Android system, so the object will still not be released after the application is closed.
4.使用Notification类的setLatestEventInfo方法设置Notification的详细信息。4. Use the setLatestEventInfo method of the Notification class to set the details of the Notification.
5.使用NotificationManager类的notify方法显示Notification消息。在这一步需要指定标识Notification的唯一ID。5. Use the notify method of the NotificationManager class to display the Notification message. In this step you need to specify a unique ID that identifies the Notification.
参见图1,为状态栏实现架构示意图。首先,app层的应用程序通过NotificationManager.notify方法向framework层的NotificationManagerService发送状态栏通知;然后,在NotificationManagerService中,将应用程序发送的状态栏通知条目保存在列表中;最后,NotificationManagerService通过StatusBar.addNotification()方法向系统状态栏所在的SystemUi(系统用户界面)进程发送显示状态栏通知,这样应用程序发送的状态栏通知就会在系统状态栏中显示出来了。图1中,仅在app层以一个应用程序为例子,可以理解,以手机为例,可包括多个应用程序要显示状态栏通知。See Figure 1 for a schematic diagram of the status bar implementation. First, the application of the app layer sends a status bar notification to the NotificationManagerService of the framework layer through the NotificationManager.notify method; then, in the NotificationManagerService, the status bar notification entry sent by the application is saved in the list; finally, the NotificationManagerService passes the StatusBar.addNotification( The method sends a display status bar notification to the SystemUi (system user interface) process where the system status bar is located, so that the status bar notification sent by the application is displayed in the system status bar. In FIG. 1, only one application is used as an example in the app layer. It can be understood that, in the case of a mobile phone, for example, a plurality of applications may be displayed to display a status bar notification.
通过图1可知,从app创建一个通知到将该通知显示在系统状态栏中,需要framework层的system_server进程中的NotificationManagerService的处理和中转,最终由SystemUi负责显示。本发明中,通过android注入技术,通过app层的状态栏管理器,检测到app向sysytem server发送状态栏通知消息的API调用,从中调取出状态栏通知的参数,利用存储技术实现状态栏通知的存储。As can be seen from Figure 1, from the creation of a notification by the app to the display of the notification in the system status bar, the processing and relaying of the NotificationManagerService in the system_server process of the framework layer is required, and finally the SystemUi is responsible for displaying. In the present invention, through the android injection technology, through the status bar manager of the app layer, the API call of the status bar notification message sent by the app to the sysytem server is detected, the parameters of the status bar notification are retrieved from the middle, and the status bar notification is implemented by using the storage technology. Storage.
参见图2,为本发明实施例提供的状态栏通知的存储系统架构示意图。FIG. 2 is a schematic structural diagram of a storage system notified by a status bar according to an embodiment of the present invention.
相比于图1所述的系统,主要在于增加了运行在app层的状态栏管理器,该状态栏管理器检测应用程序对system server进程中NotificationManagerService的调用API,将传输的状态栏通知消息拷贝一份,并存储在磁盘等物理文件中。可以理解,状态栏管理器并不干涉原有的状态栏通知机制,仅是将状态栏通知的参数进行复制,并进行存储。其中,状态栏管理器可以理解为一个应用程序实现的功能,例如360安全卫士中的一个功能。Compared with the system described in FIG. 1, the main reason is to increase the status bar manager running in the app layer, the status bar manager detects the calling API of the application to the NotificationManagerService in the system server process, and transmits the status bar notification message copy of the transmission. One copy and stored in a physical file such as a disk. It can be understood that the status bar manager does not interfere with the original status bar notification mechanism, only the parameters notified by the status bar are copied and stored. Among them, the status bar manager can be understood as an application-implemented function, such as a function in the 360 security guards.
下面具体介绍如何对一个Notification的参数进行存储和还原。如前已经介绍过的,应用程序在发送一个状态栏通知消息时会构造一个Notification实体类,用于表示一条即将显示的Notification。设置一个Notification需要的比较重要的参数包括:显示视图和点击执行页面跳转,其中,点击执行页面跳转也可称为单击后行为。The following describes how to store and restore a Notification parameter. As already mentioned, the application constructs a Notification entity class when it sends a status bar notification message to indicate a notification to be displayed. The more important parameters required to set up a Notification include: display view and click execution page jump, where clicking the execution page jump can also be called post-click behavior.
状态栏通知的显示视图是通过RemoteViews(远程视图)来实现的。本领域技术人员理解,在RemoteViews的构造函数中,通过传入layout文件的id来获取“layout文件对应的视图(RemoteViews)”;然后,调用RemoteViews中的方法能对layout中的组件进行设置(例如,可以调用setTextViewText()来设置TextView组件 的文本,可以调用setOnClickPendingIntent()来设置Button的点击响应事件),因此,可以将RemoteViews看作是layout文件中所包含的全部视图的集合。RemoteViews是一个可序列化的对象。本发明实施例中,将RemoteViews进行序列化得到字节流,然后将字节流存储在磁盘等物理文件,实现永久性存储。序列化(Serializable)是把一个对象的状态写入一个字节流的过程。简言之,序列化是为了保存对象的状态,并且可以把保存的对象状态再读出来。这样,当需要查看状态栏时,就可以从磁盘中读取出来,再进行反序列化为RemoteViews对象,继而通过apply方法即可构造出View对象,最终实现对状态栏通知的显示视图进行显示。其中,apply方法是javascript的函数,该方法是劫持另外一个对象的方法,继承另外一个对象的属性。The display view of the status bar notification is implemented via RemoteViews (remote view). Those skilled in the art understand that in the constructor of the RemoteViews, the "view of the layout file (RemoteViews)" is obtained by passing in the id of the layout file; then, the method in the RemoteViews can be called to set the components in the layout (for example, , you can call setTextViewText () to set the TextView component The text, you can call setOnClickPendingIntent () to set the Button's click response event), so you can think of RemoteViews as a collection of all the views contained in the layout file. RemoteViews is a serializable object. In the embodiment of the present invention, the RemoteViews are serialized to obtain a byte stream, and then the byte stream is stored in a physical file such as a disk to implement permanent storage. Serializable is the process of writing the state of an object to a byte stream. In short, serialization is to save the state of the object, and the saved object state can be read out again. In this way, when you need to view the status bar, you can read it from the disk, then deserialize it into a RemoteViews object, and then construct the View object through the apply method, and finally display the display view of the status bar notification. Among them, the apply method is a javascript function, which is a method of hijacking another object, inheriting the attributes of another object.
状态栏通知的点击执行页面跳转是通过PendingIntent来实现的。PendingIntent本身是不可以序列化的,而是用ActvityManagerService来维护的事件句柄。该句柄实际上对应了一个Intent对象,该Intent对象是可以持久化的。本领域技术人员理解,Intent表示意图,Pending表示即将发生或来临的事件。PendingIntent这个类用于处理即将发生的事情。比如在通知Notification中用于跳转页面,但不是马上跳转。Intent是及时启动,Intent随所在的activity(Android组件之一)消失而消失。PendingIntent可以看作是对Intent的包装,通常通过getActivity、getBroadcast、getService来得到PendingIntent的实例,当前activity并不能马上启动它所包含的Intent,而是在外部执行PendingIntent时,调用Intent的。正由于PendingIntent中保存有当前App的Context(上下文),使它赋予外部App一种能力,使得外部App可以如同当前App一样的执行PendingIntent里的Intent,就算在执行时当前App已经不存在了,也能通过存在PendingIntent里的Context照样执行Intent。另外还可以处理Intent执行后的操作。因此可以理解,PendingIntent就是Intent的描述,可以把这个描述交给其他进程,其他进程根据这个描述在后面的时间做Intent安排的事情。本发明实施例中,通过对Intent对象进行持久化,可以代替PendingIntent来实现点击执行页面跳转。所谓持久化(Persistence),即把数据(如对象)保存到可永久保存的存储设备中(如磁盘)。The click execution page jump of the status bar notification is implemented by PendingIntent. The PendingIntent itself is not serializable, but the event handler maintained by the ActvityManagerService. The handle actually corresponds to an Intent object, which can be persisted. Those skilled in the art understand that the Intent table diagram, Pending represents an upcoming event or an upcoming event. The PendingIntent class is used to handle what is going to happen. For example, in Notification Notification, it is used to jump to the page, but not immediately. The Intent is started in time, and the Intent disappears with the disappearance of the activity (one of the Android components). PendingIntent can be regarded as a wrapper for the Intent. Usually, getPliveIntent is obtained through getActivity, getBroadcast, getService. The current activity can't start the Intent it contains immediately. Instead, it calls Intent when executing PendingIntent externally. Just because the PendingIntent holds the Context of the current App, it gives the external App a capability that allows the external App to execute the Intent in the PendingIntent just like the current App, even if the current App does not exist at the time of execution. The Intent can be executed by the Context in the PendingIntent. In addition, you can also handle the operation after the Intent is executed. Therefore, it can be understood that PendingIntent is a description of the Intent, which can be passed to other processes, and other processes do Intent scheduling at a later time according to this description. In the embodiment of the present invention, by persisting the Intent object, the PendingIntent can be used instead to implement the click execution page jump. Persistence is the preservation of data (such as objects) into a permanently stored storage device (such as a disk).
状态栏通知有重要与否之分,对于重要的状态栏通知用户当然希望能存储起来以便日后查看,而对于不重要的状态栏通知则反之。本发明实施例中,涉及根据预先设置的存储条件对特定应用程序的通知条目进行存储,从而可以选择性的只存储某些(个)应用程序的状态栏通知。具体的,app层的状态栏管理器可以向用户提供设置存储条件的界面,并且根据存储条件对满足存储条件的应用程序的状态栏通知进行存储。本方案采用用户设定要保存状态栏通知的应用程序的方式,选择要持久化保存哪些应用程序的状态栏通知。另外,状态栏管理器还可预先获取需要存储Notification的应用程序名单并提供给用户,以便用户在设置存储条件时参考。该应用程序名单可通过云端服务器配置的方式获取。云端服务器基于大量的样本运营和 人工智能方法进行配置,包括沙箱、静态代码分析,动态代码特征扫描等方式,因此具有样本大而较为精准的优点。当然,也可以直接采用状态栏管理器默认的应用程序名单,而无需用户额外设置。The status bar notification is important or not. It is of course important for the important status bar to inform the user that it can be stored for later viewing, and vice versa for unimportant status bar notifications. In the embodiment of the present invention, the notification item of the specific application is stored according to the storage condition set in advance, so that only the status bar notification of the application(s) can be selectively stored. Specifically, the status bar manager of the app layer may provide an interface for setting a storage condition to the user, and store a status bar notification of the application that satisfies the storage condition according to the storage condition. This scenario uses the way the user sets the application to which the status bar notifications are to be saved, and selects which status bar notifications to persist which applications to save. In addition, the status bar manager may also pre-fetch a list of applications that need to store the Notification and provide it to the user for reference when setting the storage conditions. The list of applications can be obtained through the configuration of the cloud server. Cloud servers are based on a large number of sample operations and The artificial intelligence method is configured, including sandboxing, static code analysis, dynamic code feature scanning, etc., so it has the advantages of large and accurate samples. Of course, you can also use the default list of applications in the status bar manager without additional user settings.
在实现对状态栏通知存储之后,可通过显示界面,向用户提供存储的状态栏通知,以便用户必要时进行查看。如前所述的,通过状态栏管理器实现将状态栏消息经过数据转换后存储在磁盘等物理文件中,那么,就可以在状态栏管理器中提供一个通知查看界面,当用户打开或登录该界面时,向用户展示所存储的状态栏通知。After the status bar notification storage is implemented, the user can be provided with a stored status bar notification through the display interface, so that the user can view it when necessary. As described above, after the status bar message is converted into a physical file such as a disk by data conversion by the status bar manager, a notification viewing interface can be provided in the status bar manager when the user opens or logs in. The interface displays the stored status bar notifications to the user.
此外,状态栏通知可能会包含敏感的数据内容,需要可以考虑加密存储。具体的,状态栏管理器在获取到状态栏通知的参数并进行序列化或持久化后,对序列化或持久化得到的数据进行加密,然后将加密的数据存储在磁盘等物理文件中。在读取加密数据时,采用加密密钥对应的加密密钥进行解密。本发明实施例对加密算法不作限制,例如可采用较为流行的加密算法,比如DES(Data Encryption Standard)算法、3DES(Triple DES)算法、RC2和RC4对称算法、IDEA(Intemational Data Encryption Algorithm)国际数据加密算法、RSA算法等。In addition, status bar notifications may contain sensitive data content and need to be considered for encrypted storage. Specifically, after obtaining the parameters of the status bar notification and serializing or persisting, the status bar manager encrypts the serialized or persistent data, and then stores the encrypted data in a physical file such as a disk. When the encrypted data is read, the encryption key corresponding to the encryption key is used for decryption. The embodiment of the present invention does not limit the encryption algorithm. For example, a popular encryption algorithm such as DES (Data Encryption Standard) algorithm, 3DES (Triple DES) algorithm, RC2 and RC4 symmetric algorithm, and IDEA (Intellational Data Encryption Algorithm) international data may be used. Encryption algorithm, RSA algorithm, etc.
参见图3,为本发明实施例提供的一种状态栏通知的存储方法的流程图。其中,在操作系统的应用程序层(app层)中设置状态栏管理器,该方法包括:FIG. 3 is a flowchart of a method for storing a status bar notification according to an embodiment of the present invention. Wherein, the status bar manager is set in the application layer (app layer) of the operating system, and the method includes:
S301:状态栏管理器检测应用程序是否调用向系统框架层中的系统服务(system server)进程发送状态栏通知消息的接口;S301: The status bar manager detects whether the application invokes an interface that sends a status bar notification message to a system server process in the system framework layer;
例如,通过android注入技术,通过app层的状态栏管理器,检测到app向sysytem server进程中的NotificationManagerService发送状态栏通知消息的API调用。For example, through the android injection technology, through the status bar manager of the app layer, the API call of the status bar notification message sent by the app to the NotificationManagerService in the sysytem server process is detected.
S302:当检测到应用程序调用发送状态栏通知消息的接口时,调取通过该接口发送的状态栏通知消息的参数;S302: When detecting that the application invokes the interface that sends the status bar notification message, the parameter of the status bar notification message sent through the interface is retrieved;
S303:将状态栏通知消息的参数进行数据转换,并将经过数据转换后的数据进行存储。S303: Perform data conversion on the parameter of the status bar notification message, and store the data after the data conversion.
数据转换(data transfer)是将数据从一种表示形式变为另一种表现形式的过程。本发明实施例中,数据转换包括但是不限于序列化和持久化的方式,数据转换的目的是得到可以用于存储于物理文件中的数据形式。Data transfer is the process of changing data from one representation to another. In the embodiment of the present invention, data conversion includes, but is not limited to, serialization and persistence. The purpose of data conversion is to obtain a data form that can be used for storage in a physical file.
如前已描述的,比较重要的状态栏通知消息的参数包括两个:显示视图参数,点击执行页面跳转参数。对于显示视图参数的存储的过程为:对实现显示视图的远程视图(RemoteViews)对象进行序列化得到字节流,然后将字节流存储在物理文件中;当需要查看状态栏通知时,从物理文件中读取出字节流,并对字节流进行反序列化为RemoteViews对象,再根据该RemoteViews对象构造出显示视图。对于点击执行页面跳转参数的存储的过程为:获取实现点击执行页面跳转的即将发生事件(PendingIntent)对象对应的意图(Intent)对象,对Intent对象进行持久化。As already described, the parameters of the more important status bar notification message include two: display view parameters, click to execute page jump parameters. The process of displaying the view parameters is: serializing the remote view (RemoteViews) object that implements the display view to get the byte stream, and then storing the byte stream in the physical file; when you need to view the status bar notification, from the physical The byte stream is read from the file, and the byte stream is deserialized into a RemoteViews object, and then the display view is constructed according to the RemoteViews object. The process of clicking and executing the page jump parameter is: obtaining an intent object corresponding to an upcoming event (PendingIntent) object that implements a click execution page jump, and persisting the Intent object.
除了上述步骤之外,优选的,还可以包括设置存储条件的步骤,从而实现根据存储条件对特定应用程序的状态栏通知进行选择性存储。具体的,在状态栏管理器 中确定针对应用程序的状态栏通知的存储条件;其中,状态栏管理器根据存储条件,仅对满足存储条件的应用程序的状态栏通知进行存储。存储条件的设置方式可以有多种,例如接收用户设置的方式确定存储条件,或者,预先获取需要存储状态栏通知的应用程序名单从而确定存储条件,当然,用户设置与应用程序名单的方式可以结合使用,即,将预先获取的应用程序名单提供给用户参考,用户进行设置后最终确定存储条件。其中,应用程序名单优选是从云端服务器获取的。In addition to the above steps, preferably, the step of setting the storage condition may be further included to enable selective storage of the status bar notification of the specific application according to the storage condition. Specifically, in the status bar manager The storage condition for the status bar notification of the application is determined; wherein the status bar manager stores only the status bar notification of the application that satisfies the storage condition according to the storage condition. The storage condition may be set in various manners, for example, receiving a user setting manner to determine a storage condition, or pre-acquiring a list of applications that need to store a status bar notification to determine a storage condition. Of course, the user setting and the application list may be combined. Use, that is, provide a list of pre-acquired applications to the user for reference, and the user finalizes the storage conditions after setting. Among them, the application list is preferably obtained from the cloud server.
需要说明的是,本发明上述实施例虽然是以andriod系统为例进行说明的,但是应该理解,本发明方案在于应用于智能终端,特别是智能移动终端中,因此,本发明实施例可适应于基于linux内核的操作系统,而不仅仅限于android操作系统。It should be noted that the foregoing embodiment of the present invention is described by taking the andriod system as an example. However, it should be understood that the solution of the present invention is applied to an intelligent terminal, particularly an intelligent mobile terminal. Therefore, the embodiment of the present invention can be adapted to Based on the Linux kernel operating system, not just the android operating system.
可见,本发明提供的状态栏通知的存储方法中,通过检测app向system server进程发送状态栏通知消息的API调用,从而调取状态栏通知消息的参数,并通过序列化或者持久化方式实现对状态栏通知的存储。优选的,可以通过设置存储条件的方式,实现对特定应用程序的状态栏通知的选择性存储。本发明使得状态栏通知可以像短信一样保存起来,任何时候都可以查看。It can be seen that, in the storage method of the status bar notification provided by the present invention, by detecting that the app sends an API call of the status bar notification message to the system server process, the parameter of the status bar notification message is retrieved, and the serialization or persistent mode is implemented. The storage of status bar notifications. Preferably, selective storage of status bar notifications for a particular application can be implemented by setting storage conditions. The invention enables the status bar notification to be saved like a text message and can be viewed at any time.
与上述方法相对应,本发明还提供一种状态栏通知的存储装置。该装置可以通过硬件、软件或软硬件结合方式实现。该装置可以是指终端内部的功能模块,也可以是指智能终端本身,只要智能终端包括实现该装置的功能即可。Corresponding to the above method, the present invention also provides a storage device for status bar notification. The device can be implemented by hardware, software or a combination of software and hardware. The device may refer to a functional module inside the terminal, or may refer to the smart terminal itself, as long as the smart terminal includes functions for implementing the device.
该状态栏通知的存储装置用于智能终端的操作系统,所述操作系统包括应用程序层和系统框架层,其中,在操作系统的应用程序层中设置状态栏管理器,所述装置包括:检测单元,用于通过所述状态栏管理器检测应用程序是否调用向系统框架层中的系统服务进程发送状态栏通知消息的接口;参数调取单元,用于当所述检测单元检测到应用程序调用发送状态栏通知消息的接口时,调取通过所述接口发送的状态栏通知消息的参数;转换存储单元,用于将所述状态栏通知消息的参数进行数据转换,并将经过数据转换后的数据进行存储。The storage device notified by the status bar is used for an operating system of the smart terminal, and the operating system includes an application layer and a system framework layer, wherein a status bar manager is set in an application layer of the operating system, and the device includes: detecting a unit, configured to detect, by the status bar manager, whether an application invokes an interface that sends a status bar notification message to a system service process in a system framework layer; a parameter retrieval unit, configured to: when the detection unit detects an application call When the interface of the status bar notification message is sent, the parameter of the status bar notification message sent through the interface is retrieved; the conversion storage unit is configured to perform data conversion on the parameter of the status bar notification message, and the data is converted. The data is stored.
其中,所述转换存储单元具体用于:将所述状态栏通知消息的参数进行序列化,或/和,将所述状态栏通知消息的参数进行持久化,并将序列化和/或持久化后的数据进行存储。The conversion storage unit is specifically configured to: serialize parameters of the status bar notification message, or/and persist the parameters of the status bar notification message, and serialize and/or persist. After the data is stored.
一种情况是,当所述状态栏通知消息的参数包括显示视图参数时,所述转换存储单元具体用于,对实现所述显示视图的远程视图对象进行序列化得到字节流,然后将字节流存储在物理文件中。进一步还可以包括:查看单元,用于当需要查看状态栏通知时,从物理文件中读取出所述字节流,并对字节流进行反序列化为远程视图对象,再根据反序列化得到的远程视图对象构造出显示视图。In one case, when the parameter of the status bar notification message includes a display view parameter, the conversion storage unit is specifically configured to serialize a remote view object that implements the display view to obtain a byte stream, and then use a word stream. The throttle is stored in a physical file. The method may further include: a viewing unit, configured to read the byte stream from the physical file when the status bar notification needs to be viewed, and deserialize the byte stream into a remote view object, and then deserialize according to the deserialization The resulting remote view object constructs a display view.
另一种情况是,所述状态栏通知消息的参数包括点击执行页面跳转参数时,所述转换存储单元具体用于,获取实现所述点击执行页面跳转的即将发生事件对象对应的意图对象,对所述意图对象进行持久化。In another case, when the parameter of the status bar notification message includes a click execution page jump parameter, the conversion storage unit is specifically configured to acquire an intent object corresponding to an upcoming event object that implements the click execution page jump. , persisting the intent object.
优选的,所述装置还包括:存储条件确定单元,用于在状态栏管理器中确定针 对应用程序的状态栏通知的存储条件;此时,所述转换存储单元根据所述存储条件,仅对满足存储条件的应用程序的状态栏通知进行存储。进一步,所述装置还包括:应用程序名单获取单元,用于为所述状态栏管理器预先获取需要存储状态栏通知的应用程序名单;此时,所述转换存储单元,根据所述应用程序名单,确定针对应用程序的状态栏通知的存储条件。进一步,所述装置还包括:存储设置单元,用于利用所述状态栏管理器向用户提供存储条件设置界面,接收用户对状态栏通知的存储设置。其中,所述应用程序名单是从云端服务器获取的。Preferably, the device further comprises: a storage condition determining unit, configured to determine the pin in the status bar manager The storage condition notified to the status bar of the application; at this time, the conversion storage unit stores only the status bar notification of the application that satisfies the storage condition according to the storage condition. Further, the device further includes: an application list obtaining unit, configured to pre-acquire a list of applications that need to store a status bar notification for the status bar manager; at this time, the conversion storage unit is configured according to the application list To determine the storage criteria for the application's status bar notifications. Further, the device further includes: a storage setting unit, configured to provide a storage condition setting interface to the user by using the status bar manager, and receive a storage setting of the status bar notification by the user. The application list is obtained from a cloud server.
优选的,所述装置还包括:通知查看单元,用于提供查看所述存储的状态栏通知的通知查看界面,通过所述通知查看界面,向用户展示所存储的状态栏通知。Preferably, the device further includes: a notification viewing unit, configured to provide a notification viewing interface for viewing the stored status bar notification, and display the stored status bar notification to the user through the notification viewing interface.
优选的,所述装置还包括:加密单元,用于对序列化或持久化后的数据进行加密;此时,所述转换存储单元用于对加密后的数据进行存储。Preferably, the device further includes: an encryption unit, configured to encrypt the serialized or persistent data; at this time, the conversion storage unit is configured to store the encrypted data.
此外,安卓的状态栏(通知栏)在方便用户查看消息的同时,也给了一些恶意广告软件可乘之机。一些恶意广告软件甚至包括一些正常的软件会频繁弹出多条状态栏消息,如果用户不及时清理,状态栏会同时存在几十条状态栏消息,大多数是对用户无用的消息,已经严重打扰用户。In addition, Android's status bar (notification bar) gives users some malicious adware to take advantage of while viewing the message. Some malicious adwares even include some normal software that frequently pops up multiple status bar messages. If the user does not clean up in time, the status bar will have dozens of status bar messages at the same time, most of which are useless messages to the user, which has seriously disturbed the user. .
针对现有技术中用户被过多状态栏消息打扰的问题,本发明提出了一套状态栏通知的接管方案,可以达到大大减少无用状态栏通知对用户造成的打扰,又不会让用户丢失重要的状态栏通知。In view of the problem that the user is disturbed by too many status bar messages in the prior art, the present invention proposes a takeover scheme of status bar notification, which can greatly reduce the disturbance caused by the useless status bar notification to the user, and does not make the user lose important. Status bar notification.
本发明一种优选实现方式是,对app层和framework层进行改进,从而利用这两层的协同配合实现状态栏消息接管方案。具体的,可以在framework层增加一个名为状态栏接管服务的系统服务,该状态栏接管服务根据app层的状态栏管理器设定的通知条目过滤策略,对状态栏通知进行过滤,例如将恶意应用程序的状态栏通知进行过滤,而只显示过滤之后的状态栏通知,达到无用状态栏通知不会对用户造成打扰的目的。另外,优选地,通过app层的状态栏管理器调用framework层的通知管理服务,从而实现查看所有状态栏通知的目的。可见,通过本发明,在显示状态栏通知时,仅显示过滤后的状态栏通知,从而减少对用户的打扰。并且,当用户需要查看所有状态栏通知时,可以通过状态栏管理器实现对所有的状态栏通知进行查看。A preferred implementation of the present invention is to improve the app layer and the framework layer, thereby utilizing the synergy of the two layers to implement a status bar message takeover solution. Specifically, a system service called a status bar takeover service may be added in the framework layer, and the status bar takeover service filters the status bar notification according to the notification item filtering policy set by the status layer manager of the app layer, for example, maliciously The application's status bar notifications are filtered, and only the status bar notifications after filtering are displayed, and the useless status bar notifications do not bother the user. In addition, preferably, the notification management service of the framework layer is invoked through the status bar manager of the app layer, thereby achieving the purpose of viewing all status bar notifications. It can be seen that, by the present invention, only the filtered status bar notification is displayed when the status bar notification is displayed, thereby reducing the disturbance to the user. Also, when the user needs to view all status bar notifications, all status bar notifications can be viewed through the status bar manager.
通过图1可知,从app创建一个通知到将该通知显示在系统状态栏中,需要framework层的system_server进程中的NotificationManagerService的处理和中转,最终由SystemUi负责显示。本发明中,通过android注入技术,在framework层中增加与app层状态栏管理器对应的状态栏接管服务,相当于在system_server进程中运行特定的代码,继而替换向SystemUi发送命令的句柄,从而可以选择性阻断NotificationManagerService向sytemUi进程发送状态栏显示命令,达到接管状态栏的目的。 As can be seen from Figure 1, from the creation of a notification by the app to the display of the notification in the system status bar, the processing and relaying of the NotificationManagerService in the system_server process of the framework layer is required, and finally the SystemUi is responsible for displaying. In the present invention, by the android injection technology, the status bar takeover service corresponding to the app layer status bar manager is added in the framework layer, which is equivalent to running a specific code in the system_server process, and then replacing the handle sent to the SystemUi command, thereby Selectively blocking the NotificationManagerService to send a status bar display command to the sytemUi process to achieve the purpose of taking over the status bar.
参见图4,为本发明实施例提供的状态栏通知的接管系统架构示意图。FIG. 4 is a schematic structural diagram of a takeover system notified by a status bar according to an embodiment of the present invention.
状态栏通知接管实现分为两大部分。第一部分是在framework层增加的状态栏接管服务,运行在system_server进程中,用于根据预设条件过滤状态栏通知条目,从而仅在系统状态栏显示过滤之后的状态栏通知。也就是,通过代码注入方式,状态栏接管服务检测到system server进程调用状态栏通知显示命令的接口(API),由状态栏接管服务调用该接口,从而向SystemUi进程发送状态栏通知显示命令,仅显示满足过滤条件的状态栏通知。第二部分是运行在app层的状态栏管理器,通过调用NotificationManagerService,例如通过GetAllNotifications方法调用NotificationManagerService,可供用于查看所有当前状态栏通知列表,包括在系统状态栏中被隐藏的状态栏通知条目。可以理解,状态栏接管服务和状态栏管理器是对应的,可以理解状态栏接管的后台部分和用户界面部分,二者协同运行。一方面,状态栏管理器确定状态栏通知的过滤条件,将过滤条件提供给状态栏接管服务;另一方面,状态栏管理器调用system_server进程中的NotificationManagerService,从而获取并显示NotificationManagerService保存的列表中的所有状态栏通知。其中,状态栏管理器可以理解为一个应用程序实现的功能,例如360安全卫士中的一个功能。The status bar notification takeover implementation is divided into two major parts. The first part is the status bar takeover service added in the framework layer. It runs in the system_server process and is used to filter the status bar notification entries according to the preset conditions, so that only the status bar notification after filtering is displayed in the system status bar. That is, through the code injection method, the status bar takeover service detects that the system server process calls the status bar to notify the display of the interface (API), and the status bar takes over the service to call the interface, thereby sending a status bar notification display command to the SystemUi process, only Show status bar notifications that meet the filter criteria. The second part is the status bar manager running in the app layer. By calling the NotificationManagerService, for example, calling the NotificationManagerService via the GetAllNotifications method, it can be used to view all current status bar notification lists, including the status bar notification items that are hidden in the system status bar. It can be understood that the status bar takeover service and the status bar manager are corresponding, and it can be understood that the background part of the status bar takes over and the user interface part, and the two operate in cooperation. On the one hand, the status bar manager determines the filter condition of the status bar notification, and provides the filter condition to the status bar to take over the service; on the other hand, the status bar manager calls the NotificationManagerService in the system_server process to obtain and display the list saved in the NotificationManagerService. All status bar notifications. Among them, the status bar manager can be understood as an application-implemented function, such as a function in the 360 security guards.
其中,在上述第一部分的状态栏接管服务中,涉及根据预先设置的过滤条件对通知条目进行过滤,从而可以选择性的只接管某些(个)应用程序的状态栏通知。具体的,app层的状态栏管理器可以向用户提供设置过滤条件的界面,并且在用户设置完成后提供给状态栏接管服务。例如,用户可以选择某些IM(即时通讯)软件、网银类软件设为属于白名单的应用程序,这些应用程序的状态栏通知还是可以正常发送到系统状态栏。用户也可以选择某些软件为属于黑名单的应用程序,这些黑名单的应用程序的状态栏通知就不会发送到系统状态栏上了。当然,用户还可以采用白名单和黑名单结合的方式。其中,应用程序的白名单或者应用程序的黑名单可以由状态栏管理器预先获取并提供给用户,以便用户在设置过滤条件时参考。例如,通过云端服务器配置黑名单或者白名单的方式,获取到应用程序的白名单或者应用程序的黑名单。由于云端方案基于大量的样本运营和人工智能方法,包括沙箱、静态代码分析,动态代码特征扫描等方式,因此具有样本大而较为精准的优点。当然,也可以直接采用状态栏管理器默认的白名单或/和黑名单,而无需用户设置。Wherein, in the status bar takeover service of the first part, the notification item is filtered according to the preset filter condition, so that only the status bar notification of some (application) applications can be selectively taken over. Specifically, the status bar manager of the app layer can provide the user with an interface for setting the filtering condition, and provide the status bar takeover service after the user setting is completed. For example, the user can select certain IM (instant messaging) software and online banking software to be whitelisted applications, and the status bar notifications of these applications can still be sent to the system status bar normally. Users can also select certain software as blacklisted applications, and status bar notifications for these blacklisted applications will not be sent to the system status bar. Of course, users can also use a combination of whitelist and blacklist. The whitelist of the application or the blacklist of the application can be pre-fetched by the status bar manager and provided to the user, so that the user can refer to when setting the filtering condition. For example, a blacklist or a whitelist is configured on the cloud server to obtain a whitelist of applications or a blacklist of applications. Because the cloud solution is based on a large number of sample operations and artificial intelligence methods, including sandboxing, static code analysis, dynamic code feature scanning, etc., it has the advantages of large and accurate samples. Of course, you can also use the default whitelist or / and blacklist of the status bar manager directly, without user settings.
参见图5为本发明实施例提供的一种状态栏通知的接管方法的流程图。其中,在操作系统的系统框架层(framework层)中设置与应用程序层(app层)中的状态栏管理器相对应的状态栏接管服务,该方法包括:FIG. 5 is a flowchart of a method for taking over a status bar notification according to an embodiment of the present invention. The status bar takeover service corresponding to the status bar manager in the application layer (app layer) is set in the system framework layer (framework layer) of the operating system, and the method includes:
S501:在状态栏管理器中确定针对应用程序的状态栏通知的过滤条件;S501: determining, in the status bar manager, a filter condition for the status bar notification of the application;
如前所介绍的,状态栏管理器可以向用户提供设置界面,由用户设置过滤条件,例如,设置允许显示某一些应用程序的状态栏通知,以及,设置禁止显示另一些应用程序的状态栏通知。在具体实现时,可结合预先获取的应用程序白名单,允许显 示应用程序白名单中应用程序的状态栏通知。同理,还可结合预先获取的应用程序黑名单,禁止显示应用程序黑名单中应用程序的状态栏通知。当然,应用程序白名单和应用程序黑名单可结合使用。用户可以在默认的应用程序白名单和/或应用程序黑名单基础上进行调整,也可以直接采用默认的方式。其中,应用程序白名单或应用程序黑名单的获取方式如前所述,可从云端服务器获取。As described earlier, the status bar manager can provide a setting interface to the user, and the user sets the filtering conditions, for example, setting a status bar notification that allows some applications to be displayed, and setting a status bar notification that prohibits displaying other applications. . In the specific implementation, it can be combined with the pre-acquired application whitelist to allow display A status bar notification for the application in the application whitelist. Similarly, it is also possible to combine the pre-acquired application blacklist to prohibit the display of the status bar notification of the application in the application blacklist. Of course, application whitelists and application blacklists can be combined. Users can make adjustments based on the default application whitelist and/or application blacklist, or they can use the default method directly. The application whitelist or the application blacklist is obtained as described above and can be obtained from the cloud server.
S502:状态栏管理器将过滤条件提供给状态栏接管服务;S502: The status bar manager provides the filter condition to the status bar takeover service;
如前所述,状态栏管理器和状态栏接管服务是分别位于app层和framework层实现本发明状态栏接管的两个部分,二者协同运行。在状态栏管理器确定了状态栏通知过滤条件之后,将过滤条件发送给状态栏接管服务。当然,也不排除状态栏接管服务内置或者直接获取过滤条件的实现方式。As mentioned above, the status bar manager and the status bar takeover service are two parts of the app layer and the framework layer respectively implementing the status bar of the present invention, and the two operate in cooperation. After the status bar manager determines the status bar notification filter, the filter condition is sent to the status bar takeover service. Of course, it is not excluded that the status bar takes over the service or directly obtains the implementation of the filter condition.
S503:状态栏接管服务向系统用户界面(SystemUi)进程发送状态栏通知显示命令,指示系统用户界面(SystemUi)进程仅在智能终端上显示满足过滤条件的状态栏通知。S503: The status bar takeover service sends a status bar notification display command to the system user interface (SystemUi) process, instructing the system user interface (SystemUi) process to display only the status bar notification that satisfies the filtering condition on the smart terminal.
步骤S503之前,需要由状态栏接管服务代替现有技术中system server进程中的NotificationManagerService去调用SystemUi进程,具体的,不是由NotificationManagerService去调用SystemUi进程,而是通过代码注入方式,状态栏接管服务检测到system server进程调用状态栏通知显示命令的接口(API),由状态栏接管服务调用该接口,从而向SystemUi进程发送状态栏通知显示命令。该通知显示命令指示SystemUi进程仅在智能终端上显示满足过滤条件的状态栏通知,从而达到过滤恶意通知或者减少通知干扰问题。Before step S503, the status bar takeover service is required to replace the NotificationManagerService in the system server process in the prior art to call the SystemUi process. Specifically, the SystemUi process is not called by the NotificationManagerService, but is detected by the code injection mode, and the status bar takeover service detects The system server process invokes the status bar to notify the interface (API) that displays the command, which is invoked by the status bar takeover service to send a status bar notification display command to the SystemUi process. The notification display command instructs the SystemUi process to display the status bar notification that satisfies the filtering condition only on the smart terminal, thereby filtering the malicious notification or reducing the notification interference problem.
除了上述三个步骤,优选的,为了在必要时方便用户查看所有状态栏通知,状态栏管理器向用户提供查看状态栏通知的功能。如前所述的,在app层的应用程序向system server进程发送状态栏通知消息之后,system server进程中的NotificationManagerService负责创建一个Notification,并且将Notification保存在状态栏通知列表中。本发明对此步骤并没有干预,也就是,在NotificationManagerService仍会创建并保存所有应用程序所请求的Notification,本发明仅在后续调用SystemUi进程时进行了接管,从而控制仅显示过滤之后的通知。由于在NotificationManagerService仍会创建并保存所有应用程序所请求的Notification,因此,可以通过状态栏管理器调用NotificationManagerService,获取状态栏通知列表,从而可以向用户显示所有状态栏通知。具体的,可通过通知显示界面,方便用户查看所有的状态栏通知。如前所述的,状态栏管理器调用系统框架层中的通知管理服务,获取在通知管理服务保存的状态栏通知列表;然后通过通知显示界面向用户显示所述列表中的所有状态栏通知。In addition to the above three steps, preferably, in order to facilitate the user to view all status bar notifications as necessary, the status bar manager provides the user with the ability to view status bar notifications. As mentioned earlier, after the application at the app layer sends a status bar notification message to the system server process, the NotificationManagerService in the system server process is responsible for creating a Notification and saving the Notification in the status bar notification list. The present invention does not interfere with this step, that is, the NotificationManager requests will still create and save the notifications requested by all applications, and the present invention only takes over when the subsequent call to the SystemUi process, so that only the notification after filtering is displayed. Since the notification requested by all applications is still created and saved in the NotificationManagerService, the status bar notification list can be obtained by calling the NotificationManagerService through the status bar manager, so that all status bar notifications can be displayed to the user. Specifically, the notification display interface is convenient for the user to view all status bar notifications. As described above, the status bar manager invokes the notification management service in the system framework layer to obtain a status bar notification list saved in the notification management service; then displays all status bar notifications in the list to the user through the notification display interface.
需要说明的是,本发明上述实施例虽然是以andriod系统为例进行说明的,但是应该理解,本发明方案在于应用于智能终端,特别是智能移动终端中,因此,本发明实施例可适应于基于linux内核的操作系统,而不仅仅限于android操作系统。 It should be noted that the foregoing embodiment of the present invention is described by taking the andriod system as an example. However, it should be understood that the solution of the present invention is applied to an intelligent terminal, particularly an intelligent mobile terminal. Therefore, the embodiment of the present invention can be adapted to Based on the Linux kernel operating system, not just the android operating system.
可见,本发明提供的状态栏通知的接管方法中,通过控制SystemUi进程仅显示满足过滤条件的状态栏通知,而对不满足过滤条件的状态栏通知不进行显示,从而可极大程度地减少过多或者恶意应用程序的状态栏通知,减少对用户造成干扰。其中,过滤条件的设置可通过应用程序白名单和/或黑名单方式,可以选定仅对特定应用程序的状态栏通知进行显示,而对于历史统计属于黑名单的应用程序则不进行状态栏通知显示。另外,通过状态栏管理器提供的查看所有状态栏通知的功能,可方便用户查看所有状态栏通知,避免重要状态栏通知的丢失。It can be seen that, in the method for taking over the status bar notification provided by the present invention, only the status bar notification that satisfies the filtering condition is displayed by controlling the SystemUi process, and the status bar notification that does not satisfy the filtering condition is not displayed, thereby greatly reducing the More or malicious application status bar notifications, reducing interference to users. The setting of the filtering condition may be selected by the application whitelist and/or blacklist mode, and only the status bar notification of the specific application may be selected for display, and the status bar notification is not performed for the application whose history is blacklisted. display. In addition, the ability to view all status bar notifications provided by the status bar manager makes it easy for users to view all status bar notifications and avoid the loss of important status bar notifications.
与上述方法相对应,本发明还提供一种状态栏通知的接管装置。该装置可以通过硬件、软件或软硬件结合方式实现。该装置可以是指终端内部的功能模块,也可以是指智能终端本身,只要智能终端包括实现该装置的功能即可。Corresponding to the above method, the present invention also provides a takeover device for status bar notification. The device can be implemented by hardware, software or a combination of software and hardware. The device may refer to a functional module inside the terminal, or may refer to the smart terminal itself, as long as the smart terminal includes functions for implementing the device.
该状态栏通知的接管装置用于智能终端的操作系统,其中,在操作系统的系统框架层中设置与应用程序层中的状态栏管理器相对应的状态栏接管服务,所述装置包括:过滤条件确定单元,用于在所述状态栏管理器中确定针对应用程序的状态栏通知的过滤条件;过滤条件提供单元,用于将所述过滤条件提供给所述状态栏接管服务;通知显示控制单元,用于利用所述状态栏接管服务向系统用户界面进程发送状态栏通知显示命令,指示所述系统用户界面进程仅在智能终端上显示满足所述过滤条件的状态栏通知。The takeover device notified by the status bar is used for an operating system of the smart terminal, wherein a status bar takeover service corresponding to the status bar manager in the application layer is set in a system framework layer of the operating system, and the device includes: filtering a condition determining unit, configured to determine, in the status bar manager, a filter condition for a status bar notification of an application; a filter condition providing unit, configured to provide the filter condition to the status bar takeover service; and notify display control And a unit, configured to send, by using the status bar takeover service, a status bar notification display command to the system user interface process, to instruct the system user interface process to display only the status bar notification that satisfies the filtering condition on the smart terminal.
优选地,该装置还包括:状态栏通知显示单元,用于利用所述状态栏管理器调用所述系统框架层中的通知管理服务,获取在所述通知管理服务保存的状态栏通知列表;并利用所述状态栏管理器向用户显示所述列表中的所有状态栏通知。Preferably, the apparatus further includes: a status bar notification display unit, configured to invoke, by the status bar manager, the notification management service in the system framework layer to obtain a status bar notification list saved by the notification management service; The status bar manager is used to display all status bar notifications in the list to the user.
优选地,该装置还包括:通知管理服务单元,用于利用所述通知管理服务接收一个或多个应用程序发送的状态栏通知消息,并将收到的状态栏通知消息保存在状态栏通知列表中。Preferably, the apparatus further comprises: a notification management service unit, configured to receive, by the notification management service, a status bar notification message sent by one or more application programs, and save the received status bar notification message in a status bar notification list in.
优选地,该装置还包括:系统用户界面进程接管单元,用于通过代码注入方式,检测到系统服务进程调用状态栏通知显示命令的接口,由所述状态栏接管服务调用所述接口,从而使所述通知显示控制单元向系统用户界面进程发送状态栏通知显示命令。Preferably, the device further includes: a system user interface process takeover unit, configured to detect, by means of code injection, an interface of the system service process calling status bar to notify the display command, wherein the interface is invoked by the status bar to take over the interface, thereby enabling The notification display control unit sends a status bar notification display command to the system user interface process.
优选地,该装置还包括:应用程序名单获取单元,用于为所述状态栏管理器预先获取应用程序白名单或/和应用程序黑名单;所述过滤条件确定单元根据所述应用程序白名单或/和应用程序黑名单,确定针对应用程序的状态栏通知的过滤条件。进一步还可包括:过滤条件设置单元,用于通过所述状态栏管理器向用户提供过滤条件设置界面,接收用户对状态栏通知的过滤设置。其中,所述应用程序白名单或/和应用程序黑名单是从云端服务器获取的。Preferably, the apparatus further includes: an application list obtaining unit, configured to pre-acquire an application whitelist or/and an application blacklist for the status bar manager; the filtering condition determining unit is configured according to the application whitelist Or / and the application blacklist to determine the filter criteria for the application's status bar notifications. The method further includes a filtering condition setting unit, configured to provide a filtering condition setting interface to the user through the status bar manager, and receive a filtering setting of the status bar notification by the user. The application whitelist or/and the application blacklist are obtained from the cloud server.
优选的,该装置还包括:通知查看单元,用于提供通知查看界面,通过所述通知查看界面,向用户展示状态栏通知列表中的所有状态栏通知。Preferably, the device further includes: a notification viewing unit, configured to provide a notification viewing interface, and display, by the notification viewing interface, all status bar notifications in the status bar notification list to the user.
优选地,所述操作系统包括用于智能移动终端的基于Linux内核的操作系统, 例如,所述操作系统为Andriod操作系统。Preferably, the operating system comprises a Linux kernel based operating system for a smart mobile terminal, For example, the operating system is an Andriod operating system.
可见,本发明提供的状态栏通知的接管方法中,通过控制系统用户界面进程仅显示满足过滤条件的状态栏通知,而对不满足过滤条件的状态栏通知不进行显示,从而可极大程度地减少过多或者恶意应用程序的状态栏通知,减少对用户造成干扰。其中,过滤条件的设置可通过应用程序白名单和/或黑名单方式,可以选定仅对特定应用程序的状态栏通知进行显示,而对于历史统计属于黑名单的应用程序则不进行状态栏通知显示。另外,通过状态栏管理器提供的查看所有状态栏通知的功能,可方便用户查看所有状态栏通知,避免重要状态栏通知的丢失。It can be seen that, in the method for taking over the status bar notification provided by the present invention, only the status bar notification that satisfies the filtering condition is displayed through the control system user interface process, and the status bar notification that does not satisfy the filtering condition is not displayed, thereby greatly Reduce the status bar notifications for excessive or malicious applications, reducing interference to users. The setting of the filtering condition may be selected by the application whitelist and/or blacklist mode, and only the status bar notification of the specific application may be selected for display, and the status bar notification is not performed for the application whose history is blacklisted. display. In addition, the ability to view all status bar notifications provided by the status bar manager makes it easy for users to view all status bar notifications and avoid the loss of important status bar notifications.
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。The algorithms and displays provided herein are not inherently related to any particular computer, virtual system, or other device. Various general purpose systems can also be used with the teaching based on the teachings herein. The structure required to construct such a system is apparent from the above description. Moreover, the invention is not directed to any particular programming language. It is to be understood that the invention may be embodied in a variety of programming language, and the description of the specific language has been described above in order to disclose the preferred embodiments of the invention.
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。In the description provided herein, numerous specific details are set forth. However, it is understood that the embodiments of the invention may be practiced without these specific details. In some instances, well-known methods, structures, and techniques are not shown in detail so as not to obscure the understanding of the description.
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。Similarly, the various features of the invention are sometimes grouped together into a single embodiment, in the above description of the exemplary embodiments of the invention, Figure, or a description of it. However, the method disclosed is not to be interpreted as reflecting the intention that the claimed invention requires more features than those recited in the claims. Rather, as the following claims reflect, inventive aspects reside in less than all features of the single embodiments disclosed herein. Therefore, the claims following the specific embodiments are hereby explicitly incorporated into the embodiments, and each of the claims as a separate embodiment of the invention.
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。Those skilled in the art will appreciate that the modules in the devices of the embodiments can be adaptively changed and placed in one or more devices different from the embodiment. The modules or units or components of the embodiments may be combined into one module or unit or component, and further they may be divided into a plurality of sub-modules or sub-units or sub-components. In addition to such features and/or at least some of the processes or units being mutually exclusive, any combination of the features disclosed in the specification, including the accompanying claims, the abstract and the drawings, and any methods so disclosed, or All processes or units of the device are combined. Each feature disclosed in this specification (including the accompanying claims, the abstract and the drawings) may be replaced by alternative features that provide the same, equivalent or similar purpose.
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。In addition, those skilled in the art will appreciate that, although some embodiments described herein include certain features that are included in other embodiments and not in other features, combinations of features of different embodiments are intended to be within the scope of the present invention. Different embodiments are formed and formed. For example, in the following claims, any one of the claimed embodiments can be used in any combination.
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运 行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的状态栏通知的存储装置以及状态栏通知的接管装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。Various component embodiments of the present invention may be implemented in hardware or on one or more processors The software module implementation of the line, or a combination of them. Those skilled in the art will appreciate that a microprocessor or digital signal processor (DSP) may be used in practice to implement some or all of the status bar notification storage device and the status bar notification takeover device in accordance with an embodiment of the present invention. Some or all of the features of the part. The invention can also be implemented as a device or device program (e.g., a computer program and a computer program product) for performing some or all of the methods described herein. Such a program implementing the invention may be stored on a computer readable medium or may be in the form of one or more signals. Such signals may be downloaded from an Internet website, provided on a carrier signal, or provided in any other form.
例如,图6示出了可以实现根据本发明的状态栏通知的存储方法或状态栏通知的接管方法的终端设备。该终端设备传统上包括处理器610和以存储器620形式的计算机程序产品或者计算机可读介质。存储器620可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。存储器620具有用于执行上述方法中的任何方法步骤的程序代码631的存储空间630。例如,用于程序代码的存储空间630可以包括分别用于实现上面的方法中的各种步骤的各个程序代码631。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。这些计算机程序产品包括诸如硬盘,紧致盘(CD)、存储卡或者软盘之类的程序代码载体。这样的计算机程序产品通常为如参考图7所述的便携式或者固定存储单元。该存储单元可以具有与图6的终端设备中的存储器620类似布置的存储段、存储空间等。程序代码可以例如以适当形式进行压缩。通常,存储单元包括计算机可读代码631’,即可以由例如诸如610之类的处理器读取的代码,这些代码当由终端设备运行时,导致该终端设备执行上面所描述的方法中的各个步骤。For example, FIG. 6 shows a terminal device that can implement the storage method of the status bar notification or the takeover method of the status bar notification according to the present invention. The terminal device conventionally includes a processor 610 and a computer program product or computer readable medium in the form of a memory 620. The memory 620 may be an electronic memory such as a flash memory, an EEPROM (Electrically Erasable Programmable Read Only Memory), an EPROM, a hard disk, or a ROM. Memory 620 has a memory space 630 for program code 631 for performing any of the method steps described above. For example, storage space 630 for program code may include various program code 631 for implementing various steps in the above methods, respectively. The program code can be read from or written to one or more computer program products. These computer program products include program code carriers such as hard disks, compact disks (CDs), memory cards or floppy disks. Such a computer program product is typically a portable or fixed storage unit as described with reference to FIG. The storage unit may have a storage section, a storage space, and the like arranged similarly to the storage 620 in the terminal device of FIG. The program code can be compressed, for example, in an appropriate form. Typically, the storage unit comprises computer readable code 631', ie code that can be read by a processor, such as 610, which when executed by the terminal device causes the terminal device to perform each of the methods described above step.
本文中所称的“一个实施例”、“实施例”或者“一个或者多个实施例”意味着,结合实施例描述的特定特征、结构或者特性包括在本发明的至少一个实施例中。此外,请注意,这里“在一个实施例中”的词语例子不一定全指同一个实施例。"an embodiment," or "an embodiment," or "an embodiment," In addition, it is noted that the phrase "in one embodiment" is not necessarily referring to the same embodiment.
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。It is to be noted that the above-described embodiments are illustrative of the invention and are not intended to be limiting, and that the invention may be devised without departing from the scope of the appended claims. In the claims, any reference signs placed between parentheses shall not be construed as a limitation. The word "comprising" does not exclude the presence of the elements or steps that are not recited in the claims. The word "a" or "an" The invention can be implemented by means of hardware comprising several distinct elements and by means of a suitably programmed computer. In the unit claims enumerating several means, several of these means can be embodied by the same hardware item. The use of the words first, second, and third does not indicate any order. These words can be interpreted as names.
此外,还应当注意,本说明书中使用的语言主要是为了可读性和教导的 目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。 In addition, it should also be noted that the language used in this specification is primarily for readability and teaching. It is chosen for the purpose, and is not chosen to explain or define the subject matter of the invention. Therefore, many modifications and changes will be apparent to those skilled in the art without departing from the scope of the invention. The disclosure of the present invention is intended to be illustrative, and not restrictive, and the scope of the invention is defined by the appended claims.

Claims (50)

  1. 一种状态栏通知的存储方法,其特征在于,在操作系统的应用程序层中设置状态栏管理器,所述方法包括:A method for storing a status bar notification, characterized in that a status bar manager is set in an application layer of an operating system, the method comprising:
    所述状态栏管理器检测应用程序是否调用向系统框架层中的系统服务进程发送状态栏通知消息的接口;The status bar manager detects whether an application invokes an interface that sends a status bar notification message to a system service process in the system framework layer;
    当检测到应用程序调用发送状态栏通知消息的接口时,调取通过所述接口发送的状态栏通知消息的参数;When detecting that the application invokes the interface that sends the status bar notification message, the parameter of the status bar notification message sent through the interface is retrieved;
    将所述状态栏通知消息的参数进行数据转换,并将经过数据转换后的数据进行存储。The parameters of the status bar notification message are data-converted, and the data-converted data is stored.
  2. 如权利要求1所述的方法,其特征在于,所述将所述状态栏通知消息的参数进行数据转换包括:将所述状态栏通知消息的参数进行序列化,或/和,将所述状态栏通知消息的参数进行持久化。The method of claim 1, wherein said converting data of said status bar notification message comprises: serializing parameters of said status bar notification message, or/and, said state The parameters of the column notification message are persisted.
  3. 如权利要求2所述的方法,其特征在于,所述状态栏通知消息的参数包括显示视图参数;对实现所述显示视图的远程视图对象进行序列化得到字节流,然后将字节流存储在物理文件中。The method of claim 2, wherein the parameter of the status bar notification message comprises displaying a view parameter; serializing the remote view object implementing the display view to obtain a byte stream, and then storing the byte stream In the physical file.
  4. 如权利要求3所述的方法,其特征在于,还包括:当需要查看状态栏通知时,从物理文件中读取出所述字节流,并对字节流进行反序列化为远程视图对象,再根据反序列化得到的远程视图对象构造出显示视图。The method of claim 3, further comprising: reading the byte stream from the physical file when the status bar notification needs to be viewed, and deserializing the byte stream into a remote view object And construct a display view based on the deserialized remote view object.
  5. 如权利要求2所述的方法,其特征在于,所述状态栏通知消息的参数包括点击执行页面跳转参数;获取实现所述点击执行页面跳转的即将发生事件对象对应的意图对象,对所述意图对象进行持久化。The method of claim 2, wherein the parameter of the status bar notification message comprises clicking to execute a page jump parameter; and acquiring an intent object corresponding to an upcoming event object that implements the click execution page jump, The intent object is persisted.
  6. 如权利要求1所述的方法,其特征在于,还包括:The method of claim 1 further comprising:
    在状态栏管理器中确定针对应用程序的状态栏通知的存储条件;Determining storage conditions for the application's status bar notifications in the status bar manager;
    其中,所述状态栏管理器根据所述存储条件,仅对满足存储条件的应用程序的状态栏通知进行存储。The status bar manager stores only the status bar notification of the application that satisfies the storage condition according to the storage condition.
  7. 如权利要求6所述的方法,其特征在于,还包括:The method of claim 6 further comprising:
    所述状态栏管理器预先获取需要存储状态栏通知的应用程序名单;The status bar manager obtains in advance a list of applications that need to store a status bar notification;
    所述状态栏管理器根据所述应用程序名单,确定针对应用程序的状态栏通知的存储条件。The status bar manager determines a storage condition for the status bar notification of the application based on the application list.
  8. 如权利要求6所述的方法,其特征在于,还包括:The method of claim 6 further comprising:
    所述状态栏管理器向用户提供存储条件设置界面,接收用户对状态栏通知的存储设置。The status bar manager provides a storage condition setting interface to the user, and receives the storage setting of the status bar notification by the user.
  9. 如权利要求8所述的方法,其特征在于,所述应用程序名单是从云端服务器获取的。The method of claim 8 wherein said list of applications is obtained from a cloud server.
  10. 如权利要求1所述的方法,其特征在于,还包括: The method of claim 1 further comprising:
    提供查看所述存储的状态栏通知的通知查看界面;Providing a notification viewing interface for viewing the stored status bar notification;
    通过所述通知查看界面,向用户展示所存储的状态栏通知。The stored status bar notification is displayed to the user through the notification viewing interface.
  11. 如权利要求1至10任一项所述的方法,其特征在于,在所述将序列化或持久化后的数据进行存储之前,还包括:The method according to any one of claims 1 to 10, further comprising: before storing the serialized or persistent data, further comprising:
    对序列化或持久化后的数据进行加密。Encrypt data after serialization or persistence.
  12. 如权利要求1至10任一项所述的方法,其特征在于,所述操作系统包括用于智能移动终端的基于Linux内核的操作系统。The method of any of claims 1 to 10, wherein the operating system comprises a Linux kernel based operating system for a smart mobile terminal.
  13. 如权利要求12所述的方法,其特征在于,所述操作系统为Andriod操作系统。The method of claim 12 wherein said operating system is an Andriod operating system.
  14. 一种状态栏通知的存储装置,其特征在于,在操作系统的应用程序层中设置状态栏管理器,所述装置包括:A storage device for status bar notification, characterized in that a status bar manager is set in an application layer of an operating system, the device comprising:
    检测单元,用于通过所述状态栏管理器检测应用程序是否调用向系统框架层中的系统服务进程发送状态栏通知消息的接口;a detecting unit, configured to detect, by the status bar manager, whether an application invokes an interface that sends a status bar notification message to a system service process in a system framework layer;
    参数调取单元,用于当所述检测单元检测到应用程序调用发送状态栏通知消息的接口时,调取通过所述接口发送的状态栏通知消息的参数;a parameter retrieval unit, configured to: when the detecting unit detects an interface that the application invokes the status bar notification message, retrieve a parameter of the status bar notification message sent by using the interface;
    转换存储单元,用于将所述状态栏通知消息的参数进行数据转换,将经过数据转换后的数据进行存储。The conversion storage unit is configured to perform data conversion on the parameter of the status bar notification message, and store the data after the data conversion.
  15. 如权利要求14所述的装置,其特征在于,所述转换存储单元具体用于:将所述状态栏通知消息的参数进行序列化,或/和,将所述状态栏通知消息的参数进行持久化,并将序列化和/或持久化后的数据进行存储。The device according to claim 14, wherein the conversion storage unit is specifically configured to serialize parameters of the status bar notification message, or/and to persist parameters of the status bar notification message. And serialize and/or persist the data for storage.
  16. 如权利要求15所述的装置,其特征在于,所述状态栏通知消息的参数包括显示视图参数;所述转换存储单元具体用于,对实现所述显示视图的远程视图对象进行序列化得到字节流,然后将字节流存储在物理文件中。The device according to claim 15, wherein the parameter of the status bar notification message comprises a display view parameter; the conversion storage unit is specifically configured to serialize a remote view object that implements the display view to obtain a word Throttling, and then storing the byte stream in a physical file.
  17. 如权利要求16所述的装置,其特征在于,还包括:查看单元,用于当需要查看状态栏通知时,从物理文件中读取出所述字节流,并对字节流进行反序列化为远程视图对象,再根据反序列化得到的远程视图对象构造出显示视图。The apparatus according to claim 16, further comprising: a viewing unit, configured to read the byte stream from the physical file and deserialize the byte stream when the status bar notification needs to be viewed Transform into a remote view object, and then construct a display view based on the deserialized remote view object.
  18. 如权利要求14所述的装置,其特征在于,所述状态栏通知消息的参数包括点击执行页面跳转参数;所述转换存储单元具体用于,获取实现所述点击执行页面跳转的即将发生事件对象对应的意图对象,对所述意图对象进行持久化。The device according to claim 14, wherein the parameter of the status bar notification message comprises a click execution page jump parameter; the conversion storage unit is specifically configured to obtain an upcoming occurrence of the click execution page jump An intent object corresponding to the event object, and the intent object is persisted.
  19. 如权利要求14所述的装置,其特征在于,还包括:The device of claim 14 further comprising:
    存储条件确定单元,用于在状态栏管理器中确定针对应用程序的状态栏通知的存储条件;a storage condition determining unit, configured to determine, in the status bar manager, a storage condition for a status bar notification of the application;
    所述存储单元根据所述存储条件,仅对满足存储条件的应用程序的状态栏通知进行存储。The storage unit stores only the status bar notification of the application that satisfies the storage condition according to the storage condition.
  20. 如权利要求19所述的装置,其特征在于,还包括:The device of claim 19, further comprising:
    应用程序名单获取单元,用于为所述状态栏管理器预先获取需要存储状态栏通 知的应用程序名单;An application list obtaining unit, configured to pre-fetch the required status bar for the status bar manager a list of known applications;
    所述存储单元,根据所述应用程序名单,确定针对应用程序的状态栏通知的存储条件。The storage unit determines a storage condition for the status bar notification of the application according to the application list.
  21. 如权利要求19所述的装置,其特征在于,还包括:The device of claim 19, further comprising:
    存储设置单元,用于利用所述状态栏管理器向用户提供存储条件设置界面,接收用户对状态栏通知的存储设置。And a storage setting unit, configured to provide a storage condition setting interface to the user by using the status bar manager, and receive a storage setting of the status bar notification by the user.
  22. 如权利要求21所述的装置,其特征在于,所述应用程序名单是从云端服务器获取的。The apparatus of claim 21 wherein said list of applications is obtained from a cloud server.
  23. 如权利要求14所述的装置,其特征在于,还包括:The device of claim 14 further comprising:
    通知查看单元,用于提供查看所述存储的状态栏通知的通知查看界面,通过所述通知查看界面,向用户展示所存储的状态栏通知。The notification viewing unit is configured to provide a notification viewing interface for viewing the stored status bar notification, and display the stored status bar notification to the user through the notification viewing interface.
  24. 如权利要求14至23任一项所述的装置,其特征在于,还包括:加密单元,用于对序列化或持久化后的数据进行加密;所述存储单元用于对加密后的数据进行存储。The apparatus according to any one of claims 14 to 23, further comprising: an encryption unit configured to encrypt the serialized or persistent data; and the storage unit is configured to perform the encrypted data storage.
  25. 如权利要求14至23任一项所述的装置,其特征在于,所述操作系统包括用于智能移动终端的基于Linux内核的操作系统。The apparatus of any one of claims 14 to 23, wherein the operating system comprises a Linux kernel based operating system for a smart mobile terminal.
  26. 如权利要求25所述的装置,其特征在于,所述操作系统为Andriod操作系统。The apparatus of claim 25 wherein said operating system is an Andriod operating system.
  27. 一种状态栏通知的接管方法,其特征在于,在操作系统的系统框架层中设置与应用程序层中的状态栏管理器相对应的状态栏接管服务,所述方法包括:A method for taking over a status bar notification, characterized in that a status bar takeover service corresponding to a status bar manager in an application layer is set in a system framework layer of an operating system, the method comprising:
    在所述状态栏管理器中确定针对应用程序的状态栏通知的过滤条件;Determining, in the status bar manager, a filter condition for a status bar notification of an application;
    所述状态栏管理器将所述过滤条件提供给所述状态栏接管服务;The status bar manager provides the filter condition to the status bar takeover service;
    所述状态栏接管服务向系统用户界面进程发送状态栏通知显示命令,指示所述系统用户界面进程仅显示满足所述过滤条件的状态栏通知。The status bar takeover service sends a status bar notification display command to the system user interface process, instructing the system user interface process to display only status bar notifications that satisfy the filter condition.
  28. 如权利要求26所述的方法,其特征在于,还包括:The method of claim 26, further comprising:
    所述状态栏管理器调用所述系统框架层中的通知管理服务,获取在所述通知管理服务保存的状态栏通知列表;The status bar manager invokes a notification management service in the system framework layer to obtain a status bar notification list saved in the notification management service;
    所述状态栏管理器向用户显示所述列表中的所有状态栏通知。The status bar manager displays to the user all status bar notifications in the list.
  29. 如权利要求28所述的方法,其特征在于,在所述状态栏接管服务向系统用户界面进程发送状态栏通知显示命令之前,还包括:The method of claim 28, wherein before the status bar takeover service sends a status bar notification display command to the system user interface process, the method further includes:
    所述通知管理服务接收一个或多个应用程序发送的状态栏通知消息,并将收到的状态栏通知消息保存在状态栏通知列表中。The notification management service receives a status bar notification message sent by one or more applications and saves the received status bar notification message in a status bar notification list.
  30. 如权利要求27所述的方法,其特征在于,在所述状态栏接管服务向系统用户界面进程发送状态栏通知显示命令之前,还包括:The method of claim 27, wherein before the status bar takeover service sends a status bar notification display command to the system user interface process, the method further includes:
    通过代码注入方式,检测到系统服务进程调用状态栏通知显示命令的接口,由所述状态栏接管服务调用所述接口,从而向系统用户界面进程发送状态栏通知显示 命令。Through the code injection method, detecting that the system service process calls the status bar to notify the display of the interface, and the status bar takes over the interface, thereby sending a status bar notification display to the system user interface process. command.
  31. 如权利要求27所述的方法,其特征在于,还包括:The method of claim 27, further comprising:
    所述状态栏管理器预先获取应用程序白名单或/和应用程序黑名单;The status bar manager obtains an application whitelist or/and an application blacklist in advance;
    所述状态栏管理器根据所述应用程序白名单或/和应用程序黑名单,确定针对应用程序的状态栏通知的过滤条件。The status bar manager determines a filter condition for the status bar notification of the application based on the application whitelist or/and the application blacklist.
  32. 如权利要求31所述的方法,其特征在于,还包括:The method of claim 31, further comprising:
    所述状态栏管理器向用户提供过滤条件设置界面,接收用户对状态栏通知的过滤设置。The status bar manager provides a filter condition setting interface to the user, and receives a filtering setting of the status bar notification by the user.
  33. 如权利要求31所述的方法,其特征在于,所述应用程序白名单或/和应用程序黑名单是从云端服务器获取的。The method of claim 31 wherein said application whitelist or/and application blacklist is obtained from a cloud server.
  34. 如权利要求27所述的方法,其特征在于,所述状态栏接管服务,在系统服务进程中运行特定的代码,继而替换向系统用户界面进程发送命令的句柄,从而可以选择性阻断通知管理服务向系统用户界面进程发送状态栏显示命令,达到接管状态栏的目的。The method of claim 27, wherein said status bar takes over the service, runs a particular code in the system service process, and then replaces a handle to send a command to the system user interface process, thereby selectively blocking notification management The service sends a status bar display command to the system user interface process to achieve the purpose of taking over the status bar.
  35. 如权利要求27所述的方法,其特征在于,还包括:The method of claim 27, further comprising:
    提供通知查看界面;Provide a notification viewing interface;
    通过所述通知查看界面,向用户展示状态栏通知列表中的所有状态栏通知。Through the notification viewing interface, the user is presented with all status bar notifications in the status bar notification list.
  36. 如权利要求27至35任一项所述的方法,其特征在于,所述操作系统包括用于智能移动终端的基于Linux内核的操作系统。The method of any of claims 27 to 35, wherein the operating system comprises a Linux kernel based operating system for a smart mobile terminal.
  37. 如权利要求36所述的方法,其特征在于,所述操作系统为Andriod操作系统。The method of claim 36 wherein said operating system is an Andriod operating system.
  38. 一种状态栏通知的接管装置,其特征在于,在操作系统的系统框架层中设置与应用程序层中的状态栏管理器相对应的状态栏接管服务,所述装置包括:A takeover device for status bar notification, characterized in that a status bar takeover service corresponding to a status bar manager in an application layer is set in a system framework layer of an operating system, the device comprising:
    过滤条件确定单元,用于在所述状态栏管理器中确定针对应用程序的状态栏通知的过滤条件;a filter condition determining unit, configured to determine, in the status bar manager, a filter condition for a status bar notification of the application;
    过滤条件提供单元,用于将所述过滤条件提供给所述状态栏接管服务;a filter providing unit for providing the filter condition to the status bar takeover service;
    通知显示控制单元,用于利用所述状态栏接管服务向系统用户界面进程发送状态栏通知显示命令,指示所述系统用户界面进程仅显示满足所述过滤条件的状态栏通知。The notification display control unit is configured to use the status bar takeover service to send a status bar notification display command to the system user interface process, instructing the system user interface process to display only the status bar notification that satisfies the filtering condition.
  39. 如权利要求38所述的装置,其特征在于,还包括:The device of claim 38, further comprising:
    状态栏通知显示单元,用于利用所述状态栏管理器调用所述系统框架层中的通知管理服务,获取在所述通知管理服务保存的状态栏通知列表;并利用所述状态栏管理器向用户显示所述列表中的所有状态栏通知。a status bar notification display unit, configured to invoke a notification management service in the system framework layer by using the status bar manager, acquire a status bar notification list saved in the notification management service; and use the status bar manager to The user displays all status bar notifications in the list.
  40. 如权利要求39所述的装置,其特征在于,所述装置还包括:The device of claim 39, wherein the device further comprises:
    通知管理服务单元,用于利用所述通知管理服务接收一个或多个应用程序发送的状态栏通知消息,并将收到的状态栏通知消息保存在状态栏通知列表中。 The notification management service unit is configured to receive, by the notification management service, a status bar notification message sent by one or more applications, and save the received status bar notification message in the status bar notification list.
  41. 如权利要求38所述的装置,其特征在于,还包括:The device of claim 38, further comprising:
    系统用户界面进程接管单元,用于通过代码注入方式,检测到系统服务进程调用状态栏通知显示命令的接口,由所述状态栏接管服务调用所述接口,从而使所述通知显示控制单元向系统用户界面进程发送状态栏通知显示命令。a system user interface process takeover unit, configured to detect, by means of code injection, an interface of the system service process call status bar notification display command, wherein the interface is invoked by the status bar takeover service, so that the notification display control unit is to the system The user interface process sends a status bar notification to display the command.
  42. 如权利要求38所述的装置,其特征在于,还包括:The device of claim 38, further comprising:
    应用程序名单获取单元,用于为所述状态栏管理器预先获取应用程序白名单或/和应用程序黑名单;An application list obtaining unit, configured to pre-acquire an application whitelist or/and an application blacklist for the status bar manager;
    所述过滤条件确定单元根据所述应用程序白名单或/和应用程序黑名单,确定针对应用程序的状态栏通知的过滤条件。The filter condition determining unit determines a filter condition for the status bar notification of the application according to the application whitelist or/and the application blacklist.
  43. 如权利要求42所述的装置,其特征在于,还包括:The device of claim 42 further comprising:
    过滤条件设置单元,用于通过所述状态栏管理器向用户提供过滤条件设置界面,接收用户对状态栏通知的过滤设置。The filter condition setting unit is configured to provide a filter condition setting interface to the user through the status bar manager, and receive a filtering setting of the status bar notification by the user.
  44. 如权利要求42所述的装置,其特征在于,所述应用程序白名单或/和应用程序黑名单是从云端服务器获取的。The apparatus of claim 42, wherein the application whitelist or/and application blacklist is obtained from a cloud server.
  45. 如权利要求38所述的装置,其特征在于,所述状态栏接管服务,在系统服务进程中运行特定的代码,继而替换向系统用户界面进程发送命令的句柄,从而可以选择性阻断通知管理服务向系统用户界面进程发送状态栏显示命令,达到接管状态栏的目的。38. The apparatus of claim 38, wherein the status bar takes over a service, runs a particular code in a system service process, and then replaces a handle to send a command to a system user interface process, thereby selectively blocking notification management The service sends a status bar display command to the system user interface process to achieve the purpose of taking over the status bar.
  46. 如权利要求38所述的装置,其特征在于,还包括:The device of claim 38, further comprising:
    通知查看单元,用于提供通知查看界面,通过所述通知查看界面,向用户展示状态栏通知列表中的所有状态栏通知。The notification viewing unit is configured to provide a notification viewing interface, and display, by using the notification viewing interface, all status bar notifications in the status bar notification list to the user.
  47. 如权利要求38至46任一项所述的装置,其特征在于,所述操作系统包括用于智能移动终端的基于Linux内核的操作系统。The apparatus of any of claims 38 to 46, wherein the operating system comprises a Linux kernel based operating system for a smart mobile terminal.
  48. 如权利要求47所述的装置,其特征在于,所述操作系统为Andriod操作系统。The apparatus of claim 47, wherein the operating system is an Andriod operating system.
  49. 一种计算机程序,包括计算机可读代码,当所述计算机可读代码在终端设备上运行时,导致所述终端设备执行根据权利要求1-13中的任一个所述的状态栏通知的存储方法,或者导致所述终端设备执行根据权利要求27-37中的任一个所述的状态栏通知的接管方法。A computer program comprising computer readable code, when the computer readable code is run on a terminal device, causing the terminal device to perform a storage method of the status bar notification according to any one of claims 1-13 Or a takeover method causing the terminal device to perform the status bar notification according to any one of claims 27-37.
  50. 一种计算机可读介质,其中存储了如权利要求49所述的计算机程序。 A computer readable medium storing the computer program of claim 49.
PCT/CN2015/079490 2014-05-22 2015-05-21 Method and device for storing status bar notification, and management handover method and device WO2015176673A1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN201410220035.6 2014-05-22
CN201410220045.X 2014-05-22
CN201410220045.XA CN105095749B (en) 2014-05-22 2014-05-22 The adapting method and device of status bar notice
CN201410220035.6A CN105094791B (en) 2014-05-22 2014-05-22 The storage method and device of status bar notice

Publications (1)

Publication Number Publication Date
WO2015176673A1 true WO2015176673A1 (en) 2015-11-26

Family

ID=54553443

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/079490 WO2015176673A1 (en) 2014-05-22 2015-05-21 Method and device for storing status bar notification, and management handover method and device

Country Status (1)

Country Link
WO (1) WO2015176673A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113110889A (en) * 2021-04-16 2021-07-13 北京沃东天骏信息技术有限公司 Global message prompting method, global message prompting device, medium and electronic equipment
CN113821132A (en) * 2021-07-27 2021-12-21 荣耀终端有限公司 Message processing method and device
CN114675772A (en) * 2022-03-25 2022-06-28 珠海读书郎软件科技有限公司 Status bar notification viewing method based on flexible screen

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103080936A (en) * 2010-09-01 2013-05-01 摩托罗拉移动有限责任公司 Method and system for reducing notifications to a mobile device in accordance with user preferences
CN103338114A (en) * 2013-06-05 2013-10-02 四川长虹电器股份有限公司 An interaction method based on Android system notification messages
KR20140004975A (en) * 2012-07-04 2014-01-14 최형석 New mobile advertisement platform

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103080936A (en) * 2010-09-01 2013-05-01 摩托罗拉移动有限责任公司 Method and system for reducing notifications to a mobile device in accordance with user preferences
KR20140004975A (en) * 2012-07-04 2014-01-14 최형석 New mobile advertisement platform
CN103338114A (en) * 2013-06-05 2013-10-02 四川长虹电器股份有限公司 An interaction method based on Android system notification messages

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113110889A (en) * 2021-04-16 2021-07-13 北京沃东天骏信息技术有限公司 Global message prompting method, global message prompting device, medium and electronic equipment
CN113110889B (en) * 2021-04-16 2023-12-05 北京沃东天骏信息技术有限公司 Global message prompting method, global message prompting device, medium and electronic equipment
CN113821132A (en) * 2021-07-27 2021-12-21 荣耀终端有限公司 Message processing method and device
CN114675772A (en) * 2022-03-25 2022-06-28 珠海读书郎软件科技有限公司 Status bar notification viewing method based on flexible screen
CN114675772B (en) * 2022-03-25 2024-02-23 珠海读书郎软件科技有限公司 Status bar notification viewing method based on flexible screen

Similar Documents

Publication Publication Date Title
US10192059B2 (en) System and method for protecting systems from active content
JP6419787B2 (en) Optimized resource allocation to virtual machines in malware content detection system
US9886576B2 (en) Security box
WO2016078624A1 (en) Method and device for controlling popping up of window by identifying full screen mode
US9043918B2 (en) System and method for profile based filtering of outgoing information in a mobile environment
US20180336351A1 (en) Isolated Container Event Monitoring
US8589947B2 (en) Methods, systems, and media for application fault containment
US9674171B2 (en) System, method and computer program product for providing notifications from a virtual device to a disconnected physical device
US20170346843A1 (en) Behavior processing method and device based on application program
US9367695B2 (en) Software vulnerability notification via icon decorations
US20140366160A1 (en) Application Marketplace Administrative Controls
EP3756121B1 (en) Anti-ransomware systems and methods using a sinkhole at an electronic device
JP2007316637A (en) Screensaver for individual application program
CN106971120B (en) Method and device for realizing file protection and computing equipment
US20140344369A1 (en) Electronic mail read receipt processing
WO2012075879A1 (en) Method for implementing client software for web application
WO2015176673A1 (en) Method and device for storing status bar notification, and management handover method and device
US9258318B2 (en) Systems and methods for informing users about applications available for download
US20040205354A1 (en) System and method for detecting malicious applications
US9607136B2 (en) Secure attention for mobile devices
US20220083646A1 (en) Context Based Authorized External Device Copy Detection
US20180060583A1 (en) Application Behavior Information
US9223976B2 (en) Content inspection
US20130097621A1 (en) Context for replacement functions
KR102547869B1 (en) The method and apparatus for detecting malware using decoy sandbox

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15795554

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15795554

Country of ref document: EP

Kind code of ref document: A1