CN114647350A - 应用共享方法、电子设备和存储介质 - Google Patents

应用共享方法、电子设备和存储介质 Download PDF

Info

Publication number
CN114647350A
CN114647350A CN202011502015.XA CN202011502015A CN114647350A CN 114647350 A CN114647350 A CN 114647350A CN 202011502015 A CN202011502015 A CN 202011502015A CN 114647350 A CN114647350 A CN 114647350A
Authority
CN
China
Prior art keywords
application
electronic device
interface
user
option
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.)
Granted
Application number
CN202011502015.XA
Other languages
English (en)
Other versions
CN114647350B (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202011502015.XA priority Critical patent/CN114647350B/zh
Priority to EP21905590.2A priority patent/EP4242810A4/en
Priority to US18/258,194 priority patent/US20240069850A1/en
Priority to PCT/CN2021/136337 priority patent/WO2022127661A1/zh
Publication of CN114647350A publication Critical patent/CN114647350A/zh
Application granted granted Critical
Publication of CN114647350B publication Critical patent/CN114647350B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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/0482Interaction with lists of selectable items, e.g. menus
    • 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0485Scrolling or panning
    • 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/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
    • 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1454Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
    • 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/451Execution arrangements for user interfaces
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/14Display of multiple viewports
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2354/00Aspects of interface with display user
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/401Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference
    • H04L65/4015Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference where at least one of the additional parallel sessions is real time or time sensitive, e.g. white board sharing, collaboration or spawning of a subconference

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • User Interface Of Digital Computer (AREA)
  • Telephone Function (AREA)

Abstract

本申请实施例提供一种应用共享方法、电子设备和存储介质,涉及通信技术领域,上述方法中,第一设备与第二设备处于多屏协同状态,第二设备已安装第二应用,第一设备未安装第二应用,若用户在第一设备中浏览第一应用的界面时,期望对当前第一应用的界面进行分享等操作,可以在第一设备的显示界面上调用第二设备中的第二应用完成上述分享;从而提供了一种在多个设备之间基于跨应用的数据共享方式,可以提升用户的体验。

Description

应用共享方法、电子设备和存储介质
技术领域
本申请实施例涉及通信技术领域,特别涉及一种应用共享方法、电子设备和存储介质。
背景技术
随着信息技术的不断发展,网络已成为信息传播的重要手段。此外,随着电子设备的多样化,电子设备之间的互动越来越多。尤其是电子设备之间的多屏协同,例如,可以将一个电子设备的显示内容显示在另一个电子设备的屏幕上,或者将一个电子设备的文件传输到另一个电子设备中。
发明内容
本申请实施例提供了一种应用共享方法和电子设备,本申请还提供一种计算机可读存储介质,以提供一种高效的应用共享方式,可以实现跨设备间的应用共享。
第一方面,本申请实施例提供了一种应用共享方法,应用于第一电子设备,上述第一电子设备已安装第一应用,包括:
显示第一应用的第一界面,第一界面包括第一选项;具体地,该第一电子设备可以是具有较大屏幕的显示设备,例如,平板。本申请对第一电子设备的具体形式不作限定。该第一应用可以是具有浏览内容的应用,例如,一个网页。本申请对第一应用的具体类型不作限定。第一选项可以是对该第一应用进行操作的选项,例如,分享。本申请对该第一选项的具体形式不作限定。
接收用户对第一选项的第一操作;具体地,该第一操作可以是点击,可以是双击,也可以是滑动,本申请对该第一操作的具体形式不作限定。
响应于第一操作,显示第一菜单,第一菜单包括第二应用的图标,该第二应用为第二电子设备上安装的应用;具体地,该第二电子设备可以是具有较小屏幕的显示设备,例如,手机。该第二应用的数目可以是一个或多个。该第二应用可以和上述第一选项的任务类型对应,示例性的,若上述第一选项为分享类型,则该第二应用可以为用于分享的社交软件,例如,微博、微信等。本申请对第二应用的具体形式不作限定。
接收用户对第二应用的图标的第二操作;具体地,该第二操作可以是点击,可以是双击,也可以是滑动,本申请对该第二操作的具体形式不作限定。
响应于第二操作,确定第二应用,向第二电子设备发送应用共享请求,应用共享请求用于指示第二电子设备启动第二应用。
本实施例中,通过对多屏协同设备上的应用进行共享,由此可以实现跨设备间应用共享,进而可以提高用户的使用体验。
其中一种可能的实现方式中,接收用户对第一选项的第一操作之前,还包括:
与第二电子设备建立多屏协同连接。
本实施例中,通过第一电子设备与第二电子设备建立多屏协同连接,由此可以实现上述两个设备间的多屏协同,进而可以实现设备间的应用共享。
其中一种可能的实现方式中,还包括:
显示第二界面,第二界面包括第二电子设备的窗口。
本实施例中,通过在第一电子设备中显示第二电子设备的窗口,可以实现对第二电子设备中的显示内容进行远程观看,提高用户的观看体验。
其中一种可能的实现方式中,第二界面包括第二选项,则显示第二界面之后,还包括:
备接收用户对第二选项的第三操作;具体地,该第二选项可以是对应于上述第二界面的控件,例如,最小化控件。该第三操作可以是点击,可以是双击,也可以是滑动,本申请对该第二操作的具体形式不作限定。
响应于第三操作,最小化第二电子设备的窗口。
本实施例中,通过对第二电子设备的窗口进行最小化,可以实现对第二电子设备的窗口进行隐藏的功能,由此可以提高用户的观看体验。
其中一种可能的实现方式中,还包括:
第二电子设备的窗口中显示第二应用的界面。具体地,第二电子设备启动确定的第二应用之后,还可以显示第二应用的界面,由此通过多屏协同,在第二电子设备的窗口中显示第二应用的界面。
本实施例中,通过在第二电子设备的窗口中显示第二应用的界面,可以实现在第一电子设备中观看第二电子设备中的内容,由此可以提高用户的观看体验。
其中一种可能的实现方式中,还包括:
第一电子设备已安装第三应用,则上述第一菜单还包括第三应用的图标。具体地,该第三应用可以是第一电子设备本地安装的与上述第一选项的任务类型对应的应用程序。
本实施例中,通过在第一菜单中显示第三应用的图标,用户可以选取该第三应用,由此可以使得当前第一应用的内容可以通过本地应用进行处理,可以提高用户选取的自由度,进而可以提高用户的使用体验。
其中一种可能的实现方式中,还包括:
第一菜单还包括第一标识,第一标识用于指示第二应用为安装在第二电子设备上的应用。具体地,该第一标识可以是标识用户来源的标记,例如,第二电子设备的名称。本申请对该第一标识的具体形式不作限定。
本实施中,通过对第二应用的来源进行标记,由此可以让用户获知该第二应用的来源,可以提高用户操作的灵活性。
其中一种可能的实现方式中,还包括:
第一菜单中的第二应用由第一选项对应的任务类型确定。具体地,该任务类型可以是对当前第一应用中的内容的处理类型,例如,分享、转发等类型。本申请对上述任务类型的具体形式不作限定。
本实施例中,通过任务类型确定第二应用,可以提高对第二应用的检索效率。
其中一种可能的实现方式中,接收用户对第一选项的第一操作之前,还包括:
接收第二电子设备发送的第一应用程序信息,第一应用程序信息包括第二应用的安装包信息。具体地,该安装包信息可以是与安装包相关的信息,例如,图标、安装包名称等信息,可以理解的是,该安装包信息不包括安装包本身。
本实施例中,通过第二电子设备主动向第一电子设备发送第一应用程序信息,第一电子设备可以获取第二电子设备中第二应用,由此可以提高对第二应用的检索效率。
其中一种可能的实现方式中,接收第二电子设备发送的第一应用程序信息之后,还包括:
基于第二电子设备发送的第一应用程序信息进行模拟,得到第二应用。
本实施中,第一电子设备在收到第二电子设备发送的应用程序信息后,直接进行模拟,由此可以提高对第二应用的检索效率。
其中一种可能的实现方式中,接收第二电子设备发送的第一应用程序信息之后,还包括:
基于第一选项对应的任务类型在第一应用程序信息中进行查询,获得与任务类型匹配的第二应用程序信息;基于第二应用程序信息进行模拟,得到第二应用。
本实施例中,第一电子设备仅对与任务类型匹配的第二应用程序信息进行模拟,得到第二应用,由此可以减少冗余的第二应用,减少第一电子设备中的内存占用率,进而可以提高第一电子设备的系统效率。
其中一种可能的实现方式中,响应于第一操作之后,还包括:
基于第一选项对应的任务类型向第二电子设备发送查询请求,其中,查询请求用于获取第二电子设备已安装的第二应用的应用程序信息。
本实施例中,第一电子设备向第二电子设备主动请求应用程序信息,由此可以避免接收冗余的应用程序信息,进而可以减少第一电子设备的内存占用率,提高第一电子设备的系统效率。
第二方面,本申请实施例提供一种应用共享装置,包括:
第一显示模块,用于显示第一应用的第一界面,第一界面包括第一选项;
第一接收模块,用于接收用户对第一选项的第一操作;
第二显示模块,用于响应于第一操作,显示第一菜单,第一菜单包括第二应用的图标,第二应用为第二电子设备上安装的应用;
第二接收模块,用于接收用户对第二应用的图标的第二操作;
共享模块,用于响应于第二操作,确定第二应用,向第二电子设备发送应用共享请求,应用共享请求用于指示第二电子设备启动第二应用。
其中一种可能的实现方式中,上述装置还包括:
连接模块,用于与第二电子设备建立多屏协同连接。
其中一种可能的实现方式中,上述装置还包括:
第三显示模块,用于显示第二界面,第二界面包括第二电子设备的窗口。
其中一种可能的实现方式中,第二界面包括第二选项,上述装置还包括:
最小化模块,用于接收用户对第二选项的第三操作;第一电子设备响应于第三操作,最小化第二电子设备的窗口。
其中一种可能的实现方式中,第二电子设备的窗口中显示第二应用的界面。
其中一种可能的实现方式中,第一电子设备已安装第三应用,第一菜单还包括第三应用的图标。
其中一种可能的实现方式中,第一菜单还包括第一标识,第一标识用于指示第二应用为安装在第二电子设备上的应用。
其中一种可能的实现方式中,第一菜单中的第二应用由第一选项对应的任务类型确定。
其中一种可能的实现方式中,上述装置还包括:
第三接收模块,用于接收第二电子设备发送的第一应用程序信息,第一应用程序信息包括第二应用的安装包信息。
其中一种可能的实现方式中,上述装置还包括:
第一模拟模块,用于基于第二电子设备发送的第一应用程序信息进行模拟,得到第二应用。
其中一种可能的实现方式中,上述装置还包括:
第二模拟模块,用于基于第一选项对应的任务类型在第一应用程序信息中进行查询,获得与任务类型匹配的第二应用程序信息;基于第二应用程序信息进行模拟,得到第二应用。
其中一种可能的实现方式中,上述装置还包括:
查询模块,用于基于第一选项对应的任务类型向第二电子设备发送查询请求,其中,查询请求用于获取第二电子设备已安装的第二应用的应用程序信息。
第三方面,本申请实施例提供一种第一电子设备,包括:
显示屏;处理器;存储器;多个应用程序;以及计算机程序,其中,上述计算机程序被存储在上述存储器中,上述计算机程序包括指令,当上述指令被上述第一电子设备执行时,使得上述第一电子设备执行以下步骤:
显示第一应用的第一界面,第一界面包括第一选项;
接收用户对第一选项的第一操作;
响应于第一操作,显示第一菜单,第一菜单包括第二应用的图标,第二应用为第二电子设备上安装的应用;
接收用户对第二应用的图标的第二操作;
响应于第二操作,确定第二应用,向第二电子设备发送应用共享请求,应用共享请求用于指示第二电子设备启动第二应用。
其中一种可能的实现方式中,上述指令被上述第一电子设备执行时,使得上述第一电子设备执行接收用户对第一选项的第一操作的步骤之前,还执行以下步骤:
与第二电子设备建立多屏协同连接。
其中一种可能的实现方式中,上述指令被上述第一电子设备执行时,使得上述第一电子设备还执行以下步骤:
显示第二界面,第二界面包括第二电子设备的窗口。
其中一种可能的实现方式中,第二界面包括第二选项,上述指令被上述第一电子设备执行时,使得上述第一电子设备执行显示第二界面的步骤之后,还执行以下步骤:
接收用户对第二选项的第三操作;
响应于第三操作,最小化第二电子设备的窗口。
其中一种可能的实现方式中,第二电子设备的窗口中显示第二应用的界面。
其中一种可能的实现方式中,第一电子设备已安装第三应用,第一菜单还包括第三应用的图标。
其中一种可能的实现方式中,第一菜单还包括第一标识,第一标识用于指示第二应用为安装在第二电子设备上的应用。
其中一种可能的实现方式中,所述第一菜单中的第二应用由所述第一选项对应的任务类型确定。
其中一种可能的实现方式中,上述指令被上述第一电子设备执行时,使得上述第一电子设备执行接收用户对第一选项的第一操作的步骤之前,还执行以下步骤:
接收第二电子设备发送的第一应用程序信息,第一应用程序信息包括第二应用的安装包信息。
其中一种可能的实现方式中,上述指令被上述第一电子设备执行时,使得上述第一电子设备执行接收第二电子设备发送的第一应用程序信息的步骤之后,还执行以下步骤:
基于第二电子设备发送的第一应用程序信息进行模拟,得到第二应用。
其中一种可能的实现方式中,上述指令被上述第一电子设备执行时,使得上述第一电子设备执行接收第二电子设备发送的第一应用程序信息的步骤之后,还执行以下步骤:
基于第一选项对应的任务类型在第一应用程序信息中进行查询,获得与任务类型匹配的第二应用程序信息;
基于第二应用程序信息进行模拟,得到第二应用。
其中一种可能的实现方式中,上述指令被上述第一电子设备执行时,使得上述第一电子设备执行响应于第一操作的步骤之后,还执行以下步骤:
基于第一选项对应的任务类型向第二电子设备发送查询请求,其中,查询请求用于获取第二电子设备已安装的第二应用的应用程序信息。
应当理解的是,本申请的第二至三方面与本申请的第一方面的技术方案一致,各方面及对应的可行实施方式所取得的有益效果相似,不再赘述。
第四方面,本申请提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行如第一方面所述的方法。
第五方面,本申请提供一种计算机程序,当所述计算机程序被计算机执行时,用于执行第一方面所述的方法。
在一种可能的设计中,第五方面中的程序可以全部或者部分存储在与处理器封装在一起的存储介质上,也可以部分或者全部存储在不与处理器封装在一起的存储器上。
附图说明
图1为本申请实施例提供的应用场景架构图;
图2为本申请电子设备一个实施例的结构示意图;
图3为本申请实施例提供的软件架构示意图;
图4A-图4C为本申请实施例提供的用户界面示意图;
图5A-图5C为本申请实施例提供的多屏协同连接界面示意图;
图6A和图6B为本申请实施例提供的多屏协同窗口示意图;
图7为本申请实施例提供的多屏协同窗口最小化示意图;
图8为本申请实施例提供的应用共享方法的流程图;
图9和图9A为本申请实施例提供的应用程序的界面操作示意图;
图10和图11为本申请实施例提供的菜单显示界面示意图;
图12为本申请实施例提供的多屏协同显示示意图;
图13-图15为本申请实施例提供的文件打开场景的操作示意图;
图16为本申请实施例提供的应用共享装置的结构示意图。
具体实施方式
本申请的实施方式部分使用的术语仅用于对本申请的具体实施例进行解释,而非旨在限定本申请。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。其中,在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
随着电子设备之间的多屏协同的功能的不断发展,基于多屏协同的应用越来越多样化。在现有技术中,在多屏协同的基础上可以实现电子设备之间屏幕的共享,例如,可以将一个电子设备的屏幕信息共享在另一个电子设备的屏幕上。也可以实现电子设备之间数据的共享,例如,可以将一个电子设备的文件拖拽到另一个电子设备中。然而,现有技术只针对可见的数据在跨设备间进行共享,例如,将一个文件进行共享。现有技术不能在跨设备之间实现跨应用的操作,例如,一个电子设备在启动自身的应用时无法通过调用另一个电子设备的应用程序,来实现应用的共享。举例来说,使用多屏协同,将平板电脑(简称为平板)和手机建立连接后,平板电脑上会镜像同屏显示手机窗口。用户可以在平板上显示的手机窗口中操作手机应用和文件,在平板通知栏查看手机端的部分通知消息(如微信、短信),并可以在平板顶部的小窗口接听和挂断手机端的来电。用户还可以在平板上的手机协同窗口中进行操作,以通过手机号码拨打电话,或查看手机上的文件,从而在平板上操作手机应用和文件。然而,现有技术在跨设备之间实现跨应用操作时,存在操作不便的问题,当用户在平板上打开一个应用时,无法在该应用中直接调用手机端安装的应用进行跨设备跨应用的分享,例如,用户在平板中进行网页浏览时,无法将该网页链接通过手机中的社交软件进行分享。
为此,本申请实施例提出一种应用共享方法,可以实现跨设备的应用共享,由此可以提升用户的体验。
为了更好的理解本申请实施例提供的一种应用共享方法、电子设备和存储介质,下面先对本申请实施例提供的一种应用共享方法适用的交互系统的构架进行描述。参阅图1,图1是本申请实施例提供的一种交互系统的示意图。如图1所示,该系统可以包括一个或多个第一设备11(图1中仅示例性地画出了其中一个第一设备)以及一个或多个第二设备12(图1中仅示例性地画出了其中一个第二设备),其中:
第一设备11可以安装并运行一个或多个应用程序(application,APP),该一个或多个应用程序例如可以是地图、购物、电子邮件等应用程序,还可以是用于将第一设备11的显示内容映射到第二设备的应用程序(本申请后续实施例将该应用程序称为“协同助手”)。应用程序也可以简称为应用。
第一设备11可以包括但不限于任何一种基于智能操作系统的手持式电子产品,其可与用户通过键盘、虚拟键盘、触摸板、触摸屏以及声控设备等输入设备来进行人机交互,诸如智能手机、平板电脑、手持计算机、可穿戴电子设备等。其中,智能操作系统包括但不限于任何通过向设备提供各种应用来丰富设备功能的操作系统,诸如安卓Android、IOS、Windows和MAC等系统。
第二设备12可以包括但不限于平板电脑、个人电脑、台式电脑、电视机、车载显示器、投影仪显示器等。在本实施例中,第二设备12可以为第一设备11提供显示服务。第二设备12上需要运行有相应的程序来提供该显示服务,如接收第一设备11发送的信息并保存的应用程序(下面可以称为“协同助手”)以及根据第一设备11发送的信息显示在第二设备12的显示屏上的应用程序(下面可以称为“窗口管理器”)等等。
第二设备12可以通过数据线、蓝牙或者无线保真(Wireless Fidelity,WiFi)网络等方式与第一设备11建立连接,以进行数据交互。示例性地,第一设备11和第二设备12可以通过WiFi p2p技术实现通信连接,当该两个设备都连接到同一个网络时,第一设备11可以搜索发现第二设备12,然后接收用户的操作指令实现与第二设备12的通信连接。或者当该两个设备同时接入到同一个网络时,第一设备11可以搜索发现第二设备12并自动与该第二设备12建立通信连接。下面会详细介绍该两个设备建立通信连接的过程,此处暂不详述。
下面结合图2首先介绍本申请以下实施例中提供的示例性电子设备。图2示出了电子设备100的结构示意图,电子设备100可以是图1中所示的第一设备11或第二设备12。
电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块150,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本申请实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。其中,控制器可以是电子设备200的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
本申请实施例提供的应用共享方法的执行可以由处理器110来控制或调用其他部件来完成,比如调用内部存储器121中存储的本申请实施例的处理程序,或者通过外部存储器接口120调用第三方设备中存储的本申请实施例的处理程序,来控制无线通信模块160向其他电子设备进行数据通信,以实现多个电子设备间的应用共享,提升用户的体验。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。在一些实施例中,处理器110可以包含多组I2C总线。处理器110可以通过不同的I2C总线接口分别耦合触摸传感器180K,充电器,闪光灯,摄像头193等。例如:处理器110可以通过I2C接口耦合触摸传感器180K,使处理器110与触摸传感器180K通过I2C总线接口通信,实现电子设备100的触摸功能。
I2S接口可以用于音频通信。在一些实施例中,处理器110可以包含多组I2S总线。处理器110可以通过I2S总线与音频模块170耦合,实现处理器110与音频模块170之间的通信。在一些实施例中,音频模块170可以通过I2S接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。
PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。在一些实施例中,音频模块170与无线通信模块160可以通过PCM总线接口耦合。在一些实施例中,音频模块170也可以通过PCM接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。所述I2S接口和所述PCM接口都可以用于音频通信。
UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。在一些实施例中,UART接口通常被用于连接处理器110与无线通信模块160。例如:处理器110通过UART接口与无线通信模块160中的蓝牙模块通信,实现蓝牙功能。在一些实施例中,音频模块170可以通过UART接口向无线通信模块160传递音频信号,实现通过蓝牙耳机播放音乐的功能。
MIPI接口可以被用于连接处理器110与显示屏194,摄像头193等外围器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(displayserial interface,DSI)等。在一些实施例中,处理器110和摄像头193通过CSI接口通信,实现电子设备100的拍摄功能。处理器110和显示屏194通过DSI接口通信,实现电子设备100的显示功能。
GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,GPIO接口可以用于连接处理器110与摄像头193,显示屏194,无线通信模块160,音频模块170,传感器模块180等。GPIO接口还可以被配置为I2C接口,I2S接口,UART接口,MIPI接口等。
USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为电子设备100充电,也可以用于电子设备100与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其它电子设备,例如AR设备等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备100的结构限定。在本申请另一些实施例中,电子设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其它功能模块设置在同一个器件中。
无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其它设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidounavigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellitesystem,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode的,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。
本申请实施例中,电子设备100可以通过显示屏194显示用户界面。
电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备100可以包括1个或N个摄像头193,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其它数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器110通过运行存储在内部存储器121的指令,和/或存储在设置于处理器中的存储器的指令,执行电子设备100的各种功能应用以及数据处理。
电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
触摸传感器180K,也称“触控面板”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于电子设备100的表面,与显示屏194所处的位置不同。
本申请实施例中,电子设备100可以通过触摸传感器180K接收用户的操作,例如,单击、双击或滑动等操作。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。
马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏194不同区域的触摸操作,马达191也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口195用于连接SIM卡。SIM卡可以通过插入SIM卡接口195,或从SIM卡接口195拔出,实现和电子设备100的接触和分离。电子设备100可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口195可以支持Nano SIM卡,Micro SIM卡,SIM卡等。同一个SIM卡接口195可以同时插入多张卡。所述多张卡的类型可以相同,也可以不同。SIM卡接口195也可以兼容不同类型的SIM卡。SIM卡接口195也可以兼容外部存储卡。电子设备100通过SIM卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,电子设备100采用eSIM,即:嵌入式SIM卡。eSIM卡可以嵌在电子设备100中,不能和电子设备100分离。
基于图2所示本申请实施例的电子设备100的硬件结构示意图,下面介绍本申请实施例的电子设备100和第一设备的软件结构框图,如图3所示。
电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明电子设备100和第一设备的软件结构。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,内核层以及连接层。
应用程序层可以包括一系列应用程序包。
其中,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,短信息和协同助手等应用程序。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
其中,应用程序框架层可以包括活动管理服务、应用接续流转服务、安装包管理服务、应用选择器、窗口管理器、资源管理器和显示框架等。
活动管理服务用于将启动模拟应用的事件通知到协同助手,以使得协同助手启动对应的模拟应用。
应用接续流转服务用于将电子设备100与第一设备(例如图1所示的第一设备11)建立连接的各个事件通知到应用程序层的“协同助手”,还可以用于响应于应用程序层的“协同助手”的指令辅助该“协同助手”获取数据信息。示例性地,应用接续流转服务获取的数据信息包括第一设备已安装应用的安装包信息。示例性地,应用接续流转服务可以实现“碰一碰”(Onehop)服务和组播源发现协议(multicast source discovery protocol,MSDP)服务,即电子设备100可以基于Onehop服务和MSDP服务与第一设备建立通信连接。
安装包管理服务用于管理应用的安装包的安装、卸载以及安装包的配置信息的解析、查询等。
应用选择器用于查询可用的应用程序,以及调用用户选取的应用程序。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
显示框架用于获取电子设备100中正在显示的应用的界面或窗口的显示数据,并将界面或窗口的显示数据通过应用接续流转服务发送给“协同助手”,也可以用于通过应用接续流转服务获取“协同助手”接收的来自第一设备(例如图1所示的第一设备11)的显示数据等。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动和虚拟设备系统。
虚拟设备系统用于在电子设备100中虚拟第一设备的中的器件。示例性的,通过该虚拟设备系统,电子设备100可以虚拟第一设备的触屏,也就是说,可以将电子设备100的屏幕作为第一设备的第二屏幕(例如,该第二屏幕可以对应协同窗口),而第一设备的自身的屏幕可以作为第一屏幕,由此可以使得用户在电子设备100的第二屏幕上操作时,第一设备可以接收到对应的操作,也就是说,当用户在上述第二屏幕上操作时,可以认为用户在第一屏幕上操作,由此可以实现电子设备100与第一设备之间的协同操作。
下面结合第一设备(例如图1所示的第一设备11)将数据传输到电子设备100的场景,示例性说明电子设备100软件以及硬件的工作流程。需要说明的是,该电子设备100的桌面可以是开启电子设备并成功登陆该电子设备的系统后显示在主屏幕区域的一个或多个用户界面,这些用户界面可以包括该电子设备上安装的应用的图标和名称。
用户在上述第一设备中安装任一应用后,该应用的安装包信息可以存储在安装包管理服务中。其中,该安装包信息可以包括应用图标及应用能力等信息,该应用能力用于标识该应用可以接收哪些格式的内容,或者该应用可以打开哪些格式的文件。可以理解的,该安装包信息不包含安装包本身。
应用接续流转服务可以获取安装包管理服务中的安装包信息,并调用连接层的连接服务,将该安装包信息通过连接服务发送给电子设备100。
电子设备100通过连接服务接收到第一设备发送的安装包信息后,将该安装包信息发送给应用接续流转服务。接着,电子设备100通过该应用接续流转服务将安装包信息发送给协同助手。
电子设备100中的协同助手收到该安装包信息后,对该安装包进行模拟,并将该安装包信息存储在安装包管理服务中。
用户可以在电子设备100的显示屏194上进行触摸操作,当电子设备100中的触摸传感器180K接收到用户的触摸操作,相应的硬件中断被发给内核层。内核层将触摸操作加工成原始输入事件(包括触摸坐标,触摸操作的时间戳等信息)。原始输入事件被存储在内核层。应用程序框架层从内核层获取原始输入事件,识别该输入事件所对应的控件。
以该触摸操作是触摸单击操作,该单击操作所对应的控件为“浏览器”应用程序的控件为例,“浏览器”应用调用应用程序框架层的应用接续流转服务接口,启动“浏览器”应用,并获得“浏览器”应用的用户界面(user interface,UI)。
用户还可以在上述“浏览器”应用的用户界面上进行触摸操作,例如,用户可以单击与“分享”功能键对应的控件,以对该“浏览器”应用的当前页面进行分享。电子设备100中的触摸传感器180K接收到用户的触摸操作,相应的硬件中断被发给内核层。内核层将触摸操作加工成原始输入事件。应用程序框架层中的应用选择器从内核层获取原始输入事件,识别该输入事件所对应的控件。接着,应用选择器基于当前的控件(例如,上述“分享”控件)向安装包管理服务查询可用的应用程序,该可用的应用程序可以是用于对上述“浏览器”应用的页面进行分享的应用。该可用的应用程序包括电子设备100自身安装的应用程序(例如微博应用),也包括第一设备安装的应用程序(例如微信应用)。安装包管理服务接收到应用选择器的查询请求后,基于存储的安装包信息向应用选择器返回一个或多个可用的应用程序名称。
接着,用户还可以进一步在上述“浏览器”应用的用户界面上进行触摸操作,以完成在上述一个或多个可用的应用程序中选取一个应用程序的操作,例如,用户可以单击与“微信”图标对应的控件,以调用“微信”应用。电子设备100中的触摸传感器180K接收到用户的触摸操作,相应的硬件中断被发给内核层。内核层将触摸操作加工成原始输入事件。应用程序框架层中的应用选择器从内核层获取原始输入事件,识别该输入事件所对应的控件。接着,应用选择器基于当前的控件(例如,上述“微信”应用控件)向活动管理服务发起调用请求,其中,该调用请求可以包括当前分享的内容(例如,上述“浏览器”应用的页面)及调用的应用程序的名称(例如,上述“微信”应用)。
活动管理服务接收到应用选择器发送的调用请求,将该调用请求发送给应用程序层的“协同助手”应用,以对本次请求的应用进行模拟。
“协同助手”应用接收到活动管理服务发送的调用请求后,对该调用请求中的应用(例如,上述“微信”应用)进行模拟,并将调用的应用程序的名称及分享的内容通过连接层的连接服务发送给第一设备。
第一设备通过连接层的连接服务接收到调用的应用程序的名称及分享的内容后,将上述调用的应用程序的名称及分享的内容发送给应用接续流转服务。
应用接续流转服务可以基于接收到调用的应用程序的名称启动应用,并在该应用中对上述分享的内容进行分享,由此可以完成电子设备100与第一设备之间的数据共享。
需要说明的是,本申请实施例提供的第二设备(例如图1所示的第二设备12)的硬件结构和软件结构框架可以参考上述图2和图3中所示的结构,当然,第一设备与第二设备(上述电子设备100)硬件结构和软件结构框架可以不完全相同,具体根据实际情况确定,此处不再赘述。
基于上述图1所示的系统框架、图2所示的设备的硬件框架和图3所示的设备软件框架,本申请实施例提供了一种应用共享方法和电子设备,本申请实施例涉及到的设备安装有“协同助手”的应用程序,在本申请实施例中,需要在设备的“协同助手”开启的条件下,实现将第一设备的应用信息传输到第二设备上。
“协同助手”可以是设备提供的一种服务或功能,可以用于实现第一设备与第二设备建立通信连接、实现第一设备与第二设备之间的数据传输和实现第二设备与第一设备的指令传输等等功能。示例性地,“协同助手”可以是安卓安装包(AndroidPackage,APK),可以以控件或APP的形式安装于设备中。
在具体的实现中,第一设备与第二设备建立通信连接、第一设备与第二设备之间的数据传输、第二设备与第一设备的指令传输这三个功能可以不集成在一个APK文件中,可以是通过一个或多个APK文件来实现这些功能。
可以理解的是,“协同助手”只是本实施例中所使用的一个词语,其代表的含义在本实施例中已经记载,其名称并不能对本实施例构成任何限制。
下面示例性地介绍本申请实施例中第一设备和第二设备提供的一些用户界面(user interface,UI)。本申请的说明书和权利要求书及附图中的术语“用户界面”,是应用程序或操作系统与用户之间进行交互和信息交换的介质接口,它实现信息的内部形式与用户可以接受形式之间的转换。用户界面常用的表现形式是图形用户界面(graphic userinterface,GUI),是指采用图形方式显示的与计算机操作相关的用户界面。GUI可以是在电子设备的显示屏中显示的一个图标、窗口、控件等界面元素,其中控件可以包括图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、Widget等可视的界面元素。
图4A示例性示出了第二设备上的用于展示第二设备安装的应用程序的示例性用户界面41。
用户界面41可包括:状态栏401,应用程序图标402,页面指示符403,具有常用应用程序图标的托盘404以及其它指示符(图4A中未示出)。其中:
状态栏401可包括:无线高保真(wireless fidelity,Wi-Fi)信号的一个或多个信号强度指示符401A、蓝牙指示符401B、电池状态指示符401C、时间指示符401D。
应用程序图标402包括第一应用、第二应用、第三应用、第四应用、第五应用、第六应用和第七应用等的图标,这些应用可以是邮箱、手机管家、图库、华为商城、视频、互联网、时钟、QQ、微信、淘宝、高德地图等等。
页面指示符403可用于指示用户当前浏览的是哪一个页面中的应用程序图标。用户可以左右滑动应用程序图标402的区域,来浏览其它页面中的应用程序图标。这些页面也可以称为该第二设备的桌面。
具有常用应用程序图标的托盘404可展示:第八应用、第九应用、第十应用和第十一应用等的图标。这些应用可以是比较常用的应用,例如可以是设置、音乐、阅读和相机等等。
在一些实施例中,用户界面41还可包括导航栏,其中导航栏可包括:返回键、主屏幕键、多任务键等系统导航键。当检测到用户点击返回键时,第二设备可显示当前页面的上一个页面。当检测到用户点击主屏幕键时,第二设备可显示主界面。当检测到用户点击多任务键时,第二设备可显示用户最近打开的任务。各导航键的命名还可以为其它,本申请对此不做限制。不限于虚拟按键,导航栏中的各导航键也可以实现为物理按键。
在其它一些实施例中,第二设备还可以包括实体的主屏幕键。该主屏幕键可用于接收用户的指令,将当前显示的UI返回到主界面,这样可以方便用户随时查看主屏幕。上述指令具体可以是用户单次按下主屏幕键的操作指令,也可以是用户在短时间内连续两次按下主屏幕键的操作指令,还可以是用户在预定时间内长按主屏幕键的操作指令。在本申请其它一些实施例中,主屏幕键还可以集成指纹识别器,以便用于在按下主屏幕键的时候,随之进行指纹采集和识别。
可以理解的是,图4A仅仅示例性示出了第二设备上的用户界面,不应构成对本申请实施例的限定。
下面示例性地介绍本申请实施例提供的开启第二设备上的“协同助手”的方式。
图4A及图4B示例性示出了第二设备上的一种开启“协同助手”的操作。
如图4A所示,当第二设备检测到在状态栏401上的向下滑动手势时,响应于该手势,第二设备可以在用户界面41上显示窗口405。如图4B所示,窗口405中可以显示有“协同助手”的开关控件405A,还可以显示有其它功能(如WiFi、蓝牙、手电筒等等)的开关控件。当检测到在窗口405中的开关控件405A上的触控操作(如在开关控件405A上的点击或触摸操作)时,响应于该触控操作,第二设备可以开启“协同助手”。
也即是说,用户可以在状态栏401处做一个向下滑动的手势来打开窗口405,并可以在窗口405中点击“协同助手”的开关控件405A来方便地开启“协同助手”。“协同助手”的开关控件405A的表现形式可以但不限于为文本信息和/或图标。
在其中一种可能的实施方式中,“协同助手”也可以像邮箱、图库等应用一样以应用图标的形式显示在第二设备的桌面上,当第二设备检测到对该“协同助手”图标的点击或触摸等操作后,开启该第二设备上的“协同助手”。
在本申请一些实施例中,第二设备开启“协同助手”之后,还可以在状态栏401中显示“协同助手”已开启的提示信息。例如,在状态栏401中显示“协同助手”的图标或者直接显示文本“协同助手”等。例如,可以参见图4C,在图4C中,图标406即为“协同助手”的图标。需要说明的是,“协同助手”的图标不限于图4B和图4C中所示的图标,这仅为一个示例,本方案对“协同助手”的图标的具体表现形式不做限制。
在本申请实施例中,不限于在上述示出的开启“协同助手”的方式,在一些实施例中,还可以通过其它方式开启“协同助手”。在另一些实施例中,第二设备也可以默认开启“协同助手”,例如在开机后自动开启“协同助手”等。
在第一设备上开启“协同助手”的操作可以参见上述在第二设备上开启“协同助手”的操作,此处不再赘述。开启第一设备和第二设备的“协同助手”后,第一设备可以实现与第二设备建立通信连接,然后将数据传输到第二设备中。
下面示例性地介绍在第一设备和第二设备开启“协同助手”功能后,第一设备在与第二设备建立通信连接的过程中实现的图形用户界面的一些实施例。
首先,下面以第一设备为手机,第二设备为平板电脑或者便携式电脑(tabletpersonal computer,Tablet PC)示例性地介绍第一设备和第二设备之间通过近场通信(Near Field Communication,NFC)发现设备并通信建立连接的过程。下面分两种情况介绍两个设备建立连接的过程。
情况一、第一设备和第二设备没有登录同一个系统账号的情况。
在具体实施例中,假设第一设备和第二设备都是同一个品牌的设备,但是该两个设备开启之后没有登录到同一个系统账号上;或者第一设备和第二设备不是同一个品牌的设备。在这些情况下表明第一设备和第二设备为异账号设备,即没有同时登陆一个系统账号的设备,此时,第一设备和第二设备可以通过如下方式进行连接。
具体的,第一设备和第二设备上都具备NFC功能,在第一设备和第二设备的NFC功能都打开的情况下,可以将第一设备靠近或接触第二设备,例如可以将第一设备预设部位例如背部靠近或触碰第二设备的预设位置例如带有分享或连接标签的位置,第一设备和第二设备即可互相发现对方,第一设备的显示屏可以出现已发现的第二设备的用户界面,例如图5A所示界面。
在图5A所示用户界面中,包括一个窗口501,在窗口501中包括已发现的第二设备的图标5011、该第二设备的名称5012、提示信息5013、一个“连接”控件5014和一个“取消”控件5015。
其中,第二设备的图标5011例如可以是一个平板电脑的图标等。第二设备的名称5012例如可以是HUAWEI MatePad Pro X等。提示信息5013可以用于向用户说明“连接”控件5014的作用以及连接后的功能,例如提示信息5013可以是“点击‘连接’会开启WLAN和蓝牙。连接后,您可在HUAWEI MatePad Pro X上操作手机,并在设备间共享数据。”等。“连接”控件5014可以用于向第二设备发送连接确认请求。“取消”控件5015可以用于取消第二设备与第二设备的连接操作。
可选的,在图5A中点击“连接”控件5014后会开启WLAN和蓝牙,那么第一设备和第二设备建立连接的过程可以通过蓝牙来完成,当成功建立连接之后,可以通过WLAN实现第一设备和第二设备之间的数据交互和共享。通过蓝牙建立连接后,以WLAN的方式实现第一设备和第二设备之间的数据交互可以提高数据交互的速度,提高彼此响应的效率。
在图5A所示用户界面中,第一设备响应于对“连接”控件5014的触控操作,显示如图5B所示用户界面。在图5B中,包括一个第一设备向第二设备发送连接确认请求后等待第二设备确认的一个窗口502。该窗口502同样的可以包括第二设备的图标5021,还包括提示信息5022和一个“取消”控件5023。
其中,第二设备的图标5021例如可以是平板电脑的图标等。提示信息5022用于说明正在等待第二设备的确认,例如提示信息5022可以是“请在HUAWEI MatePad Pro X端进行连接确认…”等。“取消”控件5023可以用于取消第一设备与第二设备的连接操作。
在图5A所示用户界面中,第一设备响应于对“连接”控件5014的触控操作之后,向第二设备发送了一个连接请求,第二设备接收到该连接请求后,显示如图5C所示的用户界面。
在图5C所示的用户界面中,包括一个第二设备是否与第一设备连接的确认窗口503。窗口503包括第二设备的图标5031、第一设备的图标5032、第二设备与第一设备的关联符5033、提示信息5034、一个“拒绝”控件5035和一个“允许”控件5036。
其中,第二设备的图标5031例如可以是平板的图标等。第一设备的图标5032例如可以是手机的图标等。提示信息5034可以用于提示是否连接、向用户说明“允许”控件5036的作用以及连接后的功能,例如提示信息5034可以是“是否允许HUAWEI Nova 7连接此电脑。点击“允许”,您可在HUAWEI MatePad Pro X上操作手机,并在设备间共享数据。此功能会开启WLAN和蓝牙。”等。示例中,HUAWEI Nova 7为第一设备的名称,“拒绝”控件5035可以用于拒绝与第二设备的连接。“允许”控件5036可以用于与第二设备建立连接。其中,HUAWEIMatePad Pro X为第二设备的名称。
在图5C所示的用户界面中,第二设备响应于对“允许”控件5036的点击或触控操作,确认与第一设备建立连接,建立连接后第二设备的用户界面图例如可以是图6A所示界面图,表明第一设备与第二设备之间已经成功建立连接,即第一设备的信息传输到了第二设备并显示在显示屏上。图6B所示界面图下面会详细介绍,此处暂不详述。
上述第一设备和第二设备可以连接入同一个无线网络中。如果第一设备和/或第二设备已经连接了该无线网络,则在图5A和/或图5C所示界面中则可以不用再次连接该无线网络。
具体将第一设备的信息传输到第二设备并显示在显示屏上的实现方式可以包括:
在第一设备与第二设备成功建立连接后,第一设备的“应用接续流转服务”
(例如图3中应用程序框架层的应用接续流转服务)将该成功建立连接的事件通知给第一设备的“协同助手”(例如图3中应用程序层的协同助手),该“协同助手”响应于该事件通知通过第一设备的资源管理器(例如图3中应用程序框架层的资源管理器)或者第一设备的“应用接续流转服务”获取第一设备上的第一界面显示信息。
该第一界面显示信息为该第一设备的显示屏正在显示的第一应用的第一用户界面的信息,该信息可以包括第一设备用于显示该第一用户界面的数据。具体的,该第一界面显示信息可以包括该显示屏正在显示的第一用户界面的栈信息和界面显示的内容的数据等等。该栈信息可以包括显示的应用的活动(Activity)服务的包名和类名等。该第一设备的资源管理器或“应用接续流转服务”可以是通过“显示框架”(例如图3中应用程序框架层的显示框架)来获取到该界面显示的内容的数据。
第一设备的“协同助手”获取到上述第一界面显示信息后,可以通过WLAN即上述连接的无线网络将该第一界面显示信息发送给第二设备,第二设备通过自身的“协同助手”接收到该第一界面显示信息,并通过自身的“应用接续流转服务”将该第一界面显示信息发送给自身的“显示框架”,该“显示框架”根据这些信息调动窗口管理器(例如图3中应用程序框架层的窗口管理器)在显示屏上显示窗口,该窗口中显示的内容包括上述第一用户界面显示的内容。
该窗口例如可以参见图6A中的窗口601A,该窗口601A的尺寸大小与所述第一设备的显示屏的尺寸大小相匹配。在本申请实施例中,像图6A中所示的窗口601A可以称为第一窗口,但是第一窗口中显示的内容不限于窗口601A中所示的内容。
上述第一应用可以为第一设备中安装的应用中的任意一个应用,该第一应用可以是第一设备出厂时就安装有的必备的应用,例如桌面应用、文件管理或设置等系统应用。或者,该第一应用也可以是第一设备中安装有的可选择的应用,例如微信、淘宝、高德地图或美团等第三方应用,可选择的应用不限于是第三方应用,也可以是第一设备的品牌生产的应用,例如华为的“应用市场”应用等。有些应用有时可以是必备的系统应用,有时又可以是可选择的应用,例如华为的“应用市场”应用在一些可能的实施例中可以是第一设备必备的系统应用。
在本申请实施例中,第一应用主要以微信等第三方应用为例说明,但这并不构成对本技术方案的限制。
关于第一设备映射到第二设备的窗口示例性地还可以参见图6B,图6B所示的窗口601B为“应用市场”的应用的用户界面,即第一设备中显示的用户界面也为该“应用市场”的用户界面。需要说明的是,图6B中的窗口601B显示的用户界面也可以是其它应用的用户界面,例如可以是微信、QQ或华为商城等等应用的用户界面,具体的应用本方案不做限制。
同样的,在本申请实施例中,像图6B中所示的窗口601B也可以称为第二窗口,但是第二窗口中显示的内容不限于窗口601B中所示的内容。
图6A中所示的窗口601为第一设备的一个桌面的示意图,第一设备的桌面也是一个应用即上述桌面应用,因此,图6A中所示的窗口601也可以说是包括了第一设备的桌面应用的用户界面。
需要说明的是,除了资源管理器和“协同框架”之外,第一设备的“协同助手”还可以响应于上述事件通知通过应用框架层的其它模块获取上述第一界面显示信息,本申请实施例对此不做限制。
情况二、第一设备和第二设备登录同一个系统账号的情况。
在具体实施例中,假设第一设备和第二设备都是同一个品牌的设备,且该两个设备开启之后登录到同一个系统账号上,即该两个设备为同账号设备,那么在这种情况下,第一设备和第二设备可以通过如下方式进行连接。
具体的,在第一设备和第二设备的NFC功能都打开的情况下,可以将第二设备靠近或接触第二设备,例如可以将第二设备预设部位例如背部靠近或触碰第二设备的预设位置例如带有分享或连接标签的位置,第一设备和第二设备即可互相发现对方,第二设备的显示屏可以出现已发现的第二设备的用户界面,例如还是参见图5A所示界面。
在图5A所示的用户界面中,第二设备响应于对“连接”控件5014的触控操作,向第二设备发送连接请求,因为第一设备和第二设备为同账号设备,因此自动建立了信任关系,第二设备接收到第二设备发送的连接请求会后自动确认连接。确认连接后即完成了两个设备之间的连接,示例性地,此时第二设备中显示如图6A或如图6B所示的用户界面。
需要说明的是,第一设备与第二设备之间建立通信连接实现数据共享的方式还包括其它的方式,例如,还可以通过蓝牙、数据线或者近场通信NFC的其它方法等来实现,本申请实施例对此不做限制。
下面介绍第一设备与第二设备建立连接后,第二设备上实现的图形用户界面的一些实施例。以第二设备为平板电脑做示例性地介绍。
参见图6A和图6B,图6A和图6B示例性地示出了第一设备与第二设备建立连接后,第一设备将自身显示屏显示的用户界面映射到第二设备的显示屏上的示例图,第二设备默认显示的示例性用户界面可以参见图6A中的窗口601A和图6B所示的窗口601B。其中,窗口601A和窗口601B可以称为协同窗口。
在图6A和图6B中可以看到,窗口601A和窗口601B的尺寸大小与第二设备的显示屏的尺寸大小不匹配。该不匹配可以指的是窗口601A和窗口601B的长宽比例可以与该第二设备的显示屏的长宽比例不相同,或者指的是窗口601A和窗口601B仅占用第二设备的显示屏的一部分面积。
在图6A中窗口601A除了包括第一设备映射过来的用户界面601A1(该第一设备映射过来的用户界面601A1可以称为映射窗口601A1)之外,还可以包括标题栏601A2,该标题栏601A2中可以包括隐藏控件6011、最小化控件6012、最大化控件6013和第一设备的名称6014。
隐藏控件6011可以用于隐藏窗口601A,响应于对隐藏控件6011的点击或触摸操作,第二设备将窗口601A隐藏;而第二设备可以响应于对图6A中所示的“协同助手”图标602的点击或触摸操作,恢复窗口601A在显示屏的显示界面。
在一种可能的实施方式中,隐藏控件6011可以用于断开第一设备与第二设备的连接,第二设备响应于对隐藏控件6011的点击或触摸操作,可以主动断开与第一设备的连接。如果第二设备与第一设备需要重新建立连接,可以参见上述建立连接的对应的描述,此处不再赘述。
最小化控件6012可以用于最小化窗口601A,响应于对最小化控件6012的点击或触摸操作,第二设备将窗口601A最小化,例如将窗口601A最小化到第二设备的显示屏的边缘,示例性的,可以参见图7。在图7中,小窗口701即为最小化后的窗口601A,示例性地,小窗口701中可以包括第一设备的名称例如HUAWEI Nova 7等。需要说明的是,小窗口701在第二设备的显示屏中的位置不限于图7中所示的位置,可以是该显示屏中的边缘的任意一个位置。第二设备可以响应于对该小窗口701的点击或触摸操作还原窗口601A。
或者,最小化控件6012可以用于将窗口601A切换到后台运行,当需要将窗口601A显示在显示屏上时,再将窗口601A从后台调出来。
最大化控件6013可以用于最大化窗口601A,响应于对最大化控件6013的点击或触摸操作,第二设备将窗口601A最大化,例如将窗口601A铺满全屏等。下面会详细介绍最大化控件的使用和功能,此处暂不详述。
第一设备的名称6014例如可以是HUAWEI Nova 7等。
图6B中的窗口601B的组成及功能可以对应参见对图6A中的窗口601A的描述,此处不再赘述。
在第一设备和第二设备建立通信连接之后,第一设备可以实时地将自身显示屏显示的用户界面的数据以及用于显示该用户界面的信息通过“协同助手”发送给第二设备,第二设备可以实时地根据获取到信息更新协同窗口,使得协同窗口中显示的内容始终包括第一设备的显示屏正在显示的内容。
现结合图8-图15对本申请的应用共享方法进行说明,图8为本申请应用共享方法一个实施例的流程图,如图8所示,上述应用共享方法可以包括:
步骤101,第一设备与第二设备之间建立多屏协同连接。
具体地,第一设备和第二设备可以是手机、平板以及电脑等具有显示屏的电子设备。优选地,第一设备可以是具有小显示屏的电子设备,例如,手机。第二设备可以是具有大显示屏的电子设备,例如,平板或电脑。本申请实施例对此不作限定。
第一设备可以与第二设备建立多屏协同连接。具体的建立多屏协同连接的过程可以参考上述图4A-图5C,在此不再赘述。当第一设备与第二设备建立多屏协同连接后,在第二设备的画面中可以显示第一设备的画面,例如,可以得到如图6A所示的多屏协同画面。
可以理解的是,在多屏协同连接状态下,用户还可以在第二设备画面的多屏协同窗口中进行操作,以远程操控第一设备中的应用。
当上述第一设备与第二设备建立多屏协同连接后,第一设备可以向第二设备发送应用程序信息。可选地,第一设备向第二设备发送应用程序信息的方式可以包括主动发送和被动发送。其中,主动发送的方式包括步骤102A-步骤102C,被动发送的方式包括步骤106A-步骤106C。
接着,以第一设备主动发送应用程序信息为例,通过步骤102A-步骤102C进行说明。
步骤102A,第一设备监听应用程序变化。
具体地,第一设备与第二设备之间建立多屏协同连接后,第一设备可以监听第一设备中的应用程序的信息变化。例如,在第一设备上可以通过执行一个安装包程序,以安装一个应用程序,在安装完一个应用程序后,第一设备的界面上可以生成一个应用程序的图标,与图标对应的安装包信息则存储在第一设备中。
当第一设备中的安装包信息发生变化时,第一设备可以通过应用接续流转服务对安装包管理服务中的安装包信息进行监听,以获取到安装包信息的变化,由此可以获知应用程序的变化。示例性的,第一设备可以通过应用程序框架层中的应用接续流转服务对安装包管理服务中的安装包信息进行监听,由此可以确定应用程序变化。此外,第一设备也可以监听通知消息,以确定应用程序的变化,该通知消息用于通知应用程序的变化,例如,第一设备的应用程序框架层中的安装包管理服务可以在应用程序安装、卸载或升级时向应用接续流转服务发送通知消息,以通知应用程序的变化。
可以理解的是,上述应用程序变化可以包括新增应用程序或删除应用程序。
以上描述的是,第一设备在与第二设备建立多屏协同连接后,当第一设备中的安装包信息发生变化时,触发第一设备发送应用程序信息的操作。
可选地,第一设备还可以在与第二设备建立多屏协同连接后,将第一设备中已有的应用程序信息主动发送给第二设备,即发送应用程序信息不需要依赖安装包信息发生变化这一条件,本申请实施例对此不作特殊限定。
步骤102B,若第一设备监听到应用程序变化,获取应用程序信息。
具体地,当第一设备监听到应用程序的信息变化后,可以通过查询获得应用程序信息。示例性的,第一设备可以查询安装包管理服务中存储的安装包信息,可以通过查询安装包信息得到对应的应用程序信息。优选地,第一设备还可以通过查询获取安装包增量信息。也就是说,可以通过查询获取新安装的应用程序的信息。举例来说,若安装包管理服务中包含安装包A和安装包B,此时新增安装包C,则第一设备可以通过查询获得安装包增量信息(例如,安装包C信息),也就是说,可以获得应用程序增量信息(例如,应用程序C信息);其中,应用程序C是对应于安装包C的应用程序。而无需获取安装包A和安装包B的信息,也就是说,无需获取应用程序A和应用程序B的信息。其中,应用程序A是对应于安装包A的应用程序,应用程序B是对应于安装包B的应用程序,由此可以提高数据传输效率,节省系统资源。
可以理解的是,第一设备还可以获取安装包减量信息,由此可以将安装包减量信息发送给第二设备。其中,该安装包减量信息可以是卸载或删除的安装包的信息。
其中,应用程序信息可以包括应用程序图标以及任务类型。任务类型用于标识与应用程序对应的可执行的任务类型,例如,一个应用程序可以对应打开文件A、分享链接B、编辑文档C或发送邮件D等任务类型。
步骤102C,第一设备将应用程序信息发送至第二设备。
具体地,第一设备可以通过连接层的连接服务将应用程序信息发送至第二设备。其中,该连接服务可以是基于WIFI的连接通道,可以是基于蓝牙的连接通道,也可以是基于其他形式的短距无线连接通道,本申请实施例对此不作限定。
本实施例中,通过第一设备主动向第二设备发送应用程序信息,可以让第二设备提前了解可模拟的应用,由此可以提高模拟的效率。
当第二设备接收到第一设备发送的应用程序信息后,可以根据上述应用程序信息构造模拟应用。可选地,构造模拟应用的方式可以包括主动构造和按需构造。其中,主动构造的方式包括步骤103A和步骤103B,按需构造的方式包括步骤107。
接着,以第二设备对应用程序信息进行主动构造的方式为例,通过步骤103A和步骤103B进行说明。
步骤103A,第二设备接收第一设备发送的应用程序信息,根据应用程序信息构造模拟应用。
具体地,第二设备可以通过应用程序框架层的应用接续流转服务接收第一设备发送的应用程序信息,并可以通过应用程序层的协同助手,根据该应用程序信息构造模拟应用。其中,该模拟应用可以用于模拟与应用程序信息对应的应用程序的入口。也就是说,可以在第二设备中,通过协同助手可以模拟应用程序的入口。举例来说,当第二设备构造模拟应用后,在第二设备中可以生成与该模拟应用对应的应用程序的入口,通过该入口,可以调用第一设备中的应用程序,由此可以使得第一设备启动该应用程序,用户可以通过第二设备中的多屏协同窗口观看该应用程序的内容。
在具体实现时,第二设备的应用程序层的协同助手收到第一设备发送的应用程序信息后,可以判断本次接收的应用程序信息是否有新增或删除的应用程序。示例性的,可以将本次收到的应用程序信息与已构造的模拟应用进行比对,若该应用程序信息中存在任一新增的应用程序未在协同助手中构建模拟应用,则可以在协同助手中对该新增的应用程序进行模拟应用的构建。若协同助手中包含与应用程序信息中已删除或已卸载的应用程序名称对应的模拟应用,则可以删除该模拟应用。
步骤103B,第二设备将模拟应用信息进行存储。
具体地,第二设备的应用程序层中的协同助手完成模拟应用的构造后,可以将模拟应用的信息发送给应用程序框架层的安装包管理服务,以便将上述模拟应用信息存储在安装包管理服务中。其中,模拟应用的信息可以包括模拟应用图标及与模拟应用对应的任务类型。
本实施例中,通过对第一设备发送的应用程序信息进行主动构造,以便可以快速调用对应的模拟应用,由此可以提高模拟的效率。
步骤104,第二设备响应于检测到的用户用于数据共享的第一操作,基于第一操作生成数据共享任务,其中,数据共享任务包括任务数据及任务类型。
具体地,用户可以在第二设备中进行数据共享操作,以发起一个数据共享任务,例如,用户在第二设备中的显示屏194上进行网页浏览时可以将当前浏览的网页进行分享。响应于用户的操作,第二设备的应用程序框架层的应用管理器可以创建一个数据共享任务(例如,网页分享任务)。其中,数据共享任务可以包含任务数据及任务类型。示例性的,任务类型可以包括分享类型及播放类型等,例如,分享类型可以包括对网页进行分享的任务,播放类型可以包括对视频进行播放的任务;任务数据可以包括数据的地址,例如,对网页进行分享的任务数据可以是网页的链接地址,对视频进行播放的任务数据可以是视频文件的链接地址等。
现以网页分享为例进行说明,图9为第二设备的用户界面900的示意图,用户可以在第二设备的用户界面900上进行网页的分享操作。参考图9,用户界面900包括控件910及浏览区域920。控件910与当面页面的功能选项对应,示例性的,该功能选项可以包括分享、发送或播放等。浏览区域920用于显示用户当前浏览的页面内容,可以理解的是,上述浏览区域920中的显示内容可以是本次的任务数据。此外,在用户界面900中还可以包括多屏协同窗口921,在具体实现时,该多屏协同窗口921可以叠加在浏览区域920之上。该多屏协同窗口921用于显示第一设备的用户界面。在一些实施例中,还可以对上述多屏协同窗口921进行最小化,由此可以得到如图9A所示的用户界面900A。参考图9A,用户界面900A包括控件910、浏览区域920及小窗口921A。其中,小窗口921A可以是多屏协同窗口921最小化后的窗口。此时,用户可以在用户界面900A中对控件910进行操作。示例性地,小窗口921A中可以包括第一设备的名称例如HUAWEI Nova 7等。需要说明的是,小窗口921A在第二设备的显示屏中的位置不限于图9A中所示的位置,可以是该显示屏中的边缘的任意一个位置。第二设备可以响应于对该小窗口921A的点击或触摸操作还原窗口921。
步骤105,第二设备根据任务类型查询对应的应用程序信息。
具体地,第二设备的应用接续流转服务创建数据共享任务后,可以根据任务类型在第二设备的安装包管理服务中进行查询,以获得与任务类型对应的应用程序信息,也就是说,可以获得与数据共享任务对应的可用应用程序。其中,应用程序信息可以是一个应用程序的信息,也可以是多个应用程序的信息。示例性的,以分享类型举例,第二设备若要对网页的链接进行分享时,可以查询与分享类型对应的一个或多个应用程序信息,例如,可以查询与分享类型对应的社交应用程序。其中,应用程序信息可以包括第二设备中执行安装包程序存储的应用程序信息,以及第二设备接收第一设备的应用程序信息后构造的模拟应用信息,也就是说,第二设备的安装包管理服务中可以包括自身安装的应用程序以及基于第一设备的应用程序信息模拟的应用程序。
需要说明的是,第二设备在执行安装包程序,以获得应用程序时,第二设备可以为应用程序创建对应的应用程序信息。其中,应用程序信息包含应用程序图标和与应用程序对应的任务类型。因此,第二设备执行安装包程序获得的应用程序信息也包含任务类型。
当第二设备的安装包管理服务查询到对应的应用程序信息后,可以将该应用程序信息发送给应用接续流转服务。应用接续流转服务接收到上述应用程序信息后,可以在第二设备的用户界面上显示上述应用程序的图标,供用户选取。其中,每个图标都可以是应用程序的入口。
示例性的,以图9为例,当用户进行分享操作后,第二设备接收到用户的分享操作,可以得到如图10所示的用户界面1000。参考图10,用户界面1000包括应用选取区域1010。应用选取区域1010可以包括一个或多个应用程序图标1011,其中,每个应用程序图标1011可以和应用程序名称1012对应。优选地,为了区分每个应用程序的所属,例如,该应用程序是安装在第一设备或第二设备上,还可以在应用程序名称1012后添加应用程序源1013,该应用程序源1013可以用于标识该应用程序的来源。如图10所示,该微信应用来自第一设备(例如,HUAWEI NOVA7),而该微博应用和QQ应用来自第二设备。
可选地,可以通过其他方式来标识应用程序的来源,例如来自第一设备的应用的图标用第一颜色进行表示,来自第二设备的应用的图标用第二颜色进行表示,本申请对此不做限定。
可选地,微博应用和QQ应用也可以分别添加应用程序源,例如,HUAWEI MatePadPro X,以标识微博应用和QQ应用来自第二设备(例如,HUAWEI MatePad Pro X)。
可选地,应用选取区域1010也可以仅包括来自其他设备的应用程序图标,例如,应用选取区域1010中仅显示来自第一设备的微信应用图标1011、微信应用名称1012和应用程序源1013,而不显示本设备安装的微博应用和QQ应用的图标。
可选地,第一设备的模拟应用的图标在第二设备的用户界面上的呈现可以通过功能开关实现,例如,可以在第二设备中设置数据共享开关。其中,该数据共享开关可以用于控制第二设备是否可以进行跨应用共享。示例性的,若该数据共享开关处于开启状态,则第二设备接收到用户的数据共享操作后,第二设备的用户界面可以呈现第一设备的模拟应用图标,以供用户选取,由此可以实现数据共享。若该数据共享开关处于关闭状态,则第二设备接收到用户的数据共享操作后,第二设备的用户界面不呈现第一设备的模拟应用图标,由此可以避免界面呈现过多的应用程序图标。
同样以图9为例,当用户进行分享操作后,第二设备接收到用户的分享操作,可以得到如图11所示的用户界面1100。参考图11,用户界面1100包括应用选取区域1110,应用选取区域1110可以包括一个或多个应用程序图标1111,其中,每个应用程序图标1111可以和应用程序名称1112对应。由于用户关闭了数据共享开关,也就是说,应用选取区域1110仅包含第二设备中已安装的应用程序,不包含模拟的应用程序。
进一步地,在第二设备中对应用程序信息进行查询时,还可以根据任务类型进行智能推荐。例如,可以在查询到的应用程序中智能选取部分应用程序,呈现在第二设备的用户界面中,供用户选取,由此可以避免呈现过多的应用程序,使得用户无法迅速选取所需的应用程序。其中,智能推荐可以基于用户的习惯确定。示例性的,第二设备进行应用程序推荐时,可以检测与当前任务类型对应的每个应用程序的使用频率,并可以将大于或等于预设频率阈值的应用程序进行智能推荐。可以理解的是,也可以通过其他方式进行智能推荐,本申请实施例对此不作限定。
在一些实施例中,第一设备不主动向第二设备发送应用程序信息,因此,第二设备的安装包管理服务查询不到对应的模拟应用信息。此时,第二设备可以向第一设备发送查询请求,以获得第一设备的应用程序信息。即,第一设备收到第二设备发送的查询请求后,被动发送应用程序信息。接着,以第一设备被动发送应用程序信息方式为例,通过步骤106A-步骤106C进行说明。
步骤106A,第二设备向第一设备发送查询请求。
具体地,上述查询请求可以包括任务类型。
步骤106B,第一设备接收第二设备发送的查询请求,获取应用程序信息。
具体地,第一设备接收到第二设备发送的查询请求后,可以根据该查询请求中的任务类型进行查询,以获得对应的应用程序。可选地,第一设备也可以查询已安装的所有应用程序。本申请实施例对此不作特殊限定。
步骤106C,第一设备将应用程序信息发送给第二设备。
具体地,第一设备在查询到上述应用程序后,可以将上述应用程序信息发送给第二设备。其中,上述应用程序信息可以是第一设备中与任务类型对应的应用程序的信息,也可以是第一设备中已安装的所有应用程序的信息,本申请实施例对此不作特殊限定。
本实施例中,第一设备在收到第二设备的查询请求后,向第二设备发送应用程序信息,可以避免频繁的向第二设备发送应用程序信息,避免浪费资源。
在一些实施例中,第二设备在收到第一设备主动发送的应用程序信息后,也可以不构造模拟应用,并可以将该应用程序信息进行存储,例如,将该应用程序信息存储在应用接续流转服务中。示例性的,第二设备可以在用户发起任务(例如,分享任务)时,对部分模拟应用进行构造。也就是说,第二设备可以通过按需构造的方式对模拟应用进行构造。接着,以对模拟应用进行按需构造为例,通过步骤107进行说明。
步骤107,第二设备根据应用程序信息构造模拟应用。
具体地,第二设备可以通过应用程序框架层的应用接续流转服务接收第一设备发送的应用程序信息,并可以通过应用程序层的协同助手,根据该应用程序信息构造模拟应用。其中,该应用程序信息可以是第一设备基于第二设备的请求发送的应用程序的信息,例如,该应用程序的类型可以是与任务类型对应的类型。第二设备也可以在应用接续流转服务中进行查询,以获得与任务类型对应的应用程序信息,并可以根据查询获得的应用程序信息进行模拟应用的构造。
可以理解的是,本步骤107可以在步骤105后执行,也就是说,第二设备可以基于已存储的与任务类型对应的模拟应用进行构造;本步骤107也可以在步骤106C之后执行,也就是说,第二设备可以基于第一设备被动发送的与任务类型对应的模拟应用进行构造。本申请实施例对此不作特殊限定。
本实施例中,第二设备在用户发起任务后,根据任务类型对模拟应用进行按需构造,可以避免构造冗余的模拟应用,进而可以避免给第二设备的系统造成负担。
步骤108,第二设备检测到用户选取应用程序的第二操作,确定模拟应用。基于模拟应用,向第一设备发起数据共享请求。
具体地,用户可以在第二设备显示的应用程序选取界面上进行应用程序的选取,例如,用户可以在如图10所示的用户界面上进行操作,以选取模拟应用。示例性的,用户可以点击模拟应用的图标1011,或者双击模拟应用的图标,也可以通过在模拟应用图标上进行滑动的方式,来选取模拟应用,本申请实施例对此不作限定。
步骤109,第二设备基于确定的模拟应用,向第一设备发起数据共享请求。
具体地,响应于用户选取模拟应用的操作,第二设备通过应用程序框架层的应用选择器确定用户选取的模拟应用,基于用户确定的模拟应用向活动管理服务发送调用请求,该调用请求可以包括调用的应用程序标识及任务数据。其中,该应用程序标识用于识别应用程序,该任务数据用于标识本次共享的内容。活动管理服务接收到上述调用请求后,将该调用请求转发给应用程序层的协同助手,以通过协同操作实现数据共享。协同助手接收上述调用请求后,可以通过连接层的连接服务向第一设备发送数据共享请求。该数据共享请求可以用于调用第一设备中的应用程序,由此实现数据分享任务,该数据共享请求可以包括调用的应用程序标识及任务数据。
步骤110,第一设备收到第二设备发送的数据共享请求,启动应用程序。
具体地,第一设备通过连接层的连接服务接收到第二设备发送的数据共享请求后,将上述数据共享请求发送给应用程序框架层的应用接续流转服务。当该应用接续流转服务接收到上述数据共享请求后,获取该数据共享请求中的应用程序标识以及任务数据,基于应用程序标识,启动与该应用程序标识对应的应用程序(例如,“微信”应用)。第一设备在启动该应用程序后,将任务数据通过该应用程序进行显示,而该显示画面也可以通过第二设备的多屏协同窗口进行显示,由此可以完成数据共享。示例性的,若用户在第二设备中调用第一设备的视频播放应用程序,当第一设备启动视频播放应用程序后,用户可以在第二设备的多屏协同窗口中观看上述视频;或者,若用户在第二设备中调用第一设备的社交应用程序,当第一设备启动社交应用程序后,用户可以在第二设备的多屏协同窗口中进行内容分享。
现结合图12进行说明,以图10为例,当用户选取第一设备上的应用程序(例如,“微信”应用)后,可以得到如图12的用户界面1200。参考图12,用户界面1200包括多屏协同窗口1210,该多屏协同窗口1210用于显示第一设备的用户界面(例如,“微信”应用启动后的显示界面)。如图12所示,多屏协同窗口1210中包含已启动的应用程序1211及本次已分享的任务数据1212。
步骤111,第二设备基于多屏协同模拟第一设备中的应用程序,使得任务数据通过模拟应用进行共享。
具体地,第一设备启动上述应用程序后,在第一设备的用户界面上显示上述应用程序启动后的画面。基于第一设备与第二设备之间的多屏协同,第二设备的多屏协同窗口中可以显示第一设备的用户界面。进一步地,在第二设备中的多屏协同窗口内,用户还可以对已运行的模拟应用进行操作,例如,用户可以在该模拟应用的控件上进行点击、滑动等操作,通过虚拟设备系统,第二设备可以将上述在控件上进行点击或滑动等事件发送给第一设备,其中,该事件可以包括用户操作信息(例如,触摸位置)及共享内容(例如,网页链接地址或视频播放地址等)。使得第一设备可以触发对应的操作事件(例如,该操作事件可以是在控件上进行点击或滑动等操作),由此可以通过第一设备中的应用程序执行用户的操作(例如,通过第一设备中的社交应用程序将第二设备中的网页链接进行分享),进而可以实现通过在第二设备上的操作来控制第一设备上的应用程序。本实施例中,第二设备通过模拟第一设备中的应用,实现跨设备之间的基于应用程序的数据共享,由此可以数据共享的效率,进而可以提高用户的体验。
可以理解的是,上述实施例仅示意性的示出了的网页分享的场景,本申请实施例也同样适用于文件打开场景,上述实施例所示的场景并不构成对本申请的限制。
接着,以文件打开场景为例,并结合图13-图15进行说明。
图13为第二设备的用户界面1300的示意图,如图13所示,用户界面1300包含多屏协同窗口1310及第二设备的桌面1320,桌面1320包含一个或多个文件1321(例如,视频文件)。用户可以点击文件1321,用于打开该文件1321。
当用户点击任一文件1321后,可以得到如图14所示的用户界面1400,用户界面1400包含桌面1410,桌面1410包含应用选取区域1420,应用选取区域1420包含一个或多个可用的应用1421,示例性的,在第二设备中没有安装视频应用,因此无法打开用户选取的视频,因此,在应用选取区域1420可以显示第一设备已安装的应用1421(例如,“华为视频”),以便用户选取该应用1421,完成对视频的观看。优选地,该应用1421还可以包含说明信息1422,该说明信息1422可以用于标识该应用的来源,例如,该说明信息可以是“我的HUAWEINOVA7”,用于标识该应用安装在名称为“HUAWEI NOVA7”的第一设备上。
接着,用户可以在界面1400上点击应用1421(例如,“华为视频”应用),由此可以通过多屏协同,向第一设备发送调用上述应用1421的请求,例如,向第一设备请求启动“华为视频”应用,其中,该请求还可以包括本次用户需要播放的视频文件地址。第一设备接收到第二设备的调用“华为视频”应用的请求后,可以启动该“华为视频”应用,接着,第一设备可以根据上述请求中的视频文件地址找到对应的视频文件,并通过该“华为视频”应用对用户请求播放的视频文件进行播放,由此可以得到如图15所示的多屏协同示意图。
如图15所示,第一设备显示界面1510,第二设备显示界面1520。界面1510包含已打开的应用1511(例如,“华为视频”应用),该应用1511中播放用户选取的视频文件1512(例如,视频1)。界面1520包含多屏协同窗口1521,该多屏协同窗口1521可以显示与界面1510中相同的内容,例如,该多屏协同窗口1521可以包含已打开的应用1522(例如,“华为视频”应用),该应用1522中播放用户选取的视频文件1523(例如,“视频1”),由此可以实现跨设备间的应用共享。
图16为本申请应用共享装置一个实施例的结构示意图,如图16所示,上述应用共享装置1600可以包括:第一显示模块1610、第一接收模块1620、第二显示模块1630、第二接收模块1640及共享模块1650;其中
第一显示模块1610,用于显示第一应用的第一界面,第一界面包括第一选项;
第一接收模块1620,用于接收用户对第一选项的第一操作;
第二显示模块1630,用于响应于第一操作,显示第一菜单,第一菜单包括第二应用的图标,第二应用为第二电子设备上安装的应用;
第二接收模块1640,用于接收用户对第二应用的图标的第二操作;
共享模块1650,用于响应于第二操作,确定第二应用,向第二电子设备发送应用共享请求,应用共享请求用于指示第二电子设备启动第二应用。
其中一种可能的实现方式中,上述装置1600还包括:连接模块1660;其中,
连接模块1660,用于与第二电子设备建立多屏协同连接。
其中一种可能的实现方式中,上述装置1600还包括:第三显示模块1670;其中
第三显示模块1670,用于显示第二界面,第二界面包括第二电子设备的窗口。
其中一种可能的实现方式中,第二界面包括第二选项,上述装置1600还包括:最小化模块1680;其中,
最小化模块1680,用于接收用户对第二选项的第三操作;响应于第三操作,最小化第二电子设备的窗口。
其中一种可能的实现方式中,第二电子设备的窗口中显示第二应用的界面。
其中一种可能的实现方式中,第一电子设备已安装第三应用,第一菜单还包括第三应用的图标。
其中一种可能的实现方式中,第一菜单还包括第一标识,第一标识用于指示第二应用为安装在第二电子设备上的应用。
其中一种可能的实现方式中,第一菜单中的第二应用由第一选项对应的任务类型确定。
其中一种可能的实现方式中,上述装置1600还包括:第三接收模块1690;其中,
第三接收模块1690,用于接收第二电子设备发送的第一应用程序信息,第一应用程序信息包括第二应用的安装包信息。
其中一种可能的实现方式中,上述装置1600还包括:第一模拟模块16A0;其中,
第一模拟模块16A0,用于基于第二电子设备发送的第一应用程序信息进行模拟,得到第二应用。
其中一种可能的实现方式中,上述装置还包括:第二模拟模块16B0;其中,
第二模拟模块16B0,用于基于第一选项对应的任务类型在第一应用程序信息中进行查询,获得与任务类型匹配的第二应用程序信息;基于第二应用程序信息进行模拟,得到第二应用。
其中一种可能的实现方式中,上述装置还包括:查询模块16C0;其中,
查询模块16C0,用于基于第一选项对应的任务类型向第二电子设备发送查询请求,其中,查询请求用于获取第二电子设备已安装的第二应用的应用程序信息。
图16所示实施例提供的应用共享装置可用于执行本申请图1-图15所示方法实施例的技术方案,其实现原理和技术效果可以进一步参考方法实施例中的相关描述。
应理解以上图16所示的应用共享装置的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块以软件通过处理元件调用的形式实现,部分模块通过硬件的形式实现。例如,检测模块可以为单独设立的处理元件,也可以集成在电子设备的某一个芯片中实现。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit;以下简称:ASIC),或,一个或多个微处理器(Digital Signal Processor;以下简称:DSP),或,一个或者多个现场可编程门阵列(Field Programmable Gate Array;以下简称:FPGA)等。再如,这些模块可以集成在一起,以片上系统(System-On-a-Chip;以下简称:SOC)的形式实现。
本申请还提供一种电子设备,所述设备包括存储介质和中央处理器,所述存储介质可以是非易失性存储介质,所述存储介质中存储有计算机可执行程序,所述中央处理器与所述非易失性存储介质连接,并执行所述计算机可执行程序以实现本申请图1~图15所示实施例提供的方法。
以上各实施例中,涉及的处理器可以例如包括CPU、DSP、微控制器或数字信号处理器,还可包括GPU、嵌入式神经网络处理器(Neural-network Process Units;以下简称:NPU)和图像信号处理器(Image Signal Processing;以下简称:ISP),该处理器还可包括必要的硬件加速器或逻辑处理硬件电路,如ASIC,或一个或多个用于控制本申请技术方案程序执行的集成电路等。此外,处理器可以具有操作一个或多个软件程序的功能,软件程序可以存储在存储介质中。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行本申请图1~图15所示实施例提供的方法。
本申请实施例还提供一种计算机程序产品,该计算机程序产品包括计算机程序,当其在计算机上运行时,使得计算机执行本申请图1~图15所示实施例提供的方法。
本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示单独存在A、同时存在A和B、单独存在B的情况。其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项”及其类似表达,是指的这些项中的任意组合,包括单项或复数项的任意组合。例如,a,b和c中的至少一项可以表示:a,b,c,a和b,a和c,b和c或a和b和c,其中a,b,c可以是单个,也可以是多个。
本领域普通技术人员可以意识到,本文中公开的实施例中描述的各单元及算法步骤,能够以电子硬件、计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,任一功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory;以下简称:ROM)、随机存取存储器(Random Access Memory;以下简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。本申请的保护范围应以所述权利要求的保护范围为准。

Claims (26)

1.一种应用共享方法,其特征在于,应用于包括第一电子设备和第二电子设备的通信系统,所述第一电子设备已安装第一应用,所述第二电子设备已安装第二应用,所述方法包括:
所述第一电子设备显示所述第一应用的第一界面,所述第一界面包括第一选项;
所述第一电子设备接收用户对所述第一选项的第一操作;
所述第一电子设备响应于所述第一操作,显示第一菜单,所述第一菜单包括所述第二应用的图标;
所述第一电子设备接收用户对所述第二应用的图标的第二操作;
所述第一电子设备响应于所述第二操作,向所述第二电子设备发送应用共享请求;
所述第二电子设备响应于接收到的所述应用共享请求,启动所述第二应用。
2.如权利要求1所述的方法,其特征在于,所述第一电子设备接收用户对所述第一选项的第一操作之前,所述方法还包括:
所述第一电子设备与所述第二电子设备建立多屏协同连接。
3.如权利要求1或2所述的方法,其特征在于,所述方法还包括:
所述第一电子设备显示第二界面,所述第二界面包括所述第二电子设备的窗口。
4.如权利要求3所述的方法,其特征在于,所述第二界面包括第二选项,所述第一电子设备显示第二界面之后,所述方法还包括:
所述第一电子设备接收用户对所述第二选项的第三操作;
所述第一电子设备响应于所述第三操作,最小化所述第二电子设备的窗口。
5.如权利要求3所述的方法,其特征在于,所述第二电子设备的窗口中显示所述第二应用的界面。
6.如权利要求1-5任一项所述的方法,其特征在于,所述第一电子设备已安装第三应用,所述第一菜单还包括所述第三应用的图标。
7.如权利要求1-6任一项所述的方法,其特征在于,所述第一菜单还包括第一标识,所述第一标识用于指示所述第二应用为安装在所述第二电子设备上的应用。
8.如权利要求1-7任一项所述的方法,其特征在于,所述第一菜单中的第二应用由所述第一选项对应的任务类型确定。
9.如权利要求1-8任一项所述的方法,其特征在于,所述第一电子设备接收用户对所述第一选项的第一操作之前,所述方法还包括:
所述第一电子设备接收所述第二电子设备发送的第一应用程序信息,所述第一应用程序信息包括所述第二应用的安装包信息。
10.如权利要求9所述的方法,其特征在于,所述第一电子设备接收所述第二电子设备发送的第一应用程序信息之后,所述方法还包括:
所述第一电子设备基于所述第二电子设备发送的第一应用程序信息进行模拟,得到所述第二应用。
11.如权利要求9所述的方法,其特征在于,所述第一电子设备接收所述第二电子设备发送的第一应用程序信息之后,所述方法还包括:
所述第一电子设备基于所述第一选项对应的任务类型在所述第一应用程序信息中进行查询,获得与所述任务类型匹配的第二应用程序信息;
所述第一电子设备基于所述第二应用程序信息进行模拟,得到所述第二应用。
12.如权利要求1-8任一项所述的方法,其特征在于,所述第一电子设备响应于所述第一操作之后,所述方法还包括:
所述第一电子设备基于所述第一选项对应的任务类型向所述第二电子设备发送查询请求,其中,所述查询请求用于获取所述第二电子设备已安装的第二应用的应用程序信息。
13.一种应用共享方法,其特征在于,应用于第一电子设备,所述第一电子设备已安装第一应用,所述方法包括:
显示所述第一应用的第一界面,所述第一界面包括第一选项;
接收用户对所述第一选项的第一操作;
响应于所述第一操作,显示第一菜单,所述第一菜单包括第二应用的图标,所述第二应用为第二电子设备上安装的应用;
接收用户对所述第二应用的图标的第二操作;
响应于所述第二操作,确定所述第二应用;
向所述第二电子设备发送应用共享请求,所述应用共享请求用于指示所述第二电子设备启动所述第二应用。
14.如权利要求13所述的方法,其特征在于,所述方法还包括:
与所述第二电子设备建立多屏协同连接。
15.如权利要求13或14所述的方法,其特征在于,所述方法还包括:
显示第二界面,所述第二界面包括所述第二电子设备的窗口。
16.如权利要求15所述的方法,其特征在于,所述第二界面包括第二选项,所述显示第二界面之后,所述方法还包括:
接收用户对所述第二选项的第三操作;
响应于所述第三操作,最小化所述第二电子设备的窗口。
17.如权利要求15所述的方法,其特征在于,所述第二电子设备的窗口中显示所述第二应用的界面。
18.如权利要求13-17任一项所述的方法,其特征在于,所述第一电子设备已安装第三应用,所述第一菜单还包括所述第三应用的图标。
19.如权利要求13-18任一项所述的方法,其特征在于,所述第一菜单还包括第一标识,所述第一标识用于指示所述第二应用为安装在所述第二电子设备上的应用。
20.如权利要求13-19任一项所述的方法,其特征在于,所述第一菜单中的第二应用由所述第一选项对应的任务类型确定。
21.如权利要求13-20任一项所述的方法,其特征在于,所述接收用户对所述第一选项的第一操作之前,所述方法还包括:
接收所述第二电子设备发送的第一应用程序信息,所述第一应用程序信息包括所述第二应用的安装包信息。
22.如权利要求21所述的方法,其特征在于,所述接收所述第二电子设备发送的第一应用程序信息之后,所述方法还包括:
基于所述第二电子设备发送的第一应用程序信息进行模拟,得到所述第二应用。
23.如权利要求21所述的方法,其特征在于,所述接收所述第二电子设备发送的第一应用程序信息之后,所述方法还包括:
基于所述第一选项对应的任务类型在所述第一应用程序信息中进行查询,获得与所述任务类型匹配的第二应用程序信息;
基于所述第二应用程序信息进行模拟,得到所述第二应用。
24.如权利要求13-20任一项所述的方法,其特征在于,所述响应于所述第一操作之后,所述方法还包括:
基于所述第一选项对应的任务类型向所述第二电子设备发送查询请求,其中,所述查询请求用于获取所述第二电子设备已安装的第二应用的应用程序信息。
25.一种第一电子设备,其特征在于,包括:
显示屏;处理器;存储器;以及计算机程序,其中,所述计算机程序被存储在所述存储器中,所述计算机程序包括指令,当所述指令被所述第一电子设备执行时,使得所述第一电子设备执行如权利要求13至24任一项所述的应用共享方法。
26.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行如权利要求13-24任一项所述的应用共享方法。
CN202011502015.XA 2020-12-18 2020-12-18 应用共享方法、电子设备和存储介质 Active CN114647350B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202011502015.XA CN114647350B (zh) 2020-12-18 2020-12-18 应用共享方法、电子设备和存储介质
EP21905590.2A EP4242810A4 (en) 2020-12-18 2021-12-08 APPLICATION SHARING METHOD AND ELECTRONIC DEVICE AND STORAGE MEDIUM
US18/258,194 US20240069850A1 (en) 2020-12-18 2021-12-08 Application Sharing Method, Electronic Device, and Storage Medium
PCT/CN2021/136337 WO2022127661A1 (zh) 2020-12-18 2021-12-08 应用共享方法、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011502015.XA CN114647350B (zh) 2020-12-18 2020-12-18 应用共享方法、电子设备和存储介质

Publications (2)

Publication Number Publication Date
CN114647350A true CN114647350A (zh) 2022-06-21
CN114647350B CN114647350B (zh) 2024-07-30

Family

ID=81991557

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011502015.XA Active CN114647350B (zh) 2020-12-18 2020-12-18 应用共享方法、电子设备和存储介质

Country Status (4)

Country Link
US (1) US20240069850A1 (zh)
EP (1) EP4242810A4 (zh)
CN (1) CN114647350B (zh)
WO (1) WO2022127661A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115146192A (zh) * 2022-09-02 2022-10-04 荣耀终端有限公司 内容接续方法和相关装置
CN116680020A (zh) * 2022-11-22 2023-09-01 荣耀终端有限公司 多设备协同管理的方法、电子设备及存储介质
CN117784988A (zh) * 2022-09-28 2024-03-29 荣耀终端有限公司 应用接续方法和终端设备

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117348778A (zh) * 2022-06-29 2024-01-05 华为技术有限公司 屏幕录制和共享的方法及电子设备
CN116095881A (zh) * 2022-07-18 2023-05-09 荣耀终端有限公司 一种多设备协同方法、电子设备及相关产品
JP2024134889A (ja) * 2023-03-22 2024-10-04 株式会社リコー 表示システム、表示方法及びプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110471639A (zh) * 2019-07-23 2019-11-19 华为技术有限公司 显示方法及相关装置
CN111049980A (zh) * 2019-12-02 2020-04-21 维沃移动通信有限公司 一种应用分享方法、电子设备及计算机可读存储介质
CN111143002A (zh) * 2019-12-25 2020-05-12 维沃移动通信有限公司 一种应用分享方法、电子设备及计算机可读存储介质
WO2020248955A1 (zh) * 2019-06-10 2020-12-17 华为技术有限公司 一种分享内容的方法和电子设备

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180055196A (ko) * 2016-11-16 2018-05-25 삼성전자주식회사 일정 공유 방법 및 이를 지원하는 전자 장치
CN110347305A (zh) * 2019-05-30 2019-10-18 华为技术有限公司 一种vr多屏显示方法及电子设备
CN111459355B (zh) * 2020-03-30 2022-03-04 维沃移动通信有限公司 内容共享方法及电子设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020248955A1 (zh) * 2019-06-10 2020-12-17 华为技术有限公司 一种分享内容的方法和电子设备
CN110471639A (zh) * 2019-07-23 2019-11-19 华为技术有限公司 显示方法及相关装置
CN111049980A (zh) * 2019-12-02 2020-04-21 维沃移动通信有限公司 一种应用分享方法、电子设备及计算机可读存储介质
CN111143002A (zh) * 2019-12-25 2020-05-12 维沃移动通信有限公司 一种应用分享方法、电子设备及计算机可读存储介质

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115146192A (zh) * 2022-09-02 2022-10-04 荣耀终端有限公司 内容接续方法和相关装置
CN115146192B (zh) * 2022-09-02 2023-01-24 荣耀终端有限公司 内容接续方法和相关装置
CN117784988A (zh) * 2022-09-28 2024-03-29 荣耀终端有限公司 应用接续方法和终端设备
CN116680020A (zh) * 2022-11-22 2023-09-01 荣耀终端有限公司 多设备协同管理的方法、电子设备及存储介质

Also Published As

Publication number Publication date
CN114647350B (zh) 2024-07-30
EP4242810A4 (en) 2024-05-15
WO2022127661A1 (zh) 2022-06-23
EP4242810A1 (en) 2023-09-13
US20240069850A1 (en) 2024-02-29

Similar Documents

Publication Publication Date Title
WO2021013158A1 (zh) 显示方法及相关装置
WO2020244492A1 (zh) 一种投屏显示方法及电子设备
WO2020238774A1 (zh) 一种通知消息的预览方法及电子设备
WO2021078284A1 (zh) 一种内容接续方法及电子设备
CN114647350B (zh) 应用共享方法、电子设备和存储介质
CN112486363B (zh) 一种跨设备的内容分享方法、电子设备及系统
WO2021121052A1 (zh) 一种多屏协同方法、系统及电子设备
WO2020155014A1 (zh) 智能家居设备分享系统、方法及电子设备
CN114327666B (zh) 应用启动方法、装置和电子设备
WO2021233079A1 (zh) 一种跨设备的内容投射方法及电子设备
CN116360725B (zh) 显示交互系统、显示方法及设备
CN113885759A (zh) 通知消息处理方法、设备、系统及计算机可读存储介质
CN112130788A (zh) 一种内容分享方法及其装置
WO2022078295A1 (zh) 一种设备推荐方法及电子设备
WO2020155875A1 (zh) 电子设备的显示方法、图形用户界面及电子设备
WO2021196980A1 (zh) 多屏交互方法、电子设备及计算机可读存储介质
WO2023005711A1 (zh) 一种服务的推荐方法及电子设备
US20240303024A1 (en) Display method, electronic device, and system
WO2022161058A1 (zh) 一种全景图像的拍摄方法及电子设备
CN117784991A (zh) 最近任务列表的显示方法及电子设备
CN115150502B (zh) 一种应用小部件的显示方法及装置、存储介质
WO2022052706A1 (zh) 一种服务的分享方法、系统及电子设备
WO2024027238A1 (zh) 一种多设备协同方法、电子设备及相关产品
WO2024140757A1 (zh) 跨设备分屏方法及相关装置
WO2023231893A1 (zh) 光标显示的方法及电子设备

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