在操作系统环境之间传输web数据转让专利

申请号 : CN201180064189.5

文献号 : CN103477322B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 大卫·布里顿甘素银安苏曼·塔潘·萨特帕希蔡志勤

申请人 : 谷歌技术控股有限责任公司

摘要 :

公开了一种具有多环境操作系统(OS)的电子设备(100、200、300)。电子设备(100、200、300)基于第二OS环境中的web会话和/或浏览器配置,在第一OS环境(110、115、330、335)中创建web会话和/或更新浏览器配置。当主OS环境从第二OS环境(110、115、330、335)转换到第一OS环境110、115、330、335)时,web会话被创建和/或浏览器配置被更新。当设备(100、200、300)从停驻模式转换到移动模式或者从移动模式转换到停驻模式时,该转换可能发生。

权利要求 :

1.一种用于基于第二操作系统OS环境中的第二web会话在第一OS环境中创建第一web会话的方法,所述方法包括:确定主OS环境从所述第二OS环境至所述第一OS环境的转换;

响应于确定所述主OS环境从所述第二OS环境至所述第一OS环境的所述转换,确定与所述第二web会话相关联的web会话数据;以及基于与所述第二web会话相关联的所述web会话数据,在所述第一OS环境中创建所述第一web会话,其中所述web会话数据使用活动组件从所述第二OS环境传输,并且其中所述活动组件包括包含将要对数据执行动作的描述的数据结构、将要被执行动作的数据和对数据的动作中的一个。

2.根据权利要求1所述的方法,其中,确定所述主OS环境从所述第二OS环境至所述第一OS环境的所述转换包括:确定在停驻状态中的转换。

3.根据权利要求2所述的方法,其中,确定在停驻状态中的转换包括:确定从停驻状态至非停驻状态的转换。

4.根据权利要求2所述的方法,其中,确定在停驻状态中的转换包括:确定从非停驻状态至停驻状态的转换。

5.根据权利要求1所述的方法,其中,确定与所述第二web会话相关联的所述web会话数据包括:对在所述第二OS环境中的web浏览器查询所述web会话数据。

6.根据权利要求1所述的方法,其中,在所述第一OS环境中创建所述第一web会话包括:存储所述web会话数据;以及

激活与所存储的web会话数据相关联的所述第一OS环境中的应用。

7.根据权利要求6所述的方法,其中,激活所述第一OS环境中的应用包括:激活所述第一OS环境中的web浏览器;以及

在所述web浏览器中打开与所述web会话数据相关联的网站。

8.根据权利要求6所述的方法,进一步包括:

显示所述web会话数据以用于所述web会话数据的用户选择,其中,基于所述用户选择,在所述第一OS环境中激活所述应用。

9.一种电子设备,包括:

处理器,所述处理器耦合到存储器,所述存储器具有被配置成起动操作系统的可执行的指令;以及操作系统,所述操作系统被配置成在单一内核上运行第一操作系统OS环境和第二OS环境,其中,所述第二OS环境包括:

第一模块,所述第一模块被配置成:

确定主OS环境从所述第二OS环境至所述第一OS环境的转换;以及确定与在所述第二OS环境中的web会话相关联的web会话数据;并且其中,所述第一OS环境包括:

第二模块,所述第二模块被配置成:

从所述第一OS环境接收所述web会话数据,其中所述web会话数据使用活动组件从所述第二OS环境传输,并且其中所述活动组件包括包含将要对数据执行动作的描述的数据结构、将要被执行动作的数据和对数据的动作中的一个;以及激活与所述web会话数据相关联的所述第一OS环境中的应用。

10.根据权利要求9所述的电子设备,其中,所述第一模块进一步被配置成接收模式状态更改信号。

11.根据权利要求10所述的电子设备,其中,所述第一模块进一步被配置成响应于接收到所述模式状态更改信号,对在所述第二OS环境中的web浏览器查询所述web会话数据。

12.根据权利要求10所述的电子设备,其中,所述模式状态更改信号指示从停驻状态至非停驻状态的更改。

13.根据权利要求10所述的电子设备,其中,所述模式状态更改信号指示从非停驻状态至停驻状态的更改。

14.一种用于在第一操作系统OS环境中更新web浏览器的配置的方法,包括:确定主OS环境从第二OS环境至所述第一OS环境的转换;

基于确定所述主OS环境从所述第二OS环境至所述第一OS环境的所述转换,确定在所述第二OS环境中的web浏览器的配置;

基于所述第二OS环境中的所述web浏览器的所述配置,更新所述第一OS环境中的所述web浏览器的所述配置,其中所述web浏览器的所述配置使用活动组件从所述第二OS环境传输,并且其中所述活动组件包括包含将要对数据执行动作的描述的数据结构、将要被执行动作的数据和对数据的动作中的一个。

15.根据权利要求14所述的方法,其中,确定所述主OS环境从所述第二OS环境至所述第一OS环境的所述转换包括确定在停驻状态中的转换。

16.根据权利要求14所述的方法,其中,通过安全信道,将所述第二OS环境中的所述web浏览器的web浏览器配置数据从所述第二OS环境传输到所述第一OS环境。

说明书 :

在操作系统环境之间传输web数据

技术领域

[0001] 本发明通常涉及操作系统,并且更具体地说,涉及包括多个环境的操作系统。

背景技术

[0002] 诸如LinuxTM和WindowsTM的通用操作系统具有广泛特征集合,诸如文件系统、设备驱动器、应用、库等。虽然通用操作系统可以是通常用于诸如台式计算机的固定计算设备的适当操作系统,但是通用操作系统可能不是用于诸如移动电话、智能电话和平板计算机的移动设备的适当操作系统。包括实时性能的具有嵌入式或实时操作系统的特征的操作系统可能更适合移动设备。随着移动设备的计算能力的增加,移动设备可以在移动环境中被用作单独设备,以及在相对静止的环境中与诸如计算机、监视器、和投影仪的外围设备一起使用。当移动设备从移动环境转换到静止环境时,或反之亦然,移动设备的操作系统可以从移动操作系统环境转换到通用操作系统环境,或反之亦然。
[0003] 在移动环境和静止环境两者中,移动设备可以具有网络连接性,诸如使用有线或无线连接,连接到互联网或私人内联网的能力。当连接到互联网时,移动设备的用户可以创建由开放的网络、网页、web应用、或者使用统一资源定位符(URL)通过网络访问的其他信息构成的web会话。移动设备的用户可能希望当更改环境时能具有保持开放的web会话,或者容易重建的web会话。例如,用户在家中通过无线家庭网络可以在移动设备上浏览网页。当连接到无线家庭网络时,移动设备正在通用环境中操作。如果用户必须离开家,诸如上班或办事,则用户可能想保持网页打开,或者很容易地重新打开该网页。
[0004] 当离开家时,移动设备可以从通用操作环境转换至移动操作环境。为了重新打开网页,用户必须复制与地址栏中的网页相关联的URL,同时仍然处于通用环境中。在移动设备从通用环境转换到移动环境之后,用户在移动环境中打开浏览器,并且在移动环境中粘贴浏览器的地址栏中的URL。使用移动设备进行复制和粘贴功能可能比较困难而且消耗时间。如果在多个标签或多个浏览器窗口中打开多个网站或网页,则复制和粘贴功能变得更加有问题。此外,如果用户运行基于web的应用时,诸如电子邮件账户,则用户没有简单的方式重新访问他或她正在查看的电子邮件。相反,用户不得不再次登录并且重新打开他/她正在查看的电子邮件。
[0005] 此外,当用户使用web浏览器通过网站导航和/或输入网页中的信息时,web浏览器的配置可以更改。例如,用户的浏览器历史可能更改,或者用户可能已经输入新密码。当从一个环境转换到另一环境时,在其他环境中打开的web浏览器不知道在第一环境中进行的任何配置的更改。用户可能不得不将配置信息输入到其他环境中的浏览器。

附图说明

[0006] 图1是以图解形式表示用于将web会话数据和/或web浏览器配置数据从一个操作系统环境传输到另一个操作系统环境,并且在另一操作系统环境中创建web会话和/或更新web浏览器的配置的两个操作系统环境的示例性组件的框图。
[0007] 图2图示了可以使用图1的组件的移动设备的示例性立体图。
[0008] 图3是以图解形式表示包括具有多个环境的示例性操作系统的图2的移动设备的示例性组件的框图。
[0009] 图4是以图解形式更加详细地表示图3的示例性操作系统的框图并且包括图1中示出的组件。
[0010] 图5图示了用于当主操作系统从第二操作系统环境转换到第一操作系统环境时基于第二操作系统环境中的web会话和/或web浏览器配置来创建第一操作系统环境中的web会话和/或更新web浏览器的配置的示例方法。

具体实施方式

[0011] 本公开描述了当主OS环境从第二OS环境转换或更改到第一OS环境时,基于第二OS环境中的web会话来创建第一操作系统(OS)环境中的web会话。本公开也描述了当主OS环境从第二OS环境转换或更改到第一OS环境时,基于第二OS环境中的web浏览器配置来更新在第一OS环境中的web浏览器配置。第一OS环境和第二OS环境可以在电子设备的OS中的单一内核上同时地运行。电子设备可以包括耦合到存储器的处理器,该存储器具有配置成起动OS的可执行指令。
[0012] 图1图示了具有第一OS环境110和第二OS环境115的电子设备100的操作系统105,并且包括当操作系统的主OS环境从第二OS环境115转换或更改到第一OS环境110时用于在第一OS环境110中创建web会话和/或更新web浏览器配置的第一和第二OS组件110、115的组件。在操作系统105的示例性实施例中,OS环境110、115之一是在移动设备(例如:移动电话、智能电话、平板计算机)中意在用于移动计算的嵌入式OS环境,并且OS环境的另一个是通用计算机OS环境,其不意在用于与移动设备一起使用和/或用于与通常固定的诸如台式计算机或膝上型计算机的电子设备一起使用。通用OS环境可以是网络桌面环境。其他OS环境可以被使用。替代地,OS环境110、115两者可以是移动OS环境,或者两个OS环境可以是通用OS环境。而且,替代地或附加地,不止两个OS环境可以包括在操作系统105中。在美国专利申请系列号No.12/838,668;12/838,868;12/838,984;12/839,069和12/839,193中描述了具有多环境操作系统的电子设备。
[0013] 如图1中所示,第二OS环境115包括可以被配置成确定主OS环境从第二OS环境115至第一OS环境110的转换或更改的停驻管理器模块。停驻管理器模块120也可以被配置成在第二OS环境115中确定与web会话相关联的web会话数据。web会话可以包括网站、web应用、web内容或可以通过互联网、内部网或其他计算机网络访问的任何其他电子信息,诸如文本、图像、声音、视频和/或动画。web会话可以是开放web会话,诸如包括在第二OS环境115中在活动web浏览器中打开和/或显示给用户的网站的web会话。web会话也可以包括在web浏览器的历史中被识别的网站和/或web应用。web会话数据可以是在OS环境110、115之一中与激活一个或多个应用的web会话相关联的数据。该应用可以用于访问和/或打开web会话。web会话数据可以包括统一资源定位符(URL)、图标、和/或网站的标题、网页、或web应用。
[0014] 停驻管理器模块120也可以被配置成接收模式状态更改信号。模式状态更改信号可以指示主OS环境已经从第二OS环境115转换或更改到第一OS环境110。替代地或此外,模式状态更改信号可以指示电子设备100已经从停驻模式更改成非停驻模式,或者从非停驻模式更改到停驻模式。在下文将更加详细地描述模式状态更改信号和其生成。非停驻模式可以被称为移动模式。停驻模式可以是当电子设备100被连接到诸如监视器的外围设备(未示出)和通用OS环境是主OS环境时电子设备100所处的模式。而且,移动模式可以是当电子设备100未被连接到外围设备并且移动OS环境是主OS环境时电子设备100所处的模式。如图1中所示,停驻管理器模块120可以与诸如web浏览器的应用125通信。停驻管理器模块120可以被配置成对在第二OS环境115中的web浏览器125查询web会话数据。停驻管理器模块120可以被配置成在确定主OS环境从第二OS环境115至第一OS环境的转换之后查询web浏览器
125。在一个示例中,停驻管理器模块120被配置成响应于接收到模式状态更改信号而查询web浏览器125。web浏览器可以被配置成响应于正被停驻管理器模块120查询而向停驻管理器模块120提供web会话数据。web浏览器125可以包括从停驻管理器模块120接收查询和/或将web会话数据提供给停驻管理器模块120的一个或多个独立组件或模块。停驻管理器模块
120也可以被配置成将web会话数据发送或传输到第一OS环境110。
[0015] 在示例性实施例中,第一OS环境110可以包括提供用于发送和/或接收web会话数据的一个或多个应用编程接口(API)的web会话框架130。停驻管理器模块120可以使用框架130以将web会话数据发送到第一OS环境110。第一OS环境110也可以包括连接器模块135,连接器模块135被配置成从第二OS环境115接收web会话数据。连接器模块135也可以被配置成解析和/或存储web会话数据。连接器模块135可以基于组成web会话的独立网站和/或web应用来解析web会话数据。例如,基于与独立网站或web会话的web应用相关联的URL、图标、和/或标题,可以对web会话数据进行分类或组织,并且连接器模块根据URL、图标、和/或标题来解析web会话数据。可以将URL、图标、和/或标题信息分离、组织、或分组成字段,并且连接器模块135可以根据这些字段来解析web会话数据。连接器模块135将解析后的web会话数据存储在电子设备100的硬件(图1中未示出)中的一个或多个存储位置中。
[0016] 连接器模块135可以用于在第一OS环境110中创建web会话。第一OS环境110中的web会话可以由一个或多个网站、web应用、和/或来自第二OS环境115的web会话的其他web信息构成。可以通过在第一OS环境10中激活诸如web浏览器的应用140来创建第一OS环境110中的web会话。在一个示例中,连接器模块135可以被配置成自动地激活一个或多个应用
140,应用140访问和/或打开网站、web应用、和/或与被解析和/或被存储的web会话数据相关联的其他web信息。替代地或附加地,连接器模块135可以被配置成在用户界面145中显示web会话数据或指示web会话数据的信息。用户界面145是web连接器135的组件。替代地,用户界面145可以是与web连接器135分离的第一OS环境110的应用。第一移动OS环境的启动器菜单中的应用启动器快捷方式可以调用用户界面。此外,第一OS环境的状态/通知栏中的通知可以被显示,其中用户通过选择通知可以轻易地访问用户界面145。
[0017] 可以在用于用户选择的用户界面145中显示web会话数据。在用户选择用户界面145中的一个或多个web会话数据之后,基于用户选择在第一OS环境110中创建web会话。例如,用户界面可以显示URL。在用户选择URL之后,在第一OS环境110中诸如web浏览器的应用
140被激活,并且web浏览器140访问和/或打开网站、web应用、网页、和/或与被选择的URL相关联的其他web信息。
[0018] 替代地或附加地,停驻管理器120和连接器模块135可以切换功能。例如,连接器模块135可以被配置成确定从OS环境110、115之一的转换和在web浏览器140中查询web会话数据。连接器模块135也可以被配置成将web会话数据发送或传输到第二OS环境115。连接器模块135可以使用web会话框架130,以将web会话数据发送或传输到第二OS环境115。停驻管理器模块120可以被配置成从连接器模块135接收web会话数据。停驻管理器120可以被配置成基于从第一OS环境110接收到的所有或部分web会话数据在第二OS环境115中创建web会话。停驻管理器120可以被配置成解析和/或存储web会话数据。此外,停驻管理器120可以被配置成激活打开一个或多个网站、网页、web应用、或者与web会话数据相关联的其他web数据的web浏览器125。停驻管理器120也可以被配置成使用用户界面150显示web会话数据。在用于用户选择的用户界面150中可以显示web会话数据。在用户在用户界面150中选择一个或多个web会话数据之后,在第二OS环境115中基于用户选择创建web会话。例如,用户界面可以显示URL。在用户选择URL之后,在第二OS环境115中的诸如web浏览器的web应用125被激活,并且web浏览器125访问和/或打开网站、web应用、网页、和/或与被选择的URL相关联的其他web信息。
[0019] 替代地或附加地,停驻管理器模块120和连接器模块135可以被配置成执行双重角色。例如,当主OS环境从第二OS环境115切换到第一OS环境110时,停驻管理器模块120在web浏览器125中查询web会话数据,并且将web会话数据发送到第一OS环境110。连接器模块135接收web会话数据并且在第一OS环境中创建web会话。另一方面,当主OS环境从第一OS环境110切换到第二OS环境115时,连接器模块135在web浏览器140中查询web会话数据,并且连接器模块135将web会话数据发送到停驻管理器模块120。停驻管理器模块120接收web会话数据并且在第二OS环境115中创建web会话。
[0020] 如上所解释,OS环境110、115之一可以是移动OS环境,并且OS环境110、115的另一个可以是通用OS环境。当主OS环境从通用OS环境转换到移动OS环境时,电子设备100从停驻模式转换到移动模式。同样地,当主OS从移动OS环境转换到通用环境时,电子设备100从移动模式转换到停驻模式。如果第一OS环境110是移动OS环境,并且第二OS环境115是通用环境,则当电子设备100从停驻模式转换到移动模式时,停驻管理器120被配置成将web会话数据发送到第一OS环境110。同样地,当电子设备从移动模式转换到停驻模式时,连接器模块135被配置成将web会话数据发送到第二OS环境。另一方面,如果第一OS环境110是通用环境和第二OS环境115是移动环境,则当电子设备100从停驻模式转换到非停驻模式时,连接器模块135被配置成将web会话数据发送到第二OS环境115。同样地,当电子设备100从移动模式转换到停驻模式时,则停驻管理器120被配置成将web会话数据发送到第一OS环境110。
[0021] 替代地或附加地,当主OS环境从第二OS环境115转换或更改到第一OS环境110时,基于第二OS环境115中的web浏览器125的配置,第一OS环境110中的web浏览器的配置可以被更新、修正、重置、和/或更改。响应确定主OS已经从第二OS环境115转换到第一OS环境110,停驻管理器模块120可以被配置成在第二OS环境115中的web浏览器中查询web浏览器
125的配置数据。web浏览器125的配置数据可以包括下列的一个或多个:浏览历史、下载历史、搜索历史、形式字段输入历史、cookie、登陆和/或密码数据、主页信息、书签信息、弹出信息、和/或网页显示信息。其他web浏览器配置数据或设置可以被包括。web浏览器125可以被配置成将web浏览器配置数据发送到停驻管理器模块120。web浏览器125的一个或多个独立组件或模块可以被配置成接收配置数据和/或将配置数据发送到停驻管理器模块120。
[0022] 停驻管理器模块120可以被配置成将web浏览器配置数据发送到第一OS环境110。停驻管理器模块120可以被配置成发送或传输具有web会话数据的web浏览器配置数据。替代地,停驻管理器模块120可以发送或传输与web会话数据分离的web浏览器配置数据。停驻管理器模块120可以在第一OS环境110中使用web会话框架130,以便将浏览器配置数据发送到第一OS环境110。停驻管理器模块120可以通过非安全的或有安全的信道来发送web浏览器配置数据。一种或多种技术可以用于创建诸如使用加密、哈希函数、证书、令牌的有安全的信道,和/或已知用于创建安全信道的任何其他技术。
[0023] 第一OS环境110可以使用连接器模块135接收web浏览器配置数据。连接器模块135可以被配置成接收、解析、和/或存储web浏览器配置数据。连接器模块也可以被配置成使用从第二OS环境115接收到的web浏览器配置数据来更新、修正、重置、和/或更改第一OS环境110中的web浏览器140的配置。连接器模块135也可以被配置成在用户界面155中显示web浏览器配置数据。连接器模块135可以被配置成在用户界面155中显示所有配置数据。替代地,连接器模块135可以被配置成在用户界面155中仅显示可应用到第一OS环境110中的web浏览器140的配置数据。例如,如果来自第二OS环境115中的浏览器125的配置信息之一不用于第一OS环境110中的web浏览器140的配置,则连接器模块135可以不在用户界面155中显示配置数据。用于示出配置数据的用户界面可以是与用于示出web会话数据的界面不同的用户界面。替代地,用于显示web会话数据的用户界面145和用于显示浏览器配置数据的用户界面155可以相同。用户可以选择一个或多个配置数据,以更新、修正、重置、和/或更改浏览器140的配置。用户可以选择在用户界面155中显示的所有配置数据。替代地,用户通过选择少于被显示的所有配置数据,可以定制第一OS环境110中的web浏览器140的配置更新。
[0024] 替代地或附加地,停驻管理器120和连接器模块135可以切换功能。例如,连接器模块135可以被配置成确定从OS环境110、115之一的转换,并且在web浏览器140中查询web浏览器配置数据。连接器模块135也可以被配置成将web浏览器配置数据发送或传输至第二OS环境115。连接器模块135可以使用框架130,以将web浏览器配置数据发送或传输至第二OS环境115。停驻管理器模块120可以被配置成从连接器模块135接收web浏览器配置数据。停驻管理器120可以被配置成基于从第一OS环境110接收到的所有或部分web会话数据来更新、修正、重置、和/或更改第二OS环境115中的web浏览器125的配置。停驻管理器120可以被配置成解析和/或存储web浏览器配置数据。停驻管理器模块120也可以被配置成在用户界面160中显示web浏览器配置数据。停驻管理器模块120可以被配置成在用户界面160中显示所有配置数据。替代地,停驻管理器模块120可以被配置成在用户界面160中仅显示可应用到第二OS环境115中的web浏览器125的配置数据。例如,如果来自第一OS环境110中的浏览器140的配置数据不用于第二OS环境115中的web浏览器125的配置,则停驻管理器模块120可以不在用户界面160中显示配置数据。用于示出配置数据的用户界面可以是与用于示出web会话数据的界面不同的用户界面。替代地,用于显示web会话数据的用户界面150和用于显示浏览器配置数据的用户界面160可以相同。用户可以选择一个或多个配置数据以更新、修正、重置、和/或更改浏览器125的配置。用户可以选择显示在用户界面160中的所有配置数据。替代地,用户通过选择少于被显示的所有数据,可以定制第二OS环境115中的web浏览器125的配置更新。
[0025] 替代地或附加地,停驻管理器模块120和连接器模块135可以被配置成,当分别在第一和第二OS环境110,115中更新、修正、重置、和/或更改web浏览器125、140时执行双重任务。例如,当主OS环境从第二OS环境115切换到第一OS环境110时,停驻管理器模块120在web浏览器125中查询web浏览器配置数据并且将web浏览器配置数据发送到第一OS环境110。连接器模块135接收web浏览器配置数据,并且更新、修正、更改、和/或重置第一OS环境110中的web浏览器配置。另一方面,当主OS环境从第一OS环境110切换到第二OS环境115时,连接器模块135在web浏览器140中查询web浏览器配置数据,并且连接器模块135将web浏览器配置数据发送到停驻管理器模块120。停驻管理器模块120接收web浏览器配置数据,并且更新、修正、更改、和/或重置第二OS环境115中的web浏览器的配置。如上所解释的,OS环境110、115之一可以是移动OS环境,并且OS环境110、115的另一个可以是通用OS环境。当主OS环境从通用OS环境转换到移动OS环境时,电子设备100从停驻模式转换到移动模式。同样地,然后主OS从移动OS环境转换到通用环境,电子设备100从移动模式转换到停驻模式。例如,如果第一OS环境是移动OS环境并且第二OS环境115是通用OS环境,则当电子设备100从移动模式转换到停驻模式时,停驻管理器模式120被配置成在web浏览器125中查询web会话数据,并且将web浏览器配置数据发送和传输至第一移动OS环境110。相似地,当电子设备
100从停驻模式转换到移动模式时,连接器模式被配置成在web浏览器140中查询web浏览器配置数据,并且将web浏览器配置数据发送或传输至第二OS环境115。
[0026] 使用活动组件(intent),可以将web会话数据和/或web浏览器配置数据传输到停驻管理器模块120、连接器模块135、和/或web应用/浏览器125、140,或者从其传输。活动组件可以是包含将对数据执行动作的描述的数据结构。活动组件可以包括将对其执行动作的数据。活动组件也可以包括、指示、和/或指定动作。在一个示例中,在停驻管理器120确定主OS环境从第二OS环境115转换到第一OS环境110之后,停驻管理器模块生成活动组件并且将该活动组件发送到第一OS环境。活动组件可以包括web会话数据和/或web配置数据。活动组件也可以包括对数据执行的一个或多个动作,诸如解析数据、存储数据、打开web应用/浏览器140、打开显示web会话数据和/或web浏览器配置数据的用户界面145、155、和/或配置web浏览器140。类似地,例如,在连接器模块120确定主OS环境从第一OS环境110至第二OS环境115的转换之后,连接器模块135可以生成活动组件并且将该活动组件发送给第二OS环境。
该活动组件可以包括web会话数据和/或web配置数据。活动组件也可以包括对数据执行的一个或多个动作,诸如解析数据、存储数据、打开web应用/浏览器125、打开显示web会话数据和/或web浏览器配置数据的用户界面150、160、和/或配置web浏览器125。
[0027] 替代地或附加地,在用户进行web会话数据和/或web浏览器配置数据的用户选择之后,停驻管理器模块120和/或连接器模块130可以生成活动组件。例如,在连接器模块135在用户界面145上显示web会话数据和用户选择web会话数据之后,网络连接器135生成活动组件并且在移动OS环境框架(例如:AndroidTM框架)中将该活动组件发送到web浏览器140。活动组件包含被选择的web会话数据,诸如被选择的URL。活动组件也可以包含一个或多个动作,诸如打开与web浏览器140中的web会话数据相关联的一个或多个网站或网页。在接收到该活动组件之后,web浏览器被激活并且在web浏览器140中打开网站、网页、web应用、和/或与web会话数据相关联的其他web信息。例如,如果web会话数据与基于web的应用140相关联,则移动OS环境框架将指令与web会话数据相关联的应用140打开和处理web会话数据。例如,如果URL与YouTube视频相关联,则移动OS环境框架启动YouTube应用,并且在YouTube应用中显示与URL相关联的YouTube视频。在另一示例中,使用诸如棱镜(Prism)的软件应用可以访问和/或打开基于web的应用140。棱镜提供以其他方式在web浏览器中被访问和/或打开的网站或web应用作为独立的窗口被打开的能力,与标准(或非基于web的)桌面应用被如何打开类似。如果特定网站或web应用被配置成在第一OS环境中作为独立应用(而不是通过web浏览器)被访问和/或被打开,诸如被使用棱镜,则在接收到活动组件之后,与web会话数据相关联的独立应用140被激活,而不是web浏览器。
[0028] 下面的图2-4示出了其中可以使用和/或实现本公开的组件的电子设备的示例电子设备和示例性组件。参考图2,提供了移动电子设备200。移动设备200包括图形用户界面(GUI)210和多个数据输入按钮220。移动设备200可以是但不限于移动个人计算机(PC)、平板PC、笔记本、移动电话、膝上型计算机、手持式计算机、或智能电话。可以使用其他电子设备。用户可以将设备200连接到各种外围设备(未示出)。外围设备可以是但是不限于计算机监视器、膝上型计算机、台式计算机、平板PC、或屏幕投影仪。
[0029] 图3图示了以图解形式示出图2的移动设备200的组件的框图。移动设备200包括与设备硬件305通信的操作系统300。操作系统300可以是GNU/Linux分布。可以使用其他操作系统。如图3中所示,操作系统300包括彼此通信的内核315和用户组件320。用户组件320包括第一应用中间件环境330(下文的第一OS环境)和第二应用中间件环境335(下文的第二OS环境)。如由箭头340和345所指示,第一OS环境330和第二OS环境335与内核315通信。此外,第一OS环境330和第二OS环境335彼此通信。
[0030] 第一OS环境330和第二OS环境335可以彼此独立地操作和共存。例如,OS环境330、335的每一个可以在没有其他的OS环境330、335存在的情况下通过自身操作。又例如,OS环境330、335可以是不同的类型(诸如被嵌入式的一个OS环境330、335,和未被嵌入式的其他OS环境330、335)。又例如,OS环境330、335可以执行不同操作或功能,同时与内核315、设备硬件305、和/或设备的用户通信。替代地或附加地,第一OS环境330和第二OS环境335可以是独立的。例如,第一OS环境330和第二OS环境335可以竞争内核315的资源。替代地或附加地,第一OS环境330和第二OS环境335可以彼此结合地操作。
[0031] 在示例性实施例中,OS环境330、335之一是意在用于在移动设备(例如:蜂窝电话、智能电话、移动个人计算机、上网本、手提电脑、和手持计算机)中使用的OS环境,并且其他OS环境330、335是不意在用于与移动设备一起使用和/或意在用于与固定设备(例如:台式计算机)一起使用的通用OS环境。如非限制性示例,移动OS环境330可以是安卓、窗口移动、塞班、iOS、或RIM黑莓移动操作系统环境。可以使用其他移动OS环境。如非限制性示例,通用OS环境335可以是标准的GNU/Linux、窗口、Unix、Mac OS X、或者谷歌浏览器OS环境。通用OS环境335也可以是网络电脑环境。可以使用其他OS环境。利用各种类型的内核(例如:基于Linux内核、基于窗口的内核)可以实现移动和通用OS环境330、335。附加地,各种类型的任何不止两种OS环境在同一内核315上可以独立地共存。为了简洁明了,如图3中所示,将第一OS环境330指定为移动环境,并且将第二OS环境335指定为通用环境。OS环境330、335可以包括若干软件组件。如图3中所示,移动环境330包括应用355(例如:用户应用)。移动环境330也可以包括中间件360。应用355可以包括堆栈和其他应用软件组件,并且也包括由其上并列应用355的中间件识别的计算机指令。中间件360包括移动应用框架365和移动运行时间编程370。应用355可以由应用框架365管理以及由运行时间编程370解释。
[0032] 通用环境335包括耦合到中间件380的应用375(例如,用户应用)。中间件380可以包括应用框架385和库/工具390。库/工具390可以包括各种组件,包括诸如Qt或GIMP工具包(GTK)的库,其可以在GUI上显示信息中有用。可以使用其他工具和/或库。应用375可以是本地应用,因为应用375的可执行代码对应于内核315和/或设备硬件305的指令集架构。如移动OS环境330中的应用355,通用OS环境335中的应用375可以包括堆栈和其他应用软件组件,并且也可以包括由其上应用375并列的中间件380识别的计算机指令。
[0033] 设备硬件305可以包括各种硬件设备,诸如耦合到处理器(未示出)的存储器存储设备(未示出),其存储被配置成执行各种功能和操作的计算机可执行指令。此外,设备硬件305可以包括各种其他组件/资源,诸如蜂窝蓝牙和/或WiFi收发器或无线电、键盘、诸如扬声器和/或视频屏的其他输入设备、硬件、加速器、IP套接字等。内核315通过连接和管理OS环境330、335的设备硬件305和中间件360、380之间的交互来分配移动设备的资源。包括在中间件360、380中的软件组件(例如,应用框架365、385、运行时间编程370、和/或库工具
390)可以被称为中间件,因为它们逻辑地插入在内核315和软件应用355、375之间。
[0034] 图4更加详细地图示了具有第一OS环境330和第二OS环境335的操作系统300。图4也图示了当操作系统300的主操作系统环境从OS环境330、335之一转换或更改到OS环境330、335的另一个时,用于在OS环境330、335之一中创建web会话和/或配置web浏览器的第一OS环境330和第二OS环境335的组件。如图4中所示,第一OS环境330包括门户服务模块
405、门户活动模块410、移动服务模块415、和移动应用模块420。在如图3中所示的第一OS环境330的应用355当中可以考虑门户活动模块410和移动应用模块420。而且,门户服务模块
405和移动服务模块415可以是第一OS环境330的中间件360的部件。而且,如图4中所示,第二OS环境335包括仲裁器或资源管理器模块415,窗口(AIW)模块430中的安卓、通用服务模块435、以及通用OS应用模块440。通用OS应用模块440可以是图3中示出的用户应用375的部件。资源管理器425、AIW模块430、和通用服务模块可以是图3中示出的用户应用375的部件。
资源管理器425、AIW模块430、和通用服务模块可以是图3中示出的中间件380的部件。替代地,AIW模块430可以是用户应用375之一。
[0035] 模块405、410、415、425、430和435被配置成服务特定功能。AIW模块可以被配置成在GUI210(图2中示出)上显示第一环境应用窗口,同时第二OS环境335是主OS环境。门户服务模块405包括被配置成允许用于第一OS环境330的服务的指令集,并且指引到资源管理器425的所有通信。当移动设备200正操作时,门户服务模块405优选地一直运行。此外,门户服务模块405被连接到与门户活动模块410相关联的活动。门户活动模块410可以是位于第一环境330堆栈的第二OS环境335应用。例如,如果第二OS环境是Ubuntu环境,则门户活动模块
410可以表示Ubuntu应用,并且当门户活动模块410具有焦点(即,当门户活动模块处于在GUI220中显示的其他应用355上时),Ubuntu通过GUI220处于视图中。
[0036] 如图4中所示,第二OS环境335中的资源管理器模块和第一OS环境中的门户服务模块405彼此直接地通信。资源管理器模块425和门户服务模块405可以彼此直接通信,以避免中间件260和中间件280的操作中的冲突。资源管理器模块425可以是被配置成管理由第一OS环境330和第二OS环境335共享的资源的指令集。共享资源包括显示设备、输入设备、电力管理服务、和系统状态信息。此外,资源管理器425可以被配置成通过OS环境330、335控制设备硬件305的访问。此外,资源管理器425可以识别和控制通过GUI220显示与环境330、335相关联的哪个用户界面。门户服务模块405可以是从第一环境330至资源管理器425的所有通信的来源。此外,门户服务模块405可以是用于从资源管理器425至第一OS环境330的所有回叫的信宿(sink)。
[0037] 另外,图4示出了基于来自其他OS环境330、335的web会话数据和/或web浏览器配置数据用于在环境330、335之一中创建web会话和/或更新web浏览器配置的本公开的组件。如图4中所示,停驻管理器模块移动445位于资源管理器模块425中。应用/web浏览器450位于通用OS应用模块440中。框架455位于门户服务模块405中,框架455用于在移动OS环境330和通用OS环境335之间传输包含web会话数据和或web浏览器或配置数据的活动组件。连接器模块460和web应用/web浏览器465位于移动OS应用模块420中。
[0038] 参考图1如上所述,当操作系统300的主OS环境从第二OS环境335转换到第一OS环境330时,位于资源管理模块425中的停驻管理器模块445可以接收状态更改信号。响应于接收到状态更改信号,停驻管理器模块445在位于通用OS应用模块440中的web浏览器450中查询web会话数据和/或web浏览器配置数据。在停驻管理器445接收到web会话数据和/或web浏览器配置之后,停驻管理器445可以生成包含web会话数据和/或web浏览器配置数据的一个或多个活动组件。活动组件也可以包括对数据执行的动作。停驻管理器模块445可以使用位于门户服务模块405中的框架455,将该活动组件传输到移动OS环境330。位于移动OS环境应用模块中的连接器模块460可以接收该活动组件。连接器模块460可以被配置成在存储位置(例如,在设备硬件305中的存储位置中)解析和/或存储该活动组件中的数据。连接器模块460可以基于接收到的web会话数据和/或web浏览器配置数据来创建web会话和/或配置web浏览器465。在一个示例中,在接收到该活动组件之后,连接器模块460可以在用于用户选择的用户界面上显示web会话数据和/或web配置数据。在web会话数据被选择之后,连接器模块460可以基于用户选择来生成活动组件,其用于激活web浏览器465(或者与web会话数据相关联的其他web应用),并且web浏览器465打开一个或多个网站、网页、web应用、和/或与被选择的web会话数据相关联的其他web数据。替代地或附加地,在web浏览器配置数据被选择之后,可以基于用户选择来更新web浏览器465的配置。
[0039] 相似地,如上参考图1所述,当操作系统300的主OS环境从第一OS环境330转换到第二OS环境335时,连接器模块460可以接收状态更改信号。响应于接收到状态更改信号,位于移动OS应用模块420中的连接器模块460可以在web浏览器465中查询web会话数据和/或web浏览器配置数据。在连接器模块460接收到web会话数据和/或web浏览器配置之后,连接器模块460可以生成包含web会话数据和/或web浏览器配置数据的一个或多个活动组件。该活动组件也可以包括对数据执行的动作。连接器模块460可以使用位于门户服务模块405中的框架455将该活动组件传输到通用OS环境335。位于资源管理器模块425中的停驻管理器模块445可以接收该活动组件。停驻管理器模块445可以被配置成在存储位置(例如,在设备硬件305中的存储位置)中解析和/或存储该活动组件。停驻管理器445可以基于接收到的web会话数据和/或web浏览器配置数据来创建web会话和/或配置web浏览器450。在一个示例中,在接收到活动组件之后,停驻管理器模块445可以在用于用户选择的用户界面上显示web会话数据和/或web配置数据。在一个或多个web会话数据被选择之后,停驻管理器模块445可以基于用户选择来生成活动组件,其激活web浏览器450(或者与web会话数据相关联的其他web应用),并且web浏览器450打开一个或多个网站、网页、web应用、和/或与web会话数据相关联的其他web数据。替代地或附加地,在web浏览器配置数据被选择之后,可以基于用户选择来更新web浏览器450的配置。
[0040] 如上所解释的,当主OS环境从OS环境330、335之一转换时,停驻管理器模块445或连接器模块460可以接收模式状态更改信号。当电子设备200的停驻状态从停驻状态转换成移动状态,或者从移动状态转换成停驻状态时,可以生成模式状态更改信号。在一个示例中,由资源管理器模块425接收指示电缆(诸如HDMI或USB电缆)被连接到电子设备200的电缆信号,其将电子设备200连接到外围设备。替代地,由资源管理器模块425接收指示电缆(诸如HDMI或USB电缆)从电子设备200断开的电缆信号,其将电子设备200与外围设备断开。替代地,当启用或禁用在电子设备200和外围设备之间的无线通信时,由资源管理器模块
425接收电缆信号。在由资源管理器模块425接收到电缆信号之后,将指示模式状态转换的信号从资源管理器模块425发送到门户活动模块410。响应于接收到该信号,门户活动模块
410将指示OS环境330、335之一是主OS环境的信号发送到资源管理器模块425。例如,如果电缆从电子设备200断开(或者禁用在电子设备200和外围设备之间的无线连接),则从门户活动模块410发送的信号指示移动OS环境是主OS环境。另一方面,如果电缆被连接到电子设备
200(或者启用在电子设备200和外围设备之间的无线连接),则从门户活动模块410发送的信号指示通用OS环境是主OS环境。此外,将指示已成为主OS环境的OS环境330、335获得帧缓冲器的所有权的信号从资源管理器425发送到门户活动模块405。附加地,将识别电子设备
200处于移动模式还是停驻模式的模式状态更改信号(也称为模式状态更改确认信号)从门户活动模块410发送到资源模块425。如果电缆被断开或者无线连接被禁用,则模式状态更改信号指示电子设备200处于移动模式。如果电缆被连接或无线连接被禁用时,则模式状态更改信号指示电子设备200处于停驻模式。停驻管理器445和/或连接器模式460接收模式状态更改信号。停驻管理器445和/或连接器模块460响应于接收到模式状态更改信号而在相应的web浏览器450、460中查询。
[0041] 图5图示了当主OS环境从第二OS环境转换到第一OS环境时基于第二OS环境中的web会话和/或web浏览器配置在第一OS环境中创建web会话和/或更新web浏览器配置的示例性方法。在步骤505,位于第二OS环境中的第一模块确定主OS环境从第二OS环境至第一OS环境的转换。第一模块可以是如上所述的停驻管理器模块或连接器模块。第一模块可以基于接收到模式状态更改信号来确定该转换。在步骤510,在确定主OS环境中的转换之后,第一模块可以确定web会话数据和/或web浏览器数据。通过在第二OS环境中的web浏览器中查询web会话数据和/或web浏览器配置数据,第一模块可以确定该数据。在步骤515,第一模块将web会话数据和/或web浏览器配置数据发送或传输到第一OS环境。在步骤515,web会话数据和/或web浏览器配置数据从第二OS环境传输到第一OS环境。第一模块可以使用活动组件发送数据。在从web浏览器接收到数据之后,用户创建包括该数据的活动组件。活动组件也可以包括将对数据执行的一个或多个动作。位于第一OS环境的第二模块接收活动组件。在接收到活动组件之后,第二模块可以在接收到活动组件之后解析和/或存储该数据。在步骤520,在第一OS环境中创建web会话和/或配置web浏览器。在一个示例中,在第一OS环境中创建web会话和/或配置web浏览器包括在用户界面上显示web会话数据和/或web浏览器配置数据。在用户使用用户界面输入用户选择之后,第二模块接收web会话数据和/或web浏览器数据的用户选择。第二模块可以生成在第一OS环境中创建web会话和/或配置web浏览器的活动组件。如果用户选择web会话数据的一些或所有,则第二模块可以生成活动组件并且将其分派给启动第一OS环境中的web浏览器或其他应用和访问和/或打开网站、网页、web应用、或与被选择的web会话数据相关联的其他web数据的第一OS环境的框架。替代地或附加地,如果用户选择web浏览器配置数据的一些或所有,则第二模块可以基于用户选择来生成更新第一OS环境中的web浏览器的配置的活动组件。
[0042] 如上所述,电子设备200可以响应于诸如电子设备200的停驻或非停驻的未经请求的事件而在模式状态和/或环境之间转换。替代地或附加地,基于除了停驻或未停驻移动设备200的事件,和/或基于除了未经请求事件的事件,电子设备200可以在模式状态和/或环境之间转换。例如,如果电子设备200在预先设置的时间段静止,则电子设备200可以被配置成在最佳能量效率模式状态下操作,无论设备状态如何。又例如,用户能够将模式状态从停驻转换到移动,即使该设备具有与外围设备的连接。附加地,连接到移动设备200的外围设备的类型能够指定自动模式状态更改序列是否被起动或者用户是否已经提供模式状态更改请求。在一个示例中,用户能够选择其中操作移动设备的模式状态。
[0043] 此外,当用户激活与其他环境相关联的应用时,电子设备200可以从一个OS环境切换到另一OS环境,作为主环境。电子设备200可以被配置成使得任何事件或一些事件能够在模式状态中触发变化。例如,如果电子设备200与web服务器或中间服务器通信,则来自web服务器或中间服务器的推送(例如:从服务器至电子设备200的信息的被迫发送)能够自动地触发从一个OS环境至适合接收被推送的信息的另一OS环境的切换。将电子设备200的主OS环境从一个OS环境至另一OS环境的转换的任何上述事件可以触发将从一个OS环境传输到另一OS环境的web会话数据和/或web浏览器配置数据。
[0044] 特别地意在,本公开不限于在此被包含的实施例和说明,而是包括含有实施例的部分和如落入所附权利要求的范围内的不同实施例的元素的合并的那些实施例的修正形式。