CN113672290B - 一种文件打开方法及设备 - Google Patents

一种文件打开方法及设备 Download PDF

Info

Publication number
CN113672290B
CN113672290B CN202110839613.4A CN202110839613A CN113672290B CN 113672290 B CN113672290 B CN 113672290B CN 202110839613 A CN202110839613 A CN 202110839613A CN 113672290 B CN113672290 B CN 113672290B
Authority
CN
China
Prior art keywords
file
operating system
simulator
application program
message
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110839613.4A
Other languages
English (en)
Other versions
CN113672290A (zh
Inventor
吴新显
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honor Device Co Ltd
Original Assignee
Honor Device Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Honor Device Co Ltd filed Critical Honor Device Co Ltd
Priority to CN202110839613.4A priority Critical patent/CN113672290B/zh
Publication of CN113672290A publication Critical patent/CN113672290A/zh
Application granted granted Critical
Publication of CN113672290B publication Critical patent/CN113672290B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/14Details of searching files based on file metadata
    • G06F16/156Query results presentation
    • 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
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Library & Information Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

本申请公开了一种文件打开方法及设备,涉及电子设备领域,解决了在电脑的操作系统上打开文件时无法通过移动设备操作系统模拟器中的应用程序打开的问题。电子设备运行第一操作系统,在第一操作系统上运行有第二操作系统的模拟器。其中,第一操作系统中预设有代理应用程序,第二操作系统的模拟器中预设有代理服务模块。当代理应用程序检测到用户在第一操作系统中选择使用第二操作系统的模拟器打开第一文件的操作时,可向代理服务模块发送第一消息,该第一消息包括第一文件的文件名,和/或,第一文件的存储路径;代理服务模块可根据第一消息在第二操作系统的模拟器中打开第一文件。其中,第一文件由第一操作系统存储在电子设备中。

Description

一种文件打开方法及设备
技术领域
本申请涉及电子设备领域,尤其涉及一种文件打开方法及设备。
背景技术
随着移动设备(如手机、平板等)的发展,利用移动设备上的应用程序进行办公的用户也越来越多。在使用电脑办公时,为了便于使用移动设备上的应用程序,很多用户会通过在电脑上的操作系统运行移动设备操作系统模拟器的方式,在电脑上使用运行在移动设备操作系统模拟器中的应用程序。
但是,目前在电脑的操作系统上打开文件时无法通过移动设备操作系统模拟器中的应用程序打开。
发明内容
本申请提供一种文件打开方法及设备,解决了在电脑的操作系统上打开文件时无法通过移动设备操作系统模拟器中的应用程序打开的问题。
为了达到上述目的,本申请采用如下技术方案:
第一方面,本申请提供一种文件打开方法,该方法可应用于电子设备,该电子设备运行第一操作系统,在第一操作系统上运行有第二操作系统的模拟器。其中,第一操作系统中预设有代理应用程序,第二操作系统的模拟器中预设有代理服务模块。该方法可包括:当代理应用程序检测到用户在第一操作系统中选择使用第二操作系统的模拟器打开第一文件的操作时,代理应用程序可向代理服务模块发送第一消息,该第一消息包括第一文件的文件名,和/或,第一文件的存储路径;代理服务模块可根据第一消息在第二操作系统的模拟器中打开第一文件。其中,第一文件由第一操作系统存储在电子设备中。
采用上述技术方案,用户可以在电子设备上运行的第一操作系统上打开文件时通过第二操作系统的模拟器打开,从而为用户提供更加便捷的文件打开体验。例如,用户在第一操作系统上需要打开某个文件时,若第一操作系统中没有能够打开用户需要打开的文件的应用程序,而第二操作系统的模拟器中有能够打开用户需要打开的文件的应用程序,则用户可以通过第二操作系统的模拟器中的相应应用程序打开要打开的文件。又例如,用户在第一操作系统上需要打开某个文件时,第一操作系统中安装有能够打开该文件的应用程序,第二操作系统的模拟器中也安装有能够打开该文件的应用程序,则此时用户可以根据个人喜好使用第二操作系统的模拟器中的应用程序来打开该文件,而不使用第一操作系统的模拟器中的应用程序。
在一种可能的实现方式中,第一操作系统包括应用层、框架层以及内核层,代理应用程序部署于应用层,框架层包括系统框架,内核层包括内核;第二操作系统的模拟器包括代理动态库以及系统驱动,代理服务模块部署于应用层,代理动态库部署于框架层,系统驱动部署于内核层。
如此,第二操作系统的模拟器和第一操作系统便能够通过内核层进行数据交互,以便于第一操作系统向第二操作系统的模拟器发送第一消息,即代理应用程序向代理服务模块发送第一消息。
在一种可能的实现方式中,代理应用程序向代理服务模块发送第一消息,包括:代理应用程序通过系统框架调用内核向系统驱动发送第一消息;系统驱动通过代理动态库将第一消息发送给代理服务模块。
在一种可能的实现方式中,在代理应用程序检测到用户在第一操作系统中选择使用第二操作系统的模拟器打开第一文件的操作之前,方法还包括:代理应用程序检测到用户在第一操作系统中选择第一文件的操作,显示用于触发使用第二操作系统的模拟器打开第一文件的功能选项;用户在第一操作系统中选择使用第二操作系统的模拟器打开第一文件的操作包括:用户对功能选项的选择操作。
如此,代理应用程序在检测到用户在第一操作系统中选择了第一文件时,能够向用户显示可触发使用第二操作系统的模拟器打开第一文件的功能选项供用户选择,从而便于用户通过选择该功能选项来触发使用第二操作系统的模拟器来打开第一文件。
在一种可能的实现方式中,代理应用程序中预设有文件格式清单,文件格式清单包含能够使用第二操作系统的模拟器打开的文件的文件格式;在显示用于触发使用第二操作系统的模拟器打开第一文件的功能选项之前,方法还包括:代理应用程序根据文件格式清单确定第一文件能够使用第二操作系统的模拟器打开。
如此,代理应用程序能够仅向可以使用第二操作系统的模拟器打开的文件提供用于触发使用第二操作系统的模拟器打开文件的功能选项,从而避免用户通过功能选项触发了使用第二操作系统的模拟器打开文件的功能,最终第二操作系统的模拟器却无法打开文件的情况。
在一种可能的实现方式中,用户在第一操作系统中选择第一文件的操作包括:用户长按或右键点击第一文件。
在一种可能的实现方式中,第一消息还包括用于指示打开第一文件的打开指令。
在第一消息中包括打开指令,可通过该指令来指示第二操作系统的模拟器执行打开第一文件的动作。当然,在一些其他可能的实现方式中,第一消息还可以自身作为用于指示第二操作系统的模拟器打开第一文件的指令,此处不做限制。
在一种可能的实现方式中,代理服务模块根据第一消息在第二操作系统的模拟器中打开第一文件,包括:代理服务模块根据第一消息确定第一文件的存储位置;代理服务模块根据第一文件的文件格式确定第一应用程序,第一应用程序为第二操作系统的模拟器中具有打开第一文件的功能的应用程序;代理服务模块通过第一应用程序打开第一文件。
其中,当第一消息包括文件名时,代理服务模块可以根据文件名在电子设备中进行搜索以确定第一文件的存储位置。当第一消息包括存储路径时,代理服务模块可以根据存储路径直接确定第一文件的存储位置。
在一种可能的实现方式中,代理服务模块根据第一消息在第二操作系统的模拟器中打开第一文件,包括:代理服务模块根据第一消息确定第一文件的存储位置;代理服务模块根据第一文件的文件格式确定并显示第二操作系统的模拟器中至少一个具有打开第一文件的功能的应用程序;代理服务模块检测到用户选择应用程序的操作,通过用户选择的应用程序打开第一文件。
如此,能够在第二操作系统的模拟器包括多个能够打开第一文件的应用程序时,向用户提供可选择的应用程序,供用户根据喜好选择使用相应的应用程序打开第一文件。
第二方面,本申请提供一种文件打开装置,该装置可以应用于电子设备,用于实现上述第一方面中的方法。该装置的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块,例如,代理应用模块和代理服务模块等。其中,代理应用模块服务于第一操作系统,代理服务模块服务于第二操作系统的模拟器。
其中,代理应用程序,可用于检测到用户在第一操作系统中选择使用第二操作系统的模拟器打开第一文件的操作时,向代理服务模块发送第一消息,该第一消息包括第一文件的文件名,和/或,第一文件的存储路径;代理服务模块,可用于根据第一消息在第二操作系统的模拟器中打开第一文件。其中,第一文件由第一操作系统存储在电子设备中。
在一种可能的实现方式中,代理应用程序,还用于检测到用户在第一操作系统中选择第一文件的操作,显示用于触发使用第二操作系统的模拟器打开第一文件的功能选项;相应地,用户在第一操作系统中选择使用第二操作系统的模拟器打开第一文件的操作包括:用户对功能选项的选择操作。
在一种可能的实现方式中,代理应用程序中预设有文件格式清单,文件格式清单包含能够使用第二操作系统的模拟器打开的文件的文件格式;相应地,代理应用程序,还用于根据文件格式清单确定第一文件能够使用第二操作系统的模拟器打开。
在一种可能的实现方式中,用户在第一操作系统中选择第一文件的操作包括:用户长按或右键点击第一文件。
在一种可能的实现方式中,第一消息还包括用于指示打开第一文件的打开指令。
在一种可能的实现方式中,代理服务模块,具体用于根据第一消息确定第一文件的存储位置;根据第一文件的文件格式确定第一应用程序,第一应用程序为第二操作系统的模拟器中具有打开第一文件的功能的应用程序;代理服务模块,具体用于通过第一应用程序打开第一文件。
在一种可能的实现方式中,代理服务模块,具体用于根据第一消息确定第一文件的存储位置;根据第一文件的文件格式确定并显示第二操作系统的模拟器中至少一个具有打开第一文件的功能的应用程序;代理服务模块,具体用于检测到用户选择应用程序的操作,通过用户选择的应用程序打开第一文件。
第三方面,本申请提供一种电子设备,包括:处理器,用于存储该处理器可执行指令的存储器。该处理器被配置为执行上述指令时,使得该电子设备实现如第一方面或第一方面的可能的实现方式中任一项所述的文件打开方法。
第四方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序指令。当计算机程序指令被电子设备执行时,使得电子设备实现如第一方面或第一方面的可能的实现方式中任一项所述的文件打开方法。
第五方面,本申请提供一种计算机程序产品,包括计算机可读代码,当所述计算机可读代码在电子设备中运行时,使得电子设备实现如第一方面或第一方面的可能的实现方式中任一项所述的文件打开方法。
应当理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
附图说明
图1为本申请提供的一种电子设备的结构示意图;
图2为本申请提供的一种
Figure BDA0003178470200000031
系统的体系架构示意图;
图3为本申请提供的一种文件打开方法应用时的界面示意图;
图4为本申请提供的另一种文件打开方法应用时的界面示意图;
图5为本申请提供的另一种文件打开方法应用时的界面示意图。
具体实施方式
随着移动设备(如手机、平板等)不断发展,用户使用移动设备的频率越来越高。并且,凭借移动设备的便携性,用户使用移动设备利用应用程序进行移动轻办公的需求也越来越大。因此,当用户通过电脑进行办公时,为了能够方便的使用常用的应用程序,用户通常会通过在电脑的操作系统上运行移动设备操作系统模拟器的方式使用应用程序。即在电脑上使用移动设备操作系统模拟器运行应用程序。
但是,目前在电脑的操作系统上打开文件时无法通过移动设备操作系统模拟器中的应用程序打开。即,用户在电脑的操作系统上需要打开某个文件时,用户只能通过电脑的操作系统上的应用程序来打开。用户在移动设备操作系统模拟器上需要打开某个文件时,用户只能通过移动设备操作系统模拟器上的应用程序来打开。
因此,当用户在电脑的操作系统上需要打开某个文件时,而在电脑的操作系统中没有能够打开该文件的应用程序时,即使移动设备操作系统模拟器中有能够打开该文件的应用程序,用户也无法打开该文件。
为了解决上述问题,本申请实施例提供一种文件打开方法。该方法可以应用于用户在电子设备的第一操作系统上打开文件时通过第二操作系统的模拟器中的应用程序打开该文件的场景。例如,以电子设备为电脑,第一操作系统为电脑的操作系统,第二操作系统的模拟器为移动设备操作系统模拟器为例,用户在电脑的操作系统上打开文件时可以通过移动设备操作系统模拟器中的应用程序打开该文件。
该文件打开方法可以包括:电子设备上运行第一操作系统以及第二操作系统的模拟器。当用户在第一操作系统上打开文件(如第一文件)时,第一操作系统可以向第二操作系统的模拟器发送第一消息(如,包含用户要打开的该文件的文件路径的消息),第二操作系统的模拟器接收到该消息后,第二操作系统的模拟器便可以根据该消息打开用户要打开的文件。其中,第一操作系统和第二操作系统为不同的操作系统。
其中,用户在第一操作系统上要打开的文件(如第一文件)是指由第一操作系统存储在电子设备中的文件,可认为该文件位于第一操作系统中。
需要说明的是,由于第二操作系统的模拟器运行在第一操作系统上,因此,第二操作系统的模拟器和第一操作系统均使用同一存储装置进行数据存储。并且,第一操作系统和第二操作系统的模拟器均使用第一操作系统的资源管理器。所以,第一操作系统能够读取访问第二操作系统的模拟器存储的数据,第二操作系统的模拟器也能够读取和访问第一操作系统存储的数据。
如此,用户可以在电子设备上运行的第一操作系统上打开文件时通过第二操作系统的模拟器打开,从而为用户提供更加便捷的文件打开体验。例如,用户在第一操作系统上需要打开某个文件时,若第一操作系统中没有能够打开用户需要打开的文件的应用程序,而第二操作系统的模拟器中有能够打开用户需要打开的文件的应用程序,则用户可以通过第二操作系统的模拟器中的相应应用程序打开要打开的文件。又例如,用户在第一操作系统上需要打开某个文件时,第一操作系统中安装有能够打开该文件的应用程序,第二操作系统的模拟器中也安装有能够打开该文件的应用程序,则此时用户可以根据个人喜好使用第二操作系统的模拟器中的应用程序来打开该文件,而不使用第一操作系统的模拟器中的应用程序。
以下,将结合附图对本申请实施例提供的文件打开方法进行说明。
在本申请实施例中,上述电子设备,可以是手机、平板电脑、手持计算机,PC,蜂窝电话,个人数字助理(personal digital assistant,PDA),智能家居设备(如:电视机),车机(如:车载电脑),智慧屏,游戏机,智能投影仪,智能电视盒等。本申请实施例对于电子设备的具体设备形态不作特殊限制。
在本申请实施例中,上述电子设备是可以运行操作系统,安装应用程序的电子设备。可选地,上述第一操作系统和/或第二操作系统,可以是
Figure BDA0003178470200000051
系统、
Figure BDA0003178470200000052
系统、
Figure BDA0003178470200000053
系统、
Figure BDA0003178470200000054
系统、
Figure BDA0003178470200000055
系统、
Figure BDA0003178470200000056
系统等。更具体的,还可以是
Figure BDA0003178470200000057
系统、
Figure BDA0003178470200000058
系统等。其中,第一操作系统和第二操作系统不同,例如,第一操作系统为
Figure BDA0003178470200000059
系统,第二操作系统为
Figure BDA00031784702000000511
系统,又例如,第一操作系统为
Figure BDA00031784702000000512
系统,第二操作系统为
Figure BDA00031784702000000510
系统等。
示例地,以电子设备为电脑为例,图1示出了本申请实施例提供的一种电子设备的结构示意图。也即,示例性的,图1所示的电子设备可以是电脑。
如图1所示,电子设备可以包括:射频(radio frequency,RF)电路110、存储器120、输入单元130、显示单元140、传感器150、音频电路160、无线保真(wireless fidelity,WiFi)模块170、处理器180、电源190以及蓝牙模块1100等部件。本领域技术人员可以理解,图1中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图1对电子设备的部分构成部件进行具体的介绍:
存储器120可用于存储软件程序以及模块,处理器180通过运行存储在存储器120的软件程序以及模块,从而执行电子设备的各种功能应用以及数据处理。存储器120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)、引导装载程序(boot loader)等;存储数据区可存储根据电子设备的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元130可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。具体地,输入单元130可包括触控面板131以及其他输入设备132。触控面板131,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板131上或在触控面板131附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板131可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器180,并能接收处理器180发来的命令并加以执行。具体地,其他输入设备132可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。在本申请实施例中,用户可以通过触控面板131、鼠标或键盘来输入通过电脑的系统打开模拟器中的文件的操作。
显示单元140可用于显示由用户输入的信息或提供给用户的信息以及电子设备的各种菜单。显示单元140可包括显示面板141,可选的,可以采用液晶显示器(liquidcrystal display,LCD)、有机发光二极管(organic light-emitting diode,OLED)等形式来配置显示面板141。进一步的,触控面板131可覆盖显示面板141,当触控面板131检测到在其上或附近的触摸操作后,传送给处理器180以确定触摸事件的类型,随后处理器180根据触摸事件的类型在显示面板141上提供相应的视觉输出。虽然在图1中,触控面板131与显示面板141是作为两个独立的部件来实现电子设备的输入和输入功能,但是在某些实施例中,可以将触控面板131与显示面板141集成而实现电子设备的输入和输出功能。
处理器180是电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器120内的软件程序或模块,以及调用存储在存储器120内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。可选的,处理器180可包括一个或多个处理单元;优选的,处理器180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器180中。
当然,可以理解的,上述图1所示仅仅为电子设备的形态为电脑时的示例性说明。若电子设备是平板电脑,手持计算机,手机,PDA,智能家居设备(如:电视机),车机(如:车载电脑),智慧屏,游戏机等其他设备形态时,电子设备的结构中可以包括比图1中所示更少的结构,也可以包括比图1中所示更多的结构,在此不作限制。
以下实施例中的方法均可以在具有上述硬件结构的电子设备中实现。下面将结合附图对本申请实施例进行举例说明。
以电子设备为个人计算机(personal computer,PC),或称为电脑,电子设备上运行的第一操作系统为
Figure BDA0003178470200000061
系统,第二操作系统为
Figure BDA0003178470200000062
系统(即第二操作系统的模拟器为
Figure BDA0003178470200000063
系统模拟器)为例。
图2示出了
Figure BDA0003178470200000064
系统的体系架构示意图。如图2所示,该
Figure BDA0003178470200000065
系统一般包括:应用层、框架层以及内核层。其中,应用层可以用于部署各种应用程序,框架层可以提供各种系统组件和系统运行库,以供应用层部署的应用程序调度。内核层能够为操作系统提供最基本的功能服务,能够管理系统进程、设备驱动等。示例地,本申请实施例中,可以将
Figure BDA0003178470200000066
系统分成两个虚拟区域,其中一个虚拟区域用于正常运行
Figure BDA0003178470200000067
系统,另一个虚拟区域则用于运行
Figure BDA00031784702000000612
系统模拟器。运行在
Figure BDA00031784702000000613
系统上的
Figure BDA0003178470200000068
系统模拟器则可以通过上述的内核层与
Figure BDA00031784702000000611
系统进行信息交互,例如
Figure BDA0003178470200000069
系统和
Figure BDA00031784702000000610
系统模拟器可以通过内核层相互发送通知消息,请求消息等,示例地,本申请实施例中
Figure BDA00031784702000000614
系统向
Figure BDA00031784702000000615
系统模拟器发送的第一消息便可以通过内核层发送。在
Figure BDA00031784702000000618
系统中,应用层可以部署一个代理应用程序,能够提供触发使用
Figure BDA00031784702000000617
Figure BDA00031784702000000616
系统模拟器打开用户要打开的文件(如第一文件)的功能,以及生成和发送第一消息的功能。框架层则包括系统框架,内核层包括内核。
Figure BDA00031784702000000619
系统模拟器可以包括代理服务(即安卓服务,在本申请实施例中代理服务还可以称为代理服务模块)、代理动态库(dll)以及安卓(Android)驱动(即系统驱动)。其中,代理服务部署在上述应用层中,能够用于接收和响应
Figure BDA00031784702000000620
系统发送的第一消息。代理动态库位于上述框架层,能够被代理服务调度以调用安卓驱动实现代理服务的功能。安卓驱动位于上述内核层,能够被代理动态库调用以执行相应操作。
示例地,当用户在运行
Figure BDA00031784702000000621
系统的电脑上打开
Figure BDA00031784702000000622
系统模拟器,并在
Figure BDA00031784702000000623
系统上要打开某个文件(如第一文件)时。若在
Figure BDA00031784702000000624
系统中没有安装能够打开该第一文件的应用程序,而
Figure BDA0003178470200000071
系统模拟器中安装有能够打开该第一文件的应用程序,则此时用户可以在电脑上通过
Figure BDA0003178470200000072
系统模拟器中安装的应用程序打开该第一文件。例如,用户在
Figure BDA0003178470200000073
系统上通过浏览器浏览
Figure BDA0003178470200000076
系统的相关论坛时,在论坛中下载了某个
Figure BDA0003178470200000075
Figure BDA0003178470200000074
系统的应用程序安装文件,则由于兼容性问题
Figure BDA0003178470200000077
系统中没有安装能够打开该应用程序安装文件的应用程序,此时用户则可以在电脑上通过
Figure BDA0003178470200000078
系统模拟器来打开该应用程序安装文件。
可选地,用户可以通过在
Figure BDA0003178470200000079
系统上选择使用模拟器(即
Figure BDA00031784702000000711
系统模拟器)打开要打开的文件(如第一文件)的操作来触发使用
Figure BDA00031784702000000710
系统模拟器打开第一文件。其中,要打开的文件,即第一文件,为由
Figure BDA00031784702000000712
系统存储在电子设备中的文件。
作为一种示例,可以在
Figure BDA00031784702000000713
系统中为文件设置用于触发使用模拟器打开文件的功能选项,如“用模拟器打开”的功能选项。可供用户需要通过
Figure BDA00031784702000000714
系统模拟器(即第二操作系统的模拟器)来打开文件时选择。
示例地,该用于触发模拟器打开文件的功能选项可以设置在右键菜单中,以使用户可以通过右键点击要打开的文件时,能够在右键菜单中选择使用模拟器打开文件的功能选项。
例如,如图3所示,在PC中显示有
Figure BDA00031784702000000715
系统的界面301以及
Figure BDA00031784702000000716
系统模拟器的界面302。如图3中的(a)所示,当用户将鼠标指针放在
Figure BDA00031784702000000717
系统上要打开的第一文件(如文档1)上,并右键选择要打开的文件时,如图3中的(b)所示,
Figure BDA00031784702000000718
系统的界面301中会显示该文件的右键菜单,在该菜单中可以包括“复制”、“用模拟器打开”以及“用其他应用打开”的功能选项。如图3中的(b)所示,用户可以通过选择“用模拟器打开”的功能选项来选择使用模拟器(即PC运行的
Figure BDA00031784702000000719
系统模拟器)打开该文件。
示例地,该使用模拟器打开文件的功能选项还可以设置为当用户长按要打开的文件时显示。
例如,在PC中显示有
Figure BDA00031784702000000720
系统的界面以及
Figure BDA00031784702000000721
系统模拟器的界面。当用户选择并长按(可以是以手指触控进行长按,还可以是通过鼠标选择并长按、手写笔选择并长按等此处不做限制)
Figure BDA00031784702000000722
系统上要打开的文件(如文档1)时,
Figure BDA00031784702000000724
系统的界面中会显示该文件相关的功能选项菜单,在该菜单中可以包括“复制”、“用模拟器打开”以及“用其他应用打开”的功能选项。用户可以通过选择“用模拟器打开”的功能选项来选择使用模拟器(即PC运行的
Figure BDA00031784702000000723
系统模拟器)打开该文件。
作为另一种示例,用户在
Figure BDA00031784702000000725
系统模拟器上选择使用模拟器打开要打开的文件,还可以是通过预设的快捷键、手势等实现此处不做限制。例如,可以预设使用模拟器打开文件的快捷键,当用户选择要打开的文件后,输入快捷键便能够选择使用模拟器打开要打开的文件。
可选地,可以在
Figure BDA00031784702000000727
系统中注册能够支持用模拟器打开的文件格式(即在
Figure BDA00031784702000000726
系统中预设包含能够使用
Figure BDA00031784702000000728
系统模拟器打开的文件的文件格式(或称为文件类型)的文件格式清单),从而使注册了的文件格式对应的文件才能够被用户选择使用模拟器打开。例如,基于上述示例,只为注册了的文件格式对应的文件提供使用模拟器打开的功能选项。或者,只有当用户选择了注册了的文件格式对应的文件后输出快捷键或手势才能选择使用模拟器打开该文件。
可选地,上述用于触发使用
Figure BDA00031784702000000729
系统模拟器打开文件的示例,如,在
Figure BDA00031784702000000730
系统中为文件设置用于触发使用
Figure BDA0003178470200000081
系统模拟器打开文件的功能选项的示例,以及预设使用
Figure BDA0003178470200000082
系统模拟器打开文件的快捷键的示例,均可以通过图2中所示的
Figure BDA0003178470200000083
系统中的代理应用程序实现。
当用户选择了使用
Figure BDA0003178470200000086
系统模拟器打开要打开的第一文件后,响应于用户的操作,
Figure BDA0003178470200000084
系统可以向
Figure BDA0003178470200000085
系统模拟器发送用于指示
Figure BDA0003178470200000087
系统模拟器打开文件的消息(如第一消息)。
其中,
Figure BDA0003178470200000088
系统向
Figure BDA0003178470200000089
系统模拟器发送的消息可以是套接字(socket)消息。当然,在本申请实施例中,上述消息还可以是其他用于进程间交互的消息类型此处不做限制。
作为一种示例,在该用于指示
Figure BDA00031784702000000810
系统模拟器打开文件的消息中,可以包括打开文件的指令(在本申请中也可称为打开指令)如,“open”以及用户选择的要打开的文件的文件信息。示例地,文件信息可以是文件的文件路径(或称为存储路径)。当
Figure BDA00031784702000000811
系统模拟器接收到该消息后,便能够根据用户选择的要打开的文件的文件路径确定文件的存储位置,然后打开相应的文件。
作为另一种示例,在该用户指示
Figure BDA00031784702000000812
系统模拟器打开文件的消息中,其包含的上述文件信息可以是用户要打开的文件的文件名。当
Figure BDA00031784702000000813
系统模拟器接收到该消息后,便能够根据用户选择的要打开的文件的文件名在电子设备中进行搜索,并根据搜索结果确定文件的存储位置,然后打开相应的文件。
可选地,第一消息可以由图2中所示的
Figure BDA00031784702000000814
系统中的代理应用程序来生成。即当代理应用程序检测到用户选择使用
Figure BDA00031784702000000815
系统模拟器打开文件的操作后,代理应用程序能够根据用户选择的要打开的文件生成第一消息。代理应用程序生成第一消息后,可以通过系统框架来调用内核以向
Figure BDA00031784702000000816
系统模拟器发送第一消息。
Figure BDA00031784702000000817
系统模拟器接收到
Figure BDA00031784702000000821
系统发送的消息后,
Figure BDA00031784702000000822
系统模拟器可以根据接收到的消息通过相应的应用程序打开用户要打开的文件(即第一文件)。
示例地,
Figure BDA00031784702000000818
系统模拟器可以对
Figure BDA00031784702000000820
系统的消息进行监听,当确定接收到的消息来自
Figure BDA00031784702000000819
系统,且包含打开文件的指令(如上述的打开指令)时,便可以根据消息中包含的文件名或文件路径打开相应的文件。
例如,当用户采用如图3所示的方式选择使用模拟器打开要打开的文件后,如图4所示,在
Figure BDA00031784702000000823
系统模拟器的界面401中,便能够显示采用相应应用程序打开的用户选择的文件。
其中,在打开文件时,根据文件格式的不同,能够打开该文件的应用程序也有所不同。例如,文本文件格式的文件可以通过文本类应用程序打开,图像文件格式的文件可以通过图像类应用程序打开,便携式文件格式(portable document format,PDF)的文件可以通过具有PDF编辑或阅读功能的应用程序打开,计算机辅助设计(computer aided design,CAD)图形文件格式的文件可以通过CAD应用程序打开。因此,可选地,可以在
Figure BDA00031784702000000824
系统模拟器中维护一个文件格式(或者文件扩展名)与多用途互联网邮件扩展(multipurposeinternet mail extensions,MIME)类型的匹配表,从而使
Figure BDA00031784702000000825
系统模拟器能够根据用户选择的文件的文件格式(或者文件扩展名)自动指定相应的应用程序来打开文件。
当然,在一些其他实施例中,也可以根据上述匹配表,当
Figure BDA00031784702000000826
系统模拟器打开用户选择的文件时,可以向用户展示(即显示)能够打开该文件的至少一个应用程序供用户选择,当用户选择其中的一个应用程序后,
Figure BDA0003178470200000091
系统模拟器便能够通过用户选择的应用程序打开用户要打开的文件。例如,如图5所示,当用户选择使用
Figure BDA0003178470200000092
系统模拟器打开相应的文件后(例如,用户通过如图3所示的方式选择使用模拟器打开要打开的文件),
Figure BDA0003178470200000093
系统模拟器的界面501中可以向用户展示能够打开用户选择的文件的多个应用程序(例如,图中所示的应用程序1、应用程序2以及应用程序3等),当用户选择相应的应用程序时,
Figure BDA0003178470200000094
系统模拟器便能够通过用户选择的应用程序打开用户要打开的文件。
可选地,当
Figure BDA0003178470200000095
系统模拟器接收到第一消息后,上述的根据第一消息通过相应的应用程序打开用户要打开的文件的示例,以及打开文件时向用户展示多个能够打开相关文件的应用程序的示例,均可通过图2中所示的
Figure BDA0003178470200000098
系统模拟器中的代理服务来实现。
需要说明的是,若要在
Figure BDA0003178470200000096
系统模拟器中维护一个文件格式(或者文件扩展名)与MIME类型的匹配表,以便于
Figure BDA0003178470200000097
系统模拟器可以自动指定应用程序打开文件,则可以将该匹配表维护在上述的安卓服务中。
示例地,基于上述实施例,当电脑采用如图2所示的体系架构时,
Figure BDA0003178470200000099
系统的代理应用程序可以在检测到用户选择使用
Figure BDA00031784702000000910
系统模拟器打开第一文件的操作时,生成第一消息,然后通过系统框架调用内核向
Figure BDA00031784702000000911
系统模拟器中的安卓驱动发送第一消息。安卓驱动再将第一消息通过代理动态库发送给
Figure BDA00031784702000000912
系统模拟器中的代理服务。代理服务可以持续监听消息,当接收到第一消息后,代理服务便可以根据第一消息来打开第一文件。
采用上述实施例中的方法,用户可以在电子设备上运行的第一操作系统(如
Figure BDA00031784702000000913
系统)上打开文件时通过第二操作系统的模拟器(如
Figure BDA00031784702000000914
系统模拟器)打开,从而为用户提供更加便捷的文件打开体验。
例如,用户在第一操作系统上需要打开某个文件时,若第一操作系统中没有能够打开用户需要打开的文件的应用程序,而第二操作系统的模拟器中有能够打开用户需要打开的文件的应用程序,则用户可以通过第二操作系统的模拟器中的相应应用程序打开要打开的文件。示例地,以第一操作系统为
Figure BDA00031784702000000916
系统,第二操作系统为
Figure BDA00031784702000000917
系统(即第二操作系统的模拟器为
Figure BDA00031784702000000915
系统模拟器)为例,当用户在
Figure BDA00031784702000000918
系统上下载了移动设备的应用程序安装文件后,用户需要打开该移动设备的应用程序安装文件进行应用程序的安装时,由于
Figure BDA00031784702000000919
系统上没有能够打开该移动设备的应用程序安装文件的应用程序,因此,用户可以通过
Figure BDA00031784702000000920
系统模拟器来打开该移动设备的应用程序安装文件。
对应于前述实施例中的方法,本申请实施例还提供一种文件打开装置。该装置可以应用于上述的电子设备用于实现前述实施例中的方法。该装置的功能可以通过硬件执行相应的软件实现。包括一个或多个与上述方法功能相对应的模块。例如,该装置包括:代理应用模块、代理服务模块等。代理应用模块可服务于第一操作系统,代理服务模块可服务于第二操作系统的模拟器,配合用于实现上述实施例中的方法。
本申请实施例还可以提供一种装置,如:电子设备,可以包括:处理器,用于存储该处理器可执行指令的存储器。该处理器被配置为执行上述指令时,使得该电子设备实现如前述实施例中的文件打开方法。该存储器可以位于该电子设备之内,也可以位于该电子设备之外。且该处理器包括一个或多个。
本申请实施例还提供一种芯片系统,该芯片系统可以应用于上述电子设备。芯片系统包括一个或多个接口电路和一个或多个处理器;接口电路和处理器通过线路互联;处理器通过接口电路从电子设备的存储器接收并执行计算机指令,以实现以上方法实施例中相关的方法。
本申请实施例还提供一种计算机程序产品,包括电子设备,如上述电子设备,运行的计算机指令(即计算机可读代码)。当计算机可读代码在电子设备中运行时,使得电子设备实现上述方法实施例中相关的方法。
本申请实施例还可以提供一种计算机可读存储介质,其上存储有计算机程序指令。当计算机程序指令被电子设备执行时,使得电子设备实现如前述方法实施例中的文件打开方法。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (9)

1.一种文件打开方法,其特征在于,应用于电子设备,所述电子设备运行第一操作系统,所述第一操作系统上运行有第二操作系统的模拟器,所述第一操作系统中预设有代理应用程序,所述第二操作系统的模拟器中预设有代理服务模块,所述代理应用程序中预设有文件格式清单,所述文件格式清单包含能够使用所述第二操作系统的模拟器打开的文件的文件格式;所述方法包括:
所述代理应用程序检测到用户在所述第一操作系统中选择第一文件的操作,所述第一文件由所述第一操作系统存储在所述电子设备中;
所述代理应用程序根据所述文件格式清单确定所述第一文件能够使用所述第二操作系统的模拟器打开,显示用于触发使用所述第二操作系统的模拟器打开所述第一文件的功能选项;
所述代理应用程序检测到用户在所述第一操作系统中选择使用所述第二操作系统的模拟器打开第一文件的操作;
所述代理应用程序向所述代理服务模块发送第一消息,所述第一消息包括所述第一文件的文件名,和/或,所述第一文件的存储路径;
所述代理服务模块根据所述第一消息通过所述第二操作系统的模拟器中的第一应用程序打开所述第一文件,所述第一应用程序为所述第二操作系统的模拟器中具有打开所述第一文件的功能的应用程序。
2.根据权利要求1所述的方法,其特征在于,所述第一操作系统包括应用层、框架层以及内核层,所述代理应用程序部署于所述应用层,所述框架层包括系统框架,所述内核层包括内核;所述第二操作系统的模拟器包括代理动态库以及系统驱动,所述代理服务模块部署于所述应用层,所述代理动态库部署于所述框架层,所述系统驱动部署于所述内核层。
3.根据权利要求2所述的方法,其特征在于,所述代理应用程序向所述代理服务模块发送第一消息,包括:
所述代理应用程序通过所述系统框架调用所述内核向所述系统驱动发送所述第一消息;
所述系统驱动通过所述代理动态库将所述第一消息发送给所述代理服务模块。
4.根据权利要求1所述的方法,其特征在于,所述用户在所述第一操作系统中选择所述第一文件的操作包括:用户长按或右键点击所述第一文件。
5.根据权利要求1所述的方法,其特征在于,所述第一消息还包括用于指示打开所述第一文件的打开指令。
6.根据权利要求1或5所述的方法,其特征在于,所述代理服务模块根据所述第一消息通过所述第二操作系统的模拟器中的第一应用程序打开所述第一文件,包括:
所述代理服务模块根据所述第一消息确定所述第一文件的存储位置;
所述代理服务模块根据所述第一文件的文件格式确定所述第一应用程序;
所述代理服务模块通过所述第一应用程序打开所述第一文件。
7.根据权利要求1或5所述的方法,其特征在于,所述代理服务模块根据所述第一消息通过所述第二操作系统的模拟器中的第一应用程序打开所述第一文件,包括:
所述代理服务模块根据所述第一消息确定所述第一文件的存储位置;
所述代理服务模块根据所述第一文件的文件格式确定并显示所述第二操作系统的模拟器中至少一个具有打开所述第一文件的功能的应用程序;
所述代理服务模块检测到用户选择所述第一应用程序的操作,通过用户选择的第一应用程序打开所述第一文件。
8.一种电子设备,其特征在于,包括:处理器,用于存储所述处理器可执行指令的存储器,所述处理器被配置为执行所述指令时,使得所述电子设备实现如权利要求1至7任一项所述的方法。
9.一种计算机可读存储介质,其特征在于,包括计算机可读代码,当所述计算机可读代码在电子设备中运行时,使得电子设备实现如权利要求1至7任一项所述的方法。
CN202110839613.4A 2021-07-23 2021-07-23 一种文件打开方法及设备 Active CN113672290B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110839613.4A CN113672290B (zh) 2021-07-23 2021-07-23 一种文件打开方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110839613.4A CN113672290B (zh) 2021-07-23 2021-07-23 一种文件打开方法及设备

Publications (2)

Publication Number Publication Date
CN113672290A CN113672290A (zh) 2021-11-19
CN113672290B true CN113672290B (zh) 2022-09-20

Family

ID=78540078

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110839613.4A Active CN113672290B (zh) 2021-07-23 2021-07-23 一种文件打开方法及设备

Country Status (1)

Country Link
CN (1) CN113672290B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113934559B (zh) * 2021-12-15 2022-06-03 北京鲸鲮信息系统技术有限公司 应用程序查询方法、装置、设备和存储介质
CN114579237B (zh) * 2022-02-28 2024-07-23 联想(北京)有限公司 资源对象处理方法、装置及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103176899A (zh) * 2011-12-26 2013-06-26 希姆通信息技术(上海)有限公司 手机模拟器及在宿主机上模拟手机功能的方法
CN103677956A (zh) * 2013-12-06 2014-03-26 北京奇虎科技有限公司 一种在计算设备上模拟移动设备应用运行的方法和装置
CN106156031A (zh) * 2015-03-24 2016-11-23 联想(北京)有限公司 一种信息处理方法及电子设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090327310A1 (en) * 2008-06-27 2009-12-31 Sony Ericsson Mobile Communications Ab Methods for providing access to files on an electronic device using a phone number for authentication and related electronic devices and computer program products

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103176899A (zh) * 2011-12-26 2013-06-26 希姆通信息技术(上海)有限公司 手机模拟器及在宿主机上模拟手机功能的方法
CN103677956A (zh) * 2013-12-06 2014-03-26 北京奇虎科技有限公司 一种在计算设备上模拟移动设备应用运行的方法和装置
CN106156031A (zh) * 2015-03-24 2016-11-23 联想(北京)有限公司 一种信息处理方法及电子设备

Also Published As

Publication number Publication date
CN113672290A (zh) 2021-11-19

Similar Documents

Publication Publication Date Title
EP2701054B1 (en) Method and apparatus for constructing a home screen in a terminal having a touch screen
US9727348B2 (en) Providing a context-aware help content using a transparent overlay on a touch sensitive screen
US8881047B2 (en) Systems and methods for dynamic background user interface(s)
CN110417988B (zh) 一种界面显示方法、装置及设备
CN110168487B (zh) 一种触摸控制方法及装置
US20110167383A1 (en) Notification In Immersive Applications
US9521232B2 (en) Apparatus and method for controlling operation of mobile terminal
US11455075B2 (en) Display method when application is exited and terminal
CN105975190B (zh) 一种图形界面的处理方法、装置及系统
EP4206883A1 (en) Permission setting method and apparatus and electronic device
CN113672290B (zh) 一种文件打开方法及设备
KR20130133980A (ko) 터치스크린을 가진 단말에서 오브젝트 이동 방법 및 장치
KR20140105689A (ko) 사용자의 입력에 응답하여 피드백을 제공하는 방법 및 이를 구현하는 단말
KR20150007048A (ko) 전자 장치의 디스플레이 방법
EP3962049B1 (en) Content input method and terminal device
US20140164186A1 (en) Method for providing application information and mobile terminal thereof
CN108780400B (zh) 数据处理方法及电子设备
US20210223920A1 (en) Shortcut Key Control Method and Terminal
CN110647277A (zh) 一种控制方法及终端设备
US11243679B2 (en) Remote data input framework
CN113282546B (zh) 文件处理方法及装置
CN107728898B (zh) 一种信息处理方法及移动终端
WO2020253282A1 (zh) 一种项目开启方法及装置、显示设备
CN113672289B (zh) 一种文件打开方法及设备
JP6580903B2 (ja) 携帯電子機器

Legal Events

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