CN109857537B - 后台服务启动方法、装置、介质及电子设备 - Google Patents
后台服务启动方法、装置、介质及电子设备 Download PDFInfo
- Publication number
- CN109857537B CN109857537B CN201910167279.5A CN201910167279A CN109857537B CN 109857537 B CN109857537 B CN 109857537B CN 201910167279 A CN201910167279 A CN 201910167279A CN 109857537 B CN109857537 B CN 109857537B
- Authority
- CN
- China
- Prior art keywords
- page component
- background service
- proxy
- application program
- starting
- 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.)
- Active
Links
Images
Landscapes
- Stored Programmes (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明的实施例提供了一种后台服务启动方法、装置、介质及电子设备,涉及计算机技术领域。该方法包括:在监听到应用程序被切换至后台运行时,获取所述应用程序需要启动的目标后台服务;启动一非显性显示的页面组件作为代理页面组件,并将所述目标后台服务与所述代理页面组件绑定;通过所述代理页面组件启动所述目标后台服务。本发明实施例的技术方案能够保证应用程序被切换至后台运行时不禁止对应的后台服务,提高应用程序对应操作***的兼容性,提升用户的使用体验。
Description
技术领域
本发明的实施例涉及计算机技术领域,更具体地,本发明的实施例涉及后台服务启动方法、后台服务启动装置、计算机可读存储介质以及电子设备。
背景技术
本部分旨在为权利要求书中陈述的本发明的实施例提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
随着科学技术的发展,安卓(Android)操作***因其强大的功能以及简便的操作越来越受到人们的欢迎,安卓操作***的版本也不断随着科学技术的进步而更新。安卓操作***的应用程序开发中需要使用后台服务(Service),后台服务作为一种后台运行但没有交互界面展示的服务是应用程序运行不可缺少的,例如应用程序通过后台服务处理一些逻辑计算,提供UI的数据支持等。
目前发布的安卓(Android)操作***8.0版本中,***禁止应用程序被切换至后台运行时启动后台服务。
发明内容
但是,目前开发的应用程序在切换至后台运行时大都需要启动后台服务,而且用户也习惯将应用程序在前台与后台之间进行切换使用。
因此发布的安卓操作***8.0版本及以上版本,导致许多应用程序适配安卓操作***8.0版本后,在被切换至后台运行时后台服务无法启动或者直接产生应用程序崩溃的问题,降低了用户的使用体验。
为此,非常需要一种改进的后台服务启动方法,以使得适配安卓操作***8.0版本及以上版本的应用程序能够在被切换至后台运行时启动后台服务。
在本上下文中,本发明的实施例期望提供一种后台服务启动方法、后台服务启动装置、计算机可读存储介质以及电子设备。
在本发明实施例的第一方面中,提供了一种后台服务启动方法,包括:在监听到应用程序被切换至后台运行时,获取所述应用程序需要启动的目标后台服务;启动一非显性显示的页面组件作为代理页面组件,并将所述目标后台服务与所述代理页面组件绑定;通过所述代理页面组件启动所述目标后台服务。
在本发明的一些实施例中,基于前述方案,在监听到应用程序被切换至后台运行时,获取所述应用程序需要启动的目标后台服务之前还包括:获取所述应用程序的页面组件对应的状态信息,以根据所述状态信息记录所述页面组件的当前状态;将所述状态信息保存到目标存储区域。
在本发明的一些实施例中,基于前述方案,所述方法还包括:在监听到应用程序被切换至前台运行时,获取所述应用程序的页面组件对应的状态信息;基于所述状态信息启动所述页面组件,以通过所述页面组件替换所述代理页面组件;通过所述页面组件启动所述目标后台服务。
在本发明的一些实施例中,基于前述方案,启动一非显性显示的页面组件作为代理页面组件包括:通过预设规则确定所述代理页面组件的主题;根据所述代理页面组件的主题创建所述代理页面组件。
在本发明的一些实施例中,基于前述方案,通过预设规则确定所述代理页面组件的主题包括:将所述代理页面组件的背景、标题栏、导航栏以及任务栏图标进行透明化处理。
在本发明的一些实施例中,基于前述方案,所述通过预设规则确定所述代理页面组件的主题还包括:将所述代理页面组件进行隐藏处理,以使终端设备不记录所述代理页面组件对应的状态信息。
在本发明的一些实施例中,基于前述方案,并将所述目标后台服务与所述代理页面组件绑定包括:获取所述目标后台服务的标识信息;其中,所述标识信息包括所述目标后台服务的注册标识以及版本信息;基于所述标识信息,将所述目标后台服务与所述代理页面组件进行绑定。
在本发明实施例的第二方面中,提供了一种后台服务启动装置,包括:后台服务获取单元,用于在监听到应用程序被切换至后台运行时,获取所述应用程序需要启动的目标后台服务;后台服务绑定单元,用于启动一非显性显示的页面组件作为代理页面组件,并将所述目标后台服务与所述代理页面组件绑定;后台服务启动单元,用于通过所述代理页面组件启动所述目标后台服务。
在本发明的一些实施例中,基于前述方案,后台服务获取单元被配置为:获取所述应用程序的页面组件对应的状态信息,以根据所述状态信息记录所述页面组件的当前状态;将所述状态信息保存到目标存储区域。
在本发明的一些实施例中,基于前述方案,后台服务启动装置还包括页面组件恢复单元,页面组件恢复单元被配置为:在监听到应用程序被切换至前台运行时,获取所述应用程序的页面组件对应的状态信息;基于所述状态信息启动所述页面组件,以通过所述页面组件替换所述代理页面组件;通过所述页面组件启动所述目标后台服务。
在本发明的一些实施例中,基于前述方案,后台服务绑定单元包括:主题确定单元,用于通过预设规则确定所述代理页面组件的主题;代理页面组件创建单元,用于根据所述代理页面组件的主题创建所述代理页面组件。
在本发明的一些实施例中,基于前述方案,主题确定单元被配置为:将所述代理页面组件的背景、标题栏、导航栏以及任务栏图标进行透明化处理。
在本发明的一些实施例中,基于前述方案,主题确定单元被配置为:将所述代理页面组件进行隐藏处理,以使终端设备不记录所述代理页面组件对应的状态信息。
在本发明的一些实施例中,基于前述方案,后台服务绑定单元被配置为:获取所述目标后台服务的标识信息;其中,所述标识信息包括所述目标后台服务的注册标识以及版本信息;基于所述标识信息,将所述目标后台服务与所述代理页面组件进行绑定。
在本发明实施例的第三方面中,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述第一方面所述的后台服务启动方法。
在本发明实施例的第四方面中,提供了一种电子设备,包括:处理器;以及存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现如上述第一方面所述的后台服务启动方法。
根据本发明实施例的技术方案,一方面,通过启动一代理页面组件替代应用程序被切换至后台运行之前的页面组件来启动后台服务,能够使应用程序在被切换至后台运行时启动后台服务,避免应用程序崩溃的问题;另一方面,通过启动一非显性显示的页面组件作为代理页面组件,并根据该代理页面组件启动后台服务,能够使应用程序在后台时启动服务并且不影响用户的正常使用,提高用户的使用体验。
附图说明
通过参考附图阅读下文的详细描述,本发明示例性实施例的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施例,其中:
图1示意性示出了根据本发明的一些实施例的示例性应用场景的示意框图;
图2示意性地示出了根据本发明的一些实施例的后台服务启动方法的流程示意图;
图3示意性地示出了根据本发明的一些实施例的后台服务启动的流程示意图;
图4示意性地示出了根据本发明的一些实施例的应用程序切换至前台运行的流程示意图;
图5示意性地示出了根据本发明的一些实施例的设置代理页面组件的流程示意图;
图6示意性地示出了根据本发明的一些实施例的后台服务启动装置的示意框图;
图7示意性地示出了根据本发明的示例实施例的存储介质的示意图;以及
图8示意性地示出了根据发明的示例实施例的电子设备的方框图。
在附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
下面将参考若干示例性实施例来描述本发明的原理和精神。应当理解,给出这些实施例仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施例是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
本领域技术人员知道,本发明的实施例可以实现为一种***、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
根据本发明的实施例,提出了一种后台服务启动方法、后台服务启动装置、计算机可读存储介质和电子设备。
在本文中,需要理解的是,所涉及的术语页面组件(Activity组件)是指手机操作***,例如安卓(Android)操作***中前台UI(User Interface,用户界面交互)界面的载体。***后台服务(Service)是指在终端设备后台运行的、不可交互的服务,通过页面组件才能启动。此外,附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。
下面参考本发明的若干代表性实施例,详细阐释本发明的原理和精神。
发明概述
本发明人发现,目前发布的安卓(Android)操作***8.0版本中,***禁止应用程序被切换至后台运行时启动后台服务,导致许多应用程序适配安卓操作***8.0版本后,在被切换至后台运行时后台服务无法启动或者直接产生应用程序崩溃的问题,降低了用户的使用体验。
基于上述内容,本发明的基本思想在于,在监听到应用程序被切换至后台运行时,获取应用程序需要启动的目标后台服务,然后启动一非显性显示的页面组件作为代理页面组件,并将目标后台服务与代理页面组件绑定,以通过代理页面组件启动目标后台服务。通过非显性显示的页面组件作为代理页面组件来启动应用程序的目标后台服务,不仅能够使应用程序在被切换至后台运行时启动后台服务,避免应用程序崩溃的问题;而且非显性显示的代理页面组件能够使应用程序在后台时启动服务且不影响用户的正常使用,提高用户的使用体验。
在介绍了本发明的基本原理之后,下面具体介绍本发明的各种非限制性实施例。
应用场景总览
首先参考图1,图1示出了根据本发明的一些实施例的示例性应用场景的示意框图。如图1所示,该后台服务启动***可以包括:代理页面组件生成单元110以及后台服务启动单元120。其中,代理页面组件生成单元110用于在监听到应用程序被切换至后台运行时,启动一非显性显示的页面组件作为代理页面组件;后台服务启动单元120用于根据代理页面组件生成单元110生成的代理页面组件绑定应用程序对应的后台服务,并通过代理页面组件启动后台服务。
应该理解的是,图1所示的应用场景仅是本发明的实施例可以在其中得以实现的一个示例,本发明实施例的适用范围不受到该应用场景任何方面的限制。
示例性方法
下面结合图1的应用场景,参考图2来描述根据本发明示例性实施例的后台服务启动方法。需要注意的是,上述应用场景仅是为了便于理解本发明的精神和原理而示出,本发明的实施例在此方面不受任何限制。相反,本发明的实施例可以应用于适用的任何场景。
图2示意性地示出了根据本发明的一些实施例的后台服务启动方法的流程示意图。
参照图2所示,在步骤S210中,在监听到应用程序被切换至后台运行时,获取应用程序需要启动的目标后台服务。
在示例实施例中,目标后台服务(Service)可以是指安卓***中应用程序在被切换至后台,维持运行应用程序所需要的后台服务,例如目标后台服务可以是网络连接服务,也可以是数据计算服务,当然,目标后台服务也可以是其他后台服务,例如目标后台服务还可以是音频服务,本发明对此不做特殊限定。***在监听到应用程序被切换至后台运行时,对该应用程序的相关模块进行检测以确定应用程序在后台运行时需要的目标后台服务,并获取确定的应用程序需要启动的目标后台服务。
在步骤S220中,启动一非显性显示的页面组件作为代理页面组件,并将目标后台服务与代理页面组件绑定。
在示例实施例中,页面组件(Activity)可以是指一个应用程序组件,提供一个屏幕以使用户可以通过页面组件与应用程序进行交互(也可以认为是安卓操作***中前台UI界面的载体),后台服务需要页面组件才可以启动。代理页面组件(代理Activity)可以是指与原始页面组件功能相同、但不显性显示的页面组件。非显性显示可以是指通过设置代理页面组件的主题,使代理页面组件的相关模块区域不在显示界面(例如终端设备的屏幕)进行呈现,例如设置代理页面组件的背景或者标题栏为透明。***启动一代理页面组件,并将目标后台服务与代理页面组件绑定以使代理页面组件替换页面组件。
具体的,***获取目标后台服务的标识信息,并通过标识信息将目标后台服务与代理页面组件进行绑定。标识信息可以是指目标后台服务的注册标识以及版本信息,通过标识信息将目标后台服务与代理页面组件进行绑定,能够避免由于存在相同服务(例如两个应用程序后台的网络连接服务名称以及运行路径是相同的,但是注册标识以及版本信息是不同的)引起应用程序崩溃的问题,提高启动目标后台服务的成功率,提升用户的使用体验。
在步骤S230中,通过代理页面组件启动目标后台服务。
在示例实施例中,***在检测到应用程序已经切换至后台运行时,通过启动的代理页面组件替代页面组件启动应用程序的后台服务。此时代理页面组件在前台运行,页面组件在保存状态信息之后***可以将其标记为Stopped状态(如果一个页面组件Activity被另外的Activity完全覆盖掉,叫做停止状态Stopped。该Activity依然保持所有状态和成员信息,但是不再可见,且其窗口被隐藏)。
根据图2示例实施例的技术方案,一方面,通过启动一代理页面组件替代应用程序被切换至后台运行之前的页面组件来启动后台服务,能够使应用程序在被切换至后台运行时启动后台服务,避免应用程序崩溃的问题;另一方面,通过启动一非显性显示的页面组件作为代理页面组件,并根据该代理页面组件启动后台服务,能够使应用程序在后台时启动服务并且不影响用户的正常使用,提高用户的使用体验。
图3示意性地示出了根据本发明的一些实施例的后台服务启动的流程示意图。
参考图3所示,步骤S310,由于安卓***8.0版本及以上版本禁止应用程序在后台运行时启动目标后台服务,因此当***监听到应用程序被切换至后台运行时,启动一非显性显示的代理页面组件;
步骤S320,将在前台运行的代理页面组件与目标后台服务进行绑定,并通过代理页面组件启动目标后台服务。
图4示意性地示出了根据本发明的一些实施例的应用程序切换至前台运行的流程示意图。
参考图4所示,在步骤S410中,在监听到应用程序被切换至前台运行时,获取应用程序的页面组件对应的状态信息。
在示例实施例中,状态信息可以是指应用程序被切换到后台运行前,用户与应用程序的页面组件进行交互的当前状态关联的信息,例如状态信息可以是页面组件关联的统一资源定位符(Uniform Resource Locator,URL),也可以是当前页面组件的UI(UserInterface,用户界面交互)状态信息等关联信息,本发明对此不做特殊限定。
具体的,***在监听到应用程序被切换至后台运行时,还需要获取应用程序的页面组件对应的状态信息,以根据状态信息记录页面组件的当前状态,并将状态信息保存到目标存储区域。目标存储区域可以是指应用程序对应的终端设备的存储单元,例如目标存储区域可以是终端设备的RAM(Random Access Memory,随机存取存储器)。当然,目标存储区域也可以是其他存储单元,例如目标存储区域还可以是快闪存储器(Flash Memory),本发明对此不做特殊限定。
在步骤S420中,基于状态信息启动页面组件,以通过页面组件替换代理页面组件。
在示例实施例中,在监听到应用程序被切换至前台运行时,***可以根据获取的应用程序的页面组件对应的状态信息启动对应的页面组件,例如***通过页面组件关联的统一资源定位符(Uniform Resource Locator,URL),或者当前页面组件的UI(UserInterface,用户界面交互)信息等状态信息启动页面组件(即恢复页面组件在应用程序被切换至后台运行时对应的状态),并根据启动的页面组件替换代理页面组件,即此时启动的页面组件在前台运行,代理页面组件可以被***标记为Killed状态(终止进程,即将代理Activity在终端设备对应的内存中进行删除)。
在步骤S430中,通过页面组件启动目标后台服务。
在示例实施例中,***通过启动的页面组件与目标后台服务进行绑定,并通过页面组件启动目标后台服务,以使应用程序恢复被切换至后台运行时的状态。同样地,***获取目标后台服务对应的标识信息,并根据标识信息将页面组件与目标后台服务进行绑定,并通过页面组件启动目标后台服务。
图5示意性地示出了根据本发明的一些实施例的设置代理页面组件的流程示意图。
参考图5所示,在步骤S510中,通过预设规则确定代理页面组件的主题。
在示例实施例中,预设规则可以是指开发人员根据代理页面组件需要实现的功能而预设的设置条件,例如预设规则可以是使代理页面组件显示透明化的相关设置条件,也可以是记录用户操作轨迹的设置条件,本发明对此不做作特殊限定。主题可以是指安卓工程中指定页面组件的视图以及窗口等模块的外观和格式的一组属性集合,例如代理页面组件的主题可以指定代理页面组件的字体大小、背景颜色等属性。
具体的,通过设置代理页面组件的主题将代理页面组件的背景、标题栏、导航栏以及任务栏图标等属性信息进行完全透明化处理。举例而言,安卓工程中的具体实现可以表现为:
<style name="theme_transparent">
<item name="android:windowIsTranslucent">true</item>(设置页面组件的窗口为透明)
<item name="android:windowBackground">@null</item>(设置页面组件的背景为透明)
<itemname="android:windowContentOverlay">@null</item>
<item name="android:windowNoTitle">true</item>
<item name="android:backgroundDimEnabled">false</item>
<item name="windowActionBar">false</item>(设置页面组件的导航栏为透明)
<item name="windowNoTitle">true</item>(设置页面组件的标题栏为透明)
</style>
进一步的,将代理页面组件进行隐藏处理,以使终端设备不记录代理页面组件对应的状态信息。隐藏处理可以是指安卓工程中设置主题使安卓***不记录页面组件的状态信息(这里也可以认为是用户历史操作轨迹,即用户进行返回操作时不会回到代理Activity对应的UI,而是返回到应用程序被切换至后台运行前的Activity对应的UI)。举例而言,安卓工程中的具体实现可以表现为:
<activity
android:name="com.netease.***.ServiceProxyActivity"
android:theme="@style/biz_transparent"
android:launchMode="singleInstance"
android:excludeFromRecents="true"/>
需要说明的是,本示例实施例中所示出的安卓工程中的程序代码仅是示意性说明,并不应对本公开造成任何限制。
在步骤S520中,根据所述代理页面组件的主题创建所述代理页面组件。
在示例实施例中,***根据预设规则确定代理页面组件的主题,并通过代理页面组件的主题创建代理页面组件,以使代理页面组件非显性显示在前台。
需要说明的是,尽管在附图中以特定顺序描述了本发明中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
示例性装置
在介绍了本发明示例性实施例的方法之后,接下来,参考图6对本发明示例性实施例的后台服务启动装置。
在图6中,后台服务启动装置600可以包括:后台服务获取单元610、后台服务绑定单元620以及后台服务启动单元630。其中:后台服务获取单元610用于在监听到应用程序被切换至后台运行时,获取所述应用程序需要启动的目标后台服务;后台服务绑定单元620用于启动一非显性显示的页面组件作为代理页面组件,并将所述目标后台服务与所述代理页面组件绑定;后台服务启动单元630用于通过所述代理页面组件启动所述目标后台服务。
在本发明的一些实施例中,基于前述方案,后台服务获取单元610被配置为:获取所述应用程序的页面组件对应的状态信息,以根据所述状态信息记录所述页面组件的当前状态;将所述状态信息保存到目标存储区域。
在本发明的一些实施例中,基于前述方案,后台服务启动装置600还包括页面组件恢复单元,页面组件恢复单元被配置为:在监听到应用程序被切换至前台运行时,获取所述应用程序的页面组件对应的状态信息;基于所述状态信息启动所述页面组件,以通过所述页面组件替换所述代理页面组件;通过所述页面组件启动所述目标后台服务。
在本发明的一些实施例中,基于前述方案,后台服务绑定单元620包括:主题确定单元,用于通过预设规则确定所述代理页面组件的主题;代理页面组件创建单元,用于根据所述代理页面组件的主题创建所述代理页面组件。
在本发明的一些实施例中,基于前述方案,主题确定单元被配置为:将所述代理页面组件的背景、标题栏、导航栏以及任务栏图标进行透明化处理。
在本发明的一些实施例中,基于前述方案,主题确定单元被配置为:将所述代理页面组件进行隐藏处理,以使终端设备不记录所述代理页面组件对应的状态信息。
在本发明的一些实施例中,基于前述方案,后台服务绑定单元620被配置为:获取所述目标后台服务的标识信息;其中,所述标识信息包括所述目标后台服务的注册标识以及版本信息;基于所述标识信息,将所述目标后台服务与所述代理页面组件进行绑定。
示例性介质
在介绍了本发明示例性实施例的装置之后,接下来,对本发明示例性实施例的存储介质进行说明。
在一些实施例中,本发明的各个方面还可以实现为一种介质,其上存储有程序代码,当所述程序代码被设备的处理器执行时用于实现本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施例的后台服务启动方法中的步骤。
例如,所述设备的处理器执行所述程序代码时可以实现如图2中所述的步骤S210,在监听到应用程序被切换至后台运行时,获取所述应用程序需要启动的目标后台服务;步骤S220,启动一非显性显示的页面组件作为代理页面组件,并将所述目标后台服务与所述代理页面组件绑定;步骤S230通过所述代理页面组件启动所述目标后台服务。
参考图7所示,描述了根据本发明的实施例的用于实现上述后台服务启动方法的程序产品700,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备。
示例性计算设备
在介绍了本发明示例性实施例的后台服务启动方法、后台服务启动装置以及存储介质之后,接下来,介绍根据本发明的示例性实施例的电子设备。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为***、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施例、完全的软件实施例(包括固件、微代码等),或硬件和软件方面结合的实施例,这里可以统称为“电路”、“模块”或“***”。
在一些可能的实施例中,根据本发明的电子设备可以至少包括至少一个处理单元、以及至少一个存储单元。其中,所述存储单元存储有程序代码,当所述程序代码被所述处理单元执行时,使得所述处理单元执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施例的数据处理方法中的步骤。例如,所述处理单元可以执行如图2中所示的步骤S210,在监听到应用程序被切换至后台运行时,获取所述应用程序需要启动的目标后台服务;步骤S220,启动一非显性显示的页面组件作为代理页面组件,并将所述目标后台服务与所述代理页面组件绑定;步骤S230通过所述代理页面组件启动所述目标后台服务。
下面参照图8来描述根据本发明的示例实施例的电子设备800。图8所示的电子设备800仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图8所示,电子设备800以通用计算设备的形式表现。电子设备800的组件可以包括但不限于:上述至少一个处理单元801、上述至少一个存储单元802、连接不同***组件(包括存储单元802和处理单元801)的总线803、显示单元807。
总线803包括数据总线、控制总线和地址总线。
存储单元802可以包括易失性存储器形式的可读介质,例如随机存取存储器(RAM)8021和/或高速缓存存储器8022,还可以进一步包括只读存储器(ROM)8023。
存储单元802还可以包括具有一组(至少一个)程序模块8024的程序/实用工具8025,这样的程序模块8024包括但不限于:操作***、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
电子设备800也可以与一个或多个外部设备804(例如键盘、指向设备、蓝牙设备等)通信,这种通信可以通过输入/输出(I/O)接口805进行。并且,电子设备800还可以通过网络适配器806与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器806通过总线803与电子设备800的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备800使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID***、磁带驱动器以及数据备份存储***等。
应当注意,尽管在上文详细描述中提及了后台服务启动装置的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施例,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。
此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
虽然已经参考若干具体实施例描述了本发明的精神和原理,但是应该理解,本发明并不限于所公开的具体实施例,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。
Claims (12)
1.一种后台服务启动方法,其特征在于,包括:
在监听到应用程序被切换至后台运行时,获取所述应用程序需要启动的目标后台服务;
启动一非显性显示的页面组件作为代理页面组件,并将所述目标后台服务与所述代理页面组件绑定;
通过所述代理页面组件启动所述目标后台服务;
其中,在监听到应用程序被切换至后台运行时,获取所述应用程序需要启动的目标后台服务之前,所述方法还包括:
获取所述应用程序的页面组件对应的状态信息,以根据所述状态信息记录所述页面组件的当前状态;
将所述状态信息保存到目标存储区域;以及
在监听到应用程序被切换至前台运行时,获取所述应用程序的页面组件对应的状态信息;
基于所述状态信息启动所述页面组件,以通过所述页面组件替换所述代理页面组件;
通过所述页面组件启动所述目标后台服务。
2.根据权利要求1所述的后台服务启动方法,其特征在于,启动一非显性显示的页面组件作为代理页面组件包括:
通过预设规则确定所述代理页面组件的主题;
根据所述代理页面组件的主题创建所述代理页面组件。
3.根据权利要求2所述的后台服务启动方法,其特征在于,通过预设规则确定所述代理页面组件的主题包括:
将所述代理页面组件的背景、标题栏、导航栏以及任务栏图标进行透明化处理。
4.根据权利要求2所述的后台服务启动方法,其特征在于,所述通过预设规则确定所述代理页面组件的主题还包括:
将所述代理页面组件进行隐藏处理,以使终端设备不记录所述代理页面组件对应的状态信息。
5.根据权利要求1所述的后台服务启动方法,其特征在于,并将所述目标后台服务与所述代理页面组件绑定包括:
获取所述目标后台服务的标识信息;其中,所述标识信息包括所述目标后台服务的注册标识以及版本信息;
基于所述标识信息,将所述目标后台服务与所述代理页面组件进行绑定。
6.一种后台服务启动装置,其特征在于,包括:
后台服务获取单元,用于在监听到应用程序被切换至后台运行时,获取所述应用程序需要启动的目标后台服务;
后台服务绑定单元,用于启动一非显性显示的页面组件作为代理页面组件,并将所述目标后台服务与所述代理页面组件绑定;
后台服务启动单元,用于通过所述代理页面组件启动所述目标后台服务;
其中,所述后台服务获取单元被配置为:
获取所述应用程序的页面组件对应的状态信息,以根据所述状态信息记录所述页面组件的当前状态;
将所述状态信息保存到目标存储区域;以及
所述后台服务启动装置还包括页面组件恢复单元,所述页面组件恢复单元被配置为:
在监听到应用程序被切换至前台运行时,获取所述应用程序的页面组件对应的状态信息;
基于所述状态信息启动所述页面组件,以通过所述页面组件替换所述代理页面组件;
通过所述页面组件启动所述目标后台服务。
7.根据权利要求6所述的后台服务启动装置,其特征在于,所述后台服务绑定单元包括:
主题确定单元,用于通过预设规则确定所述代理页面组件的主题;
代理页面组件创建单元,用于根据所述代理页面组件的主题创建所述代理页面组件。
8.根据权利要求7所述的后台服务启动装置,其特征在于,所述主题确定单元被配置为:
将所述代理页面组件的背景、标题栏、导航栏以及任务栏图标进行透明化处理。
9.根据权利要求7所述的后台服务启动装置,其特征在于,所述主题确定单元被配置为:
将所述代理页面组件进行隐藏处理,以使终端设备不记录所述代理页面组件对应的状态信息。
10.根据权利要求6所述的后台服务启动装置,其特征在于,所述后台服务绑定单元被配置为:
获取所述目标后台服务的标识信息;其中,所述标识信息包括所述目标后台服务的注册标识以及版本信息;
基于所述标识信息,将所述目标后台服务与所述代理页面组件进行绑定。
11.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5中任意一项所述的后台服务启动方法。
12.一种电子设备,其特征在于,包括:
处理器;以及
存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现如权利要求1至5中任意一项所述的后台服务启动方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910167279.5A CN109857537B (zh) | 2019-03-06 | 2019-03-06 | 后台服务启动方法、装置、介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910167279.5A CN109857537B (zh) | 2019-03-06 | 2019-03-06 | 后台服务启动方法、装置、介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109857537A CN109857537A (zh) | 2019-06-07 |
CN109857537B true CN109857537B (zh) | 2021-07-09 |
Family
ID=66900005
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910167279.5A Active CN109857537B (zh) | 2019-03-06 | 2019-03-06 | 后台服务启动方法、装置、介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109857537B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110941344B (zh) * | 2019-12-09 | 2022-03-15 | Oppo广东移动通信有限公司 | 获取注视点数据的方法及相关装置 |
CN112416212B (zh) * | 2020-11-25 | 2023-05-30 | 维沃移动通信有限公司 | 程序访问方法、装置、电子设备和可读存储介质 |
CN112817654A (zh) * | 2021-01-26 | 2021-05-18 | 广州欢网科技有限责任公司 | 应用软件从后台恢复至前台的方法、装置和一种控制器 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107291336A (zh) * | 2017-07-13 | 2017-10-24 | 北京元心科技有限公司 | 多***间应用程序的启动方法、装置及终端设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103914335B (zh) * | 2013-01-05 | 2017-03-22 | ***通信集团公司 | 一种后台服务的调用方法、设备和*** |
CN105095045A (zh) * | 2015-06-12 | 2015-11-25 | 深圳市美贝壳科技有限公司 | Android***的后台服务监控方法及其*** |
CN105138372A (zh) * | 2015-08-27 | 2015-12-09 | 上海斐讯数据通信技术有限公司 | 一种基于Android***的后台服务管控***及方法 |
-
2019
- 2019-03-06 CN CN201910167279.5A patent/CN109857537B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107291336A (zh) * | 2017-07-13 | 2017-10-24 | 北京元心科技有限公司 | 多***间应用程序的启动方法、装置及终端设备 |
Also Published As
Publication number | Publication date |
---|---|
CN109857537A (zh) | 2019-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107172454B (zh) | 一种视频推荐方法、介质、装置和计算设备 | |
CN111198730B (zh) | 子应用程序启动的方法、装置、终端及计算机存储介质 | |
US7051288B2 (en) | Method, system, and product for a java-based desktop to provide window manager services on UNIX | |
CN110113252B (zh) | 一种小程序通知消息的处理方法、设备和计算机存储介质 | |
CN109857537B (zh) | 后台服务启动方法、装置、介质及电子设备 | |
US11334374B2 (en) | Modifying readable and focusable elements on a page during execution of automated scripts | |
CN103345405A (zh) | 应用程序的启动方法、装置和客户端 | |
CN109074278B (zh) | 验证移动应用中的有状态动态链接 | |
CN104685469A (zh) | 用于web应用程序的后台应用程序页面架构 | |
US10831331B2 (en) | Window control for simultaneously running applications | |
WO2014173141A1 (en) | Method of switching desktop subjects of mobile terminal and its switching apparatus | |
CN111954072B (zh) | 一种多媒体播放方法、装置、多媒体播放器和介质 | |
CN113760306B (zh) | 安装软件的方法、装置、电子设备及存储介质 | |
CN110083467B (zh) | 小程序消息的处理方法、设备和计算机存储介质 | |
CN114691273A (zh) | 用户界面返回方法、装置、电子设备和存储介质 | |
CN110083407B (zh) | 小程序中步骤条的实现方法、装置、电子设备及存储介质 | |
US20210026913A1 (en) | Web browser control feature | |
CN103914289A (zh) | 一种桌面应用程序的接入方法和装置 | |
CN113535037A (zh) | 命令行终端交互展示方法、装置、计算机可读介质及设备 | |
CN108228307B (zh) | 应用的显示方法、装置、存储介质及电子设备 | |
CN112579938A (zh) | 一种页面加载方法、装置、存储介质及电子设备 | |
KR101987183B1 (ko) | 프론트-앤드 개발을 지원하는 앱 저작 장치, 앱 저작 도구를 사용한 앱 저작 방법 및 앱 개발 서버 | |
CN112612531A (zh) | 应用程序启动方法、装置、电子设备及存储介质 | |
US20230315499A1 (en) | Simulation of user actions in computer environment | |
CN113590224B (zh) | 服务器的检测方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |