WO2023098118A1 - 跨系统安装应用的方法、装置、电子设备及存储介质 - Google Patents

跨系统安装应用的方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
WO2023098118A1
WO2023098118A1 PCT/CN2022/108516 CN2022108516W WO2023098118A1 WO 2023098118 A1 WO2023098118 A1 WO 2023098118A1 CN 2022108516 W CN2022108516 W CN 2022108516W WO 2023098118 A1 WO2023098118 A1 WO 2023098118A1
Authority
WO
WIPO (PCT)
Prior art keywords
operating system
application
management module
data packet
package
Prior art date
Application number
PCT/CN2022/108516
Other languages
English (en)
French (fr)
Inventor
杨锦
张兴涛
Original Assignee
北京字节跳动网络技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 北京字节跳动网络技术有限公司 filed Critical 北京字节跳动网络技术有限公司
Publication of WO2023098118A1 publication Critical patent/WO2023098118A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/572Secure firmware programming, e.g. of basic input output system [BIOS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04817Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Definitions

  • the present disclosure relates to the field of computer technology, for example, to a method, device, electronic device, and storage medium for installing applications across systems.
  • Android system is currently the mobile device operating system with the highest market share.
  • the Google Play Store has around 3 million Android apps and games, many of which are so good that many Linux users are willing to run them on their favorite operating system.
  • the application package of Android that is, the APK file is not a simple executable file
  • its purpose is to decompress the file to a specific location.
  • some functions of the Android operating system are called to access the file system, hardware components, etc., so that the Android application cannot run natively on Linux.
  • the present disclosure proposes a method, a device, an electronic device, and a storage medium for installing applications across systems.
  • the present disclosure provides a method for installing applications across systems, including:
  • the application of the first operating system includes an application package of the first operating system
  • the application of the first operating system is installed on the second operating system.
  • the present disclosure provides a device for installing applications across systems, including:
  • the acquisition module is configured to download the application of the first operating system; the application of the first operating system includes the application package of the first operating system;
  • the processing module is configured to analyze the application package of the first operating system through the package manager of the first operating system to obtain the analysis information; generate the first data packet according to the analysis information according to the preset communication structure; The first data packet is sent to the authority management module of the second operating system; through the authority management module, it is judged whether the application of the first operating system is allowed to be installed; based on the judgment result of allowing the installation of the application of the first operating system, The application of the first operating system is installed on the second operating system.
  • the present disclosure also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and operable on the processor, when the processor executes the computer program, the first aspect is implemented.
  • the present disclosure also provides a non-transitory computer-readable storage medium on which a computer program is stored, and when the computer program is executed by a processor, the method for installing applications across systems as described in the first aspect is implemented.
  • FIG. 1 is a system framework of a method for installing applications across systems provided by the present disclosure
  • FIG. 2 is a schematic flowchart of a method for installing applications across systems provided by the present disclosure
  • FIG. 3 is a schematic flowchart of another method for installing applications across systems provided by the present disclosure
  • FIG. 4 is a schematic flowchart of another method for installing applications across systems provided by the present disclosure.
  • FIG. 5 is a schematic structural diagram of a device for installing applications across systems provided by the present disclosure
  • FIG. 6 is a schematic structural diagram of an electronic device provided by the present disclosure.
  • the first operating system includes a desktop operating system, such as Windows, Linux, Mac OS, etc., and may also be a mobile operating system, such as Android, iOS, etc.
  • desktop operating system such as Windows, Linux, Mac OS, etc.
  • mobile operating system such as Android, iOS, etc.
  • the second operating system includes a mobile operating system, such as Android, iOS, and the like. It can also be a desktop version of the operating system, such as Windows, Linux, Mac OS, etc.
  • the Android mentioned here includes Google's Android OS and various derivative versions based on AOSP, such as MIUI, EMUI, etc.
  • the first operating system is Android and the second operating system is Linux as an example to describe the implementation process of the embodiments of the present disclosure.
  • the method for installing applications across systems can be applied to the system architecture shown in FIG. 1 , where the system architecture includes an Android terminal 100 and a Linux terminal 200 .
  • the Android terminal 100 is used to download Android applications through the Android application store.
  • the Android application includes an Android application package.
  • the Android terminal 100 is used to parse the Android application package through the Android package manager to obtain the parsing information; generate the first data packet according to the parsing information according to the preset communication structure.
  • the Android terminal 100 is also used to send the first data packet to the rights management module of the Linux terminal.
  • the Linux terminal 200 judges whether the Android application is allowed to be installed through the authority management module; based on the judgment result that the Android application is allowed to be installed, the Android application is installed on the Linux terminal.
  • FIG. 1 is only an example of the system architecture of the embodiment of the present disclosure, which is not specifically limited in the present disclosure.
  • FIG. 2 is a schematic flowchart corresponding to a method for installing applications across systems provided by an embodiment of the present disclosure. As shown in FIG. 2 , the method includes:
  • Step 201 downloading an application of a first operating system.
  • the application of the first operating system is downloaded through an application store of the first operating system.
  • the application of the first operating system includes an application program package of the first operating system.
  • Android application package is an application package file format used by the Android operating system to distribute and install mobile applications and middleware.
  • Step 202 analyzing the application package of the first operating system through the package manager of the first operating system to obtain analysis information
  • the application package of the first operating system is copied to a preset directory, such as /data/app.
  • the package manager of the first operating system parses the application package of the first operating system.
  • the package manager (Package Manager Service, PKMS) mainly analyzes the Android Mainfest.xml file. The parsing information is then saved in the Package object.
  • PKMS Package Manager Service
  • Step 203 generating a first data packet according to the analysis information according to the preset communication structure.
  • the preset communication structure is a new data type composed of a batch of data.
  • Each data that makes up the structured data is called a "member" of the structured data, which is used to represent different types. But there are some related data.
  • the first data packet includes: application type, application signature information, application identifier, and permission information.
  • data packet may also include application attributes, etc., which are not specifically limited in this embodiment of the present disclosure.
  • the application signature information is the signature of the application, the executable file or script data in the application is hashed once, and then the result obtained after RSA encryption is performed again.
  • Application identification and application user identification (User Identification, UID). When the system starts, a UID will be assigned to each application.
  • the application type may be a game type, an office type, and the like.
  • the permission information includes network permission, camera permission, memory access permission, storage permission, call permission, and the like.
  • the parsing information is packaged through a preset communication structure, so that the transmission to the second operating system is more efficient.
  • Step 204 sending the first data packet to the rights management module of the second operating system.
  • the second data packet is sent to the rights management module of the second operating system through the service agent of the second operating system.
  • the data packet is sent to the authority management module of the second operating system for unified management.
  • the application of the first operating system is downloaded through the application store of the first operating system, and the package manager of the first operating system is called to install it.
  • the system's permission management module Permission Manager Service
  • Step 205 judging whether the application of the first operating system is allowed to be installed through the authority management module
  • Step 206 Install the application of the first operating system on the second operating system based on the judgment result that the application of the first operating system is allowed to be dimmed.
  • step flow in step 205 of the embodiment of the present disclosure is shown in Figure 3, as follows:
  • Step 301 acquire the current mode of the terminal.
  • the current mode of the terminal may be a child mode, a supervision mode, and the like.
  • Step 302 Determine the application type and application signature information of the application of the first operating system according to the first data packet.
  • the first data package includes: application type, application signature information, application identifier, and permission information.
  • step 303 the authority management module determines the corresponding application type set according to the mode.
  • the set of application types corresponding to the children's mode is the learning type and the office type.
  • Step 304 judging whether the application type of the application of the first operating system belongs to the application type set and whether the application signature information is from an unknown source.
  • the set of application types corresponding to the children's mode is the learning type and the office type.
  • the application type of the application of the first operating system is a game type, and at this time, the rights management module does not allow the application of the first operating system to be installed.
  • Step 305 based on the judgment result that the application type of the application of the first operating system belongs to the application type set and the application signature information is not from an unknown source, allowing the installation of the application of the first operating system.
  • the set of application types corresponding to the children's mode is the learning type and the office type.
  • the application type of the application of the first operating system is a learning type, and the permission management module allows the installation of the application of the first operating system after judging that the application signature information is not from an unknown source or is trusted signature information.
  • the first data packet is stored in the permission group corresponding to the second operating system, and an installation permission signal is returned.
  • the rights management module does not allow the application of the first operating system to be installed, the first data packet is discarded and a signal not allowed to be installed is returned.
  • the above scheme judges whether the application type of the application of the first operating system belongs to the application type set and whether the application signature information is an unknown source based on the current mode of the terminal, which effectively prevents unsafe access and improves the efficiency of installing the first operating system in the second operating system.
  • the security of the application of the operating system is a code that specifies the application type of the application of the first operating system.
  • the parsing information includes a package name, an entry class name, and an icon of an application of the first operating system.
  • Step 401 judging whether the broadcast sent by the package manager of the first operating system is received.
  • Step 402 Based on the judgment result of receiving the broadcast sent by the package manager of the first operating system, send the package name, entry class name and icon to the application icon management module of the second operating system.
  • Step 403 generating desktop files and desktop icons on the second operating system through the application icon management module.
  • the package manager of the first operating system sends an installation complete broadcast.
  • the embodiments of the present disclosure add monitoring, and after receiving the broadcast, send the application package name, entry class name, and icon of the first operating system to the application icon management module of the second operating system to generate desktop files and desktop icons.
  • the desktop file and the desktop icon can be generated after the installation is completed.
  • the desktop file startup command is generated by the application icon management module according to the package name and the entry class name;
  • the application icon management module of the second operating system stores it in a preset directory. Then set the corresponding name in the desktop file. The desktop of the second operating system displays an icon of the corresponding second operating system.
  • FIG. 5 exemplarily shows a device for installing applications across systems provided by an embodiment of the present disclosure, and the device may be a flow of a method for installing applications across systems.
  • the device includes:
  • the acquisition module 501 is configured to download the application of the first operating system; the application of the first operating system includes the application package of the first operating system;
  • the processing module 502 is configured to analyze the application package of the first operating system through the package manager of the first operating system to obtain analysis information; generate a first data packet according to the analysis information according to a preset communication structure; The first data packet is sent to the authority management module of the second operating system; through the authority management module, it is judged whether the application of the first operating system is allowed to be installed; based on the judgment result of the application of the first operating system being allowed to be installed , installing the application of the first operating system on the second operating system.
  • processing module 502 is set to:
  • the first data package includes: application type, application signature information, application identification and permission information.
  • processing module 502 is set to:
  • the second data packet is sent to the rights management module of the second operating system through the service agent of the second operating system.
  • processing module 502 is set to:
  • the application of the first operating system is allowed to be installed.
  • the parsing information includes the package name, entry class name and icon of the application of the first operating system, and the processing module 502 is set to:
  • the application of the first operating system After the application of the first operating system is installed, it is judged whether a broadcast sent by the package manager of the first operating system is received; the broadcast is used to indicate that the installation is complete;
  • the desktop file and the desktop icon are generated in the second operating system through the application icon management module.
  • processing module 502 is set to:
  • the desktop file is generated through the desktop file startup command.
  • the electronic device includes the following: a processor 601, a memory 602, a communication interface 603, and a communication bus 604;
  • the processor 601, memory 602, and communication interface 603 complete mutual communication through the communication bus 604; the communication interface 603 is configured to realize information transmission between multiple devices;
  • the processor 601 is configured to call the computer program in the memory 602, and when the processor executes the computer program, all the steps of the above method for installing applications across systems are implemented, for example, the processor executes the computer program
  • download the application of the first operating system includes the application package of the first operating system; analyze the application of the first operating system through the package manager of the first operating system program package to obtain analysis information; generate a first data packet according to the analysis information according to the preset communication structure; send the first data packet to the authority management module of the second operating system; judge by the authority management module Whether to allow the installation of the application of the first operating system; based on the judgment result of allowing the installation of the application of the first operating system, install the application of the first operating system in the second operating system.
  • another embodiment of the present disclosure provides a non-transitory computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the above-mentioned cross-system installation is realized.
  • the following steps are implemented: downloading the application of the first operating system; the application of the first operating system includes an application program package of the first operating system; Analyze the application package of the first operating system through the package manager of the first operating system to obtain the analysis information; generate a first data packet according to the analysis information according to the preset communication structure; and send the first data packet sent to the authority management module of the second operating system; through the authority management module, it is judged whether the application of the first operating system is allowed to be installed; based on the judgment result of allowing the installation of the application of the first operating system, the An application of the first operating system is installed.
  • the above logic instructions in the memory can be implemented in the form of software functional units and can be stored in a computer-readable storage medium when sold or used as an independent product.
  • the computer software product is stored in a storage medium, including several
  • the instructions are used to make a computer device (which may be a personal computer, a device for installing applications across systems, or a network device, etc.) execute all or part of the steps of the methods described in multiple embodiments of the present disclosure.
  • the aforementioned storage media include: U disk, mobile hard disk, read-only memory (Read-Only Memory, ROM), random access memory (Random Access Memory, RAM), magnetic disk or optical disc and other media that can store program codes. .
  • the device embodiments described above are only illustrative, and the units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in One place, or it can be distributed to multiple network elements. Part or all of the modules can be selected according to actual needs to achieve the purpose of the solutions of the embodiments of the present disclosure. It can be understood and implemented by those skilled in the art without any creative effort.
  • first and second are used for descriptive purposes only, and cannot be understood as indicating or implying relative importance or implicitly specifying the quantity of the indicated technical features.
  • the features defined as “first” and “second” may explicitly or implicitly include at least one of these features.
  • “plurality” means at least two, such as two, three, etc., unless otherwise specifically defined.
  • relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply that there is a relationship between these entities or operations. Any such actual relationship or sequence.
  • the term “comprises”, “comprises” or any other variation thereof is intended to cover a non-exclusive inclusion such that a process, method, article, or apparatus comprising a set of elements includes not only those elements, but also includes elements not expressly listed. other elements of or also include elements inherent in such a process, method, article, or device.
  • an element defined by the phrase “comprising a " does not exclude the presence of additional identical elements in the process, method, article or apparatus comprising said element.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Automation & Control Theory (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)

Abstract

本公开公开了跨系统安装应用的方法、装置、电子设备及存储介质,包括:下载第一操作系统的应用;第一操作系统的应用包含第一操作系统的应用程序包;通过第一操作系统的包管理器解析第一操作系统的应用程序包,得到解析信息;按照预设的通信结构体根据解析信息生成第一数据包;将第一数据包发送至第二操作系统的权限管理模块;通过权限管理模块判断是否允许安装第一操作系统的应用;基于允许安装所述第一操作系统的应用的判断结果,在第二操作系统安装第一操作系统的应用。

Description

跨系统安装应用的方法、装置、电子设备及存储介质
本申请要求在2021年12月1日提交中国专利局、申请号为202111447910.0的中国专利申请的优先权,该申请的全部内容通过引用结合在本申请中。
技术领域
本公开涉及计算机技术领域,例如涉及跨系统安装应用的方法、装置、电子设备及存储介质。
背景技术
安卓系统目前是市场占有率最高的移动设备操作系统。谷歌Play Store拥有大约300万个安卓应用程序和游戏,其中许多应用非常好用,以至于许多Linux用户愿意在自己喜欢的操作系统上运行它们。
由于安卓的应用程序包即APK文件并不是简单的可执行文件,其目的是将文件解压到特定位置。提取的文件在执行时,调用安卓操作系统的某些函数来访问文件系统、硬件组件等,从而使得安卓应用不能在Linux上原生运行。
目前主流的Linux发行版并没有与安卓应用程序兼容,所以Linux用户必须在他们的计算机上使用安卓模拟器或使用与安卓应用程序兼容的操作系统来模拟安卓设备,极大的降低了用户体验。
综上,目前亟需一种跨系统安装应用的方法,用于解决上述相关技术存在的问题。
发明内容
本公开提出跨系统安装应用的方法、装置、电子设备及存储介质。
第一方面,本公开提供了一种跨系统安装应用的方法,包括:
下载第一操作系统的应用;所述第一操作系统的应用包含第一操作系统的应用程序包;
通过第一操作系统的包管理器解析所述第一操作系统的应用程序包,得到解析信息;
按照预设的通信结构体根据所述解析信息生成第一数据包;
将所述第一数据包发送至第二操作系统的权限管理模块;
通过所述权限管理模块判断是否允许安装所述第一操作系统的应用;
基于允许安装所述第一操作系统的应用的判断结果,在第二操作系统安装所述第一操作系统的应用。
第二方面,本公开提供了一种跨系统安装应用的装置,包括:
获取模块,设置为下载第一操作系统的应用;所述第一操作系统的应用包含第一操作系统的应用程序包;
处理模块,设置为通过第一操作系统的包管理器解析所述第一操作系统的应用程序包,得到解析信息;按照预设的通信结构体根据所述解析信息生成第一数据包;将所述第一数据包发送至第二操作系统的权限管理模块;通过所述权限管理模块判断是否允许安装所述第一 操作系统的应用;基于允许安装所述第一操作系统的应用的判断结果,在第二操作系统安装所述第一操作系统的应用。
第三方面,本公开还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的跨系统安装应用的方法。
第四方面,本公开还提供了一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所述的跨系统安装应用的方法。
附图说明
图1为本公开提供的跨系统安装应用的方法的系统框架;
图2为本公开提供的一种跨系统安装应用的方法的流程示意图;
图3为本公开提供的另一种跨系统安装应用的方法的流程示意图;
图4为本公开提供的另一种跨系统安装应用的方法的流程示意图;
图5为本公开提供的跨系统安装应用的装置的结构示意图;
图6为本公开提供的电子设备的结构示意图。
具体实施方式
下面结合附图,对本公开的具体实施方式作进一步描述。以下实施例仅用于更加清楚地说明本公开的技术方案,而不能以此来限制本公开的保护范围。
在下述实施例中,第一操作系统包括桌面版操作系统,例如Windows、Linux、Mac OS等,也可以是移动操作系统,例如安卓、iOS等。
在下述实施例中,第二操作系统包括移动操作系统,例如安卓、iOS等。也可以是桌面版操作系统,例如Windows、Linux、Mac OS等。
需要说明的是,此处所称的安卓包括Google的Android OS和基于AOSP的多种衍生版,如MIUI、EMUI等。
为了说明的方便,在下述实施例中,以第一操作系统为安卓,第二操作系统为Linux为例说明本公开实施例的实现过程。
本公开实施例提供的跨系统安装应用的方法,可以适用于如图1所示的系统架构中,该系统架构包括安卓端100、Linux端200。
例如,安卓端100用于通过安卓应用商店下载安卓应用。
需要说明的是,安卓应用包含安卓应用程序包。
安卓端100用于通过安卓的包管理器解析安卓应用程序包,得到解析信息;按照预设的通信结构体根据解析信息生成第一数据包。
安卓端100还用于将第一数据包发送至Linux端的权限管理模块。
Linux端200通过权限管理模块判断是否允许安装安卓应用;基于允许安装安卓应用的判断结果,在Linux端安装安卓应用。
需要说明的是,图1仅是本公开实施例系统架构的一种示例,本公开对此不做具体限定。
基于上述所示意的系统架构,图2为本公开实施例提供的一种跨系统安装应用的方法所对应的流程示意图,如图2所示,该方法包括:
步骤201,下载第一操作系统的应用。
在一种可能的实施方式中,通过第一操作系统的应用商店下载第一操作系统的应用。
需要说明的是,第一操作系统的应用包含第一操作系统的应用程序包。
例如,安卓应用程序包(Android application package,APK)是安卓操作系统使用的一种应用程序包文件格式,用于分发和安装移动应用及中间件。
步骤202,通过第一操作系统的包管理器解析第一操作系统的应用程序包,得到解析信息;
例如,在下载第一操作系统的应用后,将第一操作系统的应用程序包拷贝到预设的目录下,比如/data/app。
例如,通过第一操作系统的包管理器解析第一操作系统的应用程序包。
需要说明的是,包管理器(Package Manager Service,PKMS)主要是对Android Mainfest.xml文件进行解析。然后将解析信息保存在Package对象中。
步骤203,按照预设的通信结构体根据解析信息生成第一数据包。
例如,从Package对象里将解析信息放入预设的通信结构体中。
需要说明的是,预设的通信结构体是由一批数据组合而成的一种新的数据类型,组成结构型数据的每个数据称为结构型数据的“成员”,用来表示类型不同但是又相关的若干数据。
在一种可能的实施方式中,第一数据包包括:应用类型、应用签名信息、应用标识以及权限信息。
需要说明的是,数据包还可以包括应用属性等,本公开实施例对此不做具体限定。
例如,应用签名信息就是对应用的签名,对应用中可执行文件或脚本数据进行一次Hash,然后再进行一次RSA加密后获得的结果。应用标识及应用用户身份证明(User Identification,UID),系统启动的时候,会对每个应用分配一个UID。
举例来说,应用类型可以为游戏类型、办公类型等。
本公开实施例中,权限信息包括网络权限、相机权限、内存访问权限、存储权限、通话权限等。
上述方案,通过预设的通信结构将解析信息打包,使得在传输至第二操作系统的过程中更高效。
步骤204,将第一数据包发送至第二操作系统的权限管理模块。
例如,通过第一操作系统服务代理根据第一数据包生成第二操作系统可识别的第二数据包;
将第二数据包通过第二操作系统服务代理发送至第二操作系统的权限管理模块。
本公开实施例中,将数据包发送到第二操作系统的权限管理模块进行统一的管理。
上述方案,通过第一操作系统的应用商店下载第一操作系统的应用,调用第一操作系统的包管理器安装,但是不再由第一操作系统的端进行权限管理,而是由第二操作系统的权限管理模块(Permission Manager Service)来管理。
步骤205,通过权限管理模块判断是否允许安装第一操作系统的应用;
步骤206,基于允许暗黄第一操作系统的应用的判断结果,在第二操作系统安装第一操作系统的应用。
上述方案,通过将解析信息发送至第二操作系统的权限管理模块请求权限,实现了高效地在第二操作系统安装第一操作系统的应用并提高了在第二操作系统安装第一操作系统的应用的安全性。
例如,本公开实施例步骤205中的步骤流程如图3所示,如下:
步骤301,获取终端当前所处的模式。
举例来说,终端当前所处的模式可以为儿童模式、监督模式等。
步骤302,根据第一数据包确定第一操作系统的应用的应用类型以及应用签名信息。
在一种可能的实施方式中,第一数据包包括:应用类型、应用签名信息、应用标识以及权限信息。
步骤303,通过权限管理模块根据模式确定对应的应用类型集合。
举例来说,终端当前所处的模式可以为儿童模式时,儿童模式对应的应用类型集合为学习类型、办公类型。
步骤304,判断第一操作系统的应用的应用类型是否属于应用类型集合以及应用签名信息是否为未知来源。
举例来说,终端当前所处的模式可以为儿童模式时,儿童模式对应的应用类型集合为学习类型、办公类型。第一操作系统的应用的应用类型为游戏类型,此时权限管理模块不允许安装第一操作系统的应用。
步骤305,基于第一操作系统的应用的应用类型属于应用类型集合且应用签名信息不为未知来源的判断结果,允许安装第一操作系统的应用。
举例来说,终端当前所处的模式可以为儿童模式时,儿童模式对应的应用类型集合为学习类型、办公类型。第一操作系统的应用的应用类型为学习类型,权限管理模块在判断应用签名信息不为未知来源即为被信任的签名信息后允许安装第一操作系统的应用。
例如,本公开实施例在权限管理模块允许安装第一操作系统的应用后,将第一数据包存到第二操作系统对应的权限组中并返回允许安装信号。在权限管理模块不允许安装第一操作系统的应用后,丢弃第一数据包并返回不允许安装信号。
上述方案,通过终端当前所处的模式判断第一操作系统的应用的应用类型是否属于应用类型集合以及应用签名信息是否为未知来源有效组织了不安全访问,提高了在第二操作系统安装第一操作系统的应用的安全性。
本公开实施例中,解析信息包含第一操作系统的应用的包名、入口类名以及图标。
例如,在安装第一操作系统的应用之后的步骤流程如图4所示,如下:
步骤401,判断是否收到第一操作系统的包管理器发送的广播。
需要说明的是,广播用于指示安装完成。
步骤402,基于收到第一操作系统的包管理器发送的广播的判断结果,将包名、入口类名以及图标发送至第二操作系统的应用图标管理模块。
步骤403,通过应用图标管理模块在第二操作系统生成桌面文件和桌面图标。
本公开实施例中,在安装完成后,第一操作系统的包管理器发送安装完成的广播。
例如,本公开实施例添加监听,在收到广播后将第一操作系统的应用的包名、入口类名以及图标发送至第二操作系统的应用图标管理模块,生成desktop文件和桌面图标。
上述方案,通过添加监听广播,从而实现在安装完成后生成桌面文件和桌面图标。
例如,通过应用图标管理模块根据包名以及入口类名生成桌面文件启动命令;
通过桌面文件启动命令生成桌面文件。
例如,第二操作系统的应用图标管理模块在接收到图标后,将其存放在预设的目录中。然后桌面文件里设置为对应的名称。第二操作系统桌面显示相应第二操作系统的图标。
基于同一公开构思,图5示例性的示出了本公开实施例提供的一种跨系统安装应用的应用的装置,该装置可以为一种跨系统安装应用的方法的流程。
所述装置,包括:
获取模块501,设置为下载第一操作系统的应用;所述第一操作系统的应用包含第一操作系统的应用程序包;
处理模块502,设置为通过第一操作系统的包管理器解析所述第一操作系统的应用程序包,得到解析信息;按照预设的通信结构体根据所述解析信息生成第一数据包;将所述第一数据包发送至第二操作系统的权限管理模块;通过所述权限管理模块判断是否允许安装所述第一操作系统的应用;基于允许安装所述第一操作系统的应用的判断结果,在第二操作系统安装所述第一操作系统的应用。
例如,所述处理模块502设置为:
所述第一数据包包括:应用类型、应用签名信息、应用标识以及权限信息。
例如,所述处理模块502设置为:
通过第一操作系统服务代理根据所述第一数据包生成第二操作系统可识别的第二数据包;
将所述第二数据包通过第二操作系统服务代理发送至第二操作系统的权限管理模块。
例如,所述处理模块502设置为:
获取终端当前所处的模式;
根据所述第一数据包确定所述第一操作系统的应用的应用类型以及应用签名信息;
通过所述权限管理模块根据所述模式确定对应的应用类型集合;
判断所述第一操作系统的应用的应用类型是否属于所述应用类型集合以及所述应用签名信息是否为未知来源;
基于所述第一操作系统的应用的应用类型属于所述应用类型集合且所述应用签名信息不为未知来源的判断结果,允许安装第一操作系统的应用。
例如,所述解析信息包含所述第一操作系统的应用的包名、入口类名以及图标,所述处理模块502设置为:
在所述安装所述第一操作系统的应用之后,判断是否收到第一操作系统的包管理器发送的广播;所述广播用于指示安装完成;
基于收到第一操作系统的包管理器发送的广播的判断结果,将所述包名、所述入口类名以及所述图标发送至第二操作系统的应用图标管理模块;
通过所述应用图标管理模块在第二操作系统生成桌面文件和桌面图标。
例如,所述处理模块502设置为:
通过所述应用图标管理模块根据所述包名以及所述入口类名生成桌面文件启动命令;
通过所述桌面文件启动命令生成桌面文件。
基于相同的公开构思,本公开又一实施例提供了一种电子设备,参见图6,所述电子设备包括如下内容:处理器601、存储器602、通信接口603和通信总线604;
其中,所述处理器601、存储器602、通信接口603通过所述通信总线604完成相互间的通信;所述通信接口603设置为实现多个设备之间的信息传输;
所述处理器601设置为调用所述存储器602中的计算机程序,所述处理器执行所述计算机程序时实现上述跨系统安装应用的方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:下载第一操作系统的应用;所述第一操作系统的应用包含第一操作系统的应用程序包;通过第一操作系统的包管理器解析所述第一操作系统的应用程序包,得到解析信息;按照预设的通信结构体根据所述解析信息生成第一数据包;将所述第一数据包发送至第二操作系统的权限管理模块;通过所述权限管理模块判断是否允许安装所述第一操作系统的应用;基于允许安装所述第一操作系统的应用的判断结果,在第二操作系统安装所述第一操作系统的应用。
基于相同的公开构思,本公开又一实施例提供了一种非暂态计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述跨系统安装应用的方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:下载第一操作系统的应用;所述第一操作系统的应用包含第一操作系统的应用程序包;通过第一操作系统的包管理器解析所述第一操作系统的应用程序包,得到解析信息;按照预设的通信结构体根据所述解析信息生成第一数据包;将所述第一数据包发送至第二操作系统的权限管理模块;通过所述权限管理模块判断是否允许安装所述第一操作系统的应用;基于允许安装所述第一操作系统的应用的判断结果,在第二操作系统安装所述第一操作系统的应用。
此外,上述的存储器中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对相关技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,跨系统安装应用的装置,或者网络设备等)执行本公开多个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等多种可以存储程序代码的介质。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本公开实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到多个实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,跨系统安装应用的装置,或者网络设备等)执行多个实施例或者实施例的某些部分所述的跨系统安装应用的方法。
此外,在本公开中,诸如“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本公开的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
此外,在本公开中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
此外,在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本公开的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

Claims (10)

  1. 一种跨系统安装应用的方法,包括:
    下载第一操作系统的应用;所述第一操作系统的应用包含所述第一操作系统的应用程序包;
    通过所述第一操作系统的包管理器解析所述第一操作系统的应用程序包,得到解析信息;
    按照预设的通信结构体根据所述解析信息生成第一数据包;
    将所述第一数据包发送至第二操作系统的权限管理模块;
    通过所述权限管理模块判断是否允许安装所述第一操作系统的应用;
    基于允许安装所述第一操作系统的应用的判断结果,在所述第二操作系统安装所述第一操作系统的应用。
  2. 根据权利要求1所述的方法,其中,所述第一数据包包括:应用类型、应用签名信息、应用标识以及权限信息。
  3. 根据权利要求1所述的方法,其中,所述将所述第一数据包发送至第二操作系统的权限管理模块,包括:
    通过第一操作系统服务代理根据所述第一数据包生成第二操作系统可识别的第二数据包;
    将所述第二数据包通过第二操作系统服务代理发送至所述第二操作系统的权限管理模块。
  4. 根据权利要求2所述的方法,其中,所述通过所述权限管理模块判断是否允许安装所述第一操作系统的应用,包括:
    获取终端当前所处的模式;
    根据所述第一数据包确定所述第一操作系统的应用的应用类型以及应用签名信息;
    通过所述权限管理模块根据所述模式确定对应的应用类型集合;
    判断所述第一操作系统的应用的应用类型是否属于所述应用类型集合以及所述应用签名信息是否为未知来源;
    基于所述第一操作系统的应用的应用类型属于所述应用类型集合且所述应用签名信息不为未知来源的判断结果,允许安装所述第一操作系统的应用。
  5. 根据权利要求1所述的方法,其中,所述解析信息包含所述第一操作系统的应用的包名、入口类名以及图标,所述在所述第二操作系统所述安装所述第一操作系统的应用之后,还包括:
    判断是否收到所述第一操作系统的包管理器发送的广播;所述广播用于指示安装完成;
    基于收到所述第一操作系统的包管理器发送的广播的判断结果,将所述包名、所述入口类名以及所述图标发送至所述第二操作系统的应用图标管理模块;
    通过所述应用图标管理模块在所述第二操作系统生成桌面文件和桌面图标。
  6. 根据权利要求5所述的方法,其中,所述通过所述应用图标管理模块在所述第二操作系统生成桌面文件和桌面图标,包括:
    通过所述应用图标管理模块根据所述包名以及所述入口类名生成桌面文件启动命令;
    通过所述桌面文件启动命令生成桌面文件。
  7. 一种在跨系统安装应用的装置,包括:
    获取模块,设置为下载第一操作系统的应用;所述第一操作系统的应用包含所述第一操作系统的应用程序包;
    处理模块,设置为通过所述第一操作系统的包管理器解析所述第一操作系统的应用程序 包,得到解析信息;按照预设的通信结构体根据所述解析信息生成第一数据包;将所述第一数据包发送至第二操作系统的权限管理模块;通过所述权限管理模块判断是否允许安装所述第一操作系统的应用;基于允许安装所述第一操作系统的应用的判断结果,在所述第二操作系统安装所述第一操作系统的应用。
  8. 根据权利要求7所述的装置,其中,所述处理模块设置为:
    获取终端当前所处的模式;
    根据所述第一数据包确定所述第一操作系统的应用的应用类型以及应用签名信息;
    通过所述权限管理模块根据所述模式确定对应的应用类型集合;
    判断所述第一操作系统的应用的应用类型是否属于所述应用类型集合以及所述应用签名信息是否为未知来源;
    基于所述第一操作系统的应用的应用类型属于所述应用类型集合且所述应用签名信息不为未知来源的判断结果,允许安装所述第一操作系统的应用。
  9. 一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现如权利要求1至6任一项所述方法的步骤。
  10. 一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述方法的步骤。
PCT/CN2022/108516 2021-12-01 2022-07-28 跨系统安装应用的方法、装置、电子设备及存储介质 WO2023098118A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202111447910.0 2021-12-01
CN202111447910.0A CN113849199B (zh) 2021-12-01 2021-12-01 跨系统安装应用的方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
WO2023098118A1 true WO2023098118A1 (zh) 2023-06-08

Family

ID=78982535

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/108516 WO2023098118A1 (zh) 2021-12-01 2022-07-28 跨系统安装应用的方法、装置、电子设备及存储介质

Country Status (2)

Country Link
CN (1) CN113849199B (zh)
WO (1) WO2023098118A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113849199B (zh) * 2021-12-01 2022-03-08 北京鲸鲮信息系统技术有限公司 跨系统安装应用的方法、装置、电子设备及存储介质
CN114338652B (zh) * 2021-12-30 2023-10-20 北京欧珀通信有限公司 安装包的分发方法、下载方法及相关产品

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120254898A1 (en) * 2011-03-28 2012-10-04 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and program
CN111259408A (zh) * 2018-12-03 2020-06-09 阿里巴巴集团控股有限公司 应用权限管理及检查方法、装置、设备及存储介质
CN111722850A (zh) * 2019-03-21 2020-09-29 成都鼎桥通信技术有限公司 多系统间应用的处理方法、装置及系统
CN112015475A (zh) * 2019-05-30 2020-12-01 杭州海康威视数字技术股份有限公司 一种应用程序启动方法及装置
CN113849199A (zh) * 2021-12-01 2021-12-28 北京鲸鲮信息系统技术有限公司 跨系统安装应用的方法、装置、电子设备及存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101427561B1 (ko) * 2013-05-16 2014-08-07 주식회사 인프라웨어테크놀러지 안드로이드 어플리케이션의 타이젠 설치가능 패키지 자동변환을 이용한 적응 실행 방법 및 이를 위한 컴퓨터로 판독가능한 기록매체
CN106484484B (zh) * 2016-10-20 2019-09-17 Oppo广东移动通信有限公司 应用程序安装管理方法及终端设备
CN111417216B (zh) * 2020-02-17 2023-04-28 博泰车联网科技(上海)股份有限公司 应用程序跨系统通信方法及相关装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120254898A1 (en) * 2011-03-28 2012-10-04 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and program
CN111259408A (zh) * 2018-12-03 2020-06-09 阿里巴巴集团控股有限公司 应用权限管理及检查方法、装置、设备及存储介质
CN111722850A (zh) * 2019-03-21 2020-09-29 成都鼎桥通信技术有限公司 多系统间应用的处理方法、装置及系统
CN112015475A (zh) * 2019-05-30 2020-12-01 杭州海康威视数字技术股份有限公司 一种应用程序启动方法及装置
CN113849199A (zh) * 2021-12-01 2021-12-28 北京鲸鲮信息系统技术有限公司 跨系统安装应用的方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN113849199A (zh) 2021-12-28
CN113849199B (zh) 2022-03-08

Similar Documents

Publication Publication Date Title
WO2023098118A1 (zh) 跨系统安装应用的方法、装置、电子设备及存储介质
US10055576B2 (en) Detection of malicious software packages
US7219140B2 (en) Configuration and management systems for mobile and embedded devices
Barrera et al. Secure software installation on smartphones
EP2696282B1 (en) System and method for updating authorized software
KR101238572B1 (ko) 신뢰 환경을 지원하기 위한 컴퓨터 판독가능 구성요소의자동 업데이트
WO2019076369A1 (zh) 一种云平台部署方法、装置、电子设备及可读存储介质
US20140380414A1 (en) Method and system for application-based policy monitoring and enforcement on a mobile device
WO2017071207A1 (zh) 一种应用安装方法、相关装置及应用安装系统
WO2021147282A1 (zh) 恶意文件的检测方法、装置、设备及存储介质
US8615737B2 (en) Systems and methods for building software packages in secure development environments
KR20160122254A (ko) 소프트웨어 애플리케이션의 세트의 구축 방법
US10853141B2 (en) Resource provisioning in distributed computing environments
US20080250473A1 (en) Method, system and computer program for configuring firewalls
WO2017059724A1 (zh) 一种操作系统的启动方法及装置
CN109688093B (zh) 防火墙策略验证方法、系统、设备及可读存储介质
KR20110125698A (ko) 웹 어플리케이션 실행을 위한 보안 제공 장치 및 방법
WO2022078366A1 (zh) 应用保护方法、装置、设备及介质
WO2023093197A1 (zh) 一种应用管理方法及相关系统
US11714659B2 (en) Device provisioning with manufacturer boot environment
US20190197233A1 (en) Automatic whitelisting using provisioning information
US8881291B2 (en) System and method for inhibiting the processing of new code modules by an outdated runtime environment
US20230359741A1 (en) Trusted boot method and apparatus, electronic device, and readable storage medium
US8745714B2 (en) Secure software development environments
CN116560691A (zh) 一种数据处理方法、装置、计算机设备以及可读存储介质

Legal Events

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

Ref document number: 22899938

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 18681168

Country of ref document: US