Application processing method, apparatus, and storage medium

By defining filtering conditions in foldable phones to filter out incompatible wallpaper apps, the problem of foldable phones being unable to intelligently load themes and wallpapers was solved, enabling intelligent app launch and adaptive display.

CN112905264BActive Publication Date: 2026-01-23BEIJING XIAOMI MOBILE SOFTWARE CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202110314482.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-03-24
Publication Date
2026-01-23
Estimated Expiration
2041-03-24

AI Technical Summary

Technical Problem

Existing foldable phones cannot intelligently load suitable themes and wallpapers, resulting in the inability to launch applications intelligently.

Method used

By defining the filtering conditions that match the implicit launch event, target applications that do not match the current triggering scenario are filtered out, their implicit launch function is disabled, and targeted launch of applications is achieved through explicit launch when necessary.

Benefits of technology

It improves the intelligence of application launch on terminal devices, ensuring that only suitable wallpapers and themes are loaded in specific scenarios, thus enriching the usage scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112905264B_ABST
    Figure CN112905264B_ABST
Patent Text Reader

Abstract

The present disclosure relates to an application processing method, device and storage medium, wherein the application processing method is applied to a terminal device, and includes: determining candidate applications that meet filter conditions of implicit starting events; filtering out target applications in the candidate applications that do not meet a trigger scenario based on a filtering rule corresponding to the trigger scenario detected currently; and starting the candidate applications from which the target applications have been filtered out. In this way, the target applications cannot use the implicit starting function under the corresponding trigger scenario, and the purpose of starting the applications selectively is achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of information technology, and in particular to an application processing method, apparatus, and storage medium. Background Technology

[0002] With the increasing prevalence of mobile phones, their forms and functions are also becoming more diverse, leading to various needs. For example, the use of theme wallpapers is particularly important on foldable phones. However, due to the unique characteristics of foldable phones, themes wallpapers that load and display on regular phones are not suitable for displaying on foldable phones. This necessitates preventing the theme wallpaper from appearing on the home screen after loading, or in other words, not activating the theme wallpaper. Currently, this functionality is not yet available. In other words, intelligent app launch is not currently possible. Summary of the Invention

[0003] This disclosure provides an application processing method, apparatus, and storage medium.

[0004] According to a first aspect of the present disclosure, an application processing method is provided, comprising:

[0005] Identify candidate applications that meet the filtering criteria for implicit startup events;

[0006] Based on the filtering rules corresponding to the currently detected triggering scenario, filter out target applications in the candidate applications that do not match the triggering scenario;

[0007] Launch the alternative application that has filtered out the target application.

[0008] Optionally, determining the candidate applications that meet the filtering criteria for implicit start events includes:

[0009] Based on the call to the first management service, obtain the application information list;

[0010] Based on the obtained application information list, candidate applications that meet the filtering conditions for implicit launch events are determined.

[0011] Optionally, obtaining the application information list based on the call to the first management service includes:

[0012] Obtain the filter tag corresponding to the implicit start event;

[0013] The filter tags are determined as parameters for the filtering method used to filter applications in the first management service;

[0014] Based on the parameters of the filtering method, an application information list is obtained.

[0015] Optionally, the method further includes:

[0016] Based on the event content of the implicit startup event, determine the corresponding filtering conditions for the implicit startup event.

[0017] Optionally, the method further includes:

[0018] Determine whether the launch entry point of the target application can be obtained on the display interface;

[0019] If the launch entry for the target application cannot be found on the display interface, the target application will be launched according to the second management service.

[0020] Optionally, launching the target application according to the second management service includes:

[0021] Obtain the identification information of the target application;

[0022] Based on the acquired identification information, the target application is launched under the invocation of the second management service; wherein, the identification information includes: package name and / or class name.

[0023] Optionally, filtering out target applications from the candidate applications that do not match the triggering scenario based on the filtering rules corresponding to the currently detected triggering scenario includes:

[0024] When the terminal device has a foldable screen and is in a desktop loading scenario, wallpaper applications that are not compatible with the display of the foldable screen are identified as target applications based on the filtering rules corresponding to the desktop loading scenario, and the wallpaper applications in the candidate applications are filtered out.

[0025] According to a second aspect of the present disclosure, an application processing apparatus is provided, comprising:

[0026] The determination module is used to determine candidate applications that meet the filtering criteria of the implicit start event;

[0027] The filtering module is used to filter out target applications in the candidate applications that do not match the triggering scenario based on the filtering rules corresponding to the currently detected triggering scenario.

[0028] The first startup module is used to launch the alternative application that has been filtered out from the target application.

[0029] Optionally, the determining module includes:

[0030] The `get` submodule is used to retrieve a list of application information based on a call to the first management service.

[0031] The determination submodule is used to determine candidate applications that meet the filtering conditions of implicit launch events based on the obtained application information list.

[0032] Optionally, the acquisition submodule includes:

[0033] The tag acquisition unit is used to acquire the filter tag corresponding to the implicit start event;

[0034] A parameter determination unit is used to determine the filter label as a parameter of the filtering method used for filtering applications in the first management service;

[0035] The list retrieval unit is used to retrieve an application information list based on the parameters of the filtering method.

[0036] Optionally, the device further includes:

[0037] The condition determination module is used to determine the corresponding filtering conditions for implicit startup events based on the event content of the implicit startup event.

[0038] Optionally, the device further includes:

[0039] The entry point determination module is used to determine whether the startup entry point of the target application can be obtained on the display interface;

[0040] The second startup module is used to start the target application according to the second management service if the startup entry of the target application cannot be obtained on the display interface.

[0041] Optionally, the second startup module includes:

[0042] The identifier acquisition submodule is used to acquire the identifier information of the target application;

[0043] The startup submodule is used to start the target application based on the acquired identification information and under the invocation of the second management service; wherein the identification information includes: package name and / or class name.

[0044] Optionally, the filtering module includes:

[0045] The scene determination submodule is used to determine wallpaper applications that are not compatible with the display of the foldable screen as target applications based on the filtering rules corresponding to the desktop loading scene when the terminal device screen is a foldable screen and is in a desktop loading scene, and to filter out the wallpaper applications in the candidate applications.

[0046] According to a third aspect of the present disclosure, an application processing apparatus is provided, comprising:

[0047] processor;

[0048] Memory used to store processor-executable instructions;

[0049] The processor is configured to, when executing executable instructions stored in the memory, implement the method described in any of the first aspects above.

[0050] According to a fourth aspect of the present disclosure, a non-transitory computer-readable storage medium is provided, wherein computer-executable instructions are stored therein, which, when executed by a processor, implement the steps of the method provided in any of the first aspects described above.

[0051] The technical solutions provided by the embodiments of this disclosure may include the following beneficial effects:

[0052] The application processing method provided in this disclosure first determines candidate applications that meet the filtering conditions for implicit launch events. Then, it filters out target applications that do not match the currently detected triggering scenario from these candidate applications. Thus, the target application is the one that is not intended to be launched implicitly. After filtering out the target application, it will no longer be visible in the corresponding triggering scenario, and the target application cannot be launched via implicit launch. Therefore, when certain applications are not desired to appear in certain scenarios, their implicit launch function can be disabled by filtering them, thereby achieving targeted application launch and improving the intelligence of application launch on terminal devices.

[0053] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description

[0054] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with the invention and, together with the description, serve to explain the principles of the invention.

[0055] Figure 1 This is a flowchart of an application processing method according to an exemplary embodiment. Figure 1 .

[0056] Figure 2 This is a flowchart of an application processing method according to an exemplary embodiment. Figure 2 .

[0057] Figure 3 This is a flowchart of an application processing method according to an exemplary embodiment. Figure 3 .

[0058] Figure 4 This is a schematic diagram of the structure of an application processing device according to an exemplary embodiment.

[0059] Figure 5 This is a block diagram illustrating an application processing apparatus according to an exemplary embodiment. Detailed Implementation

[0060] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numerals in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this disclosure. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this disclosure as detailed in the appended claims.

[0061] This disclosure provides an application processing method. Figure 1 This is a flowchart of an application processing method according to an exemplary embodiment. Figure 1 ,like Figure 1 As shown, the application processing method includes the following steps:

[0062] Step 101: Determine candidate applications that meet the filtering criteria for implicit startup events;

[0063] Step 102: Based on the filtering rules corresponding to the currently detected triggering scenario, filter out target applications in the candidate applications that do not match the triggering scenario;

[0064] Step 103: Activate the alternative application that has filtered out the target application.

[0065] It should be noted that this application processing method can be applied to any terminal device, such as a smartphone (or foldable phone), tablet, or wearable electronic device.

[0066] In this embodiment of the disclosure, the application can be launched either explicitly or implicitly.

[0067] Explicit startup is a startup method based on the package name and / or class name of the installed package. For example, when application A wants to launch application B, it must explicitly specify the package name and / or class name of application B. Specifically: the village chief says that villager Zhang San is in financial difficulty and can receive a poverty alleviation fund of 5000 yuan, specifying the specific name Zhang San; this is an example of explicit startup.

[0068] Implicit launch is a launch method based on filtering conditions (Actions). This means that applications with certain characteristics can be launched via Actions. The filtering condition is used to select applications, distinguishing between those that meet the filtering criteria and those that don't. For example, if application B has a filtering condition, application A can launch application B based on this filtering condition without specifying its package name and / or class name. Specifically, if the village chief says that all families with an annual income below 10,000 yuan can receive a 5,000 yuan poverty alleviation fund, this "annual income below 10,000 yuan" is the Action. Therefore, instead of specifying a particular villager, the filtering condition can be used to select eligible villagers.

[0069] In some scenarios, to facilitate batch application searching, implicit launch events are often triggered to find all eligible applications installed on the terminal device. For example, when a terminal device boots up, the desktop loads, which in turn loads the application icons, wallpapers, and themes displayed on the desktop. These desktop application icons, wallpapers, and themes are loaded in batches, implicitly launched based on the filter condition of "applications that can be loaded on the desktop." Therefore, "desktop loading" is an implicit launch event. In this implicit launch event, the filter condition is "applications that can be displayed on the desktop," and the candidate applications that meet the filter condition of the implicit launch event are: all applications installed on the terminal device that can be loaded on the desktop.

[0070] After an implicit launch event is triggered in these scenarios, if an application installed on the terminal device meets the filtering conditions of the implicit launch event, then the application meeting the filtering conditions becomes a candidate application. Here, a candidate application meeting the filtering conditions can be an application that is prepared to launch based on the implicit launch event.

[0071] Depending on the triggering scenario, and based on the characteristics exhibited by that scenario, unwanted applications may appear. If an unwanted application is found among the applications identified by the implicit launch event, it will cause inconvenience to the user. Therefore, it is necessary to disable the implicit launch function of the unwanted application.

[0072] Here, implicit launch events are events that require the application to be launched through filtering conditions (Action), or events that require the application to be found through implicit launch.

[0073] In some embodiments, implicit launch events include, but are not limited to, sharing events or desktop loading events. For example, a sharing event corresponds to an application with sharing functionality, so the corresponding filtering condition is: applications that can implement sharing functionality. The candidate applications determined in this way are all applications on the terminal device that can implement information sharing (such as WeChat, Weibo, and QQ). As another example, a desktop loading event corresponds to an application that can be loaded and displayed on the desktop. Therefore, the desktop loading event is also a type of implicit launch event, and the corresponding filtering condition is: applications that can be loaded and displayed on the desktop. The candidate applications determined in this way are: all applications on the terminal device that can be loaded and displayed on the desktop (such as wallpaper / theme applications, weather applications, etc.).

[0074] Since the application search is based on filtering criteria, there may be more than one application matching the filtering criteria in each implicit launch event; that is, multiple candidate applications may be selected. Therefore, the candidate applications matching the implicit launch event's filtering criteria can be determined based on the filter tags pre-set in the files used to define display functions in each application. For example, if application A defines filter tag a1 in its file defining display functions, and filter tag a1 indicates that application A can be displayed on the desktop after desktop loading, then application A will be among the candidate applications matching the filtering criteria determined in the desktop loading event. Details regarding the pre-set filter tags in each application will be explained later.

[0075] Furthermore, the determination of target applications that do not match the triggering scenario can be based on pre-defined filtering rules.

[0076] Here, although each application has a pre-set filter tag, which can determine the implicit launch event of each application, in actual application, depending on the current triggering scenario, one or more applications in the determined application scenario will not be launched. At this time, it is necessary to filter out one or more applications to meet the launch requirements that match the current triggering scenario.

[0077] In some embodiments, step 103, which filters out target applications from the candidate applications that do not match the triggering scenario based on the filtering rules corresponding to the currently detected triggering scenario, includes:

[0078] When the terminal device has a foldable screen and is in a desktop loading scenario, wallpaper applications that are not compatible with the display of the foldable screen are identified as target applications based on the filtering rules corresponding to the desktop loading scenario, and the wallpaper applications in the candidate applications are filtered out.

[0079] For foldable screen devices, existing wallpapers and themes may become inapplicable when the screen shape changes. If the triggering scenario is a foldable device with the screen folded, a filtering rule can be generated to ensure better display of applications on the loaded desktop. Based on this rule, wallpaper and theme applications can be filtered out from the candidate applications. Thus, when loading the desktop on a foldable device, the wallpaper and theme application is not loaded; instead, other applications from the candidate applications are loaded. This solves the problem of wallpaper and theme incompatibility on different screen shapes.

[0080] Here, the filtering rule corresponding to the desktop loading scenario when the screen is folded can be: filter out applications that are not compatible with the screen display when folded.

[0081] In other embodiments, for sharing events, when the triggering scenario is a sharing of a product purchase link, considering business partnerships or privacy concerns, some applications with sharing capabilities (such as WeChat) are not suitable for this scenario because they lack authorized access functionality. In this case, corresponding filtering rules can be generated, and based on these rules, the WeChat application can be filtered out from the candidate applications. Thus, when sharing a product purchase link on a terminal device, the WeChat entry point is not displayed on the sharing interface.

[0082] Therefore, the filtering rule corresponding to the sharing scenario of product purchase links can be: filter out applications that do not meet the permitted permissions.

[0083] Here, after determining the target application based on the filtering rules corresponding to each triggering scenario, it is necessary to filter out the target application. In some embodiments, filtering out the target application may involve deleting or blocking the target application from the candidate applications determined under the corresponding triggering scenario.

[0084] In some embodiments, the filtering conditions for each implicit startup event can be determined based on the event content of the implicit startup event. That is... Figure 2 This is a flowchart of an application processing method according to an exemplary embodiment. Figure 2 ,like Figure 2 As shown, prior to step 101, the method further includes:

[0085] Step 104: Determine the filtering conditions for the corresponding implicit startup event based on the event content of the implicit startup event.

[0086] Here, the event content of implicit launch events can be defined according to the scenario that triggers the implicit launch event. For example, the event content corresponding to the desktop loading event could be the display of application icons, wallpapers, and themes. Therefore, the filtering condition set for this content would be: applications that can be loaded on the desktop. Similarly, the event content corresponding to the sharing event could be the sharing of information. Therefore, the filtering condition set for this content would be: applications that can share information.

[0087] In some embodiments, when different triggering scenarios correspond to the same event content, the corresponding filtering conditions can be the same. For example, a photo sharing scenario can be triggered based on a chat scenario or a message browsing scenario. In both scenarios, photo sharing is to be performed, and therefore the same filtering condition can be applied: photo sharing can be achieved. Thus, the filtering conditions for implicitly initiated events can be determined based on the scenario content of the detected triggering scenario.

[0088] Here, different triggering scenarios may correspond to different event content or the same event content, but in either case, the corresponding filtering conditions are determined based on the specific event content.

[0089] The following specific examples illustrate the application processing methods of this disclosure:

[0090] For example, when a terminal device starts up, the desktop loads. After the desktop loads, application icons, wallpapers, and themes are displayed on the desktop. Here, during the desktop loading process, these application icons, wallpapers, and themes displayed on the desktop are batch-loaded through implicit startup, with the filtering condition being: applications that can be loaded on the desktop. The candidate applications determined by the filtering condition are all applications installed on the terminal device that can be loaded on the desktop. For example, applications whose icons can be displayed on the desktop, such as WeChat, QQ, or Weibo, as well as applications that can run directly on the desktop, such as wallpapers or themes. At this time, if the terminal device is detected to be a foldable screen, then after the desktop loads, it is not desired to display wallpapers or themes. Therefore, it is necessary to filter out wallpaper and theme applications from the candidate applications determined by the implicit startup event that meets the desktop loading criteria. In this case, during the desktop loading process, when loading is based on the filtering condition of "applications that can be displayed on the desktop," the wallpaper or theme cannot be displayed, while other applications will still be displayed normally.

[0091] As another example, suppose we want to implement the photo-sharing function on a terminal device. Under normal circumstances, when the share button is pressed, the interface will display the installed applications that can share photos, such as WeChat, QQ, or Weibo. However, if pressing the share button detects that the application containing the photo does not have an authorization relationship with the WeChat application, then WeChat should not be displayed on the sharing interface. Therefore, we can delete the WeChat application from the selected alternative applications (WeChat, QQ, or Weibo, etc.). This way, when sharing, we can only choose QQ or Weibo, etc. Here, the filtering condition is: applications that can share photos. The alternative applications determined by this filtering condition are WeChat, QQ, or Weibo, etc.

[0092] Thus, the application processing method provided in this embodiment, when it is desired that certain applications on a terminal device cannot be implicitly launched, filters out target applications that do not match the triggering scenario from the candidate applications. After filtering out the target application, it will no longer be visible in the triggering scenario, and the target application cannot be launched through implicit launch. In this way, when certain applications are not desired to appear in some scenarios, their implicit launch function can be disabled in those scenarios by filtering them, thereby achieving the purpose of targeted application launch and enriching the usage scenarios.

[0093] The following section provides a detailed explanation of how to determine the candidate applications corresponding to various implicit startup events:

[0094] In some embodiments, step 101, determining candidate applications that meet the filtering criteria for implicit start events, includes:

[0095] Step 1011: Obtain the application information list based on the call to the first management service;

[0096] Step 1012: Based on the obtained application information list, determine the candidate applications that meet the filtering conditions for implicit launch events.

[0097] Here, the first management service can be a service that handles functions such as application installation, uninstallation, and navigation between applications.

[0098] In some embodiments, the first management service may be: PackageManagerService (PMS).

[0099] Here, implicit startup utilizes a Product Management System (PMS) to filter applications to be launched. Specifically, after an implicit startup event is triggered in the specified scenario, the PMS is invoked, and an application information list is obtained based on the information returned by the PMS. This application information list includes application information of candidate applications that meet the filtering conditions of the implicit startup event. Thus, by subsequently reading this application information list, the candidate applications can be determined.

[0100] Here, we will explain in detail how to obtain the application information list in step 1011:

[0101] In some embodiments, step 1011, obtaining the application information list based on the call to the first management service, includes:

[0102] Obtain the filter tag corresponding to the implicit start event;

[0103] The filter tags are determined as parameters for the filtering method used to filter applications in the first management service;

[0104] Based on the parameters of the filtering method, an application information list is obtained.

[0105] Here, for the scenario where implicit startup is used by default to achieve batch application search, each implicit startup event will have a corresponding filter tag for ease of searching and to ensure search accuracy. For example, the filter tag corresponding to the desktop loading event is the desktop display tag; the filter tag corresponding to the sharing event is the information sharing tag.

[0106] Here, to facilitate the search, application-side filter tags are predefined in the files used to define the display in each application. These files can be AndroidManifest.xml files, where different filter tags can be defined in the main interface (Activity) of the AndroidManifest.xml file, enabling filtering based on these tags.

[0107] It should be noted that different applications may use more than one filter label to match different scenarios. For example, application A may define filter label a1 and filter label a2; filter label a1 is used to indicate that application A can be displayed on the desktop after it is loaded; filter label a2 is used to indicate that application A can share photos.

[0108] For example, filter tag a1 can be the Intent.CATEGORY_LAUNCHER tag. That is, when filter tag a1 is defined in application A, it can be implicitly displayed on the desktop upon launch. Filter tag a2 indicates that application A can share photos. That is, when filter tag a2 is defined in application A, application A can display a sharing interface for the user to select after detecting a touch share button. Therefore, when application A has filter tag a2, it means that application A can implement the photo sharing function.

[0109] Here, each implicit launch event also has a corresponding filter tag during matching. By matching the filter tag corresponding to the implicit launch event with the filter tag corresponding to the application, the application matching the implicit launch event can be found from all the applications installed on the terminal device. For example, the filter tag corresponding to the desktop load event is the desktop display tag. During matching, since the filter tag a1 in application A indicates that application A can be displayed on the desktop after desktop load, the desktop display tag in the desktop load event can match the filter tag a1 in application A. Based on the desktop display tag, application A can be found.

[0110] Since each application may correspond to more than one filter tag, in order to find the application that matches the corresponding implicit launch event, it is necessary to further set the parameters during the matching process, and find the corresponding candidate applications based on different parameters.

[0111] Here, based on different parameter settings for the first method of the first management service, an application information list can be obtained, and then corresponding candidate applications can be found. The first method includes parameters for filtering applications; based on different settings of these parameters, different applications can be filtered out.

[0112] In some embodiments, the first method may be the queryIntentActivitiesInternal method, which, when called, returns a list of application information: List <resolveinfo>.

[0113] The application information list is a list of information for all applications on the terminal device that meet the implicit launch event criteria. The application information list includes: ResolveInfo, the parsing information for applications with filter tags. The ResolveInfo includes interface information (ActivityInfo), which in turn includes the application package name information (PackageName). Thus, after obtaining the application information list, candidate applications that meet the implicit launch event filtering criteria can be determined based on the application package name information in the list.

[0114] For example, to filter out applications that can be loaded and displayed on the desktop, the parameter of the first method can be set to the filter tag corresponding to the desktop loading event. Based on the first method with the set parameter, it can then return a list of applications that can be displayed on the desktop. Specifically, during the desktop startup process, the application manager (PackageManager) uses the filter tag matching the desktop loading event as a parameter in the `queryIntentActivities` method to obtain the application information (AppInfo) corresponding to all applications with that filter tag. The AppInfo information includes the application's package name, class name, icon, and name. This sequentially arranged AppInfo information is the application displayed on the desktop.

[0115] It should be noted that the PackageManager is an abstract class containing several abstract methods. The PackageManager is used to manage application packages, and application information can be obtained through it. The `queryIntentActivities` method of PackageManager can be used to query all applications in the operating system that satisfy `ACTION_MAIN` and `CATEGORY_LAUNCHER`, retrieving information such as the application name, package name, or class name.

[0116] Taking the implicit launch event of desktop loading as an example, the matching can be as follows: using a loop algorithm, take out the package name from the application information list one by one in reverse order and compare it with the theme wallpaper application package name. If the filter tag corresponding to the implicit launch event matches the filter tag corresponding to the application, it means that the application meets the filter condition.

[0117] It should be noted that after determining the filter tag corresponding to the implicit launch event as a parameter of the filtering method used to filter applications in the first management service, the applications in the obtained application information list are all candidate applications that meet the filtering conditions. However, considering that in actual applications, based on different triggering scenarios, one or more applications may not be wanted to be launched, it is necessary to filter out these one or more applications to meet the launch requirements that match the current triggering scenario. This requires deleting the application information of the target application from the application information of the candidate applications in the application information list to achieve the filtering out of the target application.

[0118] As described above, the candidate applications identified by the sharing event are all applications on the terminal device capable of information sharing (such as WeChat, Weibo, and QQ). Therefore, the filter tag corresponding to the sharing event is the information sharing tag. This information sharing tag is used as a parameter in the filtering method for applications in the first management service. The resulting application information list will include application information for applications such as WeChat, Weibo, and QQ. However, if the specific triggering scenario is detected as a photo sharing scenario, and there is no authorization relationship between WeChat and the application containing the photo, then the WeChat application information will be removed from the application information list. This ensures that the application information list no longer contains information related to the WeChat application. Consequently, the entry point for the WeChat application will not be visible on the photo sharing interface.

[0119] Furthermore, when it is desired to launch the target application after steps 101 to 103 described above, this disclosure also provides the following embodiments:

[0120] In some embodiments, Figure 3 This is a flowchart of an application processing method according to an exemplary embodiment. Figure 3 ,like Figure 3 As shown, the method further includes:

[0121] Step 105: Determine whether the launch entry of the target application can be obtained on the display interface;

[0122] Step 106: When the launch entry of the target application cannot be obtained on the display interface, the target application is launched according to the second management service.

[0123] Here, the entry point for launching the target application can be in the form of an application icon. For example, in a desktop loading scenario, the application icon displayed on the desktop interface is the application's entry point; or, in an information sharing scenario, the application icon displayed on the sharing interface is the application's entry point.

[0124] Because the target application's installation package (Apk) exists in the operating system after the above filtering operations, but cannot be invoked by the currently detected triggering scenario, the target application can be started explicitly. Thus, for example, the target application can only be started explicitly and cannot be started implicitly.

[0125] To ensure the target application can only be launched explicitly and not implicitly, its implicit launch function in the current triggering scenario needs to be disabled. This means that even if the target application meets the filtering conditions for the implicit launch event corresponding to the current triggering scenario, it cannot be found and launched through these conditions. Therefore, explicit launch is the only option. Since the target application is filtered out from the selected candidate applications, its implicit launch function in the current triggering scenario is disabled. Consequently, there will be no launch entry point for the target application on the displayed interface triggered in the scenario. If it is confirmed that there is indeed no launch entry point for the target application on the displayed interface, and access to the target application is still desired, it can be launched using the second management service.

[0126] The second management service can be a service used to display the interface for launching and managing the application.

[0127] In some embodiments, the second management service may be an ActivityManagerService (AMS). AMS is primarily responsible for the startup, switching, and scheduling of components in the system, as well as the management and scheduling of application processes. When a process or component is started, the request is passed to AMS via a communication mechanism (Binder), and AMS then processes it uniformly. Here, when the application client on the terminal device initiates a request to start the application, the ActivityManagerService (AM) obtains the proxy object of AMS on the client, and then starts the application based on the obtained application identification information using the proxy object. Thus, even if the implicit startup function of the target application is disabled in this embodiment, the target application can still be invoked based on the explicit startup implemented by AMS, thereby providing a new invocation scheme and enriching the invocation scenarios.

[0128] In some embodiments, launching the target application based on AMS requires knowing the package name and / or class name of the target application, thus performing an explicit launch. Therefore, in step 105 above, launching the target application based on the second management service includes:

[0129] Obtain the identification information of the target application;

[0130] Based on the acquired identification information, the target application is launched under the invocation of the second management service.

[0131] Here, when it is necessary to launch a target application based on AMS, the target application can only be found and launched based on the obtained identification information.

[0132] In this embodiment of the disclosure, different applications have different identification information, and based on the obtained identification information, it is possible to determine which application is currently to be opened.

[0133] In some embodiments, the identification information includes a package name and / or a class name; each application has its own corresponding package name and class name. For example, the package name for a gallery application could be com.android.gallery3d, and the class name could be com.android.gallery3d.app.Gallery. As another example, the package name for a camera application could be com.android.hwcamera, and the class name could be com.android.hwcamera.Camera. Thus, when searching for an application, searching directly by its package name and / or class name can accurately locate the application.

[0134] In other embodiments, the identification information may further include an application icon, with different applications having different icons, thus allowing applications to be found based on their icons. This disclosure does not limit the identification information of applications.

[0135] It's important to note that directly searching for an application by its package name and / or class name (i.e., explicitly launching the application) requires knowing the application's package name and / or class name. While implicit launching can find all eligible applications installed on the device that meet the corresponding filtering criteria, explicit launching requires more knowledge of the package name and / or class name. Therefore, explicit launching has higher requirements for the user or caller. When an application is not intended to be displayed on the interface, filtering it out from the eligible applications prevents the user from seeing it. This allows for targeted operations by preventing applications that are inconvenient for the user to use from being displayed or launched.

[0136] For example, in some information sharing scenarios, when some applications have the function of sharing information, but due to business cooperation or inapplicability of information, it may be undesirable to display certain applications on the sharing interface, the implicit launch function of these applications during sharing can be disabled using the method disclosed herein, thereby achieving targeted sharing. Furthermore, since only the implicit launch function of these applications during sharing is disabled, while explicit launch is still possible, when the application is indeed needed, it can still be found based on its package name and / or class name, making the invocation more flexible.

[0137] Thus, the application processing method provided in this embodiment first determines candidate applications that meet the filtering conditions for implicit launch events, and then filters out target applications that do not match the triggering scenario from these candidate applications. In this way, the target application is the one that is not intended to be launched implicitly. After filtering out the target application, it will no longer be visible in the triggering scenario, and it cannot be launched via implicit launch. Therefore, when you want to launch the target application, you can only do so through explicit launch, which fulfills the requirement that the application is not displayed on the interface, but its corresponding functions can still be called by the system when needed, thus enriching the usage scenarios.

[0138] This disclosure also provides an application processing apparatus. Figure 4 This is a schematic diagram illustrating the structure of an application processing device according to an exemplary embodiment, such as... Figure 4 As shown, the application processing device 400 includes:

[0139] Module 401 is used to determine candidate applications that meet the filtering conditions of implicit startup events;

[0140] The filtering module 402 is used to filter out target applications in the candidate applications that do not match the triggering scenario based on the filtering rules corresponding to the currently detected triggering scenario.

[0141] The first startup module 403 is used to start the alternative application that has been filtered out from the target application.

[0142] In some embodiments, the determining module 401 includes:

[0143] The `get` submodule is used to retrieve a list of application information based on a call to the first management service.

[0144] The determination submodule is used to determine candidate applications that meet the filtering conditions of implicit launch events based on the obtained application information list.

[0145] In some embodiments, the acquisition submodule includes:

[0146] The tag acquisition unit is used to acquire the filter tag corresponding to the implicit start event;

[0147] A parameter determination unit is used to determine the filter label as a parameter of the filtering method used for filtering applications in the first management service;

[0148] The list retrieval unit is used to retrieve an application information list based on the parameters of the filtering method.

[0149] In some embodiments, the apparatus further includes:

[0150] The condition determination module is used to determine the corresponding filtering conditions for implicit startup events based on the event content of the implicit startup event.

[0151] In some embodiments, the apparatus further includes:

[0152] The entry point determination module is used to determine whether the startup entry point of the target application can be obtained on the display interface;

[0153] The second startup module is used to start the target application according to the second management service if the startup entry of the target application cannot be obtained on the display interface.

[0154] In some embodiments, the second startup module includes:

[0155] The identifier acquisition submodule is used to acquire the identifier information of the target application;

[0156] The startup submodule is used to start the target application based on the acquired identification information and under the invocation of the second management service; wherein the identification information includes: package name and / or class name.

[0157] In some embodiments, the filtering module further includes:

[0158] The scene determination submodule is used to determine wallpaper applications that are not compatible with the display of the foldable screen as target applications based on the filtering rules corresponding to the desktop loading scene when the terminal device screen is a foldable screen and is in a desktop loading scene, and to filter out the wallpaper applications in the candidate applications.

[0159] Regarding the apparatus in the above embodiments, the specific manner in which each module performs its operation has been described in detail in the embodiments related to the method, and will not be elaborated upon here.

[0160] Figure 5 This is a block diagram illustrating an application processing apparatus 1800 according to an exemplary embodiment. Exemplarily, apparatus 1800 may be a mobile phone, computer, digital broadcasting terminal, messaging device, game console, tablet device, medical device, fitness equipment, personal digital assistant, etc.

[0161] Reference Figure 5 The device 1800 may include one or more of the following components: a processing component 1802, a memory 1804, a power component 1806, a multimedia component 1808, an audio component 1810, an input / output (I / O) interface 1812, a sensor component 1814, and a communication component 1816.

[0162] Processing component 1802 typically controls the overall operation of device 1800, such as operations associated with display, telephone calls, data communication, camera operation, and recording operations. Processing component 1802 may include one or more processors 1820 to execute instructions to perform all or part of the steps of the methods described above. Furthermore, processing component 1802 may also include one or more modules to facilitate interaction between processing component 1802 and other components. For example, processing component 1802 may include a multimedia module to facilitate interaction between multimedia component 1808 and processing component 1802.

[0163] Memory 1804 is configured to store various types of data to support the operation of device 1800. Examples of this data include instructions for any application or method operating on device 1800, contact data, phonebook data, messages, images, videos, etc. Memory 1804 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk.

[0164] The power supply component 1806 provides power to the various components of the device 1800. The power supply component 1806 may include: a power management system, one or more power sources, and other components associated with generating, managing, and distributing power to the device 1800.

[0165] Multimedia component 1808 includes a screen that provides an output interface between the device 1800 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touchscreen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touches, swipes, and gestures on the touch panel. The touch sensors may sense not only the boundaries of the touch or swipe action but also the duration and pressure associated with the touch or swipe operation. In some embodiments, multimedia component 1808 includes a front-facing camera and / or a rear-facing camera. When the device 1800 is in an operating mode, such as a shooting mode or a video mode, the front-facing camera and / or the rear-facing camera may receive external multimedia data. Each front-facing camera and / or rear-facing camera may be a fixed optical lens system or have focal length and optical zoom capabilities.

[0166] Audio component 1810 is configured to output and / or input audio signals. Exemplarily, audio component 1810 includes a microphone (MIC) configured to receive external audio signals when device 1800 is in an operating mode, such as call mode, recording mode, and voice recognition mode. The received audio signals may be further stored in memory 1804 or transmitted via communication component 1816. In some embodiments, audio component 1810 also includes a speaker for outputting audio signals.

[0167] I / O interface 1812 provides an interface between processing component 1802 and peripheral interface modules, such as keyboards, click wheels, buttons, etc. These buttons may include, but are not limited to, home buttons, volume buttons, power buttons, and lock buttons.

[0168] Sensor assembly 1814 includes one or more sensors for providing status assessments of various aspects of device 1800. Exemplarily, sensor assembly 1814 can detect the on / off state of device 1800, the relative positioning of components, such as the display and keypad of device 1800, changes in position of device 1800 or a component of device 1800, the presence or absence of user contact with device 1800, orientation or acceleration / deceleration of device 1800, and temperature changes of device 1800. Sensor assembly 1814 may include a proximity sensor configured to detect the presence of nearby objects without any physical contact. Sensor assembly 1814 may also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, sensor assembly 1814 may also include an accelerometer, gyroscope, magnetometer, pressure sensor, or temperature sensor.

[0169] Communication component 1816 is configured to facilitate wired or wireless communication between device 1800 and other devices. Device 1800 can access wireless networks based on communication standards, such as WiFi, 2G, or 3G, or combinations thereof. In one exemplary embodiment, communication component 1816 receives broadcast signals or broadcast-related information from an external broadcast management system via a broadcast channel. In one exemplary embodiment, communication component 1816 further includes a near-field communication (NFC) module to facilitate short-range communication. Exemplarily, the NFC module may be implemented based on radio frequency identification (RFID) technology, Infrared Data Association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology, or other technologies.

[0170] In an exemplary embodiment, the apparatus 1800 may be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field-programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components to perform the methods described above.

[0171] In an exemplary embodiment, a non-transitory computer-readable storage medium including instructions is also provided, executively including a memory 1804 for instructions, which can be executed by a processor 1820 of the device 1800 to perform the above-described method. Exemplarily, the non-transitory computer-readable storage medium may be a ROM, random access memory (RAM), CD-ROM, magnetic tape, floppy disk, or optical data storage device, etc.

[0172] A non-transitory computer-readable storage medium, wherein instructions in the storage medium, when executed by a processor, enable the execution of the above-described method.

[0173] Other embodiments of this disclosure will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This disclosure is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of this disclosure are indicated by the appended claims.

[0174] It should be understood that this disclosure is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this disclosure is limited only by the appended claims.< / resolveinfo>

Claims

1. An application processing method, characterized in that, Applied to terminal devices, including: Based on the event content of the implicit startup event, determine the corresponding filtering conditions for the implicit startup event; Identify candidate applications that meet the filtering criteria for the implicit startup event; Based on the filtering rules corresponding to the currently detected triggering scenario, filter out target applications in the candidate applications that do not match the triggering scenario; Launch the alternative application that has filtered out the target application.

2. The method according to claim 1, characterized in that, The process of determining candidate applications that meet the filtering criteria for the implicit start event includes: Based on the call to the first management service, obtain the application information list; Based on the obtained application information list, candidate applications that meet the filtering conditions for implicit launch events are determined.

3. The method according to claim 2, characterized in that, The process of obtaining the application information list based on the call to the first management service includes: Obtain the filter tag corresponding to the implicit start event; The filter tags are determined as parameters for the filtering method used to filter applications in the first management service; Based on the parameters of the filtering method, an application information list is obtained.

4. The method according to claim 1, characterized in that, The method further includes: Determine whether the launch entry point of the target application can be obtained on the display interface; If the launch entry for the target application cannot be found on the display interface, the target application will be launched according to the second management service.

5. The method according to claim 4, characterized in that, The step of launching the target application according to the second management service includes: Obtain the identification information of the target application; Based on the acquired identification information, the target application is launched under the invocation of the second management service; wherein, the identification information includes: package name and / or class name.

6. The method according to claim 1, characterized in that, The filtering rules based on the currently detected triggering scenario, filtering out target applications from the candidate applications that do not match the triggering scenario, include: When the terminal device has a foldable screen and is in a desktop loading scenario, wallpaper applications that are not compatible with the display of the foldable screen are identified as target applications based on the filtering rules corresponding to the desktop loading scenario, and the wallpaper applications in the candidate applications are filtered out.

7. An application processing device, characterized in that, Applied to terminal devices, including: The condition determination module is used to determine the filtering conditions for the implicit startup event based on the event content of the implicit startup event. The determination module is used to determine candidate applications that meet the filtering criteria of the implicit start event; The filtering module is used to filter out target applications in the candidate applications that do not match the triggering scenario based on the filtering rules corresponding to the currently detected triggering scenario. The first startup module is used to launch the alternative application that has been filtered out from the target application.

8. The apparatus according to claim 7, characterized in that, The determining module includes: The `get` submodule is used to retrieve a list of application information based on a call to the first management service. The determination submodule is used to determine candidate applications that meet the filtering conditions of implicit launch events based on the obtained application information list.

9. The apparatus according to claim 8, characterized in that, The acquisition submodule includes: The tag acquisition unit is used to acquire the filter tag corresponding to the implicit start event; A parameter determination unit is used to determine the filter label as a parameter of the filtering method used for filtering applications in the first management service; The list retrieval unit is used to retrieve an application information list based on the parameters of the filtering method.

10. The apparatus according to claim 7, characterized in that, The device further includes: The entry point determination module is used to determine whether the startup entry point of the target application can be obtained on the display interface; The second startup module is used to start the target application according to the second management service if the startup entry of the target application cannot be obtained on the display interface.

11. The apparatus according to claim 10, characterized in that, The second startup module includes: The identifier acquisition submodule is used to acquire the identifier information of the target application; The startup submodule is used to start the target application based on the acquired identification information and under the invocation of the second management service; wherein the identification information includes: package name and / or class name.

12. The apparatus according to claim 7, characterized in that, The filtering module further includes: The scene determination submodule is used to determine wallpaper applications that are not compatible with the display of the foldable screen as target applications based on the filtering rules corresponding to the desktop loading scene when the terminal device screen is a foldable screen and is in a desktop loading scene, and to filter out the wallpaper applications in the candidate applications.

13. An application processing apparatus, characterized in that, include: A processor and a memory for storing executable instructions capable of running on the processor, wherein: When the processor is used to run the executable instructions, the executable instructions perform the steps of the method provided by any one of claims 1 to 6.

14. A non-transitory computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer-executable instructions, which, when executed by a processor, implement the steps of the method provided in any one of claims 1 to 6.

Citation Information

Patent Citations

  • Mobile terminal and processing method and device of wallpaper information of mobile terminal

    CN106850954A

  • Control method and device for starting applications in service manner, storage medium and terminal

    CN107944257A