Method for managing cross-operating-system application, and electronic device

By implementing a method of managing cross-operating system applications in electronic devices, the problem of difficulty in perceiving application status and updating default application settings in the prior art is solved, and the user experience consistency and management efficiency improvement when running the second operating system application on the first operating system is achieved.

WO2025044441A1PCT designated stage expired Publication Date: 2025-03-06HUAWEI TECH CO LTD

Patent Information

Application Number
PCT/CN2024/101188
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-08-31
Filing Date
2024-06-25
Publication Date
2025-03-06

AI Technical Summary

Technical Problem

The prior art has difficulty effectively managing cross-operating system applications, especially in sensing application status and updating default application settings, resulting in a decline in user experience.

Method used

By implementing a method of managing cross-operating system applications in an electronic device, the method includes obtaining application status information sent by the second operating system and updating the default application settings or optional application settings in the first operating system based on the information to ensure timeliness and consistency of application status.

Benefits of technology

It realizes that when running the second operating system application on the first operating system, maintains a consistent user experience, can timely perceive the status of cross-operating system applications, and improves user experience and system management efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024101188_06032025_PF_FP_ABST
    Figure CN2024101188_06032025_PF_FP_ABST
Patent Text Reader

Abstract

A method for managing a cross-operating-system application, and an electronic device. The method is applied to an electronic device, wherein the electronic device carries a first operating system and a second operating system, the second operating system runs on the basis of the first operating system, the first operating system is an Android operating system or a Harmony operating system, and the second operating system is different from the first operating system. The method comprises: acquiring first information sent by a second operating system, wherein the first information is used for indicating the state of a first application, the first application is an application in the second operating system, and the state of the first application comprises an installed state and an unloaded state; and on the basis of the first information, changing default application settings or optional application settings in the first operating system. By means of the method, the state of a cross-operating-system application can be sensed in a timely manner, and thus default application settings and optional application settings can be changed on the basis of the state of the cross-operating-system application, such that the user experience can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Method for managing cross-operating system applications and electronic device

[0001] This application claims priority to the Chinese patent application filed with the China Patent Office on August 29, 2023, with application number 202311101845.5 and application name “A method for managing cross-operating system applications and electronic device”, and the Chinese patent application filed with the China Patent Office on August 31, 2023, with application number 202311130728.1 and application name “A method for managing cross-operating system applications and electronic device”, the entire contents of which are incorporated by reference into this application. Technical Field

[0002] Embodiments of the present application relate to the field of electronic devices, and more specifically, to a method for managing cross-operating system applications and an electronic device. Background Art

[0003] Based on the characteristics of different operating systems, the capabilities supported by the same application on different operating system platforms may be different. In order to meet the needs of users, electronic devices need to run applications on different operating systems. At present, electronic devices can run multiple applications of other operating systems through proxy services, but when managing these multiple applications, the electronic device cannot distinguish between the multiple applications, and when the multiple applications are uninstalled by the user, the native system side of the electronic device cannot perceive that the multiple applications have been uninstalled, resulting in a decline in user experience. Therefore, how to manage cross-operating system applications has become an urgent problem to be solved.

[0004] Summary of the Invention

[0005] The present application provides a method for managing cross-operating system applications and an electronic device, which can timely perceive the status of cross-operating system applications. When running applications of a second operating system on a first operating system, the applications of the second operating system can maintain a consistent experience with the native applications of the first operating system in application selection and default application setting scenarios, thereby improving the user experience.

[0006] In a first aspect, a method for managing cross-operating system applications is provided, which is applied to an electronic device, which is equipped with a first operating system and a second operating system, wherein the second operating system runs based on the first operating system, the first operating system is an Android operating system or a Harmony operating system, and the second operating system is different from the first operating system. The method includes: obtaining first information sent by the second operating system, the first information is used to indicate the status of the first application, the first application is an application in the second operating system, and the status of the first application includes an installed state and an uninstalled state; changing the default application settings or optional application settings in the first operating system according to the first information.

[0007] In an embodiment of the present application, when the state of the first application in the second operating system changes, a first message can be sent to indicate the state of the first application. After obtaining the first information, the electronic device can change the corresponding default application settings or optional application settings, thereby ensuring timeliness, avoiding the problem of not being able to open files, and improving the user experience.

[0008] In combination with the first aspect, in certain implementations of the first aspect, before obtaining the first information, the first application is the default application or optional application of the first file type, and the first information is used to indicate that the first application has been uninstalled. Changing the default application settings or optional application settings in the first operating system based on the first information includes: changing the default application settings or optional application settings based on the first information so that the first application is no longer the default application or optional application of the first file type.

[0009] In an embodiment of the present application, when the first application in the second operating system is uninstalled, a first message can be sent to indicate that the first application has been uninstalled. After obtaining the first message, the electronic device can change the corresponding default application settings or optional application settings, thereby ensuring timeliness, avoiding the problem of not being able to open files, and improving the user experience.

[0010] In combination with the first aspect, in certain implementations of the first aspect, the first application corresponds to a first component in a proxy application APK, and the proxy application is used to proxy the application in the second operating system. The default application settings or optional application settings are changed based on the first information, including: disabling the first component based on the first information.

[0011] In combination with the first aspect, in some implementations of the first aspect, the first component includes an activity of the Android operating system.

[0012] In an embodiment of the present application, the electronic device may first pre-register a first component in the application selector, and the first component corresponds to the first application. When the first application running in the container is uninstalled, the second operating system may send information to notify that the first application has been uninstalled. After the electronic device determines that the first application has been uninstalled, it may disable the first component. In an embodiment of the present application, a path from the second operating system in the container to the first operating system side is opened up, so that the first operating system side can timely perceive the uninstallation of the second operating system's application, and can better manage the second operating system's application, which helps to improve the user experience. In addition, in the implementation of the present application, a correspondence between the application and the component of the second operating system is established. Since the name of each component is different, the first operating system can distinguish between different second operating system applications.

[0013] In combination with the first aspect, in some implementations of the first aspect, the first application corresponds to a first proxy application, which is only used to run the first application on behalf of the first application. Changing the default application settings or optional application settings based on the first information includes: uninstalling the first proxy application based on the first information.

[0014] In an embodiment of the present application, when the first application running in the container is uninstalled, the second operating system can send information to notify that the first application has been uninstalled. The first application corresponds to a first proxy APK, and the first proxy APK is only used to run the first application on behalf of the first application. Therefore, the electronic device can uninstall the first proxy APK, so that the first application is no longer the default application of the first file type. In an embodiment of the present application, the path from the second operating system in the container to the first operating system side is opened up, so that the first operating system side can timely perceive the uninstallation of the second operating system's application, and can better manage the second operating system's application, which helps to improve the user experience. In addition, each second operating system application can correspond to a proxy APK, so that when running multiple second operating system applications, the first operating system can distinguish the second operating system's applications by distinguishing the proxy APKs.

[0015] When installing multiple applications of the second operating system on the first operating system, the file types supported by different applications are registered separately, and the life cycles of the registered entities and the applications of the second operating system are managed synchronously. This allows the system's default applications and application selector to be updated synchronously when the applications of the second operating system are installed or uninstalled, thereby improving the user experience.

[0016] In combination with the first aspect, in certain implementations of the first aspect, before obtaining the first information, the first application is the default application for the first file type. After changing the default application setting based on the first information, the method also includes: setting the second application as the default application for the first file type.

[0017] In an embodiment of the present application, a first application is the default application for a first file type. After the first application is uninstalled, the electronic device may determine that a second application is the default application for the first file type. When the electronic device detects a user opening a file of the first file type, the electronic device may open the file using the second application, thereby ensuring smooth file opening without the user having to perform additional settings.

[0018] In combination with the first aspect, in certain implementations of the first aspect, before obtaining the first information, the first application is the default application for the first file type. After changing the default application setting based on the first information, the method further includes: in response to the user's operation of opening the first file, displaying a first application selection interface, wherein the file type of the first file is the first file type, the first application selection interface includes a first control and a second application icon, the second application icon is associated with the second application, and the first control corresponds to setting a default application function; in response to the user's operation of selecting the second application icon, marking the second application icon; in response to the user's operation of clicking the first control, setting the second application as the default application for the first file type and opening the first file through the second application.

[0019] In an embodiment of the present application, the first application is the default application for the first file type. After the first application is uninstalled, when the electronic device detects a user operation to open an application of the first file type, it can display an application selection interface in response to the operation. The application selection interface includes an icon that can include an application that can open the first file type. The electronic device can re-determine a new default application for the first file type based on the user's operation.

[0020] In combination with the first aspect, in certain implementations of the first aspect, the first application has a corresponding relationship with the first file type through a first component of the proxy application. Before obtaining the first information, the first component is in a disabled state. The first information is used to indicate that the first application has been installed. Changing the default application settings or optional application settings in the first operating system based on the first information includes: enabling the first component based on the first information.

[0021] In an embodiment of the present application, the proxy APK may first pre-register at least one component in the application selector, wherein the first component corresponds to the first application. After the second operating system running in the container installs the application of the second operating system, the second operating system may send information to notify the second operating system that the application installation is complete. After the electronic device determines that the application of the second operating system is installed, it may enable the first component to make the first application the default application or optional application of the first file type. In an embodiment of the present application, the path from the second operating system in the container to the first operating system side is opened up, so that the first operating system side can perceive the installation of the application of the second operating system in a timely manner, and can better manage the application of the second operating system, which helps to improve the user experience. In addition, in the implementation of the present application, a correspondence between the application of the second operating system and the component is established. Since the name of each component is different, the first operating system can distinguish between different applications of the second operating system.

[0022] In combination with the first aspect, in certain implementations of the first aspect, changing the default application settings or optional application settings in the first operating system based on the first information includes: obtaining application information of the first application; converting the application information of the first application into first application information of the first operating system; determining a first proxy application based on the first application information of the first operating system, and the first proxy application is only used to proxy the running of the first application; registering the first application information of the first operating system to the application selector through the first proxy application to change the default application settings or the optional application settings.

[0023] In an embodiment of the present application, after the first application is successfully installed, the application information of the first application can be converted into the first application information of the first operating system, and the converted first application information of the first operating system can be associated with the first proxy APK, that is, the first application alone corresponds to the first proxy APK. The electronic device registers the application information to the application selector through the proxy APK, so that the application of the second operating system becomes the default application or optional application of the first file type. In an embodiment of the present application, the path from the second operating system in the container to the first operating system side is opened, so that the installation of the application of the second operating system can be perceived in time on the first operating system side, and the application of the second operating system can be better managed, which helps to improve the user experience. In addition, each application of the second operating system can correspond to a proxy APK, so that when running multiple applications of the second operating system, the first operating system can distinguish the applications of the second operating system by distinguishing the proxy APKs.

[0024] In combination with the first aspect, in some implementations of the first aspect, the first application information includes one or more of the following: package name, application version, icon information, application description, and permissions.

[0025] In combination with the first aspect, in some implementations of the first aspect, the first operating system is the Android operating system or the Hongmeng operating system, and the second operating system is the Linux operating system or the Windows operating system.

[0026] In combination with the first aspect, in certain implementations of the first aspect, before obtaining the first information, the first application is the default application for the first file type, and the method also includes: updating the default application settings interface so that the default application settings interface no longer includes the icon or information of the first application.

[0027] In combination with the first aspect, in certain implementations of the first aspect, before obtaining the first information, the first application is an optional application of the first file type, and the method also includes: updating the optional application settings; in response to the user's operation of opening the first file, the file type of the first file is the first file type, and displaying an application selection interface, wherein the application selection interface no longer includes the icon or information of the first application.

[0028] In combination with the first aspect, in some implementations of the first aspect, the method further includes: updating a default application settings interface so that the default application settings interface includes information or an icon of the first application.

[0029] In combination with the first aspect, in certain implementations of the first aspect, the method further includes: updating the optional application settings; in response to the user opening the first file, the file type of the first file is the first file type, displaying an application selection interface, wherein the application selection interface adds an icon or information of the first application.

[0030] In combination with the first aspect, in some implementations of the first aspect, the first operating system includes a multi-application management module, a multi-component management module, an application selector, and a package management service PMS; the second operating system includes an application management module; obtaining the first information sent by the second operating system includes: the multi-application management module obtains the first information from the application management module; changing the default application settings or optional application settings in the first operating system based on the first information includes: the multi-application management module determines that the first application has been uninstalled based on the first information; the application management module communicates with the multi-component management module so that the multi-component management module determines that the first component is in the disabled state; the package management service receives second information sent by the multi-component management module through a customized interface, the second information being used to indicate that the first component is in the disabled state; the package management service disables the first component based on the second information so that the application selector updates the default application settings or the optional application settings.

[0031] It should be noted that the multi-application management module, multi-component management module, application selector, package management service and application management module are only a logical function division. In actual implementation, there may be other division methods, and the above modules may also have other naming methods.

[0032] In combination with the first aspect, in some implementations of the first aspect, the first operating system includes a multi-application management module, an application selector, and a package management service PMS; the second operating system includes an application management module; obtaining the first information sent by the second operating system includes: the multi-application management module obtains the first information from the application management module; changing the default application settings or optional application settings in the first operating system based on the first information includes: the package management service receives the second information sent by the multi-component management module through a customized interface, the second information is used to instruct the uninstallation of the first proxy application; the package management service uninstalls the first proxy application based on the second information, so that the application selector updates the default application settings or the optional application settings.

[0033] It should be noted that the multi-application management module, application selector, package management service, and application management module are merely a logical functional division. In actual implementation, there may be other division methods, and the above modules may also have other naming methods.

[0034] In combination with the first aspect, in some implementations of the first aspect, the first operating system includes a multi-application management module, a multi-component management module, an application selector, and a package management service PMS; the second operating system includes an application management module; obtaining the first information sent by the second operating system includes: the multi-application management module obtains the first information from the application management module; changing the default application settings or optional application settings in the first operating system based on the first information includes: the application management module communicates with the multi-component management module so that the multi-component management module determines that the first component is in an enabled state; the package management service receives second information sent by the multi-component management module through a customized interface, the second information being used to indicate that the first component is in the enabled state; the package management service starts the first component based on the second information so that the application selector updates the default application settings or the optional application settings.

[0035] In combination with the first aspect, in some implementations of the first aspect, the first operating system includes a multi-application management module, an application selector, and a package management service PMS; the second operating system includes an application management module; obtaining the first information sent by the second operating system includes: the multi-application management module obtaining the first information from the application management module; changing the default application settings or optional application settings in the first operating system based on the first information includes: the multi-application management module obtaining application information of the first application; the multi-application management module converting the application information of the first application into application information of the first proxy application; the first proxy application registers the application information of the first proxy application with the application selector, so that the application selector updates the default information settings or optional application settings.

[0036] In a second aspect, an electronic device is provided, comprising: one or more processors; one or more memories; the one or more memories storing one or more computer programs, the one or more computer programs comprising instructions, which, when executed by the one or more processors, enable the electronic device to execute the first aspect or any possible implementation of the first aspect.

[0037] In a third aspect, a computer-readable storage medium is provided, which includes a computer program or instructions. When the computer program or instructions are run on a computer, the first aspect and any possible implementation method of the first aspect are executed.

[0038] In a fourth aspect, a computer program product is provided, which includes a computer program or instructions. When the computer program or instructions are run on a computer, the first aspect and any possible implementation method of the first aspect are executed.

[0039] In a fifth aspect, a computer program is provided, which, when executed on a computer, enables the method in the first aspect and any possible implementation thereof to be executed.

[0040] In the sixth aspect, an electronic device is provided, which includes modules / units for executing the above aspects or any possible design method of the above aspects; these modules / units can be implemented through hardware, or corresponding software implementations can be executed through hardware.

[0041] In a seventh aspect, a computer program product is provided. When the computer program product is run on an electronic device, the electronic device executes the method in the first aspect and any possible implementation thereof.

[0042] Among them, for the beneficial effects of the second to seventh aspects, please refer to the beneficial effects of the first aspect and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS

[0043] FIG1 is a schematic structural diagram of an electronic device provided in an embodiment of the present application.

[0044] FIG2 shows a schematic diagram of a PC application engine fusion item.

[0045] FIG3 is a schematic diagram of the software system architecture of the electronic device provided in an embodiment of the present application.

[0046] FIG4 is a set of GUIs provided in an embodiment of the present application.

[0047] FIG5 is another set of GUIs provided in an embodiment of the present application.

[0048] FIG6 is a schematic flow chart of the current process of proxying APK to install Linux applications, register default applications and application selectors, and uninstall Linux applications.

[0049] FIG7 is a schematic flowchart of a method for managing cross-operating system applications provided in an embodiment of the present application.

[0050] FIG8 is a schematic flow chart of registering Linux applications by a multi-application management module provided in an embodiment of the present application.

[0051] FIG9 is a schematic diagram of another software system architecture of an electronic device provided in an embodiment of the present application.

[0052] FIG10 is a schematic flowchart of a method for managing cross-operating system applications provided in an embodiment of the present application.

[0053] FIG11 is a schematic flowchart of a method for managing cross-operating system applications provided in an embodiment of the present application. DETAILED DESCRIPTION

[0054] The technical solutions in the embodiments of the present application will be described below with reference to the accompanying drawings.

[0055] The terms used in the following embodiments are only for the purpose of describing specific embodiments and are not intended to limit the present application. As used in the specification of this application and the appended claims, the singular expressions "a", "an", "said", "above", "the" and "this" are intended to also include expressions such as "one or more", unless there is a clear contrary indication in the context. It should also be understood that in the following embodiments of the present application, "at least one", "one or more" refer to one, two or more. The term "and / or" is used to describe the association relationship of associated objects, indicating that three relationships can exist; for example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone, where A and B can be singular or plural. The character " / " generally indicates that the previous and subsequent associated objects are in an "or" relationship.

[0056] References to "one embodiment" or "some embodiments" in this specification mean that a particular feature, structure, or characteristic described in conjunction with that embodiment is included in one or more embodiments of the present application. Thus, phrases such as "in one embodiment," "in some embodiments," "in other embodiments," and "in yet other embodiments" appearing in various places in this specification do not necessarily refer to the same embodiment, but rather mean "one or more but not all embodiments," unless otherwise specifically emphasized. The terms "including," "comprising," "having," and variations thereof mean "including but not limited to," unless otherwise specifically emphasized.

[0057] The following describes an electronic device, a user interface for such an electronic device, and embodiments for using such an electronic device. In some embodiments, the electronic device may be a portable electronic device that also includes other functions such as a personal digital assistant and / or a music player, such as a mobile phone, a tablet computer, a wearable electronic device with wireless communication functions (such as a smart watch), etc. Exemplary embodiments of portable electronic devices include but are not limited to devices equipped with Or a portable electronic device with other operating systems. The portable electronic device may also be other portable electronic devices, such as a laptop computer. It should also be understood that in some other embodiments, the electronic device may not be a portable electronic device, but a desktop computer.

[0058] 1 shows a schematic structural diagram of an electronic device 100. The electronic device 100 may include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, an earphone interface 170D, a sensor module 180, a button 190, a motor 191, an indicator 192, a camera 193, a display 194, and a subscriber identification module (SIM) card interface 195. The sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, an air pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, a proximity light sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, etc.

[0059] It should be understood that the structures illustrated in the embodiments of the present application do not constitute a specific limitation on the electronic device 100. In other embodiments of the present application, the electronic device 100 may include more or fewer components than shown, or may combine or separate certain components, or arrange the components differently. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.

[0060] The processor 110 may include one or more processing units. For example, the processor 110 may include an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a memory, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU). The different processing units may be independent devices or integrated into one or more processors.

[0061] The controller may be the nerve center and command center of the electronic device 100. The controller may generate an operation control signal according to the instruction operation code and the timing signal to complete the control of fetching and executing instructions.

[0062] Processor 110 may also include a memory for storing instructions and data. In some embodiments, the memory in processor 110 is a cache memory. This memory can store instructions or data that have just been used or are being recycled by processor 110. If processor 110 needs to use the same instruction or data again, it can directly access the memory. This avoids duplicate accesses, reduces processor 110 latency, and thus improves system efficiency.

[0063] In some embodiments, the processor 110 may include one or more interfaces. The interfaces may include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (SIM) interface, and / or a universal serial bus (USB) interface.

[0064] The wireless communication function of the electronic device 100 can be implemented through the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, the modem processor and the baseband processor.

[0065] Display screen 194 is used to display images, videos, and the like. Display screen 194 includes a display panel. The display panel can be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), a MiniLED, a MicroLED, a Micro-oLed, or a quantum dot light-emitting diode (QLED). In some embodiments, electronic device 100 may include one or N display screens 194, where N is a positive integer greater than one.

[0066] The external memory interface 120 can be used to connect an external memory card, such as a Micro SD card, to expand the storage capacity of the electronic device 100. The external memory card communicates with the processor 110 via the external memory interface 120 to implement data storage functions. For example, files such as music and videos can be stored on the external memory card.

[0067] The internal memory 121 can be used to store computer executable program codes, which include instructions. The processor 110 executes various functional applications and data processing of the electronic device 100 by running the instructions stored in the internal memory 121. The internal memory 121 may include a program storage area and a data storage area. Among them, the program storage area can store an operating system, an application required for at least one function (such as a sound playback function, an image playback function, etc.), etc. The data storage area can store data created during the use of the electronic device 100 (such as audio data, a phone book, etc.), etc. In addition, the internal memory 121 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, a universal flash storage (UFS), etc.

[0068] Based on the characteristics of different operating systems, the capabilities supported by the same application on different operating system platforms may be different. In order to meet the needs of users, electronic devices need to run applications on different operating systems. For example, the same word processing application includes an Android version and a Linux version. The Linux version of the word processing application can provide richer functions. In order to meet the needs of users using the Linux version of the word processing application on an Android platform computer, the Android platform computer needs to run the Linux version of the word processing application. Currently, electronic devices whose native systems are Android operating system or Harmony operating system can run applications of other operating systems through proxy services.

[0069] Before introducing the software system architecture of the electronic device, several concepts involved in the embodiments of the present application are first explained.

[0070] Default application: The operation of a task can be performed by a specific application. For example, the default application for PDF documents is application #1. When the electronic device detects the user's operation to open the PDF document, in response to the operation, the electronic device can launch application #1 to open the PDF document.

[0071] It is understood that the default application can be changed. For example, the original default application for PDF documents is application #1, and the electronic device can change the default application for PDF documents from application #1 to application #2 in response to a user operation.

[0072] Selectable Applications: Certain tasks can be performed by multiple applications. For example, the selectable applications for a PDF document are Application #1 and Application #2. When the electronic device detects a user opening a PDF document, it may display an application selection interface in response to the user opening operation. This application selection interface includes icons for Application #1 and Application #2. The electronic device then determines whether to open the PDF document with Application #1 or Application #2 based on the user's operation.

[0073] Activity: It is a basic component of the Android operating system and an interface for interacting with the user. Activity is one of the basic units of the user interface. Generally speaking, an activity represents an interface for interacting with the user. An activity can include user interface (UI) elements (such as controls, text information, icons, etc.). In the Android operating system, you can control the display of UI elements and the ability to register activities by disabling or enabling activities. When using an activity, you need to first define the activity layout, then instantiate the activity and associate it with the layout, and then register events in the activity. When the user triggers these events, the application can respond accordingly. When an activity is created, it will be stored in the stack.

[0074] It is understandable that other operating systems may also include components similar to the activity function in the Android operating system, and the components may use other names.

[0075] PC Application Engine: Based on the feature of running Linux on Harmony OS, users can use Linux applications on electronic devices equipped with Harmony OS to improve productivity. The PC Application Engine focuses on the integrated experience, and the icons of Linux applications and Android applications are displayed in the same way. Figure 2 shows a schematic diagram of the integration items provided by the PC Application Engine. As shown in (a) in Figure 2, the package name format, permissions and icons of Linux applications and Android applications can be integrated through the PC Application Engine. For some Linux applications, the PC Application Engine can also integrate the default opening method and application selector. When the electronic device installs the Linux application, it can be displayed in the default application setting interface 201 shown in (b) in Figure 2 and the application selection interface 202 shown in (c) in Figure 2. In some cases, after the electronic device installs the Linux application, the name displayed in the default application setting interface 201 can be the name of the Linux application or the PC application engine.

[0076] However, the package management methods of Linux applications differ significantly from those of native Android applications, as shown in the following aspects:

[0077] 1. Linux applications are currently implemented through proxy applications (APK). The Android operating system uses APK as the granularity for default applications and application selectors. When running multiple Linux applications, it is impossible to distinguish different Linux applications.

[0078] 2. When Linux applications are uninstalled, the Android operating system is not aware of it. As a result, application information registered by the proxy APK remains after uninstallation, causing the corresponding file type to fail to open.

[0079] As shown in (d) in Figure 2, the default application for Word documents, Excel spreadsheets and PowerPoint presentations is the PC application engine (such as the Linux version of WPS Office). After uninstalling the Linux version of WPS Office, the default application setting interface 201 of the electronic device will still display that the default application for PDF documents and Excel spreadsheets is the PC application engine, which fails to be updated in time.

[0080] As shown in (e) in Figure 2, the PC application engine (such as the Linux version of WPS Office) can be an optional application for opening word documents. When the user opens a PDF document, the application icon 203 of WPS Office will still be displayed in the application selection interface 202 and cannot be updated in time.

[0081] It should be noted that for the description of the causes of the above problems, please refer to the description of FIG6 , which will not be expanded here.

[0082] The following describes the software system architecture of an electronic device using an Android system and running Linux through a container or a virtual machine as an example.

[0083] Figure 3 shows a schematic diagram of the software system architecture of an electronic device provided in an embodiment of the present application, wherein the first operating system of the electronic device is an Android operating system and the second operating system is a Linux operating system. As shown in Figure 3, the Android operating system and the Linux operating system use the Linux kernel. The Android operating system may also include an application layer and an application framework layer. The Linux operating system may include a Linux application management module, Linux applications, an X server (Xserver), and window services.

[0084] The Android operating system's application framework layer provides an application programming interface (API) and programming framework for applications in the application layer. It can include an input manager service (IMS), an activity manager service (AMS), a window manager service (WMS), a package manager service (PMS), and an application selector. The IMS manages input operations detected by the electronic device, the AMS manages the activities of each application, the WMS manages the windows of each application, and the PMS manages package information, including application installation, uninstallation, and updates, as well as parsing AndroidManifest.xml. The application selector manages selectable applications for opening a certain file type. For example, the application selector can determine that the selectable applications for opening a .doc file are Application #1 and Application #2, and the selectable applications for opening a .rar file are Application #3 and Application #4.

[0085] In some embodiments, the application selector is also used to manage the default application for a certain file type. For example, the application selector can determine that the default application for opening .doc files is application #1, and the default application for opening .rar files is application #3. In other words, when the electronic device detects the user opening a .doc file, it can directly launch application #1.

[0086] Alternatively, in other embodiments, other modules may also manage the default application for a certain file type.

[0087] It should be noted that the Android operating system of the electronic device may also include a hardware abstraction layer and a system runtime library, which are not shown in Figure 3. The system runtime library may include: an Android runtime library, which may include a core library and a virtual machine. The Android runtime library is responsible for scheduling and management of the Android operating system. The system runtime library may also include: a C library or a C++ library. The application layer and the application framework layer run in the virtual machine. The virtual machine executes the Java files of the application layer and the application framework layer as binary files. The virtual machine is used to perform functions such as object lifecycle management, stack management, thread management, security and exception management, and garbage collection. The hardware abstraction layer may include various sensors, such as the various sensors introduced in Figure 1.

[0088] When an electronic device runs a Linux application across systems, it can open a proxy Android application package (APK) at the application layer in the Android operating system. The Android system interacts with the Linux operating system through the proxy APK and displays the application corresponding to the proxy APK running in the Linux operating system.

[0089] The proxy APK can also be called a shell application or shell APK. It is mainly responsible for creating the side window of the Android operating system, displaying content, and capturing keyboard and mouse events.

[0090] The proxy APK has a communication channel with the Linux operating system, allowing it to transmit information to and receive information from the Linux operating system. For example, the proxy APK can send startup information to the Linux operating system to launch applications located on the Linux operating system, detect input events, and receive window display information (such as refreshing the displayed interface) or window management information (such as adjusting the display size or position) from the Linux operating system.

[0091] The proxy APK can include a main activity and an app activity. The main activity is the main program of the proxy APK, used to launch the proxy APK. The app activity can be the activity corresponding to the application running in the Linux operating system. For example, after the Linux operating system launches the application based on the proxy APK, the proxy APK can create an app activity corresponding to the application in the proxy APK based on the information sent by the Linux operating system.

[0092] The proxy APK can also register application information of the Linux application to associate the Linux application with at least one file type. Associating the Linux application with at least one file type can be understood as making the Linux application the default application for opening files of the at least one file type, or making the Linux application an optional application for opening files of the at least one file type.

[0093] For example, the Linux operating system includes a Linux application #1, and the proxy APK may register application information of the Linux application #1 to make the Linux application #1 a default application for opening PDF files.

[0094] FIG4 shows a set of graphical user interfaces (GUIs) provided in an embodiment of the present application.

[0095] As shown in FIG4 , the electronic device displays an interface 401 , which is a default application setting interface. After the electronic device registers Linux application #1 as the default application for PDF files, the electronic device can display the corresponding default application settings on the interface 401 .

[0096] When the electronic device detects the user opening the file #1, which is a PDF file, the electronic device can respond to the operation by starting the proxy APK and obtaining the interface of the Linux application #1 through the proxy APK to display the content of the file #1.

[0097] For another example, the Linux operating system includes Linux application #1. The proxy APK can register Linux application #1 with the application selector corresponding to a PDF file. When the electronic device detects that the user has opened file #1, which is a PDF file, the electronic device can display an application selection interface that includes an icon for Linux application #1, as described below with reference to FIG5 .

[0098] FIG5 shows another set of GUIs provided by an embodiment of the present application.

[0099] As shown in FIG5 (a), the electronic device displays an interface 501, which includes a file 502, which is a PDF file. The electronic device detects that the user clicks on the file 502, and in response to this operation, it may display a GUI as shown in FIG5 (b).

[0100] As shown in FIG5(b), in response to a user clicking on file 502, the electronic device may display an application selection interface 503, which includes an icon 504 corresponding to Linux application #1. The electronic device detects the user selecting icon 504 and, in response to the selection, may display a GUI as shown in FIG5(c).

[0101] As shown in FIG5(c), in response to a user selecting icon 504, the electronic device may highlight icon 504. When the electronic device detects a user clicking control 505, it may launch the proxy APK in response to this action and obtain the interface of Linux application #1 through the proxy APK to display the contents of file 502. When the electronic device detects a user clicking control 506, it may launch the proxy APK in response to this action and obtain the interface of Linux application #1 through the proxy APK to display the contents of file 502. Furthermore, the proxy APK may be used to register Linux application #1 as the default application for PDF files.

[0102] 6 , a schematic flow chart of the current process of using a proxy APK to install a Linux application, register a default application and an application selector, and uninstall a Linux application is described below.

[0103] As shown in FIG6 , the method includes:

[0104] S601, the proxy APK obtains the installation package of Linux application #1.

[0105] For example, the proxy APK can be obtained through an application store or other channels.

[0106] S602: The proxy APK sends the installation package of Linux application #1 to the Linux application management module.

[0107] Correspondingly, the Linux application management module receives the installation package of Linux application #1 sent by the proxy APK.

[0108] S603: The Linux application management module installs Linux application #1.

[0109] The Linux application management module receives the Linux application and can install the Linux application #1.

[0110] S604, the proxy APK registers the Linux application #1 to the application selector.

[0111] The proxy APK may register Linux application #1 with the application selector to make Linux application #1 a default application for file type #1, or make Linux application #1 an optional application corresponding to file type #1.

[0112] S605, the proxy APK sends instruction information #1 to the Linux application management module.

[0113] Correspondingly, the Linux application management module receives the instruction information #1 sent by the proxy APK, where the instruction information #1 is used to instruct to uninstall the Linux application #1.

[0114] S606: The Linux application management module uninstalls the Linux application #1 according to the instruction information #1.

[0115] In summary, electronic devices manage multiple Linux applications through a single proxy APK. However, the Android operating system uses APK granularity for registering default applications and managing application selectors. When multiple Linux applications are present, the Android operating system cannot distinguish between them. Furthermore, after a Linux application is uninstalled, the Android operating system currently cannot detect it, resulting in residual application information registered with the proxy APK. For example, the GUIs shown in Figures 4 and 5 show that after Linux application #1 is uninstalled, information about Linux application #1 remains on screen 401 and the application selection screen 503, causing PDF files to fail to open, reducing the user experience.

[0116] Based on this, an embodiment of the present application provides a method for managing cross-operating system applications, where the first operating system can perceive the status of applications in the second operating system and promptly adjust the status of the default application and application selection interface according to the status of the applications in the second operating system.

[0117] Continuing with Figure 3, this embodiment of the present application relates to a multi-activity management module and a multi-application management module within a proxy APK. The multi-activity management module manages app activities corresponding to Linux applications, while the multi-application management module records the status of Linux applications and stores their application information. Furthermore, the PMS in this embodiment of the present application includes an interface for communicating with the proxy APK, through which the proxy APK can transmit information to the PMS.

[0118] FIG7 shows a schematic flow chart of a method 700 for managing cross-operating system applications provided by an embodiment of the present application. As shown in FIG7 , the method 700 includes:

[0119] S701, the multi-application management module traverses the application list.

[0120] The application list is an application list of Linux applications. The application list may include but is not limited to application information such as the package name, version number, and application description of the Linux application.

[0121] The embodiment of the present application does not limit the method for obtaining the application list.

[0122] Exemplarily, the application list may be preset by the first operating system. It is understandable that when the first operating system is updated, the application list may also be updated.

[0123] For example, the application list may be user-configured.

[0124] S702: The multi-activity management module creates an activity corresponding to the application list according to the application list.

[0125] The multi-application management module traverses the application list and can communicate with the multi-activity management module, so that the multi-activity management module can create activities corresponding to the Linux applications.

[0126] Exemplarily, the activity created by the multi-activity management module may correspond to the package name of the Linux application.

[0127] For example, if the application list includes Linux application #1, the multi-activity management module may create activity #1, which corresponds to the package name of Linux application #1.

[0128] For another example, the application list includes Linux application #1 and Linux application #2. The multi-activity management module can create activity #1 and activity #2, where activity #1 corresponds to the package name of Linux application #1 and activity #2 corresponds to the package name of Linux application #2.

[0129] It is understandable that, in the example shown in FIG. 7 , the operating system is taken as an example as the Android operating system. When the operating system is not limited, the multi-activity management module can also be called a multi-component management module.

[0130] S703: The multi-application management module registers the Linux application with the application selector.

[0131] The multi-application management module can register Linux applications with the application selector. This is done through the activity created in step S602. In other words, the multi-application management module can register an activity with the application selector, and since the activity corresponds to the Linux application, registering the activity with the application selector can be understood as registering the Linux application with the application selector.

[0132] It is understandable that after the multi-application management module registers the Linux application with the application selector, the correspondence between the Linux application and the file type can be determined, which is explained below with reference to FIG. 7 .

[0133] FIG8 shows a schematic flow chart of registering Linux applications by a multi-application management module provided in an embodiment of the present application.

[0134] As shown in Figure 8 (a), after the multi-application management module traverses the application list and determines that it includes Linux application #1, Linux application #2, and Linux application #3, the multi-application management module can create corresponding activities #1, #2, and #3. The multi-application management module can register these three activities with the application selector. Specifically, Linux application #1 corresponding to activity #1 is registered as the default application for file type #1 and an optional application for file type #2. Linux application #2 corresponding to activity #2 is registered as an optional application for file type #3. Linux application #3 corresponding to activity #3 is registered as an optional application for file type #4.

[0135] The codes involved in steps S701 to S703 are as follows:

[0136] It should be noted that the correspondence between Linux applications and file types established by the multi-application management module in step S703 is in an inactive state (or in an inactive state). In other words, the correspondence established through steps S701-S703 has not yet taken effect. This correspondence can only be activated (or enabled) after the corresponding Linux application is installed on the electronic device. Please refer to the description of the subsequent steps for details.

[0137] For example, taking the registration of Linux application #1 as an optional application for file type #2 as an example, the electronic device can display an application selection interface in response to the user's operation of opening file type #2, but the application selection interface will not include the icon corresponding to Linux application #1.

[0138] That is, the correspondence between the Linux application and the file type established by the multi-application management module is in an inactive state. It can be understood that the activity corresponding to the Linux application is in a disabled state.

[0139] S704, the multi-application management module obtains the installation package of Linux application #1.

[0140] In the embodiment of the present application, there is no limitation on the manner in which the multi-application management module obtains the installation package of Linux application #1.

[0141] Exemplarily, the multi-application management module may obtain the installation package of Linux application #1 through the application store.

[0142] Exemplarily, the multi-application management module may obtain the installation package of Linux application #1 from the official website of Linux application #1.

[0143] S705, the multi-application management module sends information #1 to the Linux application management module.

[0144] Correspondingly, the Linux application management module receives information #1 sent by the multi-application management module, where the information #1 is used to instruct the installation of Linux application #1.

[0145] In some embodiments, the information #1 includes an installation package of the Linux application #1.

[0146] In some embodiments, the information #1 includes a storage path of the Linux application #1.

[0147] S706: The Linux application management module installs Linux application #1.

[0148] In some embodiments, the information #1 includes an installation package of the Linux application #1. After receiving the information #1, the Linux application management module can obtain the installation package of the Linux application #1 and then install the Linux application #1.

[0149] In some embodiments, information #1 includes the storage path of Linux application #1. After receiving information #1, the Linux application management module can obtain the installation package of Linux application #1 according to the storage path and then install Linux application #1.

[0150] S707, the Linux application management module sends information #2 to the multi-application manager.

[0151] Correspondingly, the multi-application manager receives information #2 sent by the Linux application management module, where the information #2 is used to indicate that the Linux application #1 has been installed.

[0152] S708 , the multi-application manager saves the application information of Linux application #1.

[0153] After the multi-application manager determines that the Linux application #1 is installed, it can save the application information of the Linux application #1, which includes but is not limited to the package name and the installation path.

[0154] S709: The multi-activity management module searches for activity #1 corresponding to Linux application #1.

[0155] After determining that Linux application #1 is successfully installed, the multi-application manager can communicate with the multi-activity management module so that the multi-activity management module can search for activity #1 corresponding to Linux application #1 in the created activities.

[0156] For example, the multi-activity management module creates three activities: activity#1, activity#2, and activity#3. Activity#1 corresponds to Linux application#1, activity#2 corresponds to Linux application#2, and activity#3 corresponds to Linux application#3. After the multi-application manager module confirms that Linux application#1 has been successfully installed, it communicates with the multi-activity management module. The multi-activity management module can then find the corresponding activity#1 based on the package name of Linux application#1.

[0157] S710: The multi-activity management module determines that the status of activity #1 is enabled.

[0158] The multi-activity management module finds activity#1. Since the Linux application#1 corresponding to activity#1 is already installed, it can be determined that the status of activity#1 is enabled.

[0159] S711, the multi-activity management module sends information #3 to the PMS.

[0160] Correspondingly, the PMS receives information #3 sent by the multi-activity management module, where the information #3 is used to instruct to activate activity #1. The information #3 may include the name of activity #1.

[0161] S712, PMS activates activity #1.

[0162] After receiving information #3, the PMS can determine and activate activity #1.

[0163] It is understandable that after the PMS enables activity#1, the relationship between the Linux application#1 corresponding to the activity#1 and the file type is activated.

[0164] For example, in the above steps, Linux application #1 is registered as the default application for file type #1 and as an optional application for file type #2. In response to a user opening a file of file type #1, the electronic device can launch the proxy APK, launch Linux application #1 through the proxy APK, and then open the file of file type #1 through Linux application #1. In response to a user opening a file of file type #2, the electronic device can display an application selection interface that includes an icon for Linux application #1.

[0165] The codes involved in steps S704 to S712 are as follows:

[0166] Continuing to refer to FIG8 , as shown in (a) of FIG8 , since Linux application #1 has been installed, activity #1 can be enabled. Meanwhile, since Linux application #2 and Linux application #3 have not been installed, activity #2 and activity #3 will not be enabled.

[0167] It should be noted that when introducing Figure 7, the first operating system is taken as the Android operating system and the second operating system is taken as the Linux operating system as an example, but the embodiments of the present application are not limited to this. For example, the first operating system can also be the Harmony operating system, and the second operating system can also be the Windows operating system.

[0168] It should also be noted that the multi-application management module and the multi-activity management module in the proxy APK represent only one logical functional division; actual implementations may employ different division methods. For example, in other embodiments of the present application, the multi-application management module and the multi-activity management module may be integrated into a single module. For another example, in other embodiments of the present application, the multi-application management module and the multi-activity management module may be divided into three modules, with these three modules performing the steps previously performed by the multi-application management module and the multi-activity management module.

[0169] In an embodiment of the present application, the proxy APK may first pre-register at least one activity in the application selector, and the at least one activity corresponds to the application of the second operating system. After the second operating system running in the container installs the application of the second operating system, the second operating system may send information to notify the second operating system that the application installation is complete. After the proxy APK determines that the application of the second operating system is installed, it may communicate with the PMS to enable the activity corresponding to the application of the second operating system, thereby activating the association between the application of the second operating system and one or more file types, making the application of the second operating system the default application or optional application for the one or more file types. In an embodiment of the present application, by adding an interface to the PMS, the path from the second operating system in the container to the first operating system side is opened, so that the first operating system side can timely perceive the installation of the application of the second operating system, and can better manage the application of the second operating system, which helps to improve the user experience.

[0170] In addition, in the implementation of this application, the proxy APK creates an activity based on the application list, thereby establishing a correspondence between the application and activity of the second operating system. Since the name of each activity is different, the first operating system can distinguish different applications of the second operating system.

[0171] The method provided in the embodiment of the present application can separately register the file types supported by different applications when installing multiple Linux applications on the Android operating system, and synchronously manage the registered subjects and the Linux life cycle, so that when Linux applications are installed and uninstalled, the system's default applications and application selector can be synchronously updated, thereby improving the user experience.

[0172] As mentioned above, when a Linux application is uninstalled, the Android operating system is currently unable to perceive it, resulting in the application information registered by the proxy APK remaining after the uninstallation. Therefore, in an embodiment of the present application, when a Linux application is uninstalled, the Linux application management module can also send uninstall information to the proxy APK to disable the corresponding activity after uninstalling the Linux application. Please continue to refer to Figure 7 for details.

[0173] As shown in FIG. 7 , in some embodiments of the present application, the method 700 further includes:

[0174] S713, the multi-application management module sends information #4 to the Linux application management module.

[0175] Correspondingly, the Linux application management module receives information #4 sent by the multi-application management module, where the information #4 is used to instruct to uninstall the Linux application #1.

[0176] In some embodiments, the information #4 includes the package name of the Linux application #1.

[0177] In some embodiments, the information #4 includes the installation path of the Linux application #1.

[0178] For example, the multi-application management module detects a user operation of uninstalling Linux application #1. In response to the operation, the Linux application management module may send information #4.

[0179] In the embodiment of the present application, there is no limitation on the user's operation of uninstalling Linux application #1.

[0180] For example, a user can uninstall Linux application #1 through the management interface of the application store.

[0181] For another example, the user can long press the icon of Linux application #1 on the desktop, and then select the delete control to uninstall Linux application #1.

[0182] S714, the Linux application management module uninstalls the Linux application #1 according to the information #4.

[0183] After receiving the information #4, the Linux application management module may uninstall the Linux application #1 according to the information #4.

[0184] S715, the Linux application management module sends information #5 to the multi-application management module.

[0185] Correspondingly, the multi-application management module receives information #5 sent by the Linux application, where the information #5 is used to indicate that the Linux application #1 has been uninstalled.

[0186] After uninstalling Linux application #1, the Linux application management module may send information #5 to the multi-application management module to indicate that Linux application #1 has been uninstalled.

[0187] S716 , the multi-activity management module searches for activity #1 corresponding to Linux application #1.

[0188] After determining that Linux application #1 is uninstalled, the multi-application manager may communicate with the multi-activity management module so that the multi-activity management module can search for activity #1 corresponding to Linux application #1 in the created activities.

[0189] For example, the multi-activity management module creates three activities: activity#1, activity#2, and activity#3. Activity#1 corresponds to Linux application#1, activity#2 corresponds to Linux application#2, and activity#3 corresponds to Linux application#3. After the multi-application manager module determines that Linux application#1 has been uninstalled, it can communicate with the multi-activity management module. The multi-activity management module can then find the corresponding activity#1 based on the package name of Linux application#1.

[0190] S717: The multi-activity management module determines that the status of activity #1 is disabled.

[0191] The multi-activity management module finds activity#1. Since the Linux application#1 corresponding to activity#1 has been uninstalled, it can be determined that the status of activity#1 is disabled.

[0192] S718, the multi-activity management module sends information #6 to the PMS.

[0193] Correspondingly, the PMS receives information #6 sent by the multi-activity management module, where the information #6 is used to instruct to disable activity #1. The information #6 may include the name of activity #1.

[0194] S719, PMS disables activity #1.

[0195] After receiving information #6, the PMS can determine and disable activity #1.

[0196] It is understandable that after the PMS disables activity #1, the relationship between the Linux application #1 corresponding to the activity #1 and the file type is deactivated. In other words, the Linux application #1 is no longer the default application or optional application for a certain file type.

[0197] For example, before Linux application #1 is uninstalled, it is the default application for file type #1 and an optional application for file type #2. After Linux application #1 is uninstalled, the electronic device detects a user opening a file of file type #1 and, in response to this operation, may prompt the user that Linux application #1 has been uninstalled. The electronic device detects a user opening a file of file type #2 and, in response to this operation, may display an application selection interface that no longer includes the icon for Linux application #1.

[0198] The codes involved in steps S713 to S719 are as follows:

[0199] Continuing to refer to FIG. 8 , as shown in FIG. 8 ( b ), since the Linux application # 1 has been uninstalled, the activity # 1 may be changed from an enabled state to a disabled state.

[0200] In this embodiment of the present application, the proxy APK can pre-register at least one activity in the application selector, corresponding to an application of the second operating system. When the application of the second operating system is installed, the activity corresponding to the application of the second operating system is enabled. When the second operating system running in the container uninstalls the application of the second operating system, the second operating system can send a message notifying the second operating system that the application has been uninstalled. After the proxy APK determines that the application of the second operating system has been uninstalled, it can communicate with the PMS to disable the activity corresponding to the application of the second operating system, thereby deactivating the association between the application of the second operating system and one or more file types, so that the application of the second operating system is no longer the default application or optional application for the one or more file types. In this embodiment of the present application, by adding an interface to the PMS, a path is established from the second operating system in the container to the first operating system. This enables the first operating system to promptly detect the uninstallation of the application of the second operating system, better manage the application of the second operating system, and help improve the user experience. In addition, in this embodiment of the present application, the proxy APK creates activities based on the application list, thus establishing a correspondence between the application of the second operating system and the activity. Because each activity has a different name, the first operating system can distinguish between different applications of the second operating system.

[0201] When introducing the above-mentioned method for managing cross-operating system applications, the electronic device can manage multiple Linux applications in the container with one proxy APK, but the embodiments of the present application are not limited to this. In other embodiments of the present application, each Linux application in the container corresponds to one proxy APK. The following will introduce another software system architecture provided by the embodiments of the present application in conjunction with Figure 9.

[0202] As shown in Figure 9, the Android operating system and the Linux operating system use the Linux kernel. The Android operating system may also include an application layer and an application framework layer. The Linux operating system may include a Linux application management module, Linux applications, an X server, and window services.

[0203] Among them, the application layer of the Android operating system includes multiple proxy APKs and multi-application management modules, and the application framework layer may include: IMS, AMS, WMS, PMS and application selector.

[0204] Different from the software system architecture shown in FIG3 , the multi-application management module shown in FIG9 is independent of the proxy APK, while the multi-application management module shown in FIG3 is a module of the proxy APK.

[0205] The PMS shown in Figure 9 not only includes an interface for communicating with the multi-application management module, but also provides Linux application extension services. Specifically, the PMS has pre-configured rules that enable it to convert Linux application information into Android application information. As shown in Table 1, the application package name, application version, and application icon of a Linux application are converted into the Android application format. After the Linux application information is converted into Android application information, it can be bound to a proxy APK, completing the binding of the Linux application and the proxy APK. For details, see the description of Figure 10.

[0206] Table 1 shows the conversion of application information of Linux applications into application information of Android applications.

[0207] It should be noted that the Android operating system of the electronic device may further include a hardware abstraction layer and a system runtime library which are not shown in FIG. 9 .

[0208] FIG10 shows an exemplary flow chart of a method 1000 for managing cross-operating system applications provided in an embodiment of the present application. As shown in FIG10 , the method includes:

[0209] S1001, the multi-application management module obtains the installation package of Linux application #1.

[0210] S1002, the multi-application management module sends information #1 to the Linux application management module.

[0211] Correspondingly, the Linux application management module receives the information #1 sent by the multi-application management module, where the information #1 is used to instruct the Linux application management module to install the Linux application #1.

[0212] S1003, the Linux application management module installs Linux application #1 according to information #1.

[0213] It should be understood that the description of steps S1001 to S1003 is similar to the description above and will not be repeated here for the sake of brevity.

[0214] S1004, the Linux application management module sends information #2 to the multi-application management module.

[0215] Correspondingly, the multi-application management module receives information #2 sent by the Linux application management module, where the information #2 is used to indicate that the Linux application has been installed, and the information #2 includes application information of the Linux application #1.

[0216] S1005 , the multi-application management module converts the application information of Linux application #1 into the application information of proxy APK #1.

[0217] After receiving the information #2 sent by the Linux application management module, the multi-application management module may convert the Linux application #1 information into application information #1 of the Android application, and associate the application information #1 of the Android application with the proxy APK #1.

[0218] In some embodiments, the proxy APK#1 is pre-installed. After the multi-application management module converts the Linux application#1 information into the application information#1 of the Android application, the application information#1 of the Android application can be associated with the pre-installed proxy APK#1.

[0219] In some embodiments, the multi-application management module may create a proxy APK#1 based on application information of the Android application.

[0220] S1006 , proxy APK#1 registers application information with the application selector.

[0221] The proxy APK #1 may register application information with the application selector to make the Linux application a default application or an optional application for the file type #1.

[0222] It can be understood that the application information registered by the proxy APK#1 with the application selector is the application information #1 of the Android application.

[0223] In an embodiment of the present application, after the application of the second operating system is successfully installed, the application information of the application of the second operating system can be converted into the application information of the application of the first operating system, and the converted application information of the application of the first operating system can be associated with the proxy APK, that is, each application of the second operating system corresponds to a separate proxy APK. The proxy APK can register the application information with the application selector, so that the application of the second operating system becomes the default application or optional application for a certain file type. In an embodiment of the present application, by adding an interface for communicating with the proxy APK in the PMS and the ability to convert the application information of the application of the second operating system into the application information of the application of the first operating system, the path from the second operating system in the container to the first operating system side is opened up, so that the installation of the application of the second operating system can be perceived in time on the first operating system side, and the application of the second operating system can be better managed, which helps to improve the user experience. In addition, each application of the second operating system can correspond to a proxy APK, so that when running multiple applications of the second operating system, the first operating system can distinguish the applications of the second operating system by distinguishing the proxy APKs.

[0224] The method provided in the embodiment of the present application can separately register the file types supported by different applications when installing multiple Linux applications on the Android operating system, and synchronously manage the registered subjects and the Linux life cycle, so that when Linux applications are installed and uninstalled, the system's default applications and application selector can be synchronously updated, thereby improving the user experience.

[0225] As mentioned above, when a Linux application is uninstalled, the Android operating system is currently unable to perceive it, resulting in the application information registered by the proxy APK remaining after the uninstallation. Therefore, in an embodiment of the present application, when a Linux application is uninstalled, the Linux application management module can also send uninstall information to the proxy APK to uninstall the corresponding proxy APK after uninstalling the Linux application. Please continue to refer to Figure 10 for details.

[0226] As shown in FIG10 , in some embodiments of the present application, the method 1000 further includes:

[0227] S1007, the multi-application management module sends information #3 to the Linux application management module.

[0228] Correspondingly, the Linux application management module receives the information #3 sent by the multi-application management module, where the information #3 is used to instruct to uninstall the Linux application #1.

[0229] S1008, the Linux application management module uninstalls the Linux application #1 according to the information #3.

[0230] S1009, the Linux application management module sends information #4 to the multi-application management module.

[0231] Correspondingly, the multi-application management module receives information #4 sent by the Linux application, where the information #4 is used to indicate that the Linux application #1 has been uninstalled.

[0232] It should be understood that the description of steps S1008 to S1010 is similar to the description above and will not be repeated here for the sake of brevity.

[0233] S1010, the multi-application management module sends information #5 to the PMS.

[0234] Correspondingly, the PMS receives information #5 sent by the multi-application management module, where the information #5 is used to indicate that the Linux application #1 has been uninstalled.

[0235] S1011, PMS uninstalls agent APK#1 according to information #5.

[0236] After receiving information #5, the PMS can determine the proxy APK #1 based on the information #5 and then uninstall the proxy APK #1.

[0237] It is understandable that since the registration of default applications and management of application selectors in the Android operating system are based on APK granularity, and proxy APK#1 corresponds to Linux application #1, when proxy APK#1 is uninstalled, Linux application #1 is no longer the default application or optional application for file type #1.

[0238] In an embodiment of the present application, after the second operating system running in the container uninstalls the application of the second operating system, the second operating system can send information to notify the second operating system that the application has been uninstalled. The PMS can sense that the application in the second operating system has been uninstalled, and the application in the second operating system corresponds to a proxy APK, so the PMS can uninstall the proxy APK, so that the application of the second operating system is no longer the default application or optional application of the one or more file types. In an embodiment of the present application, by adding an interface for communicating with the proxy APK in the PMS and the ability to convert the application information of the application of the second operating system into the application information of the application of the first operating system, the path from the second operating system in the container to the first operating system side is opened up, so that the first operating system side can timely perceive the uninstallation of the application of the second operating system, better manage the application of the second operating system, and help improve the user experience. In addition, each application of the second operating system can correspond to a proxy APK, so that when running multiple applications of the second operating system, the first operating system can distinguish the applications of the second operating system by distinguishing the proxy APK.

[0239] From the perspective of the above-mentioned main functional modules, a method for managing cross-operating system applications provided by an embodiment of the present application is introduced. It is understandable that, in order to realize the above-mentioned functions, the electronic device includes a hardware structure and / or software module corresponding to the execution of each function. Those skilled in the art should easily realize that, in combination with the algorithm steps of each example described in the embodiments disclosed herein, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in a hardware or computer software driven hardware manner depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0240] The embodiment of the present application can divide the functional modules (or units) of the processor in the electronic device according to the above method example. For example, each functional module (or unit) can be divided corresponding to each function, or two or more functions can be integrated into one processing module (or unit). The above-mentioned integrated module (or unit) can be implemented in the form of hardware or in the form of software functional modules (or units). It should be noted that the division of modules (or units) in the embodiment of the present application is schematic and is only a logical function division. There may be other division methods in actual implementation.

[0241] The following will introduce a method for managing cross-operating system applications provided by an embodiment of the present application from the perspective of an electronic device.

[0242] FIG11 shows a schematic flow chart of a method 1100 for managing cross-operating systems provided by an embodiment of the present application. As shown in FIG11 , the method 1100 includes:

[0243] S1101: Acquire first information sent by a second operating system, where the first information is used to indicate a state of a first application, and the first application is an application of the second operating system.

[0244] The electronic device can obtain first information sent by the second operating system, where the first information is used to indicate a state of a first application, where the first application is an application of the second operating system.

[0245] In some embodiments, the state of the first application is an installed state.

[0246] In some embodiments, the state of the first application is an uninstalled state.

[0247] S1102: Modify the default application settings or optional application settings of the first operating system according to the first information.

[0248] There are several possible situations for changing the default application settings or optional application settings of the first operating system according to the first information.

[0249] The first possible scenario:

[0250] Before obtaining the first information, the default application setting is that the first application is the default application for the first file type. The first information is used to indicate that the first application has been uninstalled. The electronic device can change the default application setting of the first operating system based on the first information so that the first application is no longer the default application for the first file type.

[0251] In this case, the electronic device may change the default application settings of the first operating system through the following possible implementation methods.

[0252] A possible implementation:

[0253] The first application corresponds to a first component of a proxy APK, which is used to proxy all applications in the second operating system. Changing the default application settings according to the first information includes:

[0254] The first component is disabled according to the first information.

[0255] The first component includes an activity of the Android operating system.

[0256] In an embodiment of the present application, the electronic device may first pre-register a first component in the application selector, and the first component corresponds to the first application. When the first application running in the container is uninstalled, the second operating system may send information to notify that the first application has been uninstalled. After the electronic device determines that the first application has been uninstalled, it may disable the first component. In an embodiment of the present application, a path from the second operating system in the container to the first operating system side is opened up, so that the first operating system side can timely perceive the uninstallation of the second operating system's application, and can better manage the second operating system's application, which helps to improve the user experience. In addition, in the implementation of the present application, a correspondence between the application and the component of the second operating system is established. Since the name of each component is different, the first operating system can distinguish between different second operating system applications.

[0257] A possible implementation:

[0258] The first application corresponds to a first proxy APK, which is only used to run the first application on behalf of the first application. According to the first information, the default application settings are changed, including:

[0259] Uninstall the first proxy APK according to the first information.

[0260] In an embodiment of the present application, when the first application running in the container is uninstalled, the second operating system can send information to notify that the first application has been uninstalled. The first application corresponds to a first proxy APK, and the first proxy APK is only used to run the first application on behalf of the first application. Therefore, the electronic device can uninstall the first proxy APK, so that the first application is no longer the default application of the first file type. In an embodiment of the present application, the path from the second operating system in the container to the first operating system side is opened up, so that the first operating system side can timely perceive the uninstallation of the second operating system's application, and can better manage the second operating system's application, which helps to improve the user experience. In addition, each second operating system application can correspond to a proxy APK, so that when running multiple second operating system applications, the first operating system can distinguish the second operating system's applications by distinguishing the proxy APKs.

[0261] It is understandable that, in the first possible case, after the first application is uninstalled, the information or icon of the first application will no longer be displayed in the default application setting interface.

[0262] The second possible scenario:

[0263] Before obtaining the first information, the optional application setting is that the first application is an optional application of the first file type. The first information is used to indicate that the first application has been uninstalled. The electronic device can change the optional application setting of the first operating system based on the first information so that the first application is no longer an optional application of the first file type.

[0264] In this case, the electronic device may change the optional application settings of the first operating system through the following possible implementation methods.

[0265] A possible implementation:

[0266] The first application corresponds to a first component of a proxy APK, which is used to proxy all applications in the second operating system. Changing the default application settings according to the first information includes:

[0267] The first component is disabled according to the first information.

[0268] In an embodiment of the present application, the electronic device may first pre-register a first component in the application selector, and the first component corresponds to the first application. When the first application running in the container is uninstalled, the second operating system may send information to notify that the first application has been uninstalled. After the electronic device determines that the first application has been uninstalled, it may disable the first component. In an embodiment of the present application, a path from the second operating system in the container to the first operating system side is opened up, so that the first operating system side can timely perceive the uninstallation of the second operating system's application, and can better manage the second operating system's application, which helps to improve the user experience. In addition, in the implementation of the present application, a correspondence between the application and the component of the second operating system is established. Since the name of each component is different, the first operating system can distinguish between different second operating system applications.

[0269] A possible implementation:

[0270] The first application corresponds to a first proxy APK, which is only used to run the first application on behalf of the first application. According to the first information, the default application settings are changed, including:

[0271] Uninstall the first proxy APK according to the first information.

[0272] In an embodiment of the present application, when the first application running in the container is uninstalled, the second operating system can send information to notify that the first application has been uninstalled. The first application corresponds to a first proxy APK, and the first proxy APK is only used to proxy the running of the first application. Therefore, the electronic device can uninstall the first proxy APK, so that the first application is no longer an optional application of the first file type. In an embodiment of the present application, the path from the second operating system in the container to the first operating system side is opened up, so that the first operating system side can timely perceive the uninstallation of the second operating system's application, and can better manage the second operating system's application, which helps to improve the user experience. In addition, each second operating system application can correspond to a proxy APK, so that when running multiple second operating system applications, the first operating system can distinguish the second operating system's applications by distinguishing the proxy APKs.

[0273] It is understandable that, in the second possible case, after the first application is uninstalled, the information or icon of the first application will no longer be displayed on the application selection interface corresponding to the first file type.

[0274] The third possible scenario:

[0275] The first information is used to indicate that the first application has been installed. The electronic device can change the default application setting or the optional application setting of the first operating system according to the first information, so that the first application is the default application or the optional application of the first file type.

[0276] In this case, the electronic device may change the default application settings or optional application settings of the first operating system through the following possible implementation methods.

[0277] A possible implementation:

[0278] The first application is associated with the first file type via a first component of a proxy APK, the proxy APK being used to proxy all applications running on the second operating system. Before obtaining the first information, the first activity is in a disabled state. The first information is used to indicate that the first application has been installed. Changing the default application settings or the optional application settings based on the first information includes:

[0279] The first component is enabled according to the first information.

[0280] In an embodiment of the present application, the proxy APK may first pre-register at least a first component in the application selector, and the first component corresponds to the first application. After the second operating system running in the container installs the application of the second operating system, the second operating system may send information to notify the second operating system that the application installation is complete. After the electronic device determines that the installation of the application of the second operating system is complete, it may enable the first component to make the first application the default application or optional application of the first file type. In an embodiment of the present application, the path from the second operating system in the container to the first operating system side is opened up, so that the first operating system side can perceive the installation of the application of the second operating system in a timely manner, and can better manage the application of the second operating system, which helps to improve the user experience. In addition, in the implementation of the present application, a correspondence between the application of the second operating system and the component is established. Since the name of each component is different, the first operating system can distinguish between different applications of the second operating system.

[0281] A possible implementation:

[0282] Obtain application information of the first application and convert the application information of the first application into first application information of the first operating system, determine a first proxy APK based on the first application information of the first operating system, and the first proxy APK is only used to proxy the running of the first application, and then register the first application information of the first operating system with the application selector through the first proxy APK to change the default application settings or optional application settings.

[0283] In an embodiment of the present application, after the first application is successfully installed, the application information of the first application can be converted into the first application information of the first operating system, and the converted first application information of the first operating system can be associated with the first proxy APK, that is, the first application alone corresponds to the first proxy APK. The electronic device registers the application information to the application selector through the proxy APK, so that the application of the second operating system becomes the default application or optional application of the first file type. In an embodiment of the present application, the path from the second operating system in the container to the first operating system side is opened, so that the installation of the application of the second operating system can be perceived in time on the first operating system side, and the application of the second operating system can be better managed, which helps to improve the user experience. In addition, each application of the second operating system can correspond to a proxy APK, so that when running multiple applications of the second operating system, the first operating system can distinguish the applications of the second operating system by distinguishing the proxy APKs.

[0284] In some embodiments, before obtaining the first information, the first application is a default application for the first file type, and the first information is used to indicate that the first application has been uninstalled. After changing the default application setting according to the first information, the method 1100 further includes:

[0285] The second application is set as the default application for the first file type.

[0286] Since the first application has been uninstalled, the electronic device may set a second application as a default application for the first file type. The second application may be an application of the first operating system and may also initially be an application of the second operating system.

[0287] It should be understood that the method for setting the second application as the default application for the first file type can be found above, and for the sake of brevity, it will not be repeated here.

[0288] In an embodiment of the present application, a first application is the default application for a first file type. After the first application is uninstalled, the electronic device may determine that a second application is the default application for the first file type. When the electronic device detects a user opening a file of the first file type, the electronic device may open the file using the second application, thereby ensuring smooth file opening without the user having to perform additional settings.

[0289] In some embodiments, before obtaining the first information, the first application is a default application for the first file type, and the first information is used to indicate that the first application has been uninstalled. After changing the default application setting according to the first information, the method 1100 further includes:

[0290] In response to a user opening a first file, displaying a first application selection interface, wherein the file type of the first file is a first file type, the first application selection interface includes a first control and a second application icon, the second application icon is associated with the second application, and the first control corresponds to setting a default application function;

[0291] In response to a user selecting the second application icon, marking the second application icon;

[0292] In response to a user clicking on the first control, the second application is set as a default application for the first file type and the first file is opened through the second application.

[0293] It is understandable that, in the third possible case, after the first application is installed, the information or icon of the first application may be displayed on the default application setting interface or the application selection interface corresponding to the first file type.

[0294] In an embodiment of the present application, the first application is the default application for the first file type. After the first application is uninstalled, when the electronic device detects a user operation to open an application of the first file type, it can display an application selection interface in response to the operation. The application selection interface includes an icon that can include an application that can open the first file type. The electronic device can re-determine a new default application for the first file type based on the user's operation.

[0295] The present application provides a computer program product that, when executed on an electronic device, enables the electronic device to execute the technical solution in the above embodiment. The implementation principle and technical effects are similar to those of the above method-related embodiments and will not be described in detail here.

[0296] The embodiment of the present application provides a readable storage medium, which contains instructions. When the instructions are executed on an electronic device, the electronic device executes the technical solution of the above embodiment. The implementation principle and technical effect are similar and will not be repeated here.

[0297] The present application provides a chip for executing instructions. When the chip is running, the technical solution of the above embodiment is executed. The implementation principle and technical effect are similar and will not be described here.

[0298] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of the embodiments of this application.

[0299] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0300] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0301] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.

[0302] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.

[0303] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the embodiment of the present application is essentially or the part that contributes to the prior art or the part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: various media that can store program codes, such as a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.

[0304] The above description is merely a specific implementation of the embodiments of the present application, but the scope of protection of the embodiments of the present application is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in the embodiments of the present application should be included in the scope of protection of the embodiments of the present application. Therefore, the scope of protection of the embodiments of the present application should be based on the scope of protection of the claims.

Claims

1. A method for managing cross-operating system applications, characterized in that: The method is applied to an electronic device, the electronic device is equipped with a first operating system and a second operating system, wherein the second operating system runs based on the first operating system, the first operating system is an Android operating system or a Hongmeng operating system, and the second operating system is different from the first operating system. The method includes: Acquire first information sent by the second operating system, where the first information is used to indicate a state of the first application, the first application is an application in the second operating system, and the state of the first application includes an installed state and an uninstalled state; The default application settings or the optional application settings in the first operating system are changed according to the first information.

2. The method according to claim 1, characterized in that: Before acquiring the first information, the first application is a default application or an optional application of the first file type, the first information is used to indicate that the first application has been uninstalled, and changing the default application setting or the optional application setting in the first operating system according to the first information includes: The default application setting or the optional application setting is changed according to the first information so that the first application is no longer a default application or an optional application of the first file type.

3. The method according to claim 2, characterized in that The first application corresponds to a first component in a proxy application APK, the proxy application is used to run an application in the second operating system on behalf of the first application, and the changing of the default application setting or the optional application setting according to the first information includes: The first component is disabled according to the first information.

4. The method according to claim 2, characterized in that: The first application corresponds to a first proxy application, and the first proxy application is only used to run the first application as a proxy. The changing the default application setting or the optional application setting according to the first information includes: Uninstall the first proxy application according to the first information.

5. The method according to any one of claims 2 to 4, characterized in that Before acquiring the first information, the first application is a default application for the first file type, and after changing the default application setting according to the first information, the method further includes: The second application is set as a default application for the first file type.

6. The method according to claim 2, characterized in that Before acquiring the first information, the first application is a default application for the first file type, and after changing the default application setting according to the first information, the method further includes: In response to a user opening operation of a first file, a first application selection interface is displayed, wherein the file type of the first file is the first file type, the first application selection interface includes a first control and a second application icon, the second application icon is associated with a second application, and the first control corresponds to setting a default application function; In response to the user selecting the second application icon, marking the second application icon; In response to the user clicking the first control, the second application is set as a default application for the first file type and the first file is opened through the second application.

7. The method according to claim 1, characterized in that The first application has a corresponding relationship with the first file type through a first component of the proxy application. Before obtaining the first information, the first component is in a disabled state. The first information is used to indicate that the first application has been installed. Changing the default application setting or the optional application setting in the first operating system according to the first information includes: The first component is enabled according to the first information.

8. The method according to claim 1, characterized in that The changing the default application settings or the optional application settings in the first operating system according to the first information includes: Acquire application information of the first application; converting the application information of the first application into first application information of the first operating system; Determine a first proxy application according to the first application information of the first operating system, where the first proxy application is only used to run the first application as a proxy; The first application information of the first operating system is registered with the application selector through the first agent application to change the default application setting or the optional application setting.

9. The method according to claim 3 or 7, characterized in that: The first component includes an activity of the Android operating system.

10. The method according to claim 8, characterized in that The first application information includes one or more of the following: package name, application version, icon information, application description, and permissions.

11. The method according to any one of claims 1 to 10, characterized in that The first operating system is the Android operating system or the Hongmeng operating system, and the second operating system is the Linux operating system or the Windows operating system.

12. The method according to any one of claims 2 to 6, characterized in that Before acquiring the first information, the first application is a default application for the first file type, and the method further includes: The default application setting interface is updated so that the default application setting interface no longer includes the icon or information of the first application.

13. The method according to any one of claims 2 to 4, characterized in that Before acquiring the first information, the first application is an optional application of the first file type, and the method further includes: updating the optional application settings; In response to a user opening operation of a first file, the file type of the first file is the first file type, and an application selection interface is displayed, wherein the application selection interface no longer includes an icon or information of the first application.

14. The method according to claim 7 or 8, characterized in that The method further comprises: The default application setting interface is updated so that the default application setting interface includes the information or icon of the first application.

15. The method according to claim 7 or 8, characterized in that The method further comprises: updating the optional application settings; In response to a user opening operation of a first file, the file type of the first file is the first file type, and an application selection interface is displayed, wherein the application selection interface is newly added with an icon or information of the first application.

16. The method according to claim 3, characterized in that The first operating system includes a multi-application management module, a multi-component management module, an application selector, and a package management service PMS, the second operating system includes an application management module, and the obtaining of the first information sent by the second operating system includes: the multi-application management module obtaining the first information from the application management module; The changing the default application settings or the optional application settings in the first operating system according to the first information includes: The multi-application management module determines, according to the first information, that the first application has been uninstalled; The application management module communicates with the multi-component management module so that the multi-component management module determines that the first component is in the disabled state; The package management service receives second information sent by the multi-component management module through a customized interface, where the second information is used to indicate that the first component is in the disabled state; The package management service disables the first component according to the second information, so that the application selector updates the default application setting or the optional application setting.

17. The method according to claim 4, characterized in that The first operating system includes a multi-application management module, an application selector, and a package management service PMS, the second operating system includes an application management module, and the obtaining of the first information sent by the second operating system includes: The multi-application management module obtains first information from the application management module; The changing the default application settings or the optional application settings in the first operating system according to the first information includes: The package management service receives second information sent by the multi-component management module through a customized interface, where the second information is used to instruct the uninstallation of the first proxy application; The package management service uninstalls the first agent application according to the second information, so that the application selector updates the default application settings or the optional application settings.

18. The method according to claim 7, characterized in that The first operating system includes a multi-application management module, a multi-component management module, an application selector, and a package management service PMS, the second operating system includes an application management module, and the obtaining of the first information sent by the second operating system includes: The multi-application management module obtains first information from the application management module; The changing the default application settings or the optional application settings in the first operating system according to the first information includes: The application management module communicates with the multi-component management module so that the multi-component management module determines that the first component is in an enabled state; The package management service receives second information sent by the multi-component management module through a customized interface, where the second information is used to indicate that the first component is in the enabled state; The package management service enables the first component according to the second information so that the application selector updates the default application setting or the optional application settings described above.

19. The method according to claim 8, characterized in that The first operating system includes a multi-application management module, an application selector, and a package management service PMS, the second operating system includes an application management module, and the obtaining of the first information sent by the second operating system includes: The multi-application management module obtains first information from the application management module; The changing the default application settings or the optional application settings in the first operating system according to the first information includes: The multi-application management module obtains application information of the first application; The multi-application management module converts the application information of the first application into the application information of the first proxy application; The first agent application registers application information of the first agent application with the application selector, so that the application selector updates the default information setting or the optional application setting.

20. An electronic device, characterized in that: The method comprises one or more processors; one or more memories; the one or more memories store one or more computer programs, the one or more computer programs include instructions, and when the instructions are executed by the one or more processors, the method as claimed in any one of claims 1 to 19 is executed.

21. A chip, characterized in that: The chip includes a processor and a communication interface, wherein the communication interface is used to receive a signal and transmit the signal to the processor, and the processor processes the signal so that the method according to any one of claims 1 to 19 is executed.

22. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer instructions, and when the computer instructions are executed on a computer, the method according to any one of claims 1 to 19 is executed.

23. A computer program product, when the computer program product is run on an electronic device, enables the electronic device to execute the method according to any one of claims 1 to 19.

Citation Information

Patent Citations

  • Method for managing cross-operating system application and electronic equipment

    CN119536804A

  • Android application management method and computing device

    CN116483421A

  • Application installation / uninstallation across multiple systems

    US20160188312A1

  • System, method, and program for checking dependencies of installed software components during installation or uninstallation of software

    US6442754B1

  • Method and apparatus for operating android application in linux system, and device

    WO2023082716A1

Cited By

  • Cross-container application fusion switching method of swan gap system

    CN121387445A