移动终端中结束程序的系统及其方法
【专利摘要】一种移动终端中结束程序的系统及其方法,其通过应用程序中的第一用户界面程序结束时,设定目标对象,当应用程序中的第二用户界面程序判断目标对象被设定时,结束第二用户界面程序的技术手段,可以通过子视窗确实关闭应用程序的所有子视窗,并达成减少资源被应该结束的程序占用的技术效果。
【专利说明】移动终端中结束程序的系统及其方法
【技术领域】
[0001]本发明涉及一种程序进程控制系统及其方法,尤其涉及一种移动终端中结束程序的系统及其方法。
【背景技术】
[0002]用户界面(User Interface, M ),是电脑软硬件与用户之间进行信息交换的媒介,凡参与人类与机械的信息交流的领域都存在着用户界面。用户界面使得用户能够方便有效率地去操作电脑软硬件以达成双向的互动,完成所希望借助电脑完成的工作。用户和电脑软硬件之间一般用受限制的自然语言进行互动,但随着视窗操作系统的普及,目前的用户界面大多是以图形用户界面(Graphics User Interface,⑶I)的方式呈现。
[0003]图形用户界面使用图形的方式,帮助用户方便地向电脑发出指令,启动操作,并将运行的结果以图形方式显示给用户。图形用户界面操作简单,省去了使用字符用户界面的用户必须记忆各种命令的麻烦。
[0004]目前数码电子产品的操作系统通常以视窗化的界面呈现,每一个应用程序在执行后可以显示一个主视窗,用户可以在主视窗中操作以开启子视窗,在需要时,子视窗还可以开启子视窗,以此类推。
[0005]目前,在开启多层子视窗后,若是直接操作最先开启的主视窗关闭应用程序或关闭所有开启的子视窗,往往会造成后续开启的部分子视窗没有结束而占用系统资源(resource),因此,若要确实的关闭应用程序或关闭所有开启的子视窗,往往需要依序从最后打开的子视窗开始逐一关闭所有的子视窗,例如,在部分的操作系统中,需多次按下倒退(back)键,造成用户的不便。
[0006]综上所述,可知现有技术中长期以来一直存在无法便捷的通过子视窗确实关闭应用程序的所有子视窗而造成资源占用的问题,因此有必要提出改进的技术手段,来解决这
一问题。
【发明内容】
[0007]有鉴于现有技术存在无法通过子视窗确实关闭应用程序的所有子视窗的问题,本发明遂揭露一种移动终端中结束程序的系统及其方法,其中:
[0008]本发明所揭露的移动终端中结束程序的系统,应用于应用程序中,至少包含:目标对象(Object);第一用户界面程序(User Interface Program),用以在第一用户界面程序结束时,设定(set)目标对象;第二用户界面程序,用以显示功能界面,功能界面包含触发第一用户界面程序开始执行的特定事件,使第二用户界面程序与第一用户界面程序同时被执行,及用以判断目标对象被设定时,结束第二用户界面程序。
[0009]本发明所揭露的移动终端中结束程序的方法,应用于应用程序中,应用程序同时运行有第一用户界面程序及第二用户界面程序,第一用户界面程序是在第二用户界面程序所显示的功能界面中的特定事件被触发后开始执行,其步骤至少包括:在应用程序中提供目标对象;第一用户界面程序显示功能界面;当第一用户界面程序结束时,设定目标对象;第二用户界面程序判断目标对象被设定时,结束第二用户界面程序。
[0010]本发明所揭露的系统与方法如上,与现有技术之间的差异在于本发明通过应用程序中的第一用户界面程序结束时,设定目标对象,当应用程序中的第二用户界面程序判断目标对象被设定时,结束第二用户界面程序,由此解决现有技术所存在的问题,并可以达成减少资源占用的技术效果。
【专利附图】
【附图说明】
[0011]图1A为本发明所述的移动终端中结束程序的系统架构图。
[0012]图1B为本发明所述的另一种移动终端中结束程序的系统架构图。
[0013]图2A为本发明所述的移动终端中结束程序的方法流程图。
[0014]图2B为本发明所述的读取(get)目标对象的附加方法流程图。
[0015]主要部件附图标记
[0016]100应用程序
[0017]110目标对象
[0018]120第一用户界面程序
[0019]130第二用户界面程序
[0020]步骤201在应用程序中提供目标对象
[0021]步骤210第一用户界面程序显示功能界面
[0022]步骤220当第一用户界面程序结束时,设定目标对象
[0023]步骤230第二用户界面程序在显示内容时,读取目标对象
[0024]步骤240第二用户界面程序判断目标对象是否被设定
[0025]步骤250第二用户界面程序判断目标对象被设定时,结束第二用户界面程序
[0026]步骤290第二用户界面程序正常执行
【具体实施方式】
[0027]以下将结合附图及实施例来详细说明本发明的特征与实施方式,内容足以使本领域技术人员能够轻易地充分理解本发明解决技术问题所应用的技术手段并据以实施,由此实现本发明可达成的技术效果。
[0028]本发明应用在执行于可携装置的应用程序中,当应用程序同时执行多个用户界面程序时,若应用程序中的某个用户界面程序被结束,则被结束的用户界面程序会主动或被动的通知其他用户界面程序,使得其他需要结束的用户界面程序也一并结束,避免有用户界面程序应该结束却未结束而占用资源。
[0029]本发明所提到的用户界面程序(包含第一用户界面程序与第二用户界面程序)可以提供与用户互动的功能界面,例如,某些程序语言中的“Activity”对象等。
[0030]以下先以图1A本发明所述的移动终端中结束程序的系统架构图来说明本发明的系统运作。如图1A所示,本发明的系统含有目标对象110、第一用户界面程序120、以及第二用户界面程序130。
[0031]目标对象110负责记录是否结束与第一用户界面程序120相关的所有第二用户界面程序130,若是,则目标对象110会被设定,若否,则目标对象110没有被设定。
[0032]在部分的实施例中,目标对象110可以是应用程序100中的全局变量(globalvariable),当目标对象110被设定时,表示目标对象110不为0(通常为1),当目标对象110没有被设定时,目标对象110通常为0,但本发明并不以此为限。
[0033]另外,同样在部分的实施例中,应用程序100的所有用户界面程序都与其他的用户界面程序相关,但本发明并不以此为限。
[0034]第一用户界面程序120负责显示功能界面,第一用户界面程序120所显示的功能界面至少包含结束应用程序100的第一按钮(button)。在部分的实施例中,第一用户界面程序120所显示的功能界面还可以包含结束第一用户界面程序120的第二按钮,但本发明并不以此为限。
[0035]第一用户界面程序120在结束时,也就是第一用户界面程序120会在应用程序100将要结束,或是在需要结束所有相关的第二用户界面程序130时,设定目标对象110。
[0036]第二用户界面程序130同样负责显示功能界面,第二用户界面程序130所显示的功能界面至少包含触发第一用户界面程序120开始执行的特定事件,例如,功能界面中的按钮或复选框(checkbox)等对象的点击事件等。
[0037]—般而言,第一用户界面程序120所显示的功能界面位于第二用户界面程序130所显示的功能界面的上层,也就是说,当第一用户界面程序120开始执行而显示功能界面时,第一用户界面程序120所显示的功能界面会取得焦点(focus)。
[0038]第二用户界面程序130负责在判断出目标对象110被设定时,结束第二用户界面程序130。在部分的实施例中,第二用户界面程序130是在“onStart”方法中读取目标对象110的值,由此判断目标对象110是否被设定。
[0039]接着以第一实施例来解说本发明的运作系统与方法,并请参照图2A本发明所述的移动终端中结束程序的方法流程图。
[0040]在本实施例中,假设执行于可携装置上的应用程序100中有三个用户界面程序同时被执行,在三个用户界面程序中,有一个用户界面程序所显示的功能界面包含结束应用程序100的第一按钮。在本实施例中,假设会显示结束应用程序100的第一按钮的用户界面程序为本发明所述的第一用户界面程序,另外两个用户界面程序则为本发明所述的第二用户界面程序,且第一用户界面程序会在第二用户界面程序所显示的功能界面中的特定事件被触发(trigger)时开始执行,另外,也假设第一用户界面程序所显示的功能界面在另外两个第二用户界面程序所显示的功能界面的上层,使得用户只能操作第一用户界面程序所显示的功能界面,直到用户关闭第一用户界面程序所显示的功能界面,也就是结束第一用户界面程序为止。
[0041]第一用户界面程序所显示的功能界面除了包含结束应用程序100的第一按钮之夕卜,还可以包含结束第一用户界面程序的第二按钮。用户如需结束应用程序100及应用程序100所包含的所有用户界面程序时,可以点击第一按钮;若用户只需关闭当前最上层显示的功能界面,则可以点击第二按钮,这样,仅有第一用户界面程序会结束,使得最上层显示的功能界面也被关闭,但应用程序100及应用程序100所包含的另外两个第二用户界面程序仍然会保持正常运行。
[0042]首先,应用程序100可以提供一个目标对象110 (步骤201)。在本实施例中,假设目标对象110为一个预先配置在应用程序100中,数据类型为布尔(Boolean)值的全局变量。
[0043]而后,当应用程序100中的第一用户界面程序120被触发而开始执行时,可以在最上层显示提供与用户交互的功能界面(步骤210),若第一用户界面程序120所显示的第一按钮被点击时,第一用户界面程序120会执行结束的“onDestroy”方法,在第一用户界面程序120的“onDestroy”方法中,会设定目标对象110为“true” (步骤220)。
[0044]在第一用户界面程序120结束后,其中一个第二用户界面程序130会被重启(restart),因此,如图2B所示,该第二用户界面程序130会执行显示功能界面中的内容的“onStart”方法,在第二用户界面程序130的“onStart”方法中,会读取目标对象110,也就是读取预先配置于应用程序100中的全局变量(步骤230),并判断目标对象110是否被设定(步骤240)。若否,则第二用户界面程序130会正常执行(步骤290),也就是会执行“ onRe sume,,方法。
[0045]在本实施例中,由于目标对象110已被设定为“true”,第二用户界面程序130会判断目标对象110被设定,因此,第二用户界面程序130会执行结束的“onDestroy”方法,由此结束第二用户界面程序130 (步骤250)。
[0046]在本实施例中,不论第二用户界面程序130的“onDestroy”方法是否有设定目标对象110为“true”,由于目标对象110已被第一用户界面程序设定为“true”,因此,另一个第二用户界面程序130在被重启时,也会如上述的过程结束执行。这样,通过本发明,在应用程序100结束前,应用程序100的所有用户界面程序都会确实结束,避免资源的浪费。
[0047]以下再以图1B本发明所述的另一种移动终端中结束程序的系统架构图来说明本发明的系统运作。如图1B所示,本发明的系统同样含有目标对象110、第一用户界面程序120、以及第二用户界面程序130,且第一用户界面程序120以及第二用户界面程序130同样都会显示功能界面。与图1A不同的是,在图1B中,目标对象110不只一个,而是每一个第二用户界面程序130中都有一个,但本发明不对第一用户界面程序120是否包含目标对象110作特别的限制。
[0048]目标对象110负责记录是否结束与第一用户界面程序120相关的所有第二用户界面程序。在部分的实施例中,目标对象110可以是在各个用户界面程序中注册的广播对象,但本发明并不以此为限。
[0049]第一用户界面程序120同样会在结束时,设定目标对象110。在部分的实施例中,第一用户界面程序120会在执行结束的“onDestory”方法中,以发出广播的方式设定目标对象110,但本发明并不以此为限。
[0050]一般而言,第一用户界面程序120会在需要结束所有相关的第二用户界面程序130时,设定目标对象110。在部分的实施例中,与第一用户界面程序120相关的第二用户界面程序130为开启该第一用户界面程序120的第二用户界面程序130,因此,第一用户界面程序120位于第二用户界面程序130上层,也就是说,第一用户界面程序120取得焦点,但本发明并不以此为限。
[0051]第二用户界面程序130负责在判断出目标对象110被设定时,结束第二用户界面程序130。在部分的实施例中,第二用户界面程序130是在接收信息的“onReceiver”方法中接收到第一用户界面程序120所发出的设定目标对象110的广播时,判断目标对象110被设定。另外,第二用户界面程序130还可以在判断目标对象110被设定时,也就是结束第二用户界面程序130前,将已经注册的目标对象110注销(unregister)。
[0052]接着以第二实施例来解说本发明的运作系统与方法,同样请参照图2A本发明所述的移动终端中结束程序的方法流程图。
[0053]在本实施例中,若执行于可携装置上的应用程序100包含五个用户界面程序,且该五个用户界面程序中,每一个用户界面程序是在另一个用户界面程序所显示的功能界面中的特定事件被触发后开始执行,这样,五个用户界面程序将同时被执行。假设会最后被执行的用户界面程序为本发明所述的第一用户界面程序,另外的四个用户界面程序则为本发明所述的第二用户界面程序。
[0054]首先,应用程序100中的每一个第二用户界面程序130在执行资源配置的“onCreate”方法时,预先注册(register)目标对象110,由此让应用程序100提供目标对象110 (步骤201)。在本实施例中,假设目标对象110为广播对象。
[0055]若应用程序100中的第二用户界面程序130所显示的功能界面中的特定事件被触发,使得应用程序100中的第一用户界面程序120开始执行时,第一用户界面程序120可以在最上层显示功能界面(步骤210)。
[0056]而后,在应用程序100中的第一用户界面程序120结束时,第一用户界面程序120会执行结束的“onDestroy”方法,在第一用户界面程序120的“onDestroy”方法中,会传送设定广播对象(目标对象110)的广播给所有的第二用户界面程序130,由此设定目标对象110 (步骤 220)。
[0057]当应用程序100中的第二用户界面程序130接收到第一用户界面程序120所传送的设定目标对象110的广播时,第二用户界面程序130会判断目标对象110被设定,因此,可以结束第二用户界面程序130 (步骤250),其中,第二用户界面程序130还可以在结束前注销目标对象110。这样,通过本发明,与应用程序100中的第一用户界面程序120相关的所有第二用户界面程序130都会因为接收到第一用户界面程序120在结束时所传送的广播,进而结束,使得应用程序100中与第一用户界面程序120相关的所有第二用户界面程序130都会确实结束,避免资源的浪费。
[0058]综上所述,可知本发明与现有技术之间的差异在于具有通过应用程序中的第一用户界面程序结束时,设定目标对象,当应用程序中的第二用户界面程序判断目标对象被设定时,结束第二用户界面程序的技术手段,通过这一技术手段可以解决现有技术所存在无法通过子视窗确实关闭应用程序的所有子视窗的问题,进而达成减少资源被应该结束的程序占用的技术效果。
[0059]再者,本发明的移动终端中结束程序的方法,可实现于硬件、软件或硬件与软件的组合中,亦可在电脑系统中以集中方式实现或以不同元件散布于若干互联的电脑系统的分散方式实现。
[0060]虽然本发明所揭露的实施方式如上,然而所述的内容并非用以直接限定本发明的专利保护范围。任何本领域技术人员在不脱离本发明所揭露的精神和范围的前提下,对本发明的实施的形式上及细节上作一些更动润饰,均属于本发明的专利保护范围。本发明的专利保护范围,仍须以所附的权利要求书所限定的内容为准。
【权利要求】
1.一种移动终端中结束程序的方法,其特征在于,应用于应用程序中,该应用程序同时运行有第一用户界面程序及至少一个第二用户界面程序,该第一用户界面程序是在该第二用户界面程序所显示的功能界面中的特定事件被触发后开始执行,该方法至少包含下列步骤: 在该应用程序中提供目标对象; 该第一用户界面程序显示功能界面; 当该第一用户界面程序结束时,设定该目标对象 '及 该第二用户界面程序判断该目标对象被设定时,结束该第二用户界面程序。
2.如权利要求1所述的移动终端中结束程序的方法,其特征在于,该应用程序中的该第二用户界面程序判断该目标对象被设定的步骤还包含该第二用户界面程序在重启显示功能界面时,读取预先配置的全局变量,由此判断该目标对象是否被设定的步骤。
3.如权利要求1所述的移动终端中结束程序的方法,其特征在于,该应用程序中的该第二用户界面程序判断该目标对象被设定的步骤是该第二用户界面程序依据是否接收到设定预先注册的广播对象的广播信息判断该目标对象是否被设定,若是,则该第二用户界面程序判断该目标对象被设定。
4.如权利要求1所述的移动终端中结束程序的方法,其特征在于,该第一用户界面程序显示功能界面的步骤包含显示结束该应用程序、该第一用户界面程序及这些第二用户界面程序的第一按钮,及显 示结束该第一用户界面程序的第二按钮。
5.如权利要求1所述的移动终端中结束程序的方法,其特征在于,该方法在该第二用户界面程序判断该目标对象被设定的步骤时,还包含该第二用户界面程序注销该目标对象的步骤。
6.一种移动终端中结束程序的系统,其特征在于,应用于应用程序中,该系统至少包含: 目标对象; 第一用户界面程序,用以在该第一用户界面程序结束时,设定该目标对象 '及 至少一个第二用户界面程序,用以显示功能界面,该功能界面包含触发该第一用户界面程序开始执行的特定事件,使该第二用户界面程序与该第一用户界面程序同时被执行,及用以判断该目标对象被设定时,结束该第二用户界面程序。
7.如权利要求6所述的移动终端中结束程序的系统,其特征在于,该目标对象为预先配置的全局变量,该第二用户界面程序还用以在显示内容时,读取该全局变量,由此判断该目标对象是否被设定。
8.如权利要求6所述的移动终端中结束程序的系统,其特征在于,该目标对象为预先注册的广播对象,该第二用户界面程序是在接收到设定该广播对象的广播信息时,判断该目标对象被设定。
9.如权利要求6所述的移动终端中结束程序的系统,其特征在于,该第一用户界面程序还用以显示另一功能界面,该第一用户界面程序所显示的功能界面包含结束该应用程序、该第一用户界面程序及这些第二用户界面程序的第一按钮,及结束该第一用户界面程序的第二按钮。
10.如权利要求6所述的移动终端中结束程序的系统,其特征在于,该第二用户界面程序还用以在结束前注销该目标对`象。
【文档编号】G06F9/50GK103677980SQ201210320009
【公开日】2014年3月26日 申请日期:2012年8月31日 优先权日:2012年8月31日
【发明者】王辉, 丁科 申请人:英业达科技有限公司, 英业达股份有限公司