CN103558959A - 一种应用于Android平台的显示窗口的方法和装置 - Google Patents
一种应用于Android平台的显示窗口的方法和装置 Download PDFInfo
- Publication number
- CN103558959A CN103558959A CN201310534221.2A CN201310534221A CN103558959A CN 103558959 A CN103558959 A CN 103558959A CN 201310534221 A CN201310534221 A CN 201310534221A CN 103558959 A CN103558959 A CN 103558959A
- Authority
- CN
- China
- Prior art keywords
- window
- activity
- starting
- attribute data
- mode
- 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
- 238000000034 method Methods 0.000 title claims abstract description 99
- 230000000694 effects Effects 0.000 claims abstract description 509
- 238000012545 processing Methods 0.000 claims description 40
- 230000000007 visual effect Effects 0.000 claims description 15
- 238000005516 engineering process Methods 0.000 abstract description 4
- 230000005540 biological transmission Effects 0.000 abstract description 2
- 238000004891 communication Methods 0.000 abstract description 2
- 230000000875 corresponding effect Effects 0.000 description 58
- 230000008569 process Effects 0.000 description 28
- 238000010586 diagram Methods 0.000 description 24
- 230000004048 modification Effects 0.000 description 13
- 238000012986 modification Methods 0.000 description 13
- 238000004590 computer program Methods 0.000 description 7
- 230000004913 activation Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- 241000931705 Cicada Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000003381 stabilizer Substances 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4488—Object-oriented
- G06F9/449—Object-oriented method invocation or resolution
-
- 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/0481—Interaction 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- User Interface Of Digital Computer (AREA)
- Telephone Function (AREA)
Abstract
本发明涉及通信技术,尤其涉及一种应用于Android平台的显示窗口的方法和装置,用以实现启动Activity,以使该Activity显示窗口的目的。本发明实施例提供的方法中,在启动活动Activity时,确定该Activity的启动方式是否为窗口方式;在确定该Activity的启动方式为窗口方式后,设置用于启动该Activity的消息传递对象中的第一窗口属性数据,以使该Activity根据该第一窗口属性数据显示窗口。采用本发明实施例提供的方法,可以实现启动Activity,使得该Activity显示窗口的目的。
Description
技术领域
本发明涉及通信技术,尤其涉及一种应用于Android平台的显示窗口的方法和装置。
背景技术
Android平台在国际上应用广泛,但是,基于原始的Android平台开发的终端只能以全屏方式显示页面,同一时间终端的使用者只能看到一个显示页面。目前,还没有一种应用于Android平台的以窗口方式显示页面的方法。
Android平台中,一个应用由一个或多个活动(Activity)组成,每一个Activity负责一个页面的显示和处理。现有技术中,页面都是全屏显示,相当于只有一个窗口。队列historyRecord对Activity进行管理,队列historyRecord中各Activity的先后顺序就是Activity的调度顺序,最后启动的Activity排在队列的最前面,处于激活状态,其他Activity处于暂停状态或停止状态。如图1所示,队列最前面为Activity A,其他依次为Activity B、Activity C、Activity D。当前显示的是Activity A对应的页面,当把Activity A关闭时,Activity B对应的页面将显示,当把Activity C调度出来显示时,Activity C将排在Activity A的前面,Activity A将在队列中排在第二位。
当启动一个应用时,需要启动该应用的一个Activity。因此,若要实现以窗口方式显示应用对应的页面,即要实现在启动该应用的Activity时,使该Activity显示窗口。
综上,目前还没有一种启动Activity,以使该Activity显示窗口的方法。
发明内容
本发明实施例提供一种应用于Android平台的显示窗口的方法和装置,用以实现启动Activity,以使该Activity显示窗口。
本发明实施例提供的了一种应用于Android平台的显示窗口的方法,该方法包括:
在启动活动Activity时,确定该Activity的启动方式是否为窗口方式;
在确定该Activity的启动方式为窗口方式后,设置用于启动该Activity的消息传递对象中的第一窗口属性数据,以使该Activity根据该第一窗口属性数据显示窗口。
采用本方案,能够实现启动Activity,使得该Activity显示窗口的目的。
较佳地,在确定该Activity的启动方式为窗口方式之后,设置用于启动该Activity的消息传递对象中的第一窗口属性数据之前,该方法还包括:
若确定该Activity启动时使用已打开的窗口,则确定该已打开的窗口对应的窗口标识,根据确定的窗口标识确定该已打开的窗口对应的窗口对象,获取该确定的窗口对象中记录的第二窗口属性数据,其中,所述窗口、窗口标识与窗口对象一一对应;
所述设置用于启动该Activity的消息传递对象中的第一窗口属性数据,包括:
根据获取的第二窗口属性数据设置用于启动该Activity的消息传递对象中的第一窗口属性数据。
该优选方案实现了当启动Activity时,使用已打开的窗口显示进行显示。
较佳地,在确定该Activity的启动方式为窗口方式之后,设置用于启动该Activity的消息传递对象中的第一窗口属性数据之前,该方法还包括:
若确定该Activity启动时要打开新窗口,则为要打开的新窗口分配窗口标识,生成该新窗口对应的窗口对象,在该生成的窗口对象中记录分配的窗口标识,并设置该生成的窗口对象中的第二窗口属性数据,其中所述窗口、窗口标识与窗口对象一一对应;
所述设置用于启动该Activity的消息传递对象中的第一窗口属性数据,包括:
根据该生成的窗口对象中的第二窗口属性数据设置用于启动该Activity的消息传递对象中的第一窗口属性数据。
该优选方案实现了在启动Activity,打开新窗口进行显示。
较佳地,在确定该Activity启动时是否使用已打开的窗口之后,该方法还包括:将所述窗口标识置于用于启动该Activity的消息传递对象中,以使该Activity记录该窗口标识;
该方法还包括:在需要关闭Activity,且该要关闭的Activity是以窗口方式启动时,判断是否存在该要关闭的Activity的窗口关联Activity;若不存在该要关闭的Activity的窗口关联Activity,则在关闭该要关闭的Activity之后,删除该要关闭的Activity的关联窗口对象;
其中,该要关闭的Activity的窗口关联Activity为:已打开的Activity中,记录的窗口标识与该要关闭的Activity记录的窗口标识相同的其他Activity;该要关闭的Activity的关联窗口对象为:记录的窗口标识与该要关闭的Activity记录的窗口标识相同的窗口对象。
采用该优选方案,实现窗口管理,当不存在窗口中不存在Activity时,则需要删除窗口对象,保证数据准确。
较佳地,在判断是否存在该要关闭的Activity的窗口关联Activity之后,该方法还包括:
若存在该要关闭的Activity的窗口关联Activity,且该要关闭的Activity为正在显示的Activity,则在关闭该要关闭的Activity后,将该要关闭的Activity的窗口关联Activity中需要显示的Activity置为可视。
该优选方案实现了关闭窗口中的一个Activity时,显示该窗口的其他Activity。
较佳地,在确定该Activity启动时是否使用已打开的窗口之后,该方法还包括:将所述窗口标识置于用于启动该Activity的消息传递对象中,以使该Activity记录该窗口标识;
该方法还包括:接收窗口修改指令,获取该指令中的指令类型、窗口属性参数和窗口标识;从记录了该获取的窗口标识的Activity中,确定需要修改的窗口中需要显示的各Activity;将获取的指令类型、窗口属性参数分别发给所述确定的需要显示的各Activity,以使每一个Activity根据该指令类型和窗口属性参数显示窗口。
该优选方案实现了对窗口的修改。
较佳地,在获取该指令中的指令类型、窗口属性参数和窗口标识之后,还包括:
根据获取的指令类型和窗口属性参数,修改特定窗口对象中记录的第二窗口属性数据;
其中,所述特定窗口对象为:记录了所述获取的窗口标识的窗口对象。
该优选方案保证了窗口对象中的第二窗口属性数据与窗口显示方式的一致性。
本发明实施例还提供了一种应用于Android平台的显示窗口的装置,该装置包括:
判断模块,用于在启动活动Activity时,确定该Activity的启动方式是否为窗口方式;
数据处理模块,用于在所述判断模块确定该Activity的启动方式为窗口方式后,设置用于启动该Activity的消息传递对象中的第一窗口属性数据,以使该Activity根据该第一窗口属性数据显示窗口。
采用本方案,能够实现启动Activity,使得该Activity显示窗口的目的。
较佳地,所述判断模块还用于:在确定该Activity的启动方式为窗口方式之后,所述数据处理模块设置用于启动该Activity的消息传递对象中的第一窗口属性数据之前,确定该Activity启动时使用已打开的窗口;
所述数据处理模块还用于:若所述判断模块确定该Activity启动时使用已打开的窗口,则设置用于启动该Activity的消息传递对象中的第一窗口属性数据之前,确定该已打开的窗口对应的窗口标识,根据确定的窗口标识确定该已打开的窗口对应的窗口对象,获取该确定的窗口对象中记录的第二窗口属性数据,其中所述窗口、窗口标识与窗口对象一一对应;
所述数据处理模块具体用于:根据获取的第二窗口属性数据设置用于启动该Activity的消息传递对象中的第一窗口属性数据。
该优选方案实现了当启动Activity时,使用已打开的窗口显示进行显示。
较佳地,所述判断模块还用于:在确定该Activity的启动方式为窗口方式之后,所述数据处理模块设置用于启动该Activity的消息传递对象中的第一窗口属性数据之前,确定该Activity启动时要打开新窗口;
所述数据处理模块还用于:若所述判断模块确定该Activity启动时要打开新窗口,则为该要打开的新窗口分配窗口标识,生成该新窗口对应的窗口对象,在该生成的窗口对象中记录分配的窗口标识,并设置该生成的窗口对象中的第二窗口属性数据,其中所述窗口、窗口标识与窗口对象一一对应;
所述数据处理模块具体用于:根据该生成的窗口对象中的第二窗口属性数据设置用于启动该Activity的消息传递对象中的第一窗口属性数据。
该优选方案实现了在启动Activity,打开新窗口进行显示。
较佳地,所述数据处理模块还用于:在所述判断模块确定该Activity启动时是否使用已打开的窗口之后,将所述窗口标识置于用于启动该Activity的消息传递对象中,以使该Activity记录该窗口标识;
所述装置还包括:指令接收模块,用于接收窗口修改指令,并获取该指令中的指令类型、窗口属性参数和窗口标识;
所述数据处理模块还用于:从记录了所述指令接收模块获取的窗口标识的Activity中,确定需要修改的窗口中需要显示的各Activity;并将获取的指令类型、窗口属性参数分别发给所述确定的需要显示的各Activity,以使每一个Activity根据该指令类型和窗口属性参数显示窗口。
该优选方案实现了对窗口的修改。
附图说明
图1为现有技术的队列historyRecord的示意图;
图2为本发明实施例提供的应用于Android平台的显示窗口方法的过程示意图;
图3为本发明实施例中的窗口与Activity的对应关系示意图;
图4为本发明示例一的流程图;
图5为本发明示例二的流程图;
图6为本发明示例三的流程图;
图7为本发明示例四的流程图;
图8为本发明示例五的流程图;
图9为本发明示例六的流程图;
图10为本发明的窗口布局示意图;
图11为本发明实施例提供的应用于Android平台的显示窗口的装置结构示意图;
图12为本发明实施例提供的Android终端的结构示意图。
具体实施方式
本发明实施例提供一种应用于Android平台的显示窗口的方法和装置。该方法中,在启动活动Activity时,确定该Activity的启动方式是否为窗口方式;在确定该Activity的启动方式为窗口方式后,设置用于启动该Activity的消息传递对象中的第一窗口属性数据,以使该Activity根据该第一窗口属性数据显示窗口。采用本发明实施例提供的方法,能够实现启动Activity,使得该Activity显示窗口的目的。
在本发明实施例中,以Android平台的处理为例进行说明,但并不意味着本发明的方法仅适用于Android平台。实际上,对于任何用户终端平台,只要能设置用于启动该Activity的消息传递对象中的第一窗口属性数据,以使该Activity根据该第一窗口属性数据显示窗口,则本发明实施例提供的方法也适用于该类用户终端平台。
本发明实施例中,由Activity管理层对各Activity进行管理。Activity管理层包括:Activity管理层中的上层和Activity管理层中的下层。Activity管理层中的上层向各应用提供接口,Activity管理层中的下层具体实现对各Activity的管理。需要说明的是,这里虽然提及Activity管理层中的上层和Activity管理层中的下层,但不意味着Activity管理层仅包括Activity管理层中的上层和Activity管理层中的下层,其还可包括用于实现其他功能的层或模块,只是与本发明实施例提供的方法无关,所以这里无需提及。
图2为本发明实施例提供的应用于Android平台的显示窗口方法的过程示意图。如图2所示,该方法包括:
S201:在启动活动Activity时,确定该Activity的启动方式是否为窗口方式;
S202:若步骤S201中,确定该Activity的启动方式为窗口方式,则设置用于启动该Activity的消息传递对象(intent)中的第一窗口属性数据(winData1),以使该Activity根据winData1显示窗口。
可选地,步骤S201中,当Activity管理层中的下层收到Activity管理层中的上层发给Activity的,用于启动该Activity的intent,则认为需要启动该Activity。
可选地,Activity管理层中的下层根据收到的用于启动该Activity的intent中的窗口标识winId,确定该Activity的启动方式是否为窗口方式。比如,当winId=0时,确定启动方式为全屏方式,否则确定启动方式为窗口方式;
或者,根据intent中是否存在winId来确定Activity的启动方式,若intent中存在winId,则确定对应的Activity的启动方式为窗口方式,否则确定对应的Activity的启动方式为全屏方式。
可选地,winData1包括:窗口显示位置和大小相关的数据。
如表1中所示,winData1可包括:窗口宽度(multiwinWidth)、窗口高度(multiwinHeight)、窗口位置左边位置(multiwinLeft)、窗口位置上边位置(multiwinTop)和是否最大化(multiwinMaximize),其中,是否最大化表示是否要最大化窗口。
表1、第一窗口属性数据winData1
属性值 | 属性名称 | 值类型 |
窗口位置左边位置 | multiwinLeft | 整型(Int) |
窗口位置上边位置 | multiwinTop | Int |
窗口宽度 | multiwinWidth | Int |
窗口高度 | multiwinHeight | Int |
是否最大化 | multiwinMaximize | 布尔型(boolean) |
需要说明的是,winData1不限于表1中所列出的,只要能够使Activity根据这些数据确定如何显示窗口即可,比如,winData1可包括:窗口位置左边位置、窗口位置右边位置、窗口位置上边位置和窗口位置下边位置,通过这些数据来确定窗口的具体位置和窗口大小。
可选地,若步骤S201中确定该Activity的启动方式为窗口方式,则在步骤S201之后,步骤S202之前,该方法还包括:
若确定该Activity启动时要打开新窗口,则为要打开的新窗口分配winId,生成该新窗口对应的窗口对象(multiWinInfo),在该生成的multiWinInfo中记录分配的winId,并设置该生成的multiWinInfo中的第二窗口属性数据(winData2),其中,窗口、winId与multiWinInfo一一对应;
其中,步骤S201中设置用于启动该Activity的消息传递对象中的winData1,包括:根据该生成的multiWinInfo中的winData2设置用于启动该Activity的inent中的winData1。
可选地,Activity管理层的下层可根据收到的用于启动该Activity的intent中的winId确定是否要打开新窗口。比如:若winId=-1,则确定需要打开新窗口,若winId不等于-1也不等于0,则确定使用已打开的窗口。
其中,winData2可包括:窗口显示位置和大小相关的数据,以及是否隐藏(multiwinHide)、是否最大化(multiwinMaximize)。其中,窗口显示位置和大小相关的数据可参考winData1的定义。是否隐藏,表示是否要隐藏窗口;是否最大化,表示是否要最大化窗口。
一种可选的winData2的举例如表2所示。
表2、第二窗口属性数据winData2
属性值 | 属性名称 | 值类型 |
窗口位置左边位置 | multiwinLeft | Int |
窗口位置上边位置 | multiwinTop | Int |
窗口宽度 | multiwinWidth | Int |
窗口高度 | multiwinHeight | Int |
是否隐藏 | multiwinHide | boolean |
是否最大化 | multiwinMaximize | boolean |
是否具有焦点 | inFocus | boolean |
可选地,根据生成的窗口对象中记录的winData2设置用于启动该Activity的intent中的winData1,可通过如下方式实现:
在设置multiWinInfo中的winData2后,将用于启动该Activity的intent中的winData1的窗口宽度、窗口高度、窗口位置上边位置和窗口位置下边位置,分别设置为等于winData2中对应的各属性数据的值。
为了保证窗口和窗口标识的一一对应,可选地,设置一全局变量multiWinId并在终端开机时初始化为1,当新建一个窗口时首先让multiWinId自己加1,然后设置窗口标识winId等于multiWinId,这样新建窗口的winID一直在增加,这样就保证了不同窗口的winId不同,窗口与winId一一对应。由于multWinInfo中记录了窗口对应的winId,所以能够保证multWinInfo与winId一一对应。进而保证窗口、winId和multiWinInfo一一对应。
可选地,可建立一个窗口对象队列multiWinRecord,来保存各个窗口对象multiWinInfo。Activity管理层的下层可在用于启动Activity的intent中加入winId,以使该要启动的Activity记录该winId。
具体地,在启动Activity时,打开新窗口时,建立窗口对象、加入窗口队列的方法参见后面的示例一。
可选地,在步骤S201,步骤S202之前,该方法还包括:
若确定该Activity启动时使用已打开的窗口,则确定该已打开的窗口对应的winId,根据确定的winId确定该已打开的窗口对应的multiWinInfo,获取该确定的multiWinInfo中记录的winData2,其中,所述窗口、窗口标识与窗口对象一一对应;
其中,步骤S202中设置用于启动该Activity的intent中的winData1,包括:根据获取的winData2设置用于启动该Activity的intent中的winData1。
可选地,Activity管理层的下层在收到用于启动该Activity的intent后,从intent中获取winId,则确定该获取的winId为已打开的窗口对应的winId。
可选地,若采用窗口对象队列multiWinRecord的方式管理各窗口对象multiWinInfo,则根据获取的winId查找multiWinRecord中的multiWinInfo,若multiWinInfo中记录的winId与该获取的winId相等,则确定该multiWinInfo为该已打开的窗口对应的窗口对象。
可选地,根据获取的winData2设置winData1,可通过如下方式实现:
将winData1的窗口宽度、窗口高度、窗口位置上边位置和窗口位置下边位置,分别设置为等于winData2中对应的各属性数据的值。
可在用于启动Activity的intent中加入winId,以使该要启动的Activity记录该winId。
具体地,在启动Activity,使用已打开的窗口,查找窗口对象,设置winId,并在用于启动Activity的intent中加入winId的的方法参见后面的示例二。
可选地,该方法还包括:
在需要关闭Activity,且该要关闭的Activity是以窗口方式启动时,判断是否存在该要关闭的Activity的窗口关联Activity;
若不存在该要关闭的Activity的窗口关联Activity,则在关闭该要关闭的Activity之后,删除该要关闭的Activity的关联窗口对象multiWinInfo;
其中,该要关闭的Activity的窗口关联Activity为:已打开的Activity中,记录的窗口标识与该要关闭的Activity记录的窗口标识相同的其他Activity;该要关闭的Activity的关联窗口对象为:记录的窗口标识与该要关闭的Activity记录的窗口标识相同的窗口对象。
可选地,在需要关闭Activity,而该Activity是以全屏方式启动时,可采用现有的Android平台的处理方法处理,这里不再赘述。
可选地,可通过如下方式删除该Activity的关联窗口对象multiWinInfo:
根据该要关闭的Activity中记录的winId,在队列multiWinRecord中查找具有相同winId的窗口对象multiWinInfo;
将找到的窗口对象从队列multiWinRecord中删除。
具体地,在关闭Activity时,删除对应的窗口对象的方法可参见后面的示例三。
可选地,若需要关闭的Activity是以窗口方式启动的,且存在该要关闭的Activity的窗口关联Activity,则进一步判断该Activity是否为正在显示的Activity;
若是,则在关闭该要关闭的Activity后,将该要关闭的Activity的窗口关联Activity中需要显示的Activity置为可视。
可选地,可通过Activity中记录的用于指示该Activity是否可视的数据visible,来确定该Activity是否为正在显示的Activity,比如,当visible=TRUE时,确定该Activity为正在显示的Activity,否则,visible=FALSE,确定该Activity不是正在显示的Activity。
可选地,将该Activity的窗口关联Activity中需要显示的Activity置为可视,包括:
将各窗口关联Activity中,对应的页面位于对应的窗口最上层的Activity(简称:“第一Activity”,临近该最上层页面的下一层页面对应的Activity成为“第二Activity”,依次类推,下面的各页面对应的Activity分别称为“第三Activity”、“第四Activity”,……)的visible置为TRUE,若该第一Activity具有透明属性,则将该第二Activity的visible置为TRUE,依次类推,直至某一个Activity不具有透明属性,则将下一个Activity的visible置为FALSE。
可选地,若该要关闭的Activity是正在显示的Activity,但其对应的页面并不是该Activity对应的窗口各页面中处于最上层的页面,则可仅将该Activity之后的各Activity中需要显示的Activity置为可视即可。
可选地,若需要关闭的Activity是以窗口方式启动的,且存在该要关闭的Activity的窗口关联Activity,但该Activity不是正在显示的Activity时,则确定该Activity的上一层Activity是否正在显示,若该上一层Activity正在显示,且该上一层Activity具有透明属性,则需将该要关闭的Activity的下一层Activity置为可视,若该下一层Activity具有透明属性,则需将继续逐层判断,是否需要将该窗口的其他Activity置为可视,可依据如下原则进行判断:
若当前层Activity可视且具有透明属性,则下一层可视。
具体地,在关闭该Activity后,将该要关闭的Activity的窗口关联Activity中需要显示的Activity置为可视的方法可参见后面的示例四。
可选地,本发明实施例提供的方法还包括:
接收窗口修改指令,获取该指令中的指令类型、窗口属性参数和窗口标识;
从记录了该获取的窗口标识的Activity中,确定需要修改的窗口中需要显示的各Activity;
将获取的指令类型、窗口属性参数分别发给确定的确定的需要显示的各Activity,以使每一个Activity根据该指令类型和窗口属性参数显示窗口。
其中,确定一个窗口中需要显示的各Activity的方法可参考前面的相关描述。如果该需要修改的窗口中,除了需要显示的Activity之后,还有其他Activity,则可选地,这些Activity在需要显示时,可以再将该窗口的窗口属性参数发给这些Activity,以使这些Activity根据收到的窗口属性参数显示窗口。
或者,在接收窗口修改指令,获取该指令中的指令类型、窗口属性参数和窗口标识之后,根据获取的窗口标识确定该需要修改的窗口中的所有Activity,将获取的指令类型、窗口属性参数分别发给每一个Activity,以使需要显示的Activity根据该指令类型和窗口属性参数显示窗口,无需显示的Activity记录收到的窗口属性参数,并在需要显示时,根据记录的窗口属性参数显示窗口。
表3列出了窗口操作指令,其中包括:窗口修改指令和其他窗口操作指令。其中,窗口修改指令包括:指令类型为移动和修改窗口大小(MULTIWIN_CONTROL_MOVE)和最大化/恢复窗口(MULTIWIN_CONTROL_MAXIMIZE)的窗口操作指令。其他窗口操作指令包括:指令类型为关闭窗口(MULTIWIN_CONTROL_CLOSE)、隐藏/恢复窗口(MULTIWIN_CONTROL_HIDE)和切换窗口焦点(MULTIWIN_CONTROL_FOCUS)。
其中,当收到窗口修改指令后,需要将指令类型和窗口属性参数发给Activity,以使Activity根据指令类型和窗口属性参数显示窗口;对于其他窗口操作指令,则不需要向Activity发送指令类型和窗口属性参数,而通过其他方式对窗口进行操作,具体操作方式下面将详细描述。
可选地,收到窗口操作指令后,还可根据获取的指令类型和窗口属性参数修改对应的窗口对象中记录的第二窗口属性数据winData2。以便该窗口中再启动其他Activity时,可依据修改后的winData2修改用于启动该其他Activity的intent中的第一窗口属性数据winData1,以使该其他Activity依据winData1显示窗口。
为实现简化起见,各种窗口操作指令都可包括四个窗口属性参数p1、p2、p3和p4。对于不同类型的窗口操作指令,这些参数的含义和取值不同。
可选地,窗口操作指令中携带窗口标识winId,因此,在收到窗口操作指令后,可根据其中的winId确定需要操作的窗口。
表3、窗口操作指令
接收窗口修改指令的具体处理方法可参见下面的示例五。
当窗口操作指令是关闭窗口(MULTIWIN_CONTROL_CLOSE)时,关闭该窗口对应的所有Activity(可根据指令中的winId确定要关闭的窗口和该窗口对应的各Activity),并删除该窗口对应的窗口对象multiWinInfo(可根据指令中的winId确定要删除的窗口对象)。
当窗口操作指令是隐藏/恢复窗口(MULTIWIN_CONTROL_HIDE)时,若隐藏窗口,则将该窗口置于桌面(launcher对应的页面)之下,若恢复窗口,则将该窗口置于桌面之上。具体地,当隐藏窗口时,将该窗口的各Activity对应的页面置于位于之下,可选地,在具体实现时,可从用于管理各Activity的队列historyRecord中,从下向上搜索,优先处理不显示的Activity,从而提高效率,若从上向下搜索,则在处理了上面的Activity后,还有先将下面的Activity显示出来之后,再处理下面的Activity,这样会增加处理的复杂度。
当窗口操作指令是切换焦点(MULTIWIN_CONTROL_FOCUS)时,处于操作的窗口最上层的页面对应的Activity的状态转换为激活状态。若该Activity的状态已为激活状态,则忽略该指令。切换焦点的具体处理方法可参见示例六。
当启动一个Activity打开窗口时,如果收到用户的操作指令,指定了窗口的大小,则指令指定的大小来显示。如果未指定窗口的大小,则按照默认的处理方法来显示。可选的处理方法包括:如果当前没有窗口,则新窗口占屏幕的一半,并且处于中央;如果当前已经有一个窗口,则两个窗口各占屏幕一半,一个上面一个下面;如果当前已经有两个窗口,则三个窗口最早两个占上半屏幕各一半,新建窗口占下半屏幕;如果当前已经有四个窗口,则四个窗口各占屏幕四分之一,1~4个窗口的显示效果如图10所示。此外,如果共五个以上窗口,则窗口从左上角下右下错开一定位置排列,大小一样。
可选地,当同时存在两个及以上窗口时,可通过触动两个窗口的交界将可以改变窗口大小,当一个变大时旁边的会跟着调整,总之几个窗口会占满全屏。当长按一个窗口时,将会在屏幕上出现一个系统操作栏,提供关闭、最大化、最小化、以及交换位置的功能按钮。长按一个窗口,再长按另外一个窗口,按交换按钮则两个窗口会交换位置。
示例一、启动Activity,建立新窗口显示的方法
图4为本发明示例一的流程图。如图4所示,示例一的方法包括如下步骤:
S401:确定要启动Activity;
S402:确定启动该Activity时要打开新的窗口;
S403:为该新窗口分配窗口标识winId;
S404:生成窗口对象multiWinInfo,设置multiWinInfo中的第二窗口属性数据winData2,并在multiWinInfo中记录分配的winId;
S405:将生成的multiWinInfo加入窗口队列multiWinRecord中;
S406:根据winData2设置用于启动Activity的intent中的winData1,并将分配的winId置于该intent中,以使Activity根据winData1显示窗口并记录winId。
示例二、启动Activity,建立新窗口的方法
图5为本发明示例二的流程图。如图5所示,示例二的方法包括如下步骤:
S501:确定要启动Activity;
S502:确定启动该Activity使用已打开的窗口;
S503:确定该已打开的窗口的窗口标识winId;
S504:根据确定的winId在窗口对象队列multiWinRecord中查找该已打开的窗口对应的窗口对象multiWinInfo;
S505:获取找到的窗口对象中的第二窗口属性数据winData2;
S506:根据获取的winData2设置用于启动该Activity的intent中的第一窗口属性数据winData1,并将确定的winId置于该intent中,以使该Activity根据winData1显示窗口,并记录winId。
示例三、关闭Activity,删除对应的窗口对象的方法
图6为本发明示例三的流程图。如图6所示,示例三的方法包括如下步骤:
S601:确定需要关闭Activity;
S602:确定该要关闭的Activity是以窗口方式启动的;
S603:确定不存在该要关闭的Activity的窗口关联Activity;
S604:根据该要管关闭的Activity中记录的winId,在队列multiWinRecord中查找具有相同winId的窗口对象multiWinInfo;
S605:将找到的窗口对象multiWinInfo从队列multiWinRecord中删除。
示例四、在关闭该Activity后,将该Activity的窗口关联Activity中需要显示的Activity置为可视的方法。
图7是本发明示例四的流程图。如图7所示,示例四的方法包括如下步骤:
S701:确定需要关闭Activity;
S702:确定该要关闭的Activity是以窗口方式启动的;
S703:确定存在该要关闭的Activity的窗口关联Activity;
S704:确定该要关闭的Activity为正在显示的Activity;
S705:关闭该Activity,将该Activity的窗口关联Activity中需要显示的Activity置为可视。
现有的方案中,当前的页面都是全屏显示,队列historyRecord中各Activity的先后顺序就是Activity的调度顺序,最后启动的Activity排在队列的最前面,当队列historyRecord中最前的Activity关闭后,下一个Activity对应的页面将显示出来。
通过采用示例四的方法,可实现同时有多个窗口独立显示,互不干扰。如图3所示,同时存在两个窗口,当关闭一个窗口中的Activity时,仅影响该窗口的显示,不影响另一个窗口的显示。图3中队列historyRecord中各Activity的位置顺序依据就是Activity后面的编号,即Activity1排在队列historyRecord中的最前面,后面依次是Activity2至Activity8。采用示例四的方法,当关闭Activity1时,可实现在窗口1中显示Activity3对应的页面,即实现了各窗口独立显示,互不影响。而如果采用现有的Android平台中的方法,则会显示Activity2。
示例五、窗口修改指令的处理方法
图8是本发明示例五的流程图。如图8所示,示例五的方法包括如下步骤:
S801:接收窗口修改指令;
S802:获取指令类型、窗口属性参数和窗口标识winId;
S803:根据获取的winId确定需要修改的窗口中的需要显示的各Activity;
S804:将获取的指令类型、窗口属性参数分别发给确定的各Activity,以使每一个Activity根据该指令类型和窗口属性参数显示窗口
示例六、切换焦点的方法
图9是本发明示例流的流程图。如图9所示,示例六的方法包括如下步骤:
S901:接收窗口操作指令;
S902:确定指令类型为切换焦点,获取窗口标识winId;
S903:根据winId将确定需要修改的窗口最上层页面对应的Activity是否处于激活状态;若是,则执行步骤S904,否则,执行步骤S905;
S904:无需处理;
S905:将该Activity转为激活状态。
基于同一发明构思,本发明实施例中还提供了一种应用于Android平台的显示窗口的装置,由于该显示窗口的装置解决问题的原理与本发明实施例的显示窗口的方法相似,因此该装置的实施可以参见方法的实施,重复之处不再赘述。
图11为本发明实施例提供的应用于Android平台的显示窗口的装置的结构示意图。该装置具体包括:
判断模块1101,用于在启动活动Activity时,确定该Activity的启动方式是否为窗口方式;
数据处理模块1102,用于在判断模块1101确定该Activity的启动方式为窗口方式后,设置用于启动该Activity的消息传递对象中的第一窗口属性数据,以使该Activity根据该第一窗口属性数据显示窗口。
可选地,判断模块1101还用于:在确定该Activity的启动方式为窗口方式之后,数据处理模块1102设置用于启动该Activity的消息传递对象中的第一窗口属性数据之前,确定该Activity启动时使用已打开的窗口;
数据处理模块1102还用于:若判断模块1101确定该Activity启动时使用已打开的窗口,则在设置用于启动该Activity的消息传递对象中的第一窗口属性数据之前,确定该已打开的窗口对应的窗口标识,根据确定的窗口标识确定该已打开的窗口对应的窗口对象,获取该确定的窗口对象中记录的第二窗口属性数据,其中窗口、窗口标识与窗口对象一一对应;
数据处理模块1102具体用于:根据获取的第二窗口属性数据设置用于启动该Activity的消息传递对象中的第一窗口属性数据。
可选地,判断模块1101还用于:在确定该Activity的启动方式为窗口方式之后,数据处理模块设1102置用于启动该Activity的消息传递对象中的第一窗口属性数据之前,确定该Activity启动时要打开新窗口;
数据处理模块1102还用于:若判断模块1101确定该Activity启动时要打开新窗口,则为要打开的新窗口分配窗口标识,生成该新窗口对应的窗口对象,在该生成的窗口对象中记录分配的窗口标识,并设置该生成的窗口对象中的第二窗口属性数据,其中窗口、窗口标识与窗口对象一一对应;
数据处理模块1102具体用于:根据该生成的窗口对象中的第二窗口属性数据设置用于启动该Activity的消息传递对象中的第一窗口属性数据。
可选地,数据处理模块1102还用于:在判断模块1101确定该Activity启动时是否使用已打开的窗口之后,将窗口标识置于用于启动该Activity的消息传递对象中,以使该Activity记录该窗口标识;
判断模块1101还用于:在需要关闭Activity,且该要关闭的Activity以窗口方式启动时,判断是否存在该要关闭的Activity的窗口关联Activity;
数据处理模块1102还用于:若判断模块1101确定不存在该要关闭的Activity的窗口关联Activity,则在关闭该要关闭的Activity之后,删除该要关闭的Activity的关联的窗口对象;
其中,该要关闭的Activity的窗口关联Activity为:已打开的Activity中,记录的窗口标识与该要关闭的Activity记录的窗口标识相同的其他Activity;该要关闭的Activity的关联窗口对象为:记录的窗口标识与该要关闭的Activity记录的窗口标识相同的窗口对象。
可选地,数据处理模块1102还用于:
若判断模块1101确定存在该Activity的窗口关联Activity,且该要关闭的Activity为正在显示的Activity,则在关闭该要关闭的Activity后,将该要关闭的Activity的窗口关联Activity中需要显示的Activity置为可视。
可选地,数据处理模块1102还用于:在判断模块1101确定该Activity启动时是否使用已打开的窗口之后,将窗口标识置于用于启动该Activity的消息传递对象中,以使该Activity记录该窗口标识;
该装置还包括:指令接收模块,用于接收窗口修改指令,并获取该指令中的指令类型、窗口属性参数和窗口标识;
数据处理模块1102还用于:从记录了指令接收模块获取的窗口标识的Activity中,确定需要修改的窗口中需要显示的各Activity;并将获取的指令类型、窗口属性参数分别发给确定的需要显示的各Activity,以使每一个Activity根据该指令类型和窗口属性参数显示窗口。
可选地,数据处理模块1102还用于:
根据指令接收模块获取的指令类型和窗口属性参数,修改特定窗口对象中记录的第二窗口属性数据;
其中,特定窗口对象为:记录了获取的窗口标识的窗口对象。
图12为本发明实施例提供的Android终端结构示意图。如图12所示,该终端包括:
存储器1201,用于存储显示窗口的程序;
处理器1202,通过运行存储器1201存储的程序,用于在启动活动Activity时,确定该Activity的启动方式是否为窗口方式;在确定该Activity的启动方式为窗口方式后,设置用于启动该Activity的消息传递对象中的第一窗口属性数据,以使该Activity根据该第一窗口属性数据显示窗口。
其中,在图12中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器1202代表的一个或多个处理器和存储器1201代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机1203可以是多个元件,即包括发送机和接收机,提供用于在传输介质上与各种其他装置通信的单元。针对不同的用户设备,用户接口1204还可以是能够外接内接需要设备的接口,连接的设备包括但不限于小键盘、显示器、扬声器、麦克风、操纵杆等。
可选地,处理器1202具体用于:
在确定该Activity的启动方式为窗口方式之后,设置用于启动该Activity的消息传递对象中的第一窗口属性数据之前,若确定该Activity启动时使用已打开的窗口;则确定该已打开的窗口对应的窗口标识,根据确定的窗口标识确定该已打开的窗口对应的窗口对象,获取该确定的窗口对象中记录的第二窗口属性数据,其中,窗口、窗口标识与窗口对象一一对应;
在设置用于启动该Activity的消息传递对象中的第一窗口属性数据时,根据获取的第二窗口属性数据设置用于启动该Activity的消息传递对象中的第一窗口属性数据。
可选地,处理器1202还用于:在确定该Activity的启动方式为窗口方式之后,设置用于启动该Activity的消息传递对象中的第一窗口属性数据之前,若确定该Activity启动时使用已打开的窗口之后,则为要打开的新窗口分配窗口标识,生成该新窗口对应的窗口对象,在该生成的窗口对象中记录分配的窗口标识,并设置该生成的窗口对象中的第二窗口属性数据,其中窗口、窗口标识与窗口对象一一对应;
处理器1202在设置用于启动该Activity的消息传递对象中的第一窗口属性数据时,具体用于:根据该生成的窗口对象中的第二窗口属性数据设置用于启动该Activity的消息传递对象中的第一窗口属性数据。
可选地,处理器1202还用于:在确定该Activity启动时是否使用已打开的窗口之后,将窗口标识置于用于启动该Activity的消息传递对象中,以使该Activity记录该窗口标识;
处理器1202还用于:在需要关闭Activity,且该要关闭的Activity是以窗口方式启动时,判断是否存在该要关闭的Activity的窗口关联Activity;若不存在该要关闭的Activity的窗口关联Activity,则在关闭该要关闭的Activity之后,删除该要关闭的Activity的关联窗口对象;
其中,该要关闭的Activity的窗口关联Activity为:已打开的Activity中,记录的窗口标识与该要关闭的Activity记录的窗口标识相同的其他Activity;该要关闭的Activity的关联窗口对象为:记录的窗口标识与该要关闭的Activity记录的窗口标识相同的窗口对象。
可选地,处理器1202还用于:
在判断是否存在该要关闭的Activity的窗口关联Activity之后,若存在该要关闭的Activity的窗口关联Activity,且该要关闭的Activity为正在显示的Activity,则在关闭该要关闭的Activity后,将该要关闭的Activity的窗口关联Activity中需要显示的Activity置为可视。
可选地,处理器1202还用于:在确定该Activity启动时是否使用已打开的窗口之后,将窗口标识置于用于启动该Activity的消息传递对象中,以使该Activity记录该窗口标识;
处理器1202还用于:接收窗口修改指令,获取该指令中的指令类型、窗口属性参数和窗口标识;从记录了该获取的窗口标识的Activity中,确定需要修改的窗口中需要显示的各Activity;将获取的指令类型、窗口属性参数分别发给确定的需要显示的各Activity,以使每一个Activity根据该指令类型和窗口属性参数显示窗口。
可选地,处理器1202还用于:
在获取该指令中的指令类型、窗口属性参数和窗口标识之后,根据获取的指令类型和窗口属性参数,修改特定窗口对象中记录的第二窗口属性数据;
其中,特定窗口对象为:记录了获取的窗口标识的窗口对象。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (11)
1.一种应用于Android平台的显示窗口的方法,其特征在于,该方法包括:
在启动活动Activity时,确定该Activity的启动方式是否为窗口方式;
在确定该Activity的启动方式为窗口方式后,设置用于启动该Activity的消息传递对象中的第一窗口属性数据,以使该Activity根据该第一窗口属性数据显示窗口。
2.如权利要求1所述的方法,其特征在于,在确定该Activity的启动方式为窗口方式之后,设置用于启动该Activity的消息传递对象中的第一窗口属性数据之前,该方法还包括:
若确定该Activity启动时使用已打开的窗口,则确定该已打开的窗口对应的窗口标识,根据确定的窗口标识确定该已打开的窗口对应的窗口对象,获取该确定的窗口对象中记录的第二窗口属性数据,其中,所述窗口、窗口标识与窗口对象一一对应;
所述设置用于启动该Activity的消息传递对象中的第一窗口属性数据,包括:
根据获取的第二窗口属性数据设置用于启动该Activity的消息传递对象中的第一窗口属性数据。
3.如权利要求1所述的方法,其特征在于,在确定该Activity的启动方式为窗口方式之后,设置用于启动该Activity的消息传递对象中的第一窗口属性数据之前,该方法还包括:
若确定该Activity启动时要打开新窗口,则为要打开的新窗口分配窗口标识,生成该新窗口对应的窗口对象,在该生成的窗口对象中记录分配的窗口标识,并设置该生成的窗口对象中的第二窗口属性数据,其中所述窗口、窗口标识与窗口对象一一对应;
所述设置用于启动该Activity的消息传递对象中的第一窗口属性数据,包括:
根据该生成的窗口对象中的第二窗口属性数据设置用于启动该Activity的消息传递对象中的第一窗口属性数据。
4.如权利要求2或3所述的方法,其特征在于,
在确定该Activity启动时是否使用已打开的窗口之后,该方法还包括:将所述窗口标识置于用于启动该Activity的消息传递对象中,以使该Activity记录该窗口标识;
该方法还包括:在需要关闭Activity,且该要关闭的Activity是以窗口方式启动时,判断是否存在该要关闭的Activity的窗口关联Activity;若不存在该要关闭的Activity的窗口关联Activity,则在关闭该要关闭的Activity之后,删除该要关闭的Activity的关联窗口对象;
其中,该要关闭的Activity的窗口关联Activity为:已打开的Activity中,记录的窗口标识与该要关闭的Activity记录的窗口标识相同的其他Activity;该要关闭的Activity的关联窗口对象为:记录的窗口标识与该要关闭的Activity记录的窗口标识相同的窗口对象。
5.如权利要求4所述的方法,其特征在于,在判断是否存在该要关闭的Activity的窗口关联Activity之后,该方法还包括:
若存在该要关闭的Activity的窗口关联Activity,且该要关闭的Activity为正在显示的Activity,则在关闭该要关闭的Activity后,将该要关闭的Activity的窗口关联Activity中需要显示的Activity置为可视。
6.如权利要求2或3所述的方法,其特征在于,
在确定该Activity启动时是否使用已打开的窗口之后,该方法还包括:将所述窗口标识置于用于启动该Activity的消息传递对象中,以使该Activity记录该窗口标识;
该方法还包括:接收窗口修改指令,获取该指令中的指令类型、窗口属性参数和窗口标识;从记录了该获取的窗口标识的Activity中,确定需要修改的窗口中需要显示的各Activity;将获取的指令类型、窗口属性参数分别发给所述确定的需要显示的各Activity,以使每一个Activity根据该指令类型和窗口属性参数显示窗口。
7.如权利要求6所述的方法,其特征在于,在获取该指令中的指令类型、窗口属性参数和窗口标识之后,还包括:
根据获取的指令类型和窗口属性参数,修改特定窗口对象中记录的第二窗口属性数据;
其中,所述特定窗口对象为:记录了所述获取的窗口标识的窗口对象。
8.一种应用于Android平台的显示窗口的装置,其特征在于,该装置包括:
判断模块,用于在启动活动Activity时,确定该Activity的启动方式是否为窗口方式;
数据处理模块,用于在所述判断模块确定该Activity的启动方式为窗口方式后,设置用于启动该Activity的消息传递对象中的第一窗口属性数据,以使该Activity根据该第一窗口属性数据显示窗口。
9.如权利要求8所述的装置,其特征在于,
所述判断模块还用于:在确定该Activity的启动方式为窗口方式之后,所述数据处理模块设置用于启动该Activity的消息传递对象中的第一窗口属性数据之前,确定该Activity启动时使用已打开的窗口;
所述数据处理模块还用于:若所述判断模块确定该Activity启动时使用已打开的窗口,则在设置用于启动该Activity的消息传递对象中的第一窗口属性数据之前,确定该已打开的窗口对应的窗口标识,根据确定的窗口标识确定该已打开的窗口对应的窗口对象,获取该确定的窗口对象中记录的第二窗口属性数据,其中所述窗口、窗口标识与窗口对象一一对应;
所述数据处理模块具体用于:根据获取的第二窗口属性数据设置用于启动该Activity的消息传递对象中的第一窗口属性数据。
10.如权利要求8所述的装置,其特征在于,
所述判断模块还用于:在确定该Activity的启动方式为窗口方式之后,所述数据处理模块设置用于启动该Activity的消息传递对象中的第一窗口属性数据之前,确定该Activity启动时要打开新窗口;
所述数据处理模块还用于:若所述判断模块确定该Activity启动时要打开新窗口,则为要打开的新窗口分配窗口标识,生成该新窗口对应的窗口对象,在该生成的窗口对象中记录分配的窗口标识,并设置该生成的窗口对象中的第二窗口属性数据,其中所述窗口、窗口标识与窗口对象一一对应;
所述数据处理模块具体用于:根据该生成的窗口对象中的第二窗口属性数据设置用于启动该Activity的消息传递对象中的第一窗口属性数据。
11.如权利要求9或10所述的装置,其特征在于,
所述数据处理模块还用于:在所述判断模块确定该Activity启动时是否使用已打开的窗口之后,将所述窗口标识置于用于启动该Activity的消息传递对象中,以使该Activity记录该窗口标识;
所述装置还包括:指令接收模块,用于接收窗口修改指令,并获取该指令中的指令类型、窗口属性参数和窗口标识;
所述数据处理模块还用于:从记录了所述指令接收模块获取的窗口标识的Activity中,确定需要修改的窗口中需要显示的各Activity;并将获取的指令类型、窗口属性参数分别发给所述确定的需要显示的各Activity,以使每一个Activity根据该指令类型和窗口属性参数显示窗口。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610293840.0A CN105975274B (zh) | 2013-10-31 | 2013-10-31 | 一种应用于Android平台的显示窗口的方法和装置 |
CN201310534221.2A CN103558959B (zh) | 2013-10-31 | 2013-10-31 | 一种应用于Android平台的显示窗口的方法和装置 |
US14/456,211 US20150121295A1 (en) | 2013-10-31 | 2014-08-11 | Window displaying method of mobile terminal and mobile terminal |
EP20140189620 EP2869191A1 (en) | 2013-10-31 | 2014-10-21 | Window displaying method of mobile terminal and mobile terminal |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310534221.2A CN103558959B (zh) | 2013-10-31 | 2013-10-31 | 一种应用于Android平台的显示窗口的方法和装置 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610293840.0A Division CN105975274B (zh) | 2013-10-31 | 2013-10-31 | 一种应用于Android平台的显示窗口的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103558959A true CN103558959A (zh) | 2014-02-05 |
CN103558959B CN103558959B (zh) | 2016-08-17 |
Family
ID=50013232
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610293840.0A Expired - Fee Related CN105975274B (zh) | 2013-10-31 | 2013-10-31 | 一种应用于Android平台的显示窗口的方法和装置 |
CN201310534221.2A Expired - Fee Related CN103558959B (zh) | 2013-10-31 | 2013-10-31 | 一种应用于Android平台的显示窗口的方法和装置 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610293840.0A Expired - Fee Related CN105975274B (zh) | 2013-10-31 | 2013-10-31 | 一种应用于Android平台的显示窗口的方法和装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20150121295A1 (zh) |
EP (1) | EP2869191A1 (zh) |
CN (2) | CN105975274B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104486389A (zh) * | 2014-12-04 | 2015-04-01 | 上海斐讯数据通信技术有限公司 | 一种窗口管理服务与app间的通信通道建立方法和系统 |
CN104780209A (zh) * | 2015-04-07 | 2015-07-15 | 北京奇点机智信息技术有限公司 | 一种用于实现分享界面场景的便携式设备、服务器 |
CN104808959A (zh) * | 2015-04-29 | 2015-07-29 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
CN105095356A (zh) * | 2015-06-24 | 2015-11-25 | 安一恒通(北京)科技有限公司 | 一种浏览器中视图的切换方法及装置 |
CN106155768A (zh) * | 2015-03-26 | 2016-11-23 | 阿里巴巴集团控股有限公司 | 分屏运行应用的方法及装置 |
CN110866247A (zh) * | 2018-11-23 | 2020-03-06 | 北京安天网络安全技术有限公司 | 一种安全防御方法、装置、电子设备及存储介质 |
CN117762889A (zh) * | 2024-02-20 | 2024-03-26 | 成都融见软件科技有限公司 | 同文件多窗口状态同步方法、电子设备和介质 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105975274B (zh) * | 2013-10-31 | 2020-02-18 | 青岛海信移动通信技术股份有限公司 | 一种应用于Android平台的显示窗口的方法和装置 |
CN104331236B (zh) * | 2014-09-30 | 2017-09-05 | 珠海市君天电子科技有限公司 | 一种多个窗口的绑定拖动方法及装置 |
CN107272993A (zh) * | 2017-06-30 | 2017-10-20 | 深圳铂睿智恒科技有限公司 | 智能终端窗口视图的控制方法及系统 |
CN108363597A (zh) * | 2018-01-02 | 2018-08-03 | 武汉斗鱼网络科技有限公司 | 一种页面跳转方法及系统 |
CN108958849B (zh) * | 2018-06-28 | 2022-03-22 | 武汉斗鱼网络科技有限公司 | 获取当前Activity对象的方法、装置、存储介质及移动终端 |
CN109819329B (zh) * | 2019-01-16 | 2022-03-25 | 海信视像科技股份有限公司 | 一种窗口显示方法及智能电视 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6067584A (en) * | 1996-09-09 | 2000-05-23 | National Instruments Corporation | Attribute-based system and method for configuring and controlling a data acquisition task |
US20090305685A1 (en) * | 2006-07-28 | 2009-12-10 | Noboru Takahashi | Terminal device, content displaying method, and content displaying program |
CN102946599A (zh) * | 2012-11-08 | 2013-02-27 | 惠州Tcl移动通信有限公司 | 实现移动终端应用程序下载的方法及移动终端 |
CN103314373A (zh) * | 2010-12-20 | 2013-09-18 | 赛贝斯股份有限公司 | 移动设备上大数据集的有效处理 |
CN103336742A (zh) * | 2013-07-18 | 2013-10-02 | 北京航空航天大学 | 一种基于Android的自动化软件黑盒测试系统及方法 |
CN103370690A (zh) * | 2011-07-13 | 2013-10-23 | Flex Electronics ID Co.,Ltd. | 动态跨环境应用方位 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7059261B2 (en) * | 2004-01-21 | 2006-06-13 | Ncl Corporation | Wastewater ballast system and method |
US8296684B2 (en) * | 2008-05-23 | 2012-10-23 | Hewlett-Packard Development Company, L.P. | Navigating among activities in a computing device |
US8683362B2 (en) * | 2008-05-23 | 2014-03-25 | Qualcomm Incorporated | Card metaphor for activities in a computing device |
US7779475B2 (en) * | 2006-07-31 | 2010-08-17 | Petnote Llc | Software-based method for gaining privacy by affecting the screen of a computing device |
US8600446B2 (en) * | 2008-09-26 | 2013-12-03 | Htc Corporation | Mobile device interface with dual windows |
US20110066971A1 (en) * | 2009-09-14 | 2011-03-17 | Babak Forutanpour | Method and apparatus for providing application interface portions on peripheral computing devices |
US20120117497A1 (en) * | 2010-11-08 | 2012-05-10 | Nokia Corporation | Method and apparatus for applying changes to a user interface |
US20130055313A1 (en) * | 2011-08-31 | 2013-02-28 | Sony Corporation | Method, computer program, reception apparatus, and information providing apparatus for accessing content from a plurality of content sources |
US9047469B2 (en) * | 2011-09-10 | 2015-06-02 | Microsoft Technology Licensing, Llc | Modes for applications |
CN102841804B (zh) * | 2012-06-27 | 2014-12-10 | 北京三星通信技术研究有限公司 | 同屏多前台任务处理方法及装置 |
US20140013271A1 (en) * | 2012-07-05 | 2014-01-09 | Research In Motion Limited | Prioritization of multitasking applications in a mobile device interface |
CN103279349B (zh) * | 2013-05-31 | 2016-09-21 | 正益无线(北京)科技有限公司 | 手机或pda的基于移动中间件的多窗口浏览系统 |
US10915284B2 (en) * | 2013-07-30 | 2021-02-09 | Lockheed Martin Corportation | Multi-monitor full screen mode in a windowing environment |
CN105975274B (zh) * | 2013-10-31 | 2020-02-18 | 青岛海信移动通信技术股份有限公司 | 一种应用于Android平台的显示窗口的方法和装置 |
-
2013
- 2013-10-31 CN CN201610293840.0A patent/CN105975274B/zh not_active Expired - Fee Related
- 2013-10-31 CN CN201310534221.2A patent/CN103558959B/zh not_active Expired - Fee Related
-
2014
- 2014-08-11 US US14/456,211 patent/US20150121295A1/en not_active Abandoned
- 2014-10-21 EP EP20140189620 patent/EP2869191A1/en not_active Withdrawn
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6067584A (en) * | 1996-09-09 | 2000-05-23 | National Instruments Corporation | Attribute-based system and method for configuring and controlling a data acquisition task |
US20090305685A1 (en) * | 2006-07-28 | 2009-12-10 | Noboru Takahashi | Terminal device, content displaying method, and content displaying program |
CN103314373A (zh) * | 2010-12-20 | 2013-09-18 | 赛贝斯股份有限公司 | 移动设备上大数据集的有效处理 |
CN103370690A (zh) * | 2011-07-13 | 2013-10-23 | Flex Electronics ID Co.,Ltd. | 动态跨环境应用方位 |
CN102946599A (zh) * | 2012-11-08 | 2013-02-27 | 惠州Tcl移动通信有限公司 | 实现移动终端应用程序下载的方法及移动终端 |
CN103336742A (zh) * | 2013-07-18 | 2013-10-02 | 北京航空航天大学 | 一种基于Android的自动化软件黑盒测试系统及方法 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104486389A (zh) * | 2014-12-04 | 2015-04-01 | 上海斐讯数据通信技术有限公司 | 一种窗口管理服务与app间的通信通道建立方法和系统 |
CN104486389B (zh) * | 2014-12-04 | 2018-02-13 | 上海斐讯数据通信技术有限公司 | 一种窗口管理服务与app间的通信通道建立方法和系统 |
CN106155768A (zh) * | 2015-03-26 | 2016-11-23 | 阿里巴巴集团控股有限公司 | 分屏运行应用的方法及装置 |
CN104780209A (zh) * | 2015-04-07 | 2015-07-15 | 北京奇点机智信息技术有限公司 | 一种用于实现分享界面场景的便携式设备、服务器 |
CN104808959A (zh) * | 2015-04-29 | 2015-07-29 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
CN104808959B (zh) * | 2015-04-29 | 2020-07-24 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
CN105095356A (zh) * | 2015-06-24 | 2015-11-25 | 安一恒通(北京)科技有限公司 | 一种浏览器中视图的切换方法及装置 |
CN110866247A (zh) * | 2018-11-23 | 2020-03-06 | 北京安天网络安全技术有限公司 | 一种安全防御方法、装置、电子设备及存储介质 |
CN110866247B (zh) * | 2018-11-23 | 2022-03-11 | 北京安天网络安全技术有限公司 | 一种安全防御方法、装置、电子设备及存储介质 |
CN117762889A (zh) * | 2024-02-20 | 2024-03-26 | 成都融见软件科技有限公司 | 同文件多窗口状态同步方法、电子设备和介质 |
CN117762889B (zh) * | 2024-02-20 | 2024-04-19 | 成都融见软件科技有限公司 | 同文件多窗口状态同步方法、电子设备和介质 |
Also Published As
Publication number | Publication date |
---|---|
CN105975274A (zh) | 2016-09-28 |
CN103558959B (zh) | 2016-08-17 |
CN105975274B (zh) | 2020-02-18 |
US20150121295A1 (en) | 2015-04-30 |
EP2869191A1 (en) | 2015-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103558959A (zh) | 一种应用于Android平台的显示窗口的方法和装置 | |
CN110163976B (zh) | 一种虚拟场景转换的方法、装置、终端设备及存储介质 | |
CN105556458B (zh) | 用于配置设备的主屏幕的方法和装置 | |
CN108304846A (zh) | 图像识别方法、装置及存储介质 | |
CN104011721A (zh) | 协作搜索 | |
RU2006133383A (ru) | Визуализация пользовательского интерфейса | |
CN103412910A (zh) | 一种建立标签库及搜索用户的方法和装置 | |
CN106796789A (zh) | 与话音参考点的协同言语交互 | |
US20210390254A1 (en) | Method, Apparatus and Device for Recognizing Word Slot, and Storage Medium | |
CN103077075A (zh) | 显示后台运行应用的方法及其终端 | |
CN105393275A (zh) | 用于提供4d内容产生服务的方法和系统及用于该系统的内容产生设备 | |
CN110121726A (zh) | 最相关的首先日历事件同步 | |
CN102375918A (zh) | 设备间互动虚拟角色系统 | |
CN103207730A (zh) | 一种可定位拖拉式流程图生成方法及流程图生成器 | |
CN106537382A (zh) | 查询建议 | |
CN107079065A (zh) | 电话平板装置 | |
CN105765955A (zh) | 一种用户管理方法及终端 | |
CN202230483U (zh) | 基于nfc的电子名片交换装置 | |
CN102939586B (zh) | 交互图表系统中的局部化布局和布线 | |
CN112631775A (zh) | 模型训练方法、装置、电子设备和计算机可读存储介质 | |
CN103631526A (zh) | 一种显示搜索信息的设备和方法 | |
CN111949187A (zh) | 电子白板内容编辑共享方法、系统、设备以及服务器 | |
CN102868746A (zh) | 实现移动信息化的方法 | |
CN104200354B (zh) | 一种信息处理方法及电子设备 | |
WO2020060569A1 (en) | System and method for importing a software application into a virtual reality setting |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160817 |
|
CF01 | Termination of patent right due to non-payment of annual fee |