CN104516777A - 用户界面管理方法和系统 - Google Patents
用户界面管理方法和系统 Download PDFInfo
- Publication number
- CN104516777A CN104516777A CN201410525668.8A CN201410525668A CN104516777A CN 104516777 A CN104516777 A CN 104516777A CN 201410525668 A CN201410525668 A CN 201410525668A CN 104516777 A CN104516777 A CN 104516777A
- Authority
- CN
- China
- Prior art keywords
- role
- user
- data
- group
- module
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction 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
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Stored Programmes (AREA)
- Telephone Function (AREA)
- User Interface Of Digital Computer (AREA)
- Storage Device Security (AREA)
Abstract
一种方法,包括:经由与用户相对应的电子设备接收与用户相关联的输入;使用可操作地耦合到电子设备的一个或多个处理器,确定与用户相关联的一个或多个角色,所述一个或多个角色包括第一角色和第二角色;以及响应于输入,基于电子设备处于与第一角色或第二角色相关联的模式的确定,分别提供第一组应用或数据或第二组应用或数据。
Description
技术领域
本文所公开的各种实施例一般涉及在移动设备中管理用户界面。
背景技术
移动设备,诸如,例如,智能电话可以向用户提供各种功能。随着功能的可用数量的增加,用户可能希望更有效地管理这些功能。
公开内容
本公开的一方面提供了一种方法,其包括:经由与用户相对应的电子设备接收与用户相关联的输入;使用可操作地耦合到电子设备的一个或多个处理器,确定与用户相关联的一个或多个角色,所述一个或多个角色包括第一角色和第二角色;以及响应于输入,基于电子设备处于与第一角色或第二角色相关联的模式的确定,分别提供第一组应用或数据或第二组应用或数据。
本公开的另一方面提供了一种装置,其包括:接收模块,被配置为经由与用户相对应的电子设备接收与用户相关联的输入;确定模块,被配置为确定与用户相关联的一个或多个角色,所述一个或多个角色包括第一角色和第二角色;以及提供模块,被配置为响应于输入,基于电子设备处于与第一角色或第二角色相关联的模式的确定,分别提供第一组应用或数据或第二组应用或数据。
本公开的另一方面提供了一种存储指令的非临时性计算机可读介质,当该指令被一个或多个处理器运行时使得所述一个或多个处理器执行操作,所述操作包括:经由与用户相对应的电子设备接收与用户相关联的输入;使用可操作地耦合到电子设备的一个或多个处理器,确定与用户相关联的一个或多个角色,所述一个或多个角色包括第一角色和第二角色;以及响应于输入,基于电子设备处于与第一角色或第二角色相关联的模式的确定,分别提供第一组应用或数据或第二组应用或数据。
附图说明
通过下面结合附图的描述,本公开的以上和其他方面、特征和优点将更加明显。
图1示出了根据本公开的各种实施例的电子设备的概念图;
图2示出了根据本公开的各种实施例的电子设备的框图;
图3A示出了根据本公开的实施例的用于改变角色的设置菜单;
图3B示出了根据本公开的实施例的用于切换用户的快速设置面板;
图3C示出了根据本公开的实施例的“切换角色”磁贴(tile);
图3D示出了根据本公开的实施例的用于改变角色的用户界面;
图3E示出了根据本公开的实施例的标准角色(标准模式)和自定义角色(自定义模式)的示意图;
图3F示出了根据本公开的实施例的在相同用户设备中跨越分离的环境/沙盒/组/隔离/用户/角色的信息共享;
图3G示出了根据本公开的实施例的对于特定实体在同步和提供者之间跨越隔离的环境的示例性信息流的流程图;
图3H示出了根据本公开的实施例的当环境驻留在不同的用户设备上时相同组件的交互;
图4A示出了根据本公开的实施例的角色架构的概念图;
图4B示出了根据本公开的实施例的角色创建、删除和更新的示例性流程图;
图4C示出了根据本公开的实施例的普通角色框架中的两层关系;
图4D示出了根据本公开的实施例的单用户系统中的用户访问角色的流程图;
图4E示出了根据本公开的实施例的在多用户系统中在用户之间切换角色的流程图;
图5示出了根据本公开的各种实施例的多层的安全性;
图6A示出了根据本公开的实施例的在RCP服务框架内在角色之间共享数据(以隐私模式);
图6B示出了根据本公开的实施例的在RCP服务框架内在角色之间共享数据(以开放/公开模式);
图6C示出了根据本公开的实施例的RCP服务框架(具有数据共享模型1)的基础结构;
图6D示出了根据本公开的实施例的RCP服务的用户动作(用例);
图6E示出了根据本公开的实施例的RCP服务框架的数据共享模型2;
图7示出了根据本公开的各种实施例的流程图;
图8示出了根据本公开的各种实施例的电子设备的框架构;以及
图9示出了根据本公开的各种实施例的电子设备的框图。
贯穿附图,相同的参考标记将被理解为指代相同部件、组件和结构。
具体实施方式
下面将参照附图讨论本公开的各个方面的详细描述。该描述仅被阐述为例子,而不应该限制本公开的范围。关于附图的描述,利用相同的参考标记指代相同的特征。
如本公开中所使用的,诸如“包括”或“可以包括”的术语指的是相应功能、操作或特征的存在,而不是限制附加功能、操作或特征的存在。此外,诸如“包括”或“具有”的术语指的是特性、数字、步骤、操作、组件或其组合的存在,并且并非旨在排除一个或多个其它特性、数字、步骤、操作、组件或其组合的存在。
如本公开中所使用的,术语“或”被用于包括任意所列术语和其所有组合。例如,“A或B”包括仅A、仅B、或者A和B二者。如本公开中所使用的,诸如“第一”或“第二”的术语可以被用于描述各特征,但是不限制这样的特征。例如,术语不限制它们相关联的特征的次序和/或重要性。这样的术语可以被用于将一个特征与其他特征区分开。例如,第一用户设备和第二用户设备都是用户设备,但是是不同的用户设备。例如,在不脱离本公开的范围的情况下,第一组件可以称为第二组件,并且类似地,第二组件可以被称为第一组件。
如果一个组件被称为与另一组件“连接”或“连接到”另一组件时,则该组件可以直接与另一组件连接或直接连接到另一组件,或者之间可以存在其他组件。另一方面,如果一个组件被称为与另一组件“直接连接”或“直接连接到”另一组件时,应该理解的是,之间不存在其他组件。
本公开中使用的术语用于描述本公开的各种实施例,而且并非旨在限制本公开。单数术语也旨在包括复数形式,除非上下文清楚地表明不想要复数形式。
除非不同地定义,本公开使用的所有术语(包括技术术语或科学术语)具有本领域普通技术人员通常理解的含义。如在词典中定义的通常术语应该被解释为具有与它们的上下文一致的含义,而且不应理想化地或过分形式化地对其进行解释,除非本公开中明确地如此定义。
本公开的电子设备可包括通信功能。例如,根据本公开的电子设备可以是智能电话、平板个人计算机(“PC”)、移动电话、视频电话、电子书阅读器、台式PC、笔记本PC、上网本PC、个人数字助理(“PDA”)、便携式多媒体播放器(“PMP”)、mp3播放器、移动医疗设备、相机、或可穿戴设备(例如,头戴式设备(“HMD”)、电子服装、电子背带、电子项链、电子配件、电子纹身或智能手表)。
根据各种实施例,电子设备可以是具有通信功能的智能家用电器。智能家用电器可以是,例如,电视机、数字视频盘(“DVD”)播放器、音响、冰箱、空调、吸尘器、烤箱、微波炉、洗衣机、干衣机、空气净化器、机顶盒、电视盒(例如,三星HomeSyncTM、苹果TVTM、或谷歌TVTM)、游戏机、电子词典、电子钥匙、摄像机或电子相框。
根据各种实施例,电子设备可以是医疗设备(例如,磁共振血管成像(“MRA”)设备、磁共振成像(“MRI”)设备、计算机断层摄影(“CT”)设备、成像设备或者超声波设备)、导航设备、全球定位系统(“GPS”)接收器、事件数据记录器(“EDR”)、飞行数据记录器(“FDR”)、车载信息娱乐设备、航海电子设备(例如,船用导航设备、陀螺仪或指南针)、航空电子设备、安全设备、或工业或消费类机器人。
根据各种实施例,电子设备可以是包括通信功能的家具、建筑物/结构的一部分、电子板、电子签名接收设备、投影仪、或各种测量设备(例如,水、电、气或电磁波测量设备)。
根据本公开的电子设备可以是前述设备的任意组合。此外,对本领域技术人员将显而易见的是,根据本公开的电子设备并不限于上述设备。
图1示出了根据本公开的各种实施例的电子设备100。设备100可以与一个或多个用户相关联。图1示出设备100与N个用户相关联(用户1至用户N;N可以是任意自然数)。用户可以与零(0)个、一(1)个或多个角色(persona)相关联。图1示出了设备100的用户1与M个角色相关联(角色1至角色M;M可以是任意自然数)。其他用户(例如,用户2至用户N)也可以与零个、一个或多个角色相关联。角色将在下面进一步详细说明。
角色可以与零个、一个或多个应用相关联。图1示出了(设备100的)用户1的角色1与X个应用相关联(应用1至应用X,X可以是任意自然数)。用户1的其他角色(例如,角色2至角色M)也可以与零个、一个或多个应用相关联。角色也可以与各种类型的数据相关联。
图2示出了根据本公开的各种实施例的电子设备200。电子设备200可以是,例如,电子设备100。参照图2,电子设备200可以包括总线210、处理器220、存储器230、输入/输出(“I/O”)接口240、显示器250、通信接口260和角色模块270。
总线210可以是连接上述组件并且允许在上述组件之间通信(例如,发送控制消息)的电路。
处理器220可以是,例如,从其他组件(例如,存储器230、I/O接口240、显示器250或通信接口260)接收指令,解释接收到的指令,并根据解释的指令执行计算或数据处理。
存储器230可以,例如,存储从其他组件(例如,存储器230、I/O接口240、显示器250或通信接口260)接收或由其生成的指令或数据。例如,存储器230可以包括编程模块,诸如内核231、中间件232、应用编程接口(“API”)233或应用234。每个前述的编程模块可以包括软件、固件或硬件中的至少两个的组合。
内核231可以控制或管理系统资源(例如,总线210、处理器220或存储器230),其可以用于执行在其他编程模块(诸如,例如,中间件232、API233或应用234)中实现的操作或功能。另外,内核231可以提供接口以用于允许中间件232、API233或应用234访问电子设备200的各个组件。
中间件232可以是介质,内核231可以通过中间件232与API233或应用234通信以发送和接收数据。此外,中间件232可以通过,例如,向一个或多个应用234分配使用电子设备200的系统资源(总线210、处理器220或存储器230)的优先级,来控制(例如,调度或负载平衡)一个或多个应用234的工作请求。
API233是接口,其可以控制应用234可以在内核231或中间件232处提供的功能。例如,API233可以包括至少一个接口或功能(例如,命令),用于文件控制、窗口控制、视频处理或字符控制。
I/O接口240,例如,可以经由总线210从用户接收指令或数据并发送到处理器220或存储器230。另外,I/O接口240可以输出经由总线210从存储器230或通信接口260接收到的音频信息。
显示器250可以向用户显示图像、视频或数据。
通信接口260可以在电子设备200和一个或多个其它电子设备202之间提供通信。通信接口260可以支持特定的通信协议(例如,Wi-Fi、Wi-Fi直连、WiGig、BT、BLE、ZigBee、UWB、NFC、RFID、音频同步、EFC、HBC或VLC),或通信网络262。网络通信262可以是,例如,因特网、局域网(“LAN”)、广域网(“WAN”)、电信网络、蜂窝网络、卫星网络或普通老式电话服务(“POTS”)网络。
角色模块270可以被配置为,例如,接收与用户相关联的输入和确定与用户相关联的一个或多个角色。一个或多个角色可以包括第一角色和第二角色。角色模块270还可以被配置为响应于输入,基于电子设备处于与第一角色或第二角色相关联的模式的确定,分别提供第一组应用或数据、第二组应用或数据。
根据本公开的各种实施例,提供移动设备中的虚拟环境。本公开的各种实施例可以包括增强虚拟环境的安全性、使用性和方便性的多个特征和概念。
除此以外,本公开讨论以下主题:
1.创建虚拟空间以隔离数据、偏好和应用
2.基于策略,保护数据、通信并限制虚拟空间中的应用行为
3.提供远程管理、监控和执行虚拟空间上的策略的方法
4.提供容易地移入和移出虚拟空间的方法
下面列出的各种术语或短语包括它们简单和普通的含义,包括但不限于,下面提供的每个相应术语的描述:
术语“用户”可以代表设备(例如设备100)的用户。设备的人类用户可以被称为终端用户/消费者。多个终端用户可以使用相同设备相关联。每个终端用户可以由设备的用户来表示。数字可以附加到用户后面以用于唯一标识(例如,用户0、用户1,等等)。
用户可以具有以下特征:
1.设备可以具有一个或多个用户
2.设备可以具有至少一个用户
3.每个用户可以在设备中被唯一地识别
4.超级用户(具有特殊权限的用户)可以创建/管理其他用户
5.在任何给定实例中,只有一个用户可以是活动的
6.终端用户可以在用户之间切换
7.用户彼此之间不能共享数据
8.用户的设置和偏好不能与其他用户共享
术语“角色”代表用户个性(personality)。用户可以创建角色来组织应用/特征(基于用户的需要,它们是相关的)、安全需求、或其他任何公共行为。例如,个人角色可以是应用/特征对用户专用的角色,而工作角色可以是在用户和企业之间共享的应用/特征的集合。安全策略和限制可以作为一个整体应用到角色,而且策略可以远程地执行而不影响其他角色或用户。
根据本公开的各种实施例,角色框架可以被实现为平台(例如,Android)的子系统,它允许用户在其配置文件中创建独立的环境中。每个角色可以在主用户的控制下提供完全隔离的环境。每个环境可以具有其自己的一组偏好、应用和数据,所有这些都可以不同于主用户的设置。在多用户系统中,每个用户都可以创建其自己的一组角色。
图3A示出了用于改变角色的设置菜单。用户可以不具有任何角色,在这种情况下,可以向用户提供单个用户(虚拟)环境。用户还可以具有一个或多个角色,而且可以仍然能够利用可能不被称为“角色”的用户环境来呈现。这样的用户环境可以被称为默认角色,或简单地,称为“用户”。贯穿本公开,根据上下文,术语“用户”可以代表使用电子设备的物理用户,或者可以代表与角色不关联的用户(虚拟)环境。
用户可以完全控制它的角色。在一些实施例中,当从用户切换到它的任何角色或者在角色之间切换时,可以不需要认证。在用户或角色的环境中,可能存在在角色之间进行切换的方式。在一个实施例中,存在快速设置面板(例如,AndroidTM操作系统(“OS”)中的快速设置面板)。选择“切换角色”磁贴(tile)之后,用户可以利用角色的列表来呈现。图3B示出了根据本公开的各种实施例的用于切换用户的快速设置面板。图3C示出了根据本公开的各种实施例的“切换角色”磁贴。
选择角色可以自动切换环境。图3D示出了用于改变角色的用户界面。在用户得以访问角色之前,他/她可能需要使用针对所选用户配置的认证机制来进行登录。同样的道理可以应用于单一或多用户环境。作为用户的助手,所希望的目标角色可以在用户认证过程之前、期间,在登陆屏幕中选择。在一个实施例中,一组可用角色可以通过,例如,锁定屏幕插件呈现给用户。不管用户当前正在使用的角色,从电子设备接收到的和发送给电子设备的所有通信都可以用于相同个体(例如,用户)。
具有不同设置的决定可以被预先配置,并在创建的时候呈现给用户。在允许访问角色之前,特定的角色类型可以执行严格的认证策略并向用户呈现挑战(例如,请求来自辅助设备的令牌)。其他类型可以没有这样的要求,或可以具有其它类型的要求。
角色的示例性特性可以是:
1.角色由用户拥有
2.用户可以具有0个或多个角色
3.作为角色的一部分的应用/功能由相同的优先级/策略来管理
4.根据功能/特性,角色可以具有多种类型。例如,具有高安全等级的角色可以被称为安全角色,安全等级可以由移动设备管理(“MDM”)进行控制
5.角色可以由终端用户创建
6.在角色之间共享的数据可以通过策略管理/控制
7.移除角色可以移除角色的所有或部分应用/特征/策略
术语“策略”是在满足一定条件下可以执行的行为。例如:
1.“在工作环境中,相机应该被禁用”
2.“为了使用企业邮箱,设备必须利用PIN锁定”
上述语句可以是在满足相应的条件时可以由设备执行的策略。策略可以被用来限制或启用特征。策略可以被远程应用。
当策略被设置时,设备只可以由应用了该策略的相同实体进行修改。在根据本公开的各种实施例的平台(例如,Android平台)中,下面的语句可以启用策略执行。
1.“为了设置策略,实体必须是用户/角色的管理员”
2.“当两个管理员应用相同的策略时,将执行最严格的策略”
平台作为多用户框架的一部分,可以保证用户之间的数据和通信的隔离。角色框架选择性地支持安全文件系统,例如,利用EcryptFS。利用安全文件系统,用户数据空间可以被安装到安全分区(例如,安全EcryptFS分区),其中数据可以被动态(on the fly)加密和解密。
用户可以被强制提供密码,或以其他方式通过其他类型的安全措施,以访问安全角色。本公开的各种实施例可以支持安全的外部SD卡。在标准角色中,SD卡可以与设备的其余部分共享。在安全角色中,外部SD卡可以被隔离和加密。
角色身份可以唯一标识设备中的角色。身份是角色属性的集合,其允许角色可以在设备中被唯一地标识。这些属性的例子是:
角色ID(Persona ID)-设备中用户空间的唯一标识符
用户ID(UserID)-角色拥有者的用户空间的唯一标识符
电子邮件ID(EmailID)-企业中可识别的用户的唯一电子邮件ID
角色的身份可以被表示为,例如,与虚拟空间的各个唯一身份相结合的散列值。例如,为了代表虚拟空间,可以组合IMEI、角色ID、企业电子邮件ID,而且可以基于组合生成散列。这个加密的散列可以与其它服务,诸如例如,可能需要唯一地标识虚拟空间的远程MDM,共享。远程服务和设备之间的所有通信可以利用散列进行编码。在设备中,散列可以被解密而且各种标识符可以被重新组合以唯一地标识虚拟空间。
角色的状态可以确定与角色的用户交互。角色的一些或所有组件可能知道相应的状态和行为。角色的示例性基本状态值可以是:
1.PERSONA_INITIALIZED(角色初始化)
2.PERSONA_ACTIVE(角色活动)
3.PERSONA_INACTIVE(角色不活动)
4.PERSONA_UNAVAILABLE(角色不可用)
除了这些状态,可以存在角色内部的其他状态转换。当角色处于中间状态时,它将被向所有外部组件公布为PERSONA_UNAVAILABLE。角色状态管理器可以被提供和管理角色状态,而且可以负责触发状态转换。
软件包(package)或应用是指安装在角色中的应用。软件包可以具有UI并响应于用户输入(例如触摸),或者可以是通常不接受用户交互的后台应用。角色软件包组件可以被提供,而且可以负责角色的软件包/应用管理功能的。软件包管理包括角色软件包的安装、卸载、权限、数据存储等。它也可以负责在签名认证等方面管理应用身份。角色软件包管理器组件可以被提供而且负责角色中与部分或全部软件包相关的活动。
无泄漏(no leak)角色是一个角色,其中,角色的所有方面都可以驻留的角色内。无泄漏角色可以包括,例如,.dex文件和保持状态的框架的所有方面。
动态系统服务可以是角色的自定义的系统服务。可以创建新的系统服务,它可以是,例如,现有的系统服务的扩展。动态系统服务可以被系统服务器实例化并缓存为具有,例如,不同于原始服务的键名(key name)。在该实例中,当用户切换到虚拟空间/角色/用户时,可以执行下面的示例性操作:
1.系统服务实例在原始服务和扩展服务之间的交换
2.触发上下文以将管理器重新绑定到服务
3.管理器可以绑定到扩展服务而不是原始服务
4.当管理者绑定到扩展服务时,对于系统服务的一些或所有请求可以通过扩展服务而不是原始服务来处理
5.当用户切换回原始用户/空间时,过程可以反转以允许管理器绑定回原始服务
上述操作不需要按照它们在上面列出的顺序来执行。可以省略某些操作,或者可以执行附加操作。利用这种方法,可以针对特定角色改变由服务所提供的功能。
也可以提供安装这些服务的机制。扩展系统服务可以被修改为代理。可以创建可提供服务的实现的处理程序(handler)。可以创建每个虚拟空间的处理程序缓存。处理程序可以在虚拟空间创建时注册自己。扩展系统代理可以向处理程序授权所有功能。扩展服务代理可以从处理程序缓存获得处理程序的实例。为了处理错误情况,处理程序的默认实现可以在处理程序缓存中针对一些或所有角色进行注册。图3E示出了标准角色(标准模式)和自定义角色(自定义模式)。
“远程内容提供者(“RCP”)”
“安全模式(复制到安全角色的数据)”
图3F示出了在相同用户设备中跨越分离的环境/沙盒/组/隔离/用户/角色的信息共享。
如下面在图3F所示,可以将机制应用于任何隔离的环境、沙盒、虚拟环境、组、用户等。图3F示出了根据本公开的各种实施例的整体设计和组件的例子。图3F示出了三个隔离的环境,其中两个已被启用以用于安全交换信息。
RCP系统组件可以是用户设备的操作系统的一部分,或者可以稍后安装为一个或多个操作系统模块,诸如,例如,设备驱动程序。RCP系统组件可以检查可能已经被安装在任何隔离环境中的任何现有RCP代理应用的安装。RCP代理应用可以经由受信任的认证机制——诸如,例如,数字证书、安全密钥、访问权限、硬件访问限制等——进行验证。没有RCP代理应用的隔离的环境可能不参与信息的交换。RCP系统组件可以在每个RCP代理应用中启动后台进程,每个RCP代理应用进而可以绑定到RCP系统组件。
例如,对于在环境停止期间的任何给定时间不允许一个以上的隔离环境运行的操作系统,所有的信息可以利用RCP系统组件存储。当用户调用(bringup)其他隔离的环境时,RCP系统组件可以使信息可用于其他隔离的环境。
对于可能需要参加信息交换的每个实体(应用、偏好/设置、数据库、功能(剪贴板、通知、消息、警报、更新等)),根据实体是要表现为信息的源还是目的地或两者,可能存在有必要安装的两种类型的应用中的至少一个(或任何操作系统提供的机制)。
对于既要表现为信息的源又要表现为信息的目的地的实体,可以按照两种类型的组件(提供者和同步,如图3F所示)。为了支持新的实体,提供者和同步(基于行为)组件可能需要被安装以用于每个隔离的环境中的实体。RCP代理应用可以监听它所在的隔离的环境内的任何组件的安装或增加,并且可以经由受信任的验证机制(诸如,例如,数字证书、安全密钥、访问许可、访问硬件限制等等)来验证提供者或同步。RCP代理应用可以使用任何识别机制来识别组件是提供者还是同步。一个识别方法是,例如,基于应用信息中的元数据来识别。RCP代理应用可以维持关于在它所驻留的隔离的环境中哪些提供者和同步可用的信息。
可以提供另一种类型的应用或组件,其可以利用RCP代理应用注册自身以执行关于什么信息可以输出隔离的环境和什么信息可以流入隔离的环境的策略或配置。这样的应用可被称为配置应用,如图3F所示。配置应用可以驻留在服务器或其他设备上,其可能允许远程控制信息流入隔离的环境。在注册配置之前,应用/组件RCP代理可以经由受信任的验证机制(诸如,例如,数字证书、安全密钥、访问许可、访问硬件限制等等)来验证配置。
下面,图3G示出了对于特定实体在同步和提供者之间跨越隔离的环境的示例性信息流。当同步模块,例如,需要来自其他环境的信息时,在块3702中,同步模块可以查询驻留在相同环境中的RCP代理应用,传递资源标识符。在块3704中,RCP应用代理可以从RCP系统组件请求信息,传递唯一资源标识符。在块3706中,RCP系统组件,例如,它可以知道驻留在其他环境中的RCP代理应用,可以从驻留在其它环境中的RCP代理应用请求信息,传递唯一资源标识符和呼叫者标识。在块3708中,其他环境中的RCP代理应用可以检查配置应用/组件的权限,以允许源和目的地之间的信息流。基于来自配置应用的响应,信息可以被传递回或者请求可以被拒绝。例如,如果来自配置应用的响应指示请求可以被接受,则在块3710中,驻留在其它环境中的RCP的代理应用可以基于唯一资源标识符从有关提供者请求信息,并向RCP系统组件返回接收到的数据。
图3H示出了当环境驻留在不同的用户设备上时相同组件之间的交互。这种架构可能要求安全通信信道来实现该功能。这个通道可以在任何通信协议或技术的顶层进行开发。
角色框架可以在各种计算平台/环境(诸如,例如,与Android平台兼容的移动设备)中实现。使用角色为(多个)用户提供创建多个虚拟环境(或子环境)的可能性,其中,用户能够在更大范围内充分利用移动设备的同时发挥不同的特性/作用(或表现不同的个性)以管理他/她的需要。
例如,用户(仅出于解释的目的,称为Alice)可以创建两个角色,一个可以被称为“工作”角色,另一个被称为“游戏”角色。附加地或可替换地,如果Alice期望的话,可以创建一个或多个其他角色。现在,Alice作为用户可以能够使用作为职工(工作者特性)的“工作角色”来管理她所有的工作相关的任务,诸如,例如,管理企业电子邮件、业务联系人、会议安排日程和工作简报文档。如果她期望的话,Alice也可以选择切换到“游戏角色”,以获得Alice在她的个人生活中的特性,诸如,例如,组织她的所有活动,诸如朋友联系人、家庭照片、社交网络、娱乐活动等。
Alice的“工作角色”和“游戏角色”可以是在相同用户Alice下运行的两个分离的/隔离的子环境。“工作角色”可以连接到企业服务器(诸如,例如,电子邮件、SharePoint等),而“游戏角色”可以连接Alice个人使用的服务器,诸如,例如,Gmail、Facebook、Netflix、Dropbox等。因此,每个单独的角色可以具有其自身安装的移动应用(或安装),其连接到网络服务器、或设备上的本地存储空间和/或云存储装置。
图4A示出了角色架构的概念图。
角色可以是用户环境内的独立的子环境。由最初用户创建的所有“普通(plain)”(原始的或平凡的)角色可以是完全相同的。例如,它们都可以具有相同的特性,并且可以由用户(创建者/拥有者)单独管理。角色可以是用户环境中的自主环境。然而,如果允许的话,很可能给通过应用不同的规则来定制角色(例如,改变或限制角色的行为),以适应不同的环境要求。例如,企业使用的或工作使用的角色可以需要更多安全策略,而个人角色可以更开放以便于共享。
在角色架构中,作为用户的特性的(多个)角色可以是属于用户(例如,Alice)的(多个)用户个性或行为的一部分。Alice的所有角色可以在Alice的环境下(例如,在相同的用户环境下)运行。因此,如果允许的话,(多个)角色能够共享用户环境的一些属性。用户(或程序)有可能使不同类型的角色使用不同的策略或增加安全包装(secure wrapper)。在一个实施例中,多个角色可以从它们的公共应用共享某些数据,如果(多个)这样的特征是期望的。
表1示出了角色框架的示例性特征。
表1
被称为“纯/普通的角色”的上面讨论的角色框架可以是用于所有其他基于角色的框架的功能,诸如安全角色,其可以在围绕纯/普通角色的安全容器的基础上利用不同的安全策略和/或配置等进行构建。安全角色也可以被称为“奇特的角色”。
以下各节将详细地描述普通角色的示例性特征。
角色是可以在用户级(例如,用户登录环境)由用户创建的子环境。用户可以是其(他/她)的一些或所有角色的创建者和角色的拥有者。所有的角色可以共享用户空间中的用户登录会话以及其他公共资源和环境。然而,每个角色可以在用户环境中拥有唯一的虚拟空间。角色可以是独立的、隔离的和安全的环境,其中用户可以基于他/她特定特性的需要,自主地管理,例如,他/她的应用和设置。
在实施例中,在一个角色内(例如,在角色级)运行的一些或所有应用可以完全与其他角色的应用分离。应用不在角色之间共享;应用数据也是如此。例如,每个角色可以具有它自己的本地存储或网络存储(或云空间)。这个特性可以使用户灵活管理(多个)角色,例如,用户可以移除旧的角色而不删除共享数据;用户可以创建与他/她需要或希望一样多的角色(在系统的限制内);另外,在角色内,用户可以安装应用,其可以与其他角色相同或不同。由用户最初创建的一些或所有普通角色可以具有相同的属性。用户可能能够使用更多或更少的特征来自定义普通角色,例如,出于不同的目的。在角色当中,角色之间没有操作中断。
用户可以是(多个)角色的创造者和拥有者。因此,在用户登录会话内运行的(多个)角色可以共享用户的一些特征。
在计算平台(如Android平台)上,整个用户环境可以用作“大容器”,其可以包含公共特征,诸如,例如,网络、WiFi、蓝牙、定位服务、软件更新(OS)和例如用户“设置”菜单下的其他特征。根据本公开的各种实施例,(多个)角色可以与用户共享一些或所有这些公共设备资源。这可以使用户(例如,Bob/Alice)更方便地在角色级改变这些公共设备/框架设置;他/她可以不需要切换回用户级来这样做。可以从用户级环境共享多少资源或设置能够由管理员或其他管理进程来确定。
根据本公开的各种实施例,可以例如在锁定屏幕(例如,运行Android的移动设备的锁定屏幕)上向用户要求登录令牌(例如,个人识别码(“PIN”)、密码等)以进入特定角色,或者从用户级或者从不同的角色。所有角色可以共享用户登录令牌;因为相同用户(或实际的人,或人类)拥有所有这些角色,而且实际登录和切换到(多个)不同的角色。在一个实施例中,每个角色可以具有其自身的登录令牌。
在一个实施例中,切换角色的速度是在两个用户之间进行切换的时间的大约五分之一(“1/5”),例如,部分地因为(多个)角色共享用户登录会话,基于此,例如,与在两个用户之间进行切换相比,在用户内切换角色的过程中的“保存状态”操作可能要少得多。
用户可以是角色的创造者和管理员。例如,角色可以在用户环境中创建并在用户级进行管理。在一个实施例中,终端用户可以执行的操作可以有四个,其例子被描述如下:
·创建角色:用户可以通过向角色添加唯一名称来创建全新的角色。图标/图像可以自动分配。
·检查所有角色:所有现有的角色可以显示在屏幕上以供检查和/或更新。
·更新角色信息:用户可以使用新的名称替换现有的角色名称,以及和/或改变它的图标(图像)。
·移除角色:用户可以从角色列表中删除现有的角色。
图4B示出了角色创建、删除和更新的示例性流程图。
如果用户当前处于角色级,则唯一可用的动作可以是改变角色的名称和/或它的图标/图像,因为角色可能无法移除自身、和/或重新创建自身。
在一个实施例中,可能不存在应用于角色框架的多层次结构,并且,角色可能无法创建其他角色或(多个)子角色。图4C示出了具有两层关系的示例性角色框架。在其他实施例中,多层次结构也是可能的。
用户访问角色可以存在不同的方式,包括“内部访问”角色(在用户空间内)、“直接访问”角色,例如“用户登录屏幕”、和“间接访问”角色,例如,“用户登录屏幕”,这在下面作为例子简要描述:
·内部访问角色(在用户空间内):如果用户在“用户主菜单”处,则他/她能够通过“切换到子菜单”直接进入特定角色。
·从“用户登录界面”直接访问角色:如果用户在登录屏幕上,则他/她可以(从该用户下得现有角色列表)选择特定角色来直接进入这个“角色屏幕(主主题)”;然而,如果对于进入角色已经设定了安全密码,则将要求用户PIN来解除锁定屏幕。
·从“用户登录界面”间接访问角色:如果用户在登录屏幕上,则他/她首先选择“用户”来进入用户空间,然后切换到特定角色;第二步骤与“内部访问角色”相同。
图4D示出了用户访问角色的示例性用例。
移动设备可以运行单用户系统,并且一些平板可以运行多用户系统。图4E示出了在多用户系统上从一个用户角色切换到另一用户角色的示例性流程图。
角色可以是与用户紧密联系的环境或者用户的属性,访问用户指定的角色可能需要首先经过特定用户。图4E呈现了示例性场景,其中在多个用户当中的不同角色之间转换必须首先经过这些用户。
下面描述用户的示例性操作(或可以在角色级执行的程序)。
·用户能够改变角色的名称和/或更新所选择的角色的图标/图像。
·用户能够从一个角色退出,然后返回到用户级(在用户空间处)。
·用户能够在相同用户(Alice)下从一个角色(Pa1)切换到另一角色(Pa2);或在多用户系统中从这个用户(Alice)下的一个角色(Pa1)切换到另一用户(Bob)下的另一角色(Pa1)。
·用户能够独立和自由地管理图4A中所描述的(多个)角色内的所有移动应用,诸如,添加应用、删除应用、在个人Dropbox处(或与企业服务器分离地)备份数据等。
·存在许多可以在这个普通/平凡的角色框架(例如,代表分离的文档的KNOX角色)的顶部构建的附加程序。
根据本公开的各种实施例,角色框架可以是相同用户空间内的独立的/隔离的虚拟子环境,其允许用户具有不同的特性。(多个)角色可以由用户自主管理,但是它们也可以共享用户登录会话、登录令牌和移动设备上的其他资源。终端用户可以容易地控制/操纵这些角色,例如,添加新的、删除旧的、重新命名、改变图标/图像、而且在用户内的不同角色或两个用户之间进行切换。普通角色框架可以被自定义以构建终端用户所需要的许多不同的奇特特征。
根据本公开的各种实施例,容器可以是安全的角色,其中限制角色的一组设计的规则或安全策略可以防止外人访问容器内的应用或数据。
安全角色是各种类型的安全的角色或容器中的一个。例如,安全角色可以被称为安全容器。
安全容器是一种类型的容器。所使用的一些或所有安全规则可以与企业IT安全策略相关,以保护业务数据和企业服务器/网络。例如,安全容器或企业容器可以是具有由来自企业IT管理部门的MDM(移动设备管理)和MCM(移动内容管理)所规定和执行的一组丰富的安全策略的安全的角色(或容器)。这样的策略,例如,用户认证、数据安全性、VNP、电子邮件、应用黑名单或白名单及其他,可以通过在移动设备上运行的安全容器来执行。
安全容器可以向使用电子设备的企业终端用户和管理电子设备并保护业务数据的企业IT二者提供保护和安全性。
安全容器和至少一个(或多个)个人角色可以共存于用户空间中。这个配置可以允许终端用户在任何地点(在工作中、在家中和在路上)享受用于他/她的工作和生活二者(例如,安全容器已知的“个人生活”角色和“工作”角色)的两个(或三个/多个)角色,而不影响IT安全性和用户的隐私。
在一个实施例中,角色的RCP服务可以允许以隐私模式和/或只读模式在角色之间共享数据。终端用户可能能够在IT安全监视下保持某些隐私。一组安全策略可以被注入并与安全容器集成,所以即使在BYOD(自带设备)上运行时,企业IT管理部门也可以确保业务数据安全(例如,没有或实质上没有数据泄漏)、管理电子设备、并控制用户的应用或数据。
根据本公开的各种实施例,除了或替代位于应用层的安全容器,可以存在一套安全措施,其可以被设计和实现以保证安全容器的安全性。图5示出了安全容器的示例性多层的安全性。
图5示出了移动装置的5个示例性层。从上往下,它们是应用层、系统架构、操作系统内核、引导加载程序和硬件级。安全容器可以驻留在应用层,并提供例如三个安全措施,包括应用和数据(和/或数据共享)的环境隔离、设备上文件系统级的数据加密、和来自IT管理的企业执行的安全策略。可以在Android框架层提供安全性增强(Security Enhancement)措施,诸如,例如,用于Android的安全性增强(用于Android的SE)。可以在例如,OS内核级提供附加的安全性措施,诸如,例如,基于受信任的区域的完整性测量架构(Integrity Measurement Architecture,TIMA)。可以在引导加载程序级提供更进一步的安全性措施,例如,可自定义的安全引导。还可以在例如,硬件级内实现其他安全性措施,诸如,例如,信任区。
根据本公开的各个方面,安全容器管理可以完全与Android移动设备管理分离,包括,例如,安全数据(角色/集装箱数据加密对比整个Android装置加密)、需要的密码(KNOX密码对比锁定屏幕上的用户登录密码)、策略执行(KNOX安全策略对比个人移动设备策略)、以及其他更多方面。管理安全容器安全性的不同方法是可能的。
根据本公开的各种实施例,可以存在被应用于而且在安全容器上执行的各种(一组)策略,以实现企业数据安全性和企业IT对移动设备的可管理性。这些IT管理策略可以通过MDM和/或MCM建立和配置,然后被推进到安全容器中。安全容器可以读取这些可运行脚本,并且实施和执行这些策略以满足IT安全性措施。例如,安全容器可以完全由企业IT管理部门控制或者管理。下面描述的例子示出了示例性安全性管理。
例如,可以要求用户输入密码以进入KNOX容器。这可以是安全容器的特定密码,而且它不同于可以用来在移动设备上解锁用户屏幕(或者进入用户账户)的用户的PIN。安全容器的密码可以由终端用户或企业IT管理部门管理员来设置。另外,可能存在对于满足密码的复杂性的某些要求,诸如,例如,至少8-32个字符、包括大写/小写、数字和符号等。前述可以是要被执行的附加的安全策略。
也可以存在用于密码重新输入的不活动时间或“超时”的策略,例如,如果这个静默时间段(例如,用户远离安全容器一段时间,或在一段时间内在移动设备上什么都不做)已经过去,则可以要求用户重新输入他/她的KNOX容器密码以访问KNOX容器和/或它的内容,诸如,例如,特定应用(例如,日历或联系人或其他)。默认的静默/不活动时间可以由IT管理部门来确定,例如,10分钟;或IT策略可以放宽向用户提供重置这个时间段的选项,诸如,例如,5分钟或15分钟等等。
根据执行的各种策略,可以由MDM和/或MCM安装、配置和控制安全容器内的一些或所有应用。
可以在文件系统级使用例如高级算法(例如AES256或其他)来加密安全容器内的一些或所有数据,或者整个安全容器。安全容器内的一些或所有数据可能是在安全容器空间内有用的(要被读出或编辑)。在一个实施例中,数据可以从安全容器取出,而且这些暴露的数据仍然可以得到安全保护,除非被适当地解密。也可以提供被设置为防止安全容器内的数据流出的其他策略。
这种类型的文件或文件系统级加密,其可以被称为“安全角色数据加密”,可以应用于安全容器(比如“虚拟设备”)而且可以由企业IT管理部门来执行,并且可以不影响(多个)个人角色,所以终端用户仍然可以“自由”和方便地享受他/她的个人角色。
清除容器数据(例如,当移动设备丢失时)可以通过MDM和/或MCM完成。如果需要的话,企业IT的管理员也可能能够远程擦除驻留在安全容器内的所有数据和/或删除整个安全容器;在一个实施例中,上述操作可以在保持用户的个人角色的数据不被改变的情况下执行。
根据本公开的各种实施例,有可能,例如,将具有解释标记的黄色三角形小图标附到每个安全应用(与安全容器相关联的应用)。因此,如果用户看到应用顶部的黄色图标,他/她可以知道他/她在安全容器中。
可以向终端用户提供基于角色的框架,例如,RCP(远程内容提供者)服务。例如,安全容器可以具有包含一组默认应用(默认设置)的RCP服务,所述一组默认应用包括例如日历、联系人、剪贴板、Web浏览器书签、通知、以及下面列出的其他应用。示例性预配置的RCP服务中的这些应用的能力将在后面在本文档中详细描述。根据需要,终端用户可以具有关闭这些RCP服务和/或将它们重新打开的能力。
·安全日历
·安全联系人
·安全剪贴板
·安全书签
·安全通知
在这里,用于共享策略的示例性规则或策略是:
(多个)个人角色的应用数据可以使用不同的数据共享模式(私人或开放)和数据模型(多个数据库或一个大的公共共享数据库,但是对用户透明)被导入到安全容器,其中导入的数据可以是“只显示标题(没有详细信息)”、或者“只读”、“完整的详细显示(照原样,全部细节)”。
可以不允许从安全容器的内部复制任何(多个)应用和它的数据并且把这样的数据置于安全容器的外部(例如,任何其他类型的角色),因为所有这些企业数据受来自IT部分的安全容器策略的安全保护。
示例性规则可以被应用于如下所述的安全应用。
安全日历:它允许终端用户将他/她的个人角色的日历的数据导入(或复制)到安全容器的内部,然而,所有这些个人事件(或用户日程)可以只以没有详细信息的“显示的时隙”模式显示,详细信息处于加密模式。它可以不允许用户从安全容器的内部复制出任何日历数据并把其放入个人角色空间。
安全联系人:它允许终端用户以全显示方式将他/她的个人角色的所有联系人(具有完整的详细信息)导入(或复制)到安全容器的内部,但是这是不可编辑的“只读”模式,也就是说,用户只能查看/读取来自他/她的安全容器的这些完整的个人联系人或列表,但是不能做出任何修改或添加/删除动作。同时,它不允许用户复制安全容器内部的任何联系人数据并把其放入个人角色空间。
安全剪贴板:它允许终端用户将他/她当前的剪贴板内容从个人角色空间复制到安全容器并完整地显示出来。然而,它不允许用户复制安全容器内部的任何剪贴板内容并把其放入个人角色空间。
安全书签:它允许终端用户将他/她的网络浏览器的所有书签从个人角色空间复制到安全容器并利用完整的详细信息(按原样)完整地显示出来。然而,它不允许用户复制安全容器内部的任何书签并把其放入个人角色空间。
安全通知:它允许所有用户的个人应用的通知被导入到安全容器内并完整地显示出来,然而,来自安全容器内的应用的通知可以是“净化的”,这意味着只有指示“有来自您的安全系统的通知”的简单的短消息。此外,如果用户查看然后消除来自任何地方,或者来自内部安全容器或者来自外部安全容器(即,(多个)个人角色或用户空间)的特定通知,则被删除的通知将从移动设备永久移除。
根据本公开的各种实施例,开发的应用可以被直接导入到个人或者安全容器,而且被可靠地和安全地管理。因此,不要求替换应用。
根据本公开的各种实施例,提供了远程内容提供者(RCP)服务框架。RCP服务框架可以基于简单的/纯的角色框架来构建,在简单的/纯的角色框架中,例如,角色被设计为隔离的、独立的和自主的子环境。RCP服务提供灵活性和可扩展性的能力,其允许(多个)用户在用户级在多个角色之间共享角色的隐私数据和/或在角色和它的拥有者/用户之间共享数据,如果必要的话。使用RCP服务,共享的数据取决于用户的需要或偏好可以是“隐私的”或“公开的”。
例如,用户(仅出于方便的目的称为“Bob”)想要把在他的“生活角色”上运行的“个人日程”导入到他当前的“工作角色”上的“工作日历”,通过这样,当Bob处于他的“工作角色”空间——其中,他担当雇员特性(即,不同于他的生活的个性)——时,他能够具有他的日历的完整视图,包括所有个人约会。然而,Bob仍然想要使他的个人日历数据具有一定隐私,因此,他实际上选择以“隐私模式”导入这些数据,这样,Bob所有的个人约会只显示为“占用的时隙”(诸如,上午9:00-10:00时,2013年8月29日),但是其它详细信息(如,医生名称、位置等)不会被显示或观看。图6A示出了这个示例性场景。
同时,Bob还想要将他的“个人联系人”从“生活角色”导入到“工作角色”上的“企业联系人”(或者反之亦然,如果他需要的话),而且将所有这些联系人合并在一起并形成完整的联系人列表。在这种情况下,Bob实际上决定使他的“个人联系人”数据对他的“工作角色”开放/公开,因此,他不仅在鸟瞰视图中具有联系人的完整列表(企业联系人加上个人联系人),而且还能够从在“工作角色”空间上运行的“个人联系人”取得每个项目的细节,诸如名称、电话号码、电子邮件等。也就是说,“工作角色”内的导入的“个人联系人”实际上将与“生活角色”的“个人联系人”完全相同,因为Bob使用“开放/公开模式”,这在图6B中示出。
上面呈现的实施例示出了,RCP服务为(多个)用户给出如何,例如,使用“隐私模式”或“开放/公开模式”,管理导入的数据的灵活性。用户,例如,对于如何共享角色的数据具有完全控制,诸如,“选择什么应用”、“应用的隐私规则”、“RCP服务允许多少应用”和“停止或恢复RCP数据共享”、以及其他更多的可能。RCP服务架构可以提供为终端用户完全的透明度来利用这些远程数据共享服务。用户可以能够方便地通过例如在Android移动设备上运行的UX/GUI(图形用户界面)以用户偏好的方式选择和完成动作/操作,包括“选择应用/角色/用户”、“操纵共享数据”和“管理模块/代理”。
表2示出了用于RCP服务框架内的数据共享的隐私模式和开放模式的示例性比较。
表2
除了或者替代日历和联系人,可以存在在移动设备上运行的其他应用,诸如,例如,剪贴板、通知、SMS和通话记录,这也可以支持角色之间的数据共享。下面是可以被实现以支持RCP服务框架的应用的示例性的非穷尽的列表。
·联系人
·日历
·剪贴板
·通知
·浏览器书签
·SMS
·通话记录
RCP服务框架可以被实现为具有允许开发者添加新的应用到RCP服务框架的可扩展性。RCP服务可以与API相关联,所述API允许开发者(包括应用开发任意或第三方开发者)开发(多个)模块以使他们所选择的应用可用于RCP服务。
图6C中的图示出了RCP服务框架的示例性结构。下面将描述RCP服务框架的示例性特征,包括RCP API、RCP应用代理、数据共享模型、以及用户/角色操作。
图6C示出了两个角色,A和B。在这个例子中,每个角色具有一个应用(App1),并且每个应用具有其自己的应用数据库(DB1)。在每个角色中,存在“RCP应用代理(或模块)”,即,角色A上的代理X、和角色B上的代理Y。驻留在计算平台框架内的(基于角色的)RCP服务组件提供功能API,其被开发者用来创建新的RCP-应用-(多个)代理(X和Y),以用于在(移动设备的)每个角色上运行的每个移动应用。这些代理,X和Y,可以分别/单独是具有相同功能的同样的应用软件模块,其包括内容提供者和内容同步二者。内容提供者应该读出或处理来自源角色(远程角色)的远程数据。内容同步器应该在目的地角色(或本地角色)上同步接收到的数据并渲染UX网页(如果有必要,依赖于设计和实现)。所以,安装有或附接有RCP-应用-代理的每个角色应该具有运行RCP服务的能力,并且使特定应用可用于(多个)用户以便在角色之间共享数据。这样的角色能够在某一时间担当“远程源”或“本地目的地”,但是角色上的RCP-应用-代理活动可以被配置为可用于“远程/源”和“本地/目的地”二者。用户应该有以哪种形式发生的选择。
“RCP-应用-代理”可以在RCP服务的顶部构建。RCP服务可以包括若干RCP服务组件,其可以在基于角色的框架内开发和放置。RCP服务组件可以提供如何使用这些RCP-应用-(多个)代理(X和Y)的机制,以进行注册、验证、安全认证、安装或移除和其他相关项目;并确保这些活动正常完成。
利用开发API,应用开发者可以能够创造新的“RCP-APP-代理”以用于角色上运行的应用。如果RCP-APP-Agent被安装以用于移动设备上的角色,则终端用户可以能够享受来自RCP服务的远程数据共享。
图6D示出了示例性用例。可以存在两种类型的行动者,一种是如前所讨论的(多个)应用开发者;另一种是终端用户,其可以是设备拥有者或只是多用户系统上的用户,或者其可以是管理员(它可以远程管理企业移动设备)。下面列出了RCP服务框架的一些示例性用例。
·由开发者编写代码/开发新的RCP-应用-代理(X、Y或更多)
·由终端用户安装RCP-应用-(多个)代理
·由终端用户配置RCP-应用-(多个)代理
编写代码:(多个)应用开发者能够使用API编写代码,以创建用于在(多个)角色(或任何隔离的像角色一样的环境,例如这可以被称为环境/沙盒/组/分离/用户/角色)上运行的任何应用的新的“RCP应用内代理”(或模块)。
安装RCP-应用-(多个)代理:这些软件模块可以由终端用户(或者设备拥有者、或者角色拥有者、或者系统管理员,如果他确实在远程控制)安装在移动设备上以利用RCP服务。
配置RCP-应用-(多个)代理:终端用户能够配置这些软件模块以控制代理行为,诸如“停止运行”、“恢复或重新启动”、以及其他可能的情境。
存在两种不同的可用于RCP服务框架的数据共享模型,这在上一节中的图6C和下面的图6E中示出。
图6C提出了数据共享模型1。在这个模型中,每个角色上的每个应用具有其自己专用的数据储存库/本地存储装置/数据库,例如,在角色A(“生活”)上运行的控制App1(联系人)的代理X具有DB1以存储用户Bob的个人联系人信息;类似地,在角色B(“工作”)上运行的控制App1(联系人)的代理Y具有DB1以存储用户Bob的个人联系人信息。如果Bob想要向他的角色B(“工作”)共享位于角色A(“生活”)上的DB1处的他的“个人联系人”,即,Bob将A上的“个人联系人”导入到B上的“企业联系人”(类似于图2),则所有的个人联系人数据需要通过RCP服务从A上的DB1“物理地”远程复制到B上的DB1,以便可用于在用户的GUI上显示或者供用户观看。
图6E示出了不同的示例性数据共享模型。在模型2中,存在用于在Android移动设备上运行的一个特定应用的一个公共共享数据库(DB)。由于内容最有可能驻留在远程数据库中(除非内容被附到DB),因此大多数角色通过RCP-应用-代理从远程DB获取共享数据以使用RCP服务。在这种情况下,程序App1(在这里的例子中,是联系人)实际上应该与公共共享DB共享所有数据。如果Bob想要从角色B(它是“工作”)查看他的个人联系人,则他采取相同的动作将角色A(“生活”)上的他的个人联系人导入到角色B(“工作”)上的他的联系人列表;然而,“个人联系人数据”不移动/复制到角色B(因为在模型2的角色B上没有DB1),而是仅通过RCP服务直接从公共共享DB取得,然后RCP-应用-代理将这些查询的数据放入角色B而且随后渲染/显示用户的UX/GUI的更新。类似地,在Bob想要查看来自角色A(“生活”)的他的企业联系人的情况下,将直接从公共共享DB取得“企业联系人数据”。这种类型的公共共享DB可以直接与一个特定角色(诸如图6E中的A)结合,这使得这个DB对角色A而言是本地的;或者这个数据库可以完全远程、独立驻留在用户空间中的任何地方。所有这些远程数据取得对终端用户而言可以是完全透明的。
表3列出了数据共享模式的比较。表3提供了哪些模型被应用于应用的一些示例性推荐。
表3
表4 RCP服务中可用应用的推荐的数据共享模型
应用 | 数据共享模型1 | 数据共享模型2 |
日历 | 是 | 是 |
联系人 | 是 | 是 |
剪贴板 | 否 | 是 |
通知 | 是 | 否 |
网络浏览器书签 | 否 | 是 |
SMS | 否 | 是 |
通话记录 | 否 | 是 |
其他应用 |
根据本公开的各种实施例,RCP服务框架可以为终端用户提供数据共享服务。用户能够使用RCP服务在角色之间和/或角色和他的用户空间之间共享其可用应用的角色的隐私数据。例如,可以存在两种模式,即,隐私模式和开放/公开模式,用户可以选择这两种模式以用于数据共享。
可以存在许多合适的应用,其可以适合于RCP服务。这个列表包括,例如,但不限于,联系人、日历、剪贴板、通知、浏览器书签、SMS、通话记录等。终端用户能够管理在(多个)角色上运行的RCP-应用-(多个)代理,包括安装代理(模块)、停止代理和恢复代理。例如,可以存在两个不同的“远程共享数据模型”。模型1具有多个应用DB,每个角色具有用于一个特定应用的一个它自己的DB;而模型2只有一个公共共享DB,其用于针对所有角色的一个应用。对于每个应用选择特定数据共享模型,存在具有优点和缺点的不同的用途和目的。其它模型也可以是可能的。
图7示出了根据本公开的各种实施例的一组操作700的框图。这组操作可以,例如,由设备100执行。在框702中,可以经由与用户相对应的电子设备来接收与用户相关联的输入。与用户相对应的电子设备可以是,例如,设备100。与用户相关联的输入可以是,例如,选择用户期望在之中使用电子设备的用户环境(例如,角色)的输入。
在框704中,可以确定与用户相关联的一个或多个角色。角色可以包括第一角色和第二角色。例如,用户可以与代表用于个人使用的用户环境的角色、以及代表用于工作使用的用户环境的另一角色相关联。与角色相关联的应用或数据可以或者加密存储或者不加密存储。被加密存储的应用或数据可以基于与用户相关联的令牌(例如,专用密钥、密码、生物信息等)存储。例如,应用或数据可以通过使用令牌进行加密并存储。被加密存储的应用或数据可以基于相同的或其他的令牌(例如,与用于加密的私有密钥相关联的公共密钥、或者用于加密的相同的密码或生物信息等等)进行访问。
在框706中,可以响应于在框702中接收到的输入,提供第一组应用或数据、或者第二组应用或数据。可以基于电子设备处于与第一角色还是第二角色相关联的模式的确定,分别提供第一组或第二组。例如,如果在框702中用户选择了个人角色(例如,用于个人使用的用户环境),则可以提供与个人角色相关联的应用或数据。如果在框702中用户选择了工作角色(例如,用于工作使用的用户环境),则可以提供与工作角色相关联的应用或数据。
在一个实施例中,操作组700还可以包括框708。在框708中,电子设备的模式可以在与第一角色相关联的模式和与第二角色相关联的模式之间切换。当用户使用相同的用户信息登录到电子设备时,模式可以被切换。例如,用户可以使用他/她的用户信息登录到电子设备。在登录时,用户可以在个人角色模式和工作角色模式之间切换而无需使用不同的用户信息登录。
在一个实施例中,操作组700还可以包括框710。在框710中,可以在除了分别与第一角色或第二角色相关联的模式外的模式中提供第一组应用或数据或者第二组应用或数据的至少一部分。例如,在电子设备处于工作角色模式的时候,可以提供与个人角色相关联的应用或数据的一部分,或者反之亦然。在除了其最初相关联的模式外的模式中提供的应用或数据在被提供时可以被至少部分地剥离。例如,在工作角色模式期间可以提供的来自个人角色的个人日程可以被截断,以只显示日程的时间和日期,而不显示参与者或位置。
与各个块相关联的上述操作可以顺序地、并行地或以任何次序提供。不是与块相关联的所有操作都需要被执行,而且附加的操作也可以被执行。
图8是根据本公开的各种实施例的硬件800框图。硬件800可以是,例如,电子设备200。参照图8,硬件800可以包括一个或多个处理器810、用户识别模块(“SIM”)卡814、存储器820、通信模块830、传感器模块840、输入模块850、显示模块860、接口870、音频模块880、相机模块891、功率管理模块895、电池896、指示器897或电机898。
处理器810(例如,处理器220)可以包括一个或多个应用处理器(“AP”)811、或者一个或多个通信处理器(“CP”)813。处理器810可以是,例如,处理器220。虽然图8示出了,AP811和CP813被包括在处理器810中,但是AP811和CP813每个可以被包括在不同的集成电路(“IC”)封装中。
AP811可以控制连接到AP811的一个或多个硬件或软件组件,或通过运行操作系统(“OS”)或者应用(“app”)来执行数据(包括多媒体数据)的处理或计算。AP811可以被实现为,例如,片上系统(“SoC”)。处理器810还可以包括图形处理单元(“GPU”;未示出)。处理器810可以包括AP811、CP813或GPU的任意组合。
CP813可以管理与电子设备(例如,电子设备200)和一个或多个其它电子设备之间的通信相关联的数据链路,并更改通信协议。CP813可以被实现为,例如,SoC。根据一个实施例,CP813可以执行多媒体控制功能的至少一部分。CP813可以,例如,使用SIM(例如,SIM卡814)识别和认证通信网络内的电子设备。CP813还可以向用户提供,例如,语音呼叫、视频呼叫、文本消息(例如,短消息服务(“SMS”))、或者分组数据服务。
根据一个实施例,AP811或CP813可以通过将指令或数据加载到到易失性存储器来处理从非易失性存储器接收到的指令或数据。此外,AP811或CP813可以将从至少一个其它组件接收到的或者由其生成的数据存储到非易失性存储器中。
SIM卡814可以是实现SIM的卡,并且可以被配置为被插入到设置在电子设备的指定位置处的槽中。SIM卡814可以包括唯一标识符(例如,集成电路卡标识符(“integrated circuit card identifier,ICCID”))或订户信息(例如,国际移动订户身份(“international mobile subscriber identity,IMSI”))。
存储器820可以包括内部存储器820或外部存储器824。存储器820可以是,例如,存储器230。内部存储器822可以是,例如,易失性存储器(例如,动态RAM(“DRAM”)、静态RAM(“SRAM”)、或同步动态RAM(“SDRAM”))或非易失性存储器(例如,一次可编程ROM(“OTPROM”)、可编程ROM(“PROM”)、可擦除可编程ROM(“EPROM”)、电可擦除可编程ROM(“EEPROM”)、掩模ROM、快闪速ROM、NAND快闪存储器、或NOR快闪存储器)中的至少一个。根据一个实施例,内部存储器822可以是固态驱动器(“SSD”)。外部存储器824可以是,例如,快闪驱动器(例如,紧凑型快闪(“CF驱动器”)、安全数字卡(“SD”)、微型安全数字卡(“micro-SD”)、小型安全数字卡(“mini-SD”)、极端数字卡(“xD”)或记忆棒)。
通信模块830可以包括无线通信模块831和RF模块834。通信模块830可以是,例如,通信模块260。无线通信模块831可以包括,例如,Wi-Fi模块833、蓝牙模块835、GPS模块837或近场通信(“NFC”)模块839。例如,无线通信模块831可以使用具有各种频率的无线电波提供无线通信功能。附加地或可替换地,无线通信模块831可以包括用于将硬件800连接到一个或多个网络(诸如,例如,因特网、局域网、广域网、电信网络、蜂窝网络卫星网络或POST)的接口(例如LAN卡)或调制解调器。
RF模块834可以具有数据发送和接收功能,诸如,例如,发送和接收RF信号或所请求的电子信号。虽然没有显示,但是RF模块834可以包括收发器、功率放大器模块(“PAM”)、频率滤波器或低噪声放大器(“LNA”)。此外,RF模块834可以包括用于在自由空间中发送和接收电磁(“EM”)波的一个或多个组件,诸如,例如,导体或导线。
传感器模块840可以包括,例如,手势传感器840A、陀螺仪传感器840B、气压传感器840C、磁传感器840D、加速度计840E、抓握传感器840F、接近传感器840G、RGB传感器840H、生物传感器840I、温度/湿度传感器840J、光度传感器840K或紫外线(“UV”)传感器840M中的至少一个。传感器模块840可以检测电子设备的操作状态或测量物理属性,并将检测到的或测量的信息转换成电信号。附加地或可替换地,传感器模块840还可以包括,例如,电鼻(electrical-nose)传感器(未示出)、肌电图(“electromyography,EMG”)传感器(未示出)、脑电图(“electroencephalogram,EEG”)传感器(未示出)、或指纹传感器。传感器模块840还可以包括用于控制其中所包括的一个或多个传感器的控制电路。
输入模块850可以包括触摸面板852、(数字)笔传感器854、键856或超声波输入设备858。输入模块850可以是,例如,输入模块240。触摸面板852可以使用例如电容方法、电阻方法、红外线方法或超声波方法来检测触摸输入。触摸面板852还可以包括触摸屏控制器(未示出)。除了或替代触摸输入,电容式触摸面板可以,例如,检测接近输入(例如,悬浮输入)。触摸面板852还可以包括触觉层。可以使用触觉层向用户提供触觉反馈。
(数字)笔传感器854可以,例如,使用与从用户接收触摸输入的方法相同或相似的方法、或者使用单独的检测片(例如,数字转换器)来实现。键856可以是,例如,键盘或触摸键。超声波输入设备858可以是被配置为通过使用麦克风(例如,麦克风888)检测由笔生成的超声波信号来识别数据的设备。超声波输入设备858可以无线地检测数据。根据一个实施例,硬件800可以使用通信模块830从连接到硬件800的外部设备(例如,网络、计算机或服务器)接收用户输入。
显示模块860可以包括面板862或全息图(hologram)864。显示模块860可以是,例如,显示模块250。面板862可以是,例如,液晶显示器(“LCD”)或有源矩阵有机发光二极管(“AM-OLED”)显示器。面板862可以被配置为,例如,柔性的、透明的或可佩戴的。面板862和触摸面板852可以被实现为单个模块。全息图864可以利用光波的干涉来在空白空间中提供三维图像。根据一个实施例,显示模块860还可以包括用于控制面板862或全息图864的控制电路,。
接口870可以包括,例如,用于高清晰度多媒体接口(“HDMI”)872、通用串行总线(“USB”)874、投影仪876或D型(“D-sub”)878的一个或多个接口。附加地或可替换地,接口870可以包括,例如,用于安全数字卡(“SD”)/多媒体卡(“MMC”)(未示出)或红外数据协会(“IrDA”)(未示出)的一个或多个接口。
音频模块880可以将声音编码/解码为电信号,反之亦然。音频模块880可以,例如,编码/解码被输入到或输出于扬声器882、接收器884、耳机886或麦克风888的语音信息。
相机模块891可以捕获静态图像或视频。根据一个实施例,相机模块891可以包括一个或多个图像传感器(例如,前部传感器模块或后部传感器模块;未示出)、图像信号处理器(“ISP”;未示出)或闪光灯发光二极管(“闪光灯LED”;未示出)。
功率管理模块895可以管理硬件800的电功率。虽然未示出,但是功率管理模块895可以包括,例如,功率管理集成电路(“PMIC”)、充电器集成电路(“充电器IC”)或电池电量表。
PMIC,例如,可以被设置在集成电路或SoC半导体中。硬件800的充电方法可以包括有线或无线充电。充电器IC可以对电池充电,或防止过电压或过电流从充电器进入硬件800。根据一个实施例,充电器IC可以包括有线充电器IC或无线充电器IC中的至少一个。无线充电器IC可以是,例如,磁谐振型、磁感应型或电磁波型,并且可以包括电路,诸如,例如,线圈回路、谐振电路或整流器。
电池电量表可以测量,例如,充电时的电荷水平、电压,或者电池896的温度。电池896可以向例如,硬件800供应电力。电池896可以是,例如,可再充电电池。
指示器897可以指示硬件800或其部分(例如,AP811)的一个或多个状态(例如,引导状态、消息状态或充电状态)。电机898可以将电信号转换为机械振动。MCU899可以控制传感器模块840。
虽然未示出,但是硬件800可以包括一个或多个设备,用于支持移动电视(“移动TV”;例如,图形处理单元(“GPU”))。用于支持移动TV的设备支持处理与例如数字多媒体广播(“DMB”)、数字视频广播(“DVB”)或媒体流兼容的媒体数据。
图9示出了根据本公开的各种实施例的电子设备900的框图。电子设备900可以是,例如,设备100。电子设备900可以包括输入模块902、确定模块904、提供模块906、处理器908和总线910。模块902、904、906和处理器908可以经由总线910彼此耦合。处理器908可以是,例如,处理器220。虽然图9示出了模块902、904和906与单个处理器耦合,但是电子设备900的模块可以与一个或多个处理器耦合,或者一些或所有模块可以将一个或多个处理器包含在各自的模块中。
输入模块902可以被配置为接收与用户相关联的输入。与用户相关联的输入可以是,例如,选择用户期望在之中使用电子设备的用户环境(例如,角色)的输入。
确定模块904可以被配置为确定与用户相关联的一个或多个角色。角色可以包括第一角色和第二角色。例如,用户可以与代表用于个人使用的用户环境的角色、以及代表用于工作使用的用户环境的另一角色相关联。
提供模块906可以被配置为响应于由输入模块902接收到的输入,提供第一组应用或数据、或者第二组应用或数据。可以基于电子设备处于与第一角色还是第二角色相关联的模式的确定,分别提供第一组或第二组。
在一个实施例中,电子设备900还可以包括切换模块912。切换模块912可以被配置为在与第一角色相关联的模式和与第二角色相关联的模式之间切换。当用户使用相同的用户信息登录到电子设备时,模式可以被切换。例如,用户可以使用他/她的用户信息登录到电子设备。在登录时,用户可以在个人角色模式和工作角色模式之间切换而无需使用不同的用户信息登录。
在一个实施例中,电子设备900也可包括不相关联的应用或数据提供模块914。模块914可以独立于提供模块902,或者可以并入模块902。模块914可以被配置为在除了分别与第一角色或第二角色相关联的模式外的模式中提供第一组应用或数据或者第二组应用或数据的至少一部分。例如,在电子设备处于工作角色模式的时候,可以提供与个人角色相关联的应用或数据的一部分,或者反之亦然。在除了其最初相关联的模式外的模式中提供的应用或数据在被提供时可以被至少部分地剥离。例如,在工作角色模式期间可以提供的来自个人角色的个人日程可以被截断,以只显示日程的时间和日期,而不显示参与者或位置。
根据本公开的上述硬件的组件每个可以包括一个或多个组件,而且每个组件的名称可以根据电子设备的类型而改变。根据本公开的硬件可以包括上述组件中的至少一个,并且一些可以被省略或可以包括附加组件。此外,根据本公开的硬件的一些组件可以被组合成单一实体并且执行与它们组合之前的各个组件的功能相同或相似的组件。
本文所使用的术语“模块”可以包括其通常含义,包括但不限于,例如,一个硬件、软件或固件的单元,或者两个或更多个硬件、软件或固件的组合。术语“模块”可以与诸如例如,单元、逻辑、逻辑块、组件或电路的术语互换使用。模块可以是用于执行一个或多个功能或者功能的一部分的最小单元。模块可以以机械方式或者以电子方式实现。
例如,根据本公开的模块可以包括执行某些操作的已知的或待开发的专用集成电路(“ASIC”)芯片、现场可编程门阵列(“FPGA”)或可编程逻辑装置中的至少一个。
根据本公开的模块可以包括上述组件中的一个或多个,可以省略一部分组件,或者可以包括附加组件。根据本公开的模块、编程模块或其它组件执行的操作可以以串行、并行、重复或启发式方式处理,并且一些操作可以被省略或者附加操作可以被添加。
本公开的各种实施例可以被实现为一组程序指令,其可以由计算机执行(例如,由处理器执行),并且可以被记录在计算机可读介质中。计算机可读介质可以单独地或组合地记录,例如,程序指令、数据文件或数据结构。录在计算机可读介质上的程序指令可以专门为实现本公开而创建,或者可以被本领域普通技术人员所公知。
计算机可读介质可以包括硬件设备,例如:磁介质,诸如硬盘驱动器、软盘或磁带;光学介质,诸如光盘只读存储器(“CD-ROM”)或数字多功能光盘(“DVD”);磁光介质,诸如可光读盘、只读存储器(“ROM”);随机存取存储器(“RAM”)或快闪存储器,它们都被配置为存储程序指令。程序指令可以包括由编译器产生的机器语言代码、或可以由计算机使用解释器来执行的高级语言代码。上述硬件的功能可以被实现为一个或多个软件模块,反之亦然。
本公开的各种实施例仅被描述为示例,并且并非旨在限制本公开的范围。因此,本公开的范围应该被理解为包括在不脱离本公开的技术精神的情况下可以做出的任意和所有修改。
Claims (38)
1.一种方法,包括:
经由与用户相对应的电子设备接收与用户相关联的输入;
使用可操作地耦合到电子设备的一个或多个处理器,确定与用户相关联的一个或多个角色,所述一个或多个角色包括第一角色和第二角色;以及
响应于输入,基于电子设备处于与第一角色或第二角色相关联的模式的确定,分别提供第一组应用或数据或者第二组应用或数据。
2.如权利要求1所述的方法,其中,所述提供包括:
向第一角色分配与电子设备相关联的存储器的第一部分;以及
向第二角色分配存储器的不同于第一部分的第二部分。
3.如权利要求1所述的方法,其中,所述提供包括:
基于模式与第一角色相关联的确定,提供对第一组应用和第二组应用公用的至少一个应用的第一功能;以及
基于模式与第二角色相关联的确定,提供所述至少一个应用的第二功能。
4.如权利要求1所述的方法,其中,所述提供包括:
基于模式与第一角色相关联的确定,应用与电子设备相关联的第一组安全性要求;以及
基于模式与第二角色相关联的确定,应用与电子设备相关联的第二组安全性要求。
5.如权利要求1所述的方法,还包括:
响应于与用户相关联的相同信息,使用户登录到与电子设备有关的第一角色和第二角色。
6.如权利要求1所述的方法,还包括:
在第一角色和第二角色之间切换模式。
7.如权利要求6所述的方法,其中,所述切换包括:
在使用相同用户信息登录时,在第一角色和第二角色之间切换模式。
8.如权利要求1所述的方法,还包括:
在第一角色或第二角色中的至少一个和与其他用户相关联的角色之间切换模式。
9.如权利要求1所述的方法,还包括:
提供用户接口,以便响应于与用户相关联的其他输入,生成、移除、检查或更新第一组或第二组的至少一部分。
10.如权利要求1所述的方法,还包括:
分别生成第一角色作为个人角色、和第二角色作为工作角色。
11.如权利要求1所述的方法,还包括:
生成第一角色或第二角色中的至少一个作为个人角色。
12.如权利要求1所述的方法,其中,所述提供包括:
将与第一角色相关联的数据存储为非加密的;以及
至少部分地基于与用户相关联的令牌,将与第二角色相关联的数据存储为加密的。
13.如权利要求12所述的方法,其中,所述令牌是密码。
14.如权利要求1所述的方法,其中,所述提供包括:
在保存与第一角色相关联的数据的时候,选择性地移除与第二角色相关联的数据。
15.如权利要求1所述的方法,其中,所述提供包括:
将与第一角色相关联的第一数据导入与第二角色相关联的区域中;以及
防止将与第二角色相关联的第二数据导入与第一角色相关联的区域。
16.如权利要求14所述的方法,其中,所述提供包括:
以不同于将在与第一角色相关联的区域中呈现的格式的格式,呈现被导入到与第二角色相关联的区域中的第一数据。
17.如权利要求1所述的方法,其中,所述提供包括:
在除了分别与第一角色或第二角色相关联的模式外的模式中,提供第一组应用或数据或者第二组应用或数据的至少一部分。
18.如权利要求17所述的方法,其中,所述提供包括:
根据指定度量,提供第一组的至少一部分或者第二组的至少一部分。
19.如权利要求17所述的方法,其中,所述提供包括:
剥离第一组应用或数据或者第二组应用或数据中的至少一部分的至少一部分。
20.一种装置,包括:
接收模块,被配置为经由与用户相对应的电子设备接收与用户相关联的输入;
确定模块,被配置为确定与用户相关联的一个或多个角色,所述一个或多个角色包括第一角色和第二角色;以及
提供模块,被配置为响应于输入,基于电子设备处于与第一角色或第二角色相关联的模式的确定,分别提供第一组应用或数据或者第二组应用或数据。
21.如权利要求20所述的装置,其中,所述提供模块还被配置为:
向第一角色分配与电子设备相关联的存储器的第一部分;以及
向第二角色分配存储器的不同于第一部分的第二部分;以及
22.如权利要求20所述的装置,其中,所述提供模块还被配置为:
基于模式与第一角色相关联的确定,提供对第一组应用和第二组应用公用的至少一个应用的第一功能;以及
基于模式与第二角色相关联的确定,提供所述至少一个应用的第二功能。
23.如权利要求20所述的装置,其中,所述提供模块还被配置为:
基于模式与第一角色相关联的确定,应用与电子设备相关联的第一组安全性要求;以及
基于模式与第二角色相关联的确定,应用与电子设备相关联的第二组安全性要求。
24.如权利要求20所述的装置,还包括:
登录模块,被配置为响应于与用户相关联的相同信息,使用户登录到与电子设备有关的第一角色和第二角色。
25.如权利要求20所述的装置,还包括:
切换模块,被配置为在第一角色和第二角色之间切换模式。
26.如权利要求25所述的装置,其中,所述切换模块还被配置为:
在使用相同用户信息登录时,在第一角色和第二角色之间切换模式。
27.如权利要求20所述的装置,还包括:
切换模块,被配置为在第一角色或第二角色中的至少一个和与其他用户相关联的角色之间切换模式。
28.如权利要求20所述的装置,还包括:
用户接口提供模块,被配置为提供用户接口,以便响应于与用户相关联的其他输入,生成、移除、检查或更新第一组或第二组的至少一部分。
29.如权利要求20所述的装置,还包括:
生成模块,被配置为分别生成第一角色作为个人角色以及生成第二角色作为工作角色。
30.如权利要求20所述的装置,还包括:
生成模块,被配置为生成第一角色或第二角色中的至少一个作为个人角色。
31.如权利要求20所述的装置,其中,所述提供模块还被配置为:
将与第一角色相关联的数据存储为非加密的;以及
至少部分地基于与用户相关联的密钥,将与第二角色相关联的数据存储为加密的。
32.如权利要求31所述的装置,其中,所述密钥是密码。
33.如权利要求20所述的装置,其中,所述提供模块还被配置为:
在保存与第一角色相关联的数据的时候,选择性地移除与第二角色相关联的数据。
34.如权利要求20所述的装置,其中,所述提供模块还被配置为:
将与第一角色相关联的第一数据导入与第二角色相关联的区域中;以及
防止将与第二角色相关联的第二数据导入与第一角色相关联的区域。
35.如权利要求34所述的装置,其中,所述提供模块还被配置为:
以不同于将在与第一角色相关联的区域中呈现的格式的格式,呈现被导入到与第二角色相关联的区域中的第一数据。
36.如权利要求20所述的装置,其中,所述提供模块还被配置为:
在除了分别与第一角色或第二角色相关联的模式外的模式中,提供第一组应用或数据或者第二组应用或数据的至少一部分。
37.如权利要求36所述的装置,其中,所述提供模块还被配置为:
根据指定度量,提供第一组的至少一部分或者第二组的至少一部分。
38.如权利要求20所述的装置,其中,所述提供模块还被配置为:
剥离第一组的至少一部分或者第二组的至少一部分的至少一部分。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361886892P | 2013-10-04 | 2013-10-04 | |
US61/886,892 | 2013-10-04 | ||
US14/143,906 | 2013-12-30 | ||
US14/143,906 US20150100890A1 (en) | 2013-10-04 | 2013-12-30 | User interface management method and system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104516777A true CN104516777A (zh) | 2015-04-15 |
CN104516777B CN104516777B (zh) | 2019-05-07 |
Family
ID=51752988
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410525668.8A Active CN104516777B (zh) | 2013-10-04 | 2014-10-08 | 用户界面管理方法和系统 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20150100890A1 (zh) |
EP (1) | EP2857967B1 (zh) |
KR (1) | KR102343305B1 (zh) |
CN (1) | CN104516777B (zh) |
AU (1) | AU2014240260B2 (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105356998A (zh) * | 2015-09-28 | 2016-02-24 | 宇龙计算机通信科技(深圳)有限公司 | 一种基于TrustZone的域空间切换系统及方法 |
CN105630592A (zh) * | 2015-08-12 | 2016-06-01 | 宇龙计算机通信科技(深圳)有限公司 | 基于身份验证的空间切换方法、装置及终端 |
CN106557472A (zh) * | 2015-09-24 | 2017-04-05 | 阿里巴巴集团控股有限公司 | 用户数据库的建立方法和装置 |
CN106896983A (zh) * | 2017-02-10 | 2017-06-27 | 合网络技术(北京)有限公司 | 界面显示控制方法及装置 |
CN107015718A (zh) * | 2016-01-27 | 2017-08-04 | 广州知商互联网科技有限公司 | 一种网络平台用户身份一键切换方法 |
CN107566662A (zh) * | 2017-10-31 | 2018-01-09 | 北京德润誉达科技有限公司 | 一种应用模式切换方法、存储介质及移动终端 |
CN107770173A (zh) * | 2017-10-20 | 2018-03-06 | 国信嘉宁数据技术有限公司 | 用户管理系统、相关身份信息创建方法和请求校验方法 |
CN107818015A (zh) * | 2017-10-25 | 2018-03-20 | 广东欧珀移动通信有限公司 | 一种系统资源调用方法及相关设备 |
CN108037976A (zh) * | 2017-12-29 | 2018-05-15 | 北京致远互联软件股份有限公司 | 一种门户模板的智能匹配方法、介质以及设备 |
CN108537027A (zh) * | 2018-04-10 | 2018-09-14 | Oppo广东移动通信有限公司 | 资源分配方法和装置、终端、计算机可读存储介质 |
CN110519346A (zh) * | 2019-08-14 | 2019-11-29 | Oppo(重庆)智能科技有限公司 | 一种数据切换的方法、终端、服务器及计算机可读存储介质 |
US11546358B1 (en) | 2021-10-01 | 2023-01-03 | Netskope, Inc. | Authorization token confidence system |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9215075B1 (en) | 2013-03-15 | 2015-12-15 | Poltorak Technologies Llc | System and method for secure relayed communications from an implantable medical device |
US9141373B2 (en) * | 2013-07-31 | 2015-09-22 | Arista Networks, Inc. | System and method for accelerated software upgrades |
US10021103B2 (en) * | 2014-02-21 | 2018-07-10 | Samsung Electronics Co., Ltd. | Service authorization methods and apparatuses |
US9473944B2 (en) * | 2014-02-24 | 2016-10-18 | Microsoft Technology Licensing, Llc | Local personal daemon |
CN105208508A (zh) * | 2014-06-11 | 2015-12-30 | 联发科技(新加坡)私人有限公司 | 智能设备、可穿戴设备及其推送接收安装包的方法 |
CN105204931B (zh) | 2014-06-11 | 2019-03-15 | 联发科技(新加坡)私人有限公司 | 低功耗可穿戴设备及其多操作系统切换、通信及管理方法 |
US10775875B2 (en) | 2014-06-11 | 2020-09-15 | Mediatek Singapore Pte. Ltd. | Devices and methods for switching and communication among multiple operating systems and application management methods thereof |
US10223093B2 (en) * | 2014-12-12 | 2019-03-05 | Pcms Holdings, Inc. | Method and system for context-based control over access to personal data |
US9743219B2 (en) * | 2014-12-29 | 2017-08-22 | Google Inc. | Low-power wireless content communication between devices |
JP2016139322A (ja) * | 2015-01-28 | 2016-08-04 | 株式会社リコー | 画像処理装置及びそれを備えた電子黒板 |
EP3341899A1 (en) * | 2015-08-28 | 2018-07-04 | PCMS Holdings, Inc. | Method and system for activating user contexts according to online service use |
US20170097827A1 (en) * | 2015-10-06 | 2017-04-06 | Microsoft Technology Licensing, Llc | Role-specific device behavior |
US9760731B2 (en) * | 2015-10-06 | 2017-09-12 | L3 Technologies, Inc. | Configurable cross-domain information assurance |
US10171472B2 (en) | 2016-03-02 | 2019-01-01 | Microsoft Technology Licensing, Llc | Role-specific service customization |
US10789910B2 (en) * | 2016-07-20 | 2020-09-29 | Dell Products, L.P. | Information handling system with dynamic privacy mode display |
US10528228B2 (en) | 2017-06-21 | 2020-01-07 | Microsoft Technology Licensing, Llc | Interaction with notifications across devices with a digital assistant |
KR102368208B1 (ko) * | 2017-11-14 | 2022-02-28 | (주)피스페이스 | 보안 기능을 지원하는 파일 시스템 및 공통적 파일 액세스 인터페이스에 기초한 파일 유출 방지 |
US20200067975A1 (en) * | 2018-08-27 | 2020-02-27 | Box, Inc. | Ransomware remediation in collaboration environments |
KR102131785B1 (ko) * | 2018-12-14 | 2020-07-08 | 서울여자대학교 산학협력단 | 사물성격에 따른 사용자 인터페이스 설계방법 및 전자장치 |
US11294776B2 (en) * | 2020-03-24 | 2022-04-05 | Verizon Patent And Licensing Inc. | Systems and methods for remote-initiated device backup |
CN115883157A (zh) * | 2022-11-25 | 2023-03-31 | 广州里工实业有限公司 | 一种信息交互方法、系统、电子设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050066202A1 (en) * | 1999-12-15 | 2005-03-24 | Microsoft Corporation | Methods and arrangements for providing multiple concurrent desktops and workspaces in a shared computing environment |
CN101616199A (zh) * | 2008-06-27 | 2009-12-30 | 深圳富泰宏精密工业有限公司 | 多种操作模式切换系统及方法 |
CN101789998A (zh) * | 2010-01-13 | 2010-07-28 | 北京百纳威尔科技有限公司 | 移动终端情景桌面的显示方法和移动终端 |
US7774710B2 (en) * | 2005-12-28 | 2010-08-10 | Sap Ag | Automatic sharing of online resources in a multi-user computer system |
CN102468971A (zh) * | 2010-11-04 | 2012-05-23 | 北京北方微电子基地设备工艺研究中心有限责任公司 | 权限管理方法和装置、权限控制方法和装置 |
US20120129503A1 (en) * | 2010-11-19 | 2012-05-24 | MobileIron, Inc. | Management of Mobile Applications |
CN103313343A (zh) * | 2012-03-13 | 2013-09-18 | 百度在线网络技术(北京)有限公司 | 一种用于实现用户访问控制的方法和设备 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5072412A (en) * | 1987-03-25 | 1991-12-10 | Xerox Corporation | User interface with multiple workspaces for sharing display system objects |
US6795967B1 (en) * | 1999-01-26 | 2004-09-21 | Microsoft Corporation | Changing user identities without closing applications |
GB0322716D0 (en) * | 2003-09-29 | 2003-10-29 | Symbian Ltd | Multi-user mobile telephones for community access to services |
US7577659B2 (en) * | 2003-10-24 | 2009-08-18 | Microsoft Corporation | Interoperable credential gathering and access modularity |
US8296362B2 (en) * | 2006-07-18 | 2012-10-23 | Cisco Technology, Inc. | Methods and apparatuses for dynamically enforcing privileges for use during a data collaboration session |
CN101169812A (zh) * | 2006-10-25 | 2008-04-30 | 知网生物识别科技股份有限公司 | 视窗操作系统的多因子认证系统与登录方法 |
US20080126978A1 (en) * | 2006-11-28 | 2008-05-29 | Likun Bai | System and method of enhancing computer security by using dual desktop technologies |
US7886334B1 (en) * | 2006-12-11 | 2011-02-08 | Qurio Holdings, Inc. | System and method for social network trust assessment |
US20090249081A1 (en) * | 2008-03-31 | 2009-10-01 | Kabushiki Kaisha Toshiba-1 Shibaura 1-Chomominatoku | Storage device encryption and method |
US20100333192A1 (en) * | 2009-06-24 | 2010-12-30 | Esgw Holdings Limited | Secure storage |
US8826304B2 (en) * | 2009-08-13 | 2014-09-02 | Google Inc. | Virtual object indirection in a hosted computer environment |
US8577885B2 (en) * | 2010-12-09 | 2013-11-05 | International Business Machines Corporation | Partitioning management of system resources across multiple users |
KR101761626B1 (ko) * | 2010-12-21 | 2017-07-26 | 엘지전자 주식회사 | 이동 단말기 및 이것의 모드 화면 디스플레이 제어 방법 |
KR101357876B1 (ko) * | 2011-05-20 | 2014-02-06 | 나정숙 | 알카리 전해수 제조장치 |
RU2618684C2 (ru) * | 2013-04-26 | 2017-05-10 | Закрытое акционерное общество "Лаборатория Касперского" | Система и способ автоматического развертывания системы шифрования для пользователей, ранее работавших на ПК |
-
2013
- 2013-12-30 US US14/143,906 patent/US20150100890A1/en not_active Abandoned
-
2014
- 2014-10-02 AU AU2014240260A patent/AU2014240260B2/en not_active Ceased
- 2014-10-06 EP EP14187744.9A patent/EP2857967B1/en active Active
- 2014-10-06 KR KR1020140134527A patent/KR102343305B1/ko active IP Right Grant
- 2014-10-08 CN CN201410525668.8A patent/CN104516777B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050066202A1 (en) * | 1999-12-15 | 2005-03-24 | Microsoft Corporation | Methods and arrangements for providing multiple concurrent desktops and workspaces in a shared computing environment |
US7774710B2 (en) * | 2005-12-28 | 2010-08-10 | Sap Ag | Automatic sharing of online resources in a multi-user computer system |
CN101616199A (zh) * | 2008-06-27 | 2009-12-30 | 深圳富泰宏精密工业有限公司 | 多种操作模式切换系统及方法 |
CN101789998A (zh) * | 2010-01-13 | 2010-07-28 | 北京百纳威尔科技有限公司 | 移动终端情景桌面的显示方法和移动终端 |
CN102468971A (zh) * | 2010-11-04 | 2012-05-23 | 北京北方微电子基地设备工艺研究中心有限责任公司 | 权限管理方法和装置、权限控制方法和装置 |
US20120129503A1 (en) * | 2010-11-19 | 2012-05-24 | MobileIron, Inc. | Management of Mobile Applications |
CN103313343A (zh) * | 2012-03-13 | 2013-09-18 | 百度在线网络技术(北京)有限公司 | 一种用于实现用户访问控制的方法和设备 |
Non-Patent Citations (1)
Title |
---|
王晓易_NE0011: "如何保护手机隐私 腾讯手机管家隐私保护攻略", 《网易网(互联网资源)》 * |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105630592A (zh) * | 2015-08-12 | 2016-06-01 | 宇龙计算机通信科技(深圳)有限公司 | 基于身份验证的空间切换方法、装置及终端 |
WO2017024633A1 (zh) * | 2015-08-12 | 2017-02-16 | 宇龙计算机通信科技(深圳)有限公司 | 基于身份验证的空间切换方法、装置及终端 |
CN106557472A (zh) * | 2015-09-24 | 2017-04-05 | 阿里巴巴集团控股有限公司 | 用户数据库的建立方法和装置 |
CN106557472B (zh) * | 2015-09-24 | 2020-07-31 | 阿里巴巴集团控股有限公司 | 用户数据库的建立方法和装置 |
CN105356998A (zh) * | 2015-09-28 | 2016-02-24 | 宇龙计算机通信科技(深圳)有限公司 | 一种基于TrustZone的域空间切换系统及方法 |
CN107015718A (zh) * | 2016-01-27 | 2017-08-04 | 广州知商互联网科技有限公司 | 一种网络平台用户身份一键切换方法 |
CN106896983A (zh) * | 2017-02-10 | 2017-06-27 | 合网络技术(北京)有限公司 | 界面显示控制方法及装置 |
CN107770173A (zh) * | 2017-10-20 | 2018-03-06 | 国信嘉宁数据技术有限公司 | 用户管理系统、相关身份信息创建方法和请求校验方法 |
CN107818015A (zh) * | 2017-10-25 | 2018-03-20 | 广东欧珀移动通信有限公司 | 一种系统资源调用方法及相关设备 |
CN107818015B (zh) * | 2017-10-25 | 2021-08-06 | Oppo广东移动通信有限公司 | 一种系统资源调用方法及相关设备 |
CN107566662B (zh) * | 2017-10-31 | 2020-06-26 | 北京德润誉达科技有限公司 | 一种应用模式切换方法、存储介质及移动终端 |
CN107566662A (zh) * | 2017-10-31 | 2018-01-09 | 北京德润誉达科技有限公司 | 一种应用模式切换方法、存储介质及移动终端 |
CN108037976A (zh) * | 2017-12-29 | 2018-05-15 | 北京致远互联软件股份有限公司 | 一种门户模板的智能匹配方法、介质以及设备 |
CN108537027A (zh) * | 2018-04-10 | 2018-09-14 | Oppo广东移动通信有限公司 | 资源分配方法和装置、终端、计算机可读存储介质 |
CN110519346A (zh) * | 2019-08-14 | 2019-11-29 | Oppo(重庆)智能科技有限公司 | 一种数据切换的方法、终端、服务器及计算机可读存储介质 |
CN110519346B (zh) * | 2019-08-14 | 2022-06-07 | Oppo(重庆)智能科技有限公司 | 一种数据切换的方法、终端、服务器及计算机可读存储介质 |
US11546358B1 (en) | 2021-10-01 | 2023-01-03 | Netskope, Inc. | Authorization token confidence system |
Also Published As
Publication number | Publication date |
---|---|
EP2857967A1 (en) | 2015-04-08 |
US20150100890A1 (en) | 2015-04-09 |
KR102343305B1 (ko) | 2021-12-27 |
KR20150040245A (ko) | 2015-04-14 |
AU2014240260B2 (en) | 2019-08-15 |
CN104516777B (zh) | 2019-05-07 |
EP2857967B1 (en) | 2019-12-04 |
AU2014240260A1 (en) | 2015-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104516777B (zh) | 用户界面管理方法和系统 | |
US10484347B2 (en) | Method and apparatus for supporting secure chat | |
KR102318877B1 (ko) | 전자 기기의 사용자 인터페이스 표시 방법 및 장치 | |
KR102598613B1 (ko) | 개인 인증 및 차량 인증 기반으로 차량 정보를 제공하는 시스템 및 방법 | |
CN104838630B (zh) | 基于策略的应用程序管理 | |
KR102223609B1 (ko) | 전자 기기간 콘텐트 공유 방법 및 장치 | |
KR102320151B1 (ko) | 어플리케이션을 설치하는 전자 장치 및 그 제어 방법 | |
KR102226411B1 (ko) | 재등록을 관리하는 전자 장치 및 방법 | |
JP6374953B2 (ja) | コンテキストによるモバイルデバイスのロック | |
KR20180072389A (ko) | 액세서리에 대응하는 콘텐트를 제공하기 위한 방법 및 그 전자 장치 | |
CN109076331A (zh) | 电子设备和电子设备的控制方法 | |
US20180357440A1 (en) | Personalized Meetings | |
CN108293045A (zh) | 本地和远程系统之间的单点登录身份管理 | |
CN106030601B (zh) | 用于利用轻量级容器对运行时的安卓应用创建沙盒的方法和设备 | |
US11672029B2 (en) | System, method and computer program product for implementing bluetooth in a virtual mobile device platform | |
EP2911084B1 (en) | Service authorization methods and apparatuses | |
US10187359B2 (en) | Secure message transmission apparatus and processing method thereof | |
US9380562B1 (en) | System, method and computer program product for providing notifications from a virtual device to a disconnected physical device | |
CN108574975A (zh) | 无线路由器、物联网设备和用于支持连接到物联网设备的无线路由器的系统 | |
US9667703B1 (en) | System, method and computer program product for generating remote views in a virtual mobile device platform | |
KR102313395B1 (ko) | 사용자 계정에 기반한 통신 처리 방법 및 장치 | |
US9614673B2 (en) | Method of managing keys and electronic device adapted to the same | |
CN106250770A (zh) | 用于对内容加密的电子设备和方法 | |
KR102341162B1 (ko) | 전자 장치 및 전자 장치의 공동 사용을 위한 방법 | |
CN105556534B (zh) | 用于在发生拒绝时建议响应指南的电子设备和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |