CN108363582A - 一种智能终端主页升级的方法和装置 - Google Patents

一种智能终端主页升级的方法和装置 Download PDF

Info

Publication number
CN108363582A
CN108363582A CN201810027765.2A CN201810027765A CN108363582A CN 108363582 A CN108363582 A CN 108363582A CN 201810027765 A CN201810027765 A CN 201810027765A CN 108363582 A CN108363582 A CN 108363582A
Authority
CN
China
Prior art keywords
home page
stack
page component
updated
turned
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201810027765.2A
Other languages
English (en)
Other versions
CN108363582B (zh
Inventor
庄广海
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qingdao Hisense Electronics Co Ltd
Original Assignee
Qingdao Hisense Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qingdao Hisense Electronics Co Ltd filed Critical Qingdao Hisense Electronics Co Ltd
Priority to CN201810027765.2A priority Critical patent/CN108363582B/zh
Publication of CN108363582A publication Critical patent/CN108363582A/zh
Application granted granted Critical
Publication of CN108363582B publication Critical patent/CN108363582B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72406User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by software upgrading or downloading
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • H04N21/4431OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB characterized by the use of Application Program Interface [API] libraries

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Library & Information Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Stored Programmes (AREA)

Abstract

本发明实施例提供了一种智能终端主页升级的方法和装置,所述智能终端安装有一个或多个应用程序,所述一个或多个应用程序分别具有对应的应用栈,所述应用栈包括任务列表和与主页对应的主页组件,其中,所述主页组件在所述应用栈栈底,任务列表中与主页组件相邻的任务的属性为返回所述主页组件;所述方法包括:安装所述主页组件的更新安装包,得到更新后的主页组件;检测所述智能终端中已启动的应用程序及对应的已启动应用栈;在所述已启动应用栈的栈底,启动所述更新后的主页组件;将与所述更新后的主页组件相邻的任务的属性修改为返回所述更新后的主页组件。本发明实施例解决了主页升级后返回主页时出现黑屏的问题。

Description

一种智能终端主页升级的方法和装置
技术领域
本发明涉及智能终端技术领域,特别是涉及一种智能终端主页升级的方法和一种智能终端主页升级的装置。
背景技术
随着科技的进步和社会的发展,智能电视已经广泛普及。智能电视搭载了操作系统,可以由用户自行安装、使用和卸载播放器、浏览器、聚合软件、即时通讯软件和游戏等应用程序,从而可以通过多种多样的应用程序来满足用户多方面的需求。
目前,智能电视中搭载的操作系统通常是基于Linux内核的移动操作系统,例如Android(安卓)系统、IOS(Iphone Operating System)等。现有的智能电视中的操作系统通常包括主页,并且对应用的管理都是通过单应用栈模型进行的。其中,应用栈为操作系统中的数据结构,其保存了应用在运行时的用户界面、状态等运行数据,操作系统根据应用栈中保存的数据对应用进行控制、调度和展示等操作。
以Android(安卓)系统为例,传统安卓系统只有两个栈,一个是主页栈,一个是应用栈。当用户在使用应用时,进行主页升级,待主页升级完成后,会重新创建主页栈,用户按返回键,就可以返回到主页栈,进而正常使用主页。
而多栈式应用管理是没有主页栈的,所以上述升级逻辑是不适用的。多栈式系统中,每一个应用是一个独立的栈,栈底是主页组件BaseTileActivity(主页中的界面Activity)。
在多栈式应用管理中,主页升级时,每个应用栈栈底的主页组件BaseTileActivity都会被系统回收,当主页升级完成后,如果用户按主页键,系统会启动主页中的一个service类,该类可以创建主页的悬浮view,这样可以保证升级后,用户按主页键可以调起主页;但是如果用户按返回键,由于栈底的主页组件BaseTileActivity已经被回收,应用栈的栈底没有主页BaseTileActivity,从而导致无法返回主页,出现黑屏。
发明内容
为了解决上述智能终端主页升级后返回主页时出现黑屏的问题,本发明实施例提出了一种智能终端主页升级的方法和相应的一种智能终端主页升级的装置。
为了解决上述问题,本发明实施例公开了一种智能终端主页升级的方法,所述智能终端安装有一个或多个应用程序,所述一个或多个应用程序分别具有对应的应用栈,所述应用栈包括任务列表和与主页对应的主页组件,其中,所述主页组件在所述应用栈栈底,任务列表中与主页组件相邻的任务的属性为返回所述主页组件;所述方法包括:
安装所述主页组件的更新安装包,得到更新后的主页组件;
检测所述智能终端中已启动的应用程序及对应的已启动应用栈;
在所述已启动应用栈的栈底,启动所述更新后的主页组件;
将与所述更新后的主页组件相邻的任务的属性修改为返回所述更新后的主页组件。
优选的,所述在所述已启动应用栈的栈底,启动所述更新后的主页组件的步骤包括:
为已启动应用栈的栈底添加所述更新后的主页组件;
在已启动应用栈的栈底启动所述更新后的主页组件。
优选的,在所述检测所述智能终端中已启动的应用程序的步骤之前,还包括:
卸载所述应用栈中的所述主页组件。
优选的,所述在已启动应用栈的栈底启动所述更新后的主页组件的步骤包括:
判断所述更新后的主页组件的启动模式是否为singleTASK或singleInstance;
若否,则在startActivity()的intent中增加Intent.FLAG_ACTIVITY_NEW_DOCUMENT;所述startActivity用于启动所述更新后的主页组件;
采用所述Intent.FLAG_ACTIVITY_NEW_DOCUMENT与ActivityOptions.makeTaskLaunchBehind()在已启动应用栈的栈底启动所述更新后的主页组件。
优选的,所述将与所述更新后的主页组件相邻的任务的属性修改为返回所述更新后的主页组件的步骤包括:
将所述与所述更新后的主页组件相邻的任务的属性从HOME_ACTIVITY_TYPE更改为APPLICATION_ACTIVITY_TYPE。
相应的,本发明实施例公开了一种智能终端主页升级的装置,所述智能终端安装有一个或多个应用程序,所述一个或多个应用程序分别具有对应的应用栈,所述应用栈包括任务列表和与主页对应的主页组件,其中,所述主页组件在所述应用栈栈底,任务列表中与主页组件相邻的任务的属性为返回所述主页组件;所述装置包括:
获取模块,用于安装所述主页组件的更新安装包,得到更新后的主页组件;
检测模块,用于检测所述智能终端中已启动的应用程序及对应的已启动应用栈;
启动模块,用于在所述已启动应用栈的栈底,启动所述更新后的主页组件;
修改模块,用于将与所述更新后的主页组件相邻的任务的属性修改为返回所述更新后的主页组件。
优选的,所述启动模块包括:
主页组件添加子模块,用于为已启动应用栈的栈底添加所述更新后的主页组件;
主页组件启动子模块,用于在已启动应用栈的栈底启动所述更新后的主页组件。
优选的,还包括:
卸载模块,用于卸载所述应用栈中的所述主页组件。
优选的,所述启动模块还包括:
判断子模块,用于判断所述更新后的主页组件的启动模式是否为singleTASK或singleInstance;
所述主页组件添加子模块,还用于在startActivity()的intent中增加Intent.FLAG_ACTIVITY_NEW_DOCUMENT;所述startActivity用于启动所述更新后的主页组件;
主页组件启动子模块,还用于采用所述Intent.FLAG_ACTIVITY_NEW_DOCUMENT与ActivityOptions.makeTaskLaunchBehind()在已启动应用栈的栈底启动所述更新后的主页组件。
优选的,所述修改模块包括:
属性修改子模块,用于将所述与所述更新后的主页组件相邻的任务的属性从HOME_ACTIVITY_TYPE更改为APPLICATION_ACTIVITY_TYPE。
本发明实施例包括以下优点:
在本发明实施例中,智能终端安装有一个或多个应用程序,所述一个或多个应用程序分别具有对应的应用栈,所述应用栈包括任务列表,和与所述主页对应的主页组件,其中,所述主页组件在所述应用栈栈底,任务列表中与主页组件相邻的任务的属性为返回所述主页组件;在智能终端主页升级的过程中,先获取所述主页组件的更新安装包,再安装所述更新安装包,得到更新后的主页组件,然后检测所述智能终端中已启动的应用程序及对应的已启动应用栈,接着在所述已启动应用栈的栈底,启动所述更新后的主页组件,最后,将与所述更新后的主页组件相邻的任务的属性修改为返回所述更新后的主页组件。从而解决了主页更新安装完成后,与更新后的主页组件相邻的任务无法返回主页导致黑屏的问题了。
附图说明
图1是本发明的一种智能终端主页升级的方法实施例的步骤流程图;
图2是本发明的应用栈中TASK分布示意图;
图3是一种智能终端主页升级的方法的示意图;
图4是本发明的一种智能终端主页升级的装置实施例的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
参照图1,示出了本发明的一种智能终端主页升级的方法实施例的步骤流程图,所述智能终端安装有一个或多个应用程序,所述一个或多个应用程序分别具有对应的应用栈,所述应用栈包括任务列表和与主页对应的主页组件,其中,所述主页组件在所述应用栈栈底,任务列表中与主页组件相邻的任务的属性为返回所述主页组件。
在本发明实施例中,所述智能终端可以包括智能手机、智能电视等具有用户界面的终端,可以具有如下特点:
(1)在硬件体系上,设备具备中央处理器、存储器、输入部件和输出部件,也就是说,设备往往是具备通信功能的微型计算机设备。另外,还可以具有多种输入方式,诸如键盘、鼠标、触摸屏、送话器和摄像头等,并可以根据需要进行调整输入。同时,设备往往具有多种输出方式,如受话器、显示屏等,也可以根据需要进行调整;
(2)在软件体系上,设备必须具备操作系统,如Windows Mobile、Symbian、Palm、Android、iOS等。同时,这些操作系统越来越开放,基于这些开放的操作系统平台开发的个性化应用程序层出不穷,如通信簿、日程表、记事本、计算器以及各类游戏等,极大程度地满足了个性化用户的需求;
(3)在通信能力上,设备具有灵活的接入方式和高带宽通信性能,并且能根据所选择的业务和所处的环境,自动调整所选的通信方式,从而方便用户使用。设备可以支持GSM、WCDMA、CDMA2000、TDSCDMA、Wi-Fi以及WiMAX等,从而适应多种制式网络,不仅支持语音业务,更支持多种无线数据业务;
(4)在功能使用上,设备更加注重人性化、个性化和多功能化。随着计算机技术的发展,设备从“以设备为中心”的模式进入“以人为中心”的模式,集成了嵌入式计算、控制技术、人工智能技术以及生物认证技术等,充分体现了以人为本的宗旨。由于软件技术的发展,设备可以根据个人需求调整设置,更加个性化。同时,设备本身集成了众多软件和硬件,功能也越来越强大。
智能终端中安装有一个或多个应用程序,包括智能终端系统自带的应用程序和用户安装的第三方应用程序。
为方便描述,本发明实施例以具有Android系统的智能电视为例来详细说明。
主页是智能终端的核心应用,是所有应用的入口,也可以称之为桌面,只有当桌面(主页)启动了,才能通过点击桌面上应用程序的快捷方式来启动应用程序,而启动的应用程序则会被添加至应用栈中。
传统Android系统只有两个栈,一个是主页栈,一个是应用栈。当用户在使用应用程序时,如果进行主页升级,待主页升级完成后,会重新创建主页栈,用户按返回键,可以退出到主页栈,进而正常使用主页。
而本发明实施例采用的是多栈式应用管理,多栈式应用管理是没有主页栈的,而在现有的主页升级过程中,每个栈底的主页组件BaseTileActivity都会被系统回收,这样,用户按返回键后,因为原主页被系统回收了,所以会导致返回不到主页,只能通过重新启动智能终端来重新加载主页,因此上述升级逻辑是不适用于多栈式的。如上面叙述,在多栈式系统里,每一个应用都是独立的一个栈,主页的BaseTileActivity(与主页对应的主页组件)是在每个应用栈的栈底。
用户从主页启动了应用程序,那么与该应用程序对应的应用栈中,栈底就是主页组件,主页组件的上方就是任务列表,任务列表中的任务(TASK)就是用户启动的一个应用程序的同类Activity实例。其中,TASK表示具有一类功能的Activity的集合,一个TASK中可以包含一个或多个Activity实例,一般情况下打开一个应用所有Activity,这些Activity会分为一个或多个TASK,具体一个应用哪些Activity是一个TASK,要看启动Activity的启动参数,参数中可以选择在一个新TASK启动,或在原来TASK中启动。
Activity是Android组件中最基本也是最为常见用的四大组件之一。Activity是一个应用程序组件,提供一个屏幕,用户可以用来交互为了完成某项任务。
Activity中所有操作都与用户密切相关,是一个负责与用户交互的组件,可以通过setContentView(View)来显示指定控件。
在一个android应用中,一个Activity通常就是一个单独的屏幕,它上面可以显示一些控件也可以监听并处理用户的事件做出响应。Activity之间通过Intent进行通信。
参照图2,在STACK 1(应用栈1)中,最底层为主页组件BaseTileActivity,上方为TASK 1(任务1),TASK 1上方为TASK 2(任务2),其中,TASK 1包括Activity 1和Activity2,TASK 2包括Activity 3、Activity 4,以及Activity5,而从下到上代表用户依次启动的activity顺序,即用户通过主页组件BaseTileActivity启动了TASK 1,然后通过TASK 1启动了TASK 2,正常情况下,当用户返回时,会按照用户的启动顺序进行逐一返回,即先从TASK 2返回TASK 1,再从TASK 1返回主页组件BaseTileActivity。
从用户的角度来说,则是用户从桌面(主页,对应主页组件BaseTileActivity)启动了TASK 1,TASK 1的界面显示在主页之上,又在TASK1的界面启动了TASK 2,TASK 2的界面显示在TASK 1的界面之上,也就是说此时显示的有三个界面,从下往上依次分别是:主页的界面、TASK 1的界面、TASK 2的界面,在TASK 2的界面,当用户按返回键时,先退出TASK2,返回到了TASK 1界面,再按返回,则退出TASK 1,返回到了桌面(主页)。
因此,与主页组件BaseTileActivity相邻的任务的属性为返回主页组件,才能保证用户从第一个启动的应用返回时能返回到主页。但在现有技术中,主页升级完成后,应用栈栈底的主页组件BaseTileActivity被系统回收了,不存在了,而与主页组件BaseTileActivity相邻的任务的属性被设置为原来栈底BaseTileActivity的返回属性,即空的主页栈(为了保持android的主页逻辑,在实际应用中设置了空的主页栈),那么此时自然是无法返回的,因此显示黑屏。
图3是一种智能终端主页升级的方法的示意图,该方法的主页升级流程如下:
(1)首先查看目前系统已启动了多少STACK;
(2)遍历每一个STACK并为其启动BaseTileActivity;
(3)然后将启动的BaseTileActivity的Task移动到栈底。
上述方法因为将主页显示相关的BaseTileActivity移动到栈底,所以就不会影响用户操作,这样,用户在退出应用后会露出BaseTileActivity,从而启动主页界面。
上述方法虽然可以解决BaseTileActivity被杀死导致黑屏的问题,但是在主页升级完成后,由于重建BaseTileActivity是先在STACK最顶端(用户可见)启动,然后马上移动到栈底(用户不可见),会导致电视端屏幕闪烁一次。
为了解决上述方法中主页升级导致屏幕闪烁一次的问题,实现用户无感知的主页升级,提升用户体验,提出了本申请的方案。
所述方法具体可以包括如下步骤:
步骤101,安装所述主页组件的更新安装包,得到更新后的主页组件;
智能终端可以通过有线或无线的方式,从本地或服务器端获取主页组件的更新安装包。
智能终端安装更新安装包,就可以得到更新后的主页组件。需要说明的是,因为主页是一个APK(AndroidPackage,Android安装包),所以在主页升级的过程中,是不需要重新启动系统的,而且对其它的应用程序也没有影响。
在本发明一种优选实施例中,所述的方法还包括:卸载所述应用栈中的所述主页组件。
具体而言,主页组件BaseTileActivity是主页的一部分,当智能终端安装更新安装包后,原主页已经被更新为更新后的主页了,因此,原主页对应的原主页组件BaseTileActivity也被系统卸载了,而且,在现有技术中,与原主页组件BaseTileActivity相邻的的任务的属性被设置为原来栈底BaseTileActivity的返回属性,即空的主页栈(为了保持android的主页逻辑,在实际应用中设置了空的主页栈)。
步骤102,检测所述智能终端中已启动的应用程序及对应的已启动应用栈;
因为本发明实施例采用的是多栈式应用管理,多栈式应用管理是没有主页栈的,所以,用户启动的应用程序都会添加到应用栈中,通常来说,一个应用程序对应一个独立的应用栈(也就是STACK),但是,也有可能会一个应用栈中有几个应用程序,例如,从应用A直接启动应用B,那么,应用A和应用B就在同一个应用栈中了。
但是不管有多少个应用栈,当主页升级时,每个栈底的主页组件BaseTileActivity都会被卸载,所以在实际应用时,需要查看目前系统启动了多少个应用程序,包括前台运行和后台运行的应用程序,从而确定系统目前已启动的STACK。
步骤103,在所述已启动应用栈的栈底,启动所述更新后的主页组件;
在确定了系统目前已启动的STACK后,就需要在已启动的STACK的栈底启动更新后的主页组件了。
在本发明一种优选实施例中,所述在所述已启动应用栈的栈底,启动所述更新后的主页组件的步骤包括:
为已启动应用栈的栈底添加所述更新后的主页组件;
在已启动应用栈的栈底启动所述更新后的主页组件。
虽然原主页组件被卸载了,但是,原主页组件的容器并没有删除,还是存在的,所以,在应用栈的栈底,将更新后的主页组件添加到原主页组件的容器就可以了。
具体而言,TileTransitionManager接收到主页更新安装完成的通知,先遍历所有stack,再调用ActivityStackUtils为每个应用栈添加BaseTileActivity,接着,调用ActivityStackSupervisor启动Activity的方法来启动BaseTileActivity。其中,TileTransitionManager为切换应用管理器,负责启动应用,ActivityStackUtils为stack工具类,负责处理activity和stack事件,ActivityStackSupervisor为stack管理器,负责管理stack,和每一个stack中的activity。
在本发明一种优选实施例中,所述在已启动应用栈的栈底启动所述更新后的主页组件的步骤包括:
判断所述更新后的主页组件的启动模式是否为singleTASK或singleInstance;
若否,则在startActivity()的intent中增加Intent.FLAG_ACTIVITY_NEW_DOCUMENT;所述startActivity用于启动所述更新后的主页组件;
采用所述Intent.FLAG_ACTIVITY_NEW_DOCUMENT与ActivityOptions.makeTaskLaunchBehind()在已启动应用栈的栈底启动所述更新后的主页组件。
正常情况下,创建activity task的时候,会在stack中的task列表的最顶部添加该task,然后调用WindowManager的moveTaskToTop()将此activity移动到栈顶并显示出来,然后将焦点设置给该activity,这样用户就可以交互该Activity。从用户的角度来看,一个Activity通常就是一个单独的屏幕,那么,添加的Activity默认被放置在应用栈的栈顶且被推送至前台显示,这样就会出现一个问题,即,用户正在观看的界面会被新创建的主页界面覆盖。所以,为了解决这个问题,需要在添加主页组件时将其设置为不可见。因此,在本发明实施例中,会先判断更新后的主页组件的启动模式是否为singleTASK或singleInstance,如果不是,则在startActivity()(startActivity()是一个方法,使用该方法可以启动Activity)的intent中增加flag,flag为:Intent.FLAG_ACTIVITY_NEW_DOCUMENT,该flag与ActivityOptions.makeTASKLaunchBehind()配合使用可以使得更新后的主页组件不会被移动到前台与用户交互,之后不会调用WindowManager的moveTaskToTop,这样该activity不会被移动到前台与用户交互,所以该应用就不会显示出来了,实现了在栈底启动更新后的主页组件,而又不被用户感知的目的。
步骤104,将与所述更新后的主页组件相邻的任务的属性修改为返回所述更新后的主页组件。
具体而言,由于主页本身的特殊性,在主页升级过程,应用栈中与主页组件相邻的任务的属性被系统框架更改为HOME_ACTIVITY_TYPE,这会导致应用程序的返回顺序出现错乱。
在本发明一种优选实施例中,所述将与主页组件相邻的任务的属性修改为返回所述更新后的主页组件的步骤包括:
将所述与所述更新后的主页组件相邻的任务的属性从HOME_ACTIVITY_TYPE更改为APPLICATION_ACTIVITY_TYPE。
这样,与更新后的主页组件相邻的任务的属性就不再是返回已被卸载的原主页组件了,而是返回到新的主页组件,因此也就不会出现黑屏的情况了。
在本发明实施例中,智能终端安装有一个或多个应用程序,所述一个或多个应用程序分别具有对应的应用栈,所述应用栈包括任务列表,和与所述主页对应的主页组件,其中,所述主页组件在所述应用栈栈底,任务列表中与主页组件相邻的任务的属性为返回所述主页组件;在智能终端主页升级的过程中,先获取所述主页组件的更新安装包,再安装所述更新安装包,得到更新后的主页组件,然后检测所述智能终端中已启动的应用程序及对应的已启动应用栈,接着在所述已启动应用栈的栈底,启动所述更新后的主页组件,最后,将与所述更新后的主页组件相邻的任务的属性修改为返回所述更新后的主页组件。从而解决了主页更新安装完成后,与更新后的主页组件相邻的任务无法返回主页导致黑屏的问题了。
而且,本申请在更新主页组件时将主页组件设置为用户不可见,这样用户正在操作其它应用,或者正在观看视频时,主页升级完成,栈底的更新后的主页组件BaseTileActivity也不会显示出来,不会影响用户操作其它应用或者观看视频,提升了用户体验。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图4,示出了本发明的一种智能终端主页升级的装置实施例的结构框图,所述智能终端安装有一个或多个应用程序,所述一个或多个应用程序分别具有对应的应用栈,所述应用栈包括任务列表和与主页对应的主页组件,其中,所述主页组件在所述应用栈栈底,任务列表中与主页组件相邻的任务的属性为返回所述主页组件;具体可以包括如下模块:
获取模块401,用于安装所述主页组件的更新安装包,得到更新后的主页组件;
检测模块402,用于检测所述智能终端中已启动的应用程序及对应的已启动应用栈;
启动模块403,用于在所述已启动应用栈的栈底,启动所述更新后的主页组件;
修改模块404,用于将与所述更新后的主页组件相邻的任务的属性修改为返回所述更新后的主页组件。
在本发明一种优选实施例中,所述启动模块包括:
主页组件添加子模块,用于为已启动应用栈的栈底添加所述更新后的主页组件;
主页组件启动子模块,用于在已启动应用栈的栈底启动所述更新后的主页组件。
在本发明一种优选实施例中,还包括:
卸载模块,用于卸载所述应用栈中的所述主页组件。
在本发明一种优选实施例中,所述启动模块还包括:
判断子模块,用于判断所述更新后的主页组件的启动模式是否为singleTASK或singleInstance;
所述主页组件添加子模块,还用于在startActivity()的intent中增加Intent.FLAG_ACTIVITY_NEW_DOCUMENT;所述startActivity用于启动所述更新后的主页组件;
主页组件启动子模块,还用于采用所述Intent.FLAG_ACTIVITY_NEW_DOCUMENT与ActivityOptions.makeTaskLaunchBehind()在已启动应用栈的栈底启动所述更新后的主页组件。
在本发明一种优选实施例中,所述修改模块包括:
属性修改子模块,用于将所述与所述更新后的主页组件相邻的任务的属性从HOME_ACTIVITY_TYPE更改为APPLICATION_ACTIVITY_TYPE。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种智能终端主页升级的方法和一种智能终端主页升级的装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种智能终端主页升级的方法,其特征在于,所述智能终端安装有一个或多个应用程序,所述一个或多个应用程序分别具有对应的应用栈,所述应用栈包括任务列表和与主页对应的主页组件,其中,所述主页组件在所述应用栈栈底,任务列表中与主页组件相邻的任务的属性为返回所述主页组件;所述方法包括:
安装所述主页组件的更新安装包,得到更新后的主页组件;
检测所述智能终端中已启动的应用程序及对应的已启动应用栈;
在所述已启动应用栈的栈底,启动所述更新后的主页组件;
将与所述更新后的主页组件相邻的任务的属性修改为返回所述更新后的主页组件。
2.根据权利要求1所述的方法,其特征在于,所述在所述已启动应用栈的栈底,启动所述更新后的主页组件的步骤包括:
为已启动应用栈的栈底添加所述更新后的主页组件;
在已启动应用栈的栈底启动所述更新后的主页组件。
3.根据权利要求1或2所述的方法,其特征在于,在所述检测所述智能终端中已启动的应用程序的步骤之前,还包括:
卸载所述应用栈中的所述主页组件。
4.根据权利要求2所述的方法,其特征在于,所述在已启动应用栈的栈底启动所述更新后的主页组件的步骤包括:
判断所述更新后的主页组件的启动模式是否为singleTASK或singleInstance;
若否,则在startActivity()的intent中增加Intent.FLAG_ACTIVITY_NEW_DOCUMENT;所述startActivity用于启动所述更新后的主页组件;
采用所述Intent.FLAG_ACTIVITY_NEW_DOCUMENT与ActivityOptions.makeTaskLaunchBehind()在已启动应用栈的栈底启动所述更新后的主页组件。
5.根据权利要求1所述的方法,其特征在于,所述将与所述更新后的主页组件相邻的任务的属性修改为返回所述更新后的主页组件的步骤包括:
将所述与所述更新后的主页组件相邻的任务的属性从HOME_ACTIVITY_TYPE更改为APPLICATION_ACTIVITY_TYPE。
6.一种智能终端主页升级的装置,其特征在于,所述智能终端安装有一个或多个应用程序,所述一个或多个应用程序分别具有对应的应用栈,所述应用栈包括任务列表和与主页对应的主页组件,其中,所述主页组件在所述应用栈栈底,任务列表中与主页组件相邻的任务的属性为返回所述主页组件;所述装置包括:
获取模块,用于安装所述主页组件的更新安装包,得到更新后的主页组件;
检测模块,用于检测所述智能终端中已启动的应用程序及对应的已启动应用栈;
启动模块,用于在所述已启动应用栈的栈底,启动所述更新后的主页组件;
修改模块,用于将与所述更新后的主页组件相邻的任务的属性修改为返回所述更新后的主页组件。
7.根据权利要求6所述的装置,其特征在于,所述启动模块包括:
主页组件添加子模块,用于为已启动应用栈的栈底添加所述更新后的主页组件;
主页组件启动子模块,用于在已启动应用栈的栈底启动所述更新后的主页组件。
8.根据权利要求6或7所述的装置,其特征在于,还包括:
卸载模块,用于卸载所述应用栈中的所述主页组件。
9.根据权利要求7所述的装置,其特征在于,所述启动模块还包括:
判断子模块,用于判断所述更新后的主页组件的启动模式是否为singleTASK或singleInstance;
所述主页组件添加子模块,还用于在startActivity()的intent中增加Intent.FLAG_ACTIVITY_NEW_DOCUMENT;所述startActivity用于启动所述更新后的主页组件;
主页组件启动子模块,还用于采用所述Intent.FLAG_ACTIVITY_NEW_DOCUMENT与ActivityOptions.makeTaskLaunchBehind()在已启动应用栈的栈底启动所述更新后的主页组件。
10.根据权利要求6所述的装置,其特征在于,所述修改模块包括:
属性修改子模块,用于将所述与所述更新后的主页组件相邻的任务的属性从HOME_ACTIVITY_TYPE更改为APPLICATION_ACTIVITY_TYPE。
CN201810027765.2A 2018-01-11 2018-01-11 一种智能终端主页升级的方法和装置 Active CN108363582B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810027765.2A CN108363582B (zh) 2018-01-11 2018-01-11 一种智能终端主页升级的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810027765.2A CN108363582B (zh) 2018-01-11 2018-01-11 一种智能终端主页升级的方法和装置

Publications (2)

Publication Number Publication Date
CN108363582A true CN108363582A (zh) 2018-08-03
CN108363582B CN108363582B (zh) 2021-08-20

Family

ID=63011049

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810027765.2A Active CN108363582B (zh) 2018-01-11 2018-01-11 一种智能终端主页升级的方法和装置

Country Status (1)

Country Link
CN (1) CN108363582B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111901686A (zh) * 2020-08-03 2020-11-06 海信视像科技股份有限公司 保持用户界面堆栈正常展示的方法及显示设备
CN113965791A (zh) * 2021-09-14 2022-01-21 海信视像科技股份有限公司 悬浮窗口的返回方法和显示设备
CN113965791B (zh) * 2021-09-14 2024-05-24 海信视像科技股份有限公司 悬浮窗口的返回方法和显示设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103870747A (zh) * 2014-03-31 2014-06-18 可牛网络技术(北京)有限公司 一种应用程序的监控及处理方法及装置
CN105516767A (zh) * 2015-12-01 2016-04-20 海信集团有限公司 智能电视及其应用切换方法
US20160203021A1 (en) * 2015-01-08 2016-07-14 Hand Held Products, Inc. Stack handling using multiple primary user interfaces

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103870747A (zh) * 2014-03-31 2014-06-18 可牛网络技术(北京)有限公司 一种应用程序的监控及处理方法及装置
US20160203021A1 (en) * 2015-01-08 2016-07-14 Hand Held Products, Inc. Stack handling using multiple primary user interfaces
CN105516767A (zh) * 2015-12-01 2016-04-20 海信集团有限公司 智能电视及其应用切换方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111901686A (zh) * 2020-08-03 2020-11-06 海信视像科技股份有限公司 保持用户界面堆栈正常展示的方法及显示设备
CN111901686B (zh) * 2020-08-03 2022-04-08 海信视像科技股份有限公司 保持用户界面堆栈正常展示的方法及显示设备
CN113965791A (zh) * 2021-09-14 2022-01-21 海信视像科技股份有限公司 悬浮窗口的返回方法和显示设备
CN113965791B (zh) * 2021-09-14 2024-05-24 海信视像科技股份有限公司 悬浮窗口的返回方法和显示设备

Also Published As

Publication number Publication date
CN108363582B (zh) 2021-08-20

Similar Documents

Publication Publication Date Title
US7190951B2 (en) Dynamic loading and creation of functional objects in a wireless device
JP2001249907A (ja) 起動処理方式
CN104572054B (zh) 一种能力调用方法和设备
CN106648869A (zh) 一种智能终端应用切换方法
CN109391688A (zh) 云计算系统中镜像文件的获取方法和装置
CN109582385A (zh) 应用程序启动方法和装置、存储介质及电子设备
CN108055320A (zh) 资源下载的处理方法、终端设备及计算机可读存储介质
CN106897318A (zh) 移动终端设备上应用页面的展示方法及装置
CN109271211A (zh) 应用程序的分身方法、装置、设备和介质
CN106502717A (zh) 应用程序运行方法及装置
CN113448651B (zh) 一种应用单例功能的实现方法和装置
CN113101670B (zh) 一种版本切换方法及装置
CN110750284A (zh) 一种应用快速启动方法、终端及计算机可读存储介质
CN102984350A (zh) 一种安卓操作系统移动终端里自定义主题的切换方法和装置
CN108646577B (zh) 一种客户端运行管理方法及客户端
CN104598309A (zh) 基于os虚拟化的多模式os的系统和其创建、切换方法
CN113448650A (zh) 直播功能插件加载方法、装置、设备及存储介质
CN108363582A (zh) 一种智能终端主页升级的方法和装置
US20140325535A1 (en) Method of switching desktop subjects of mobile terminal and its switching apparatus
CN104572303A (zh) 应用资源管理及调用装置、方法及应用资源管理系统
CN109688180A (zh) 一种基于镜像的云服务软件升级方法和装置
CN109471714A (zh) 平台部署方法、装置、设备及储存介质
CN109254805A (zh) 一种应用自启动方法、终端装置及可读存储介质
US9225818B2 (en) Mobile terminal
US11425203B2 (en) Commissioning a virtualized network function

Legal Events

Date Code Title Description
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 266100, No. 218, Bay Road, Qingdao economic and Technological Development Zone, Shandong

Applicant after: Hisense Video Technology Co., Ltd

Address before: 266555 Qingdao economic and Technological Development Zone, Shandong, Hong Kong Road, No. 218

Applicant before: HISENSE ELECTRIC Co.,Ltd.

GR01 Patent grant
GR01 Patent grant