发送关机广播的方法、装置及终端与流程

文档序号:12829433阅读:290来源:国知局
发送关机广播的方法、装置及终端与流程

本发明实施例涉及系统广播技术,尤其涉及一种发送关机广播的方法、装置及终端。



背景技术:

安卓(android)系统是目前应用较为广泛的一种手机等终端的操作系统。android系统中,有很多不同的应用程序,为了在不同的应用程序中快速的进行信息传递,android系统利用广播机制来实现,有消息要通知不同的应用程序时,就通过广播将这个消息发送给不同的应用程序。

android系统在关机时,会发送一个关机广播消息,需要接收关机广播消息的应用程序可以接收到这个广播,然后做一些关机前的处理工作。如果很多应用程序注册了接收关机广播消息,当系统要关机发出关机广播消息时,这些注册接收的应用程序会同时触发关闭,导致系统性能开销非常大,影响关机广播的处理速度。



技术实现要素:

本发明实施例提供一种发送关机广播的方法、装置及终端,可以减少系统性能开销,提高关机广播的处理速度。

第一方面,本发明实施例提供了一种发送关机广播的方法,所述方法包括:

监听系统发出的关机广播消息;

在监听到关机广播消息时,确定接收所述关机广播消息的广播接收者;

确定所述广播接收者接收所述关机广播消息的优先级;

根据所述优先级,将所述关机广播消息发送给对应的广播接收者。

第二方面,本发明实施例还提供了一种发送关机广播的装置,所述装置包括:

关机广播监听模块,用于监听系统发出的关机广播消息;

广播接收者确定模块,用于在监听到关机广播消息时,确定接收所述关机广播消息的广播接收者;

优先级确定模块,用于确定所述广播接收者接收所述关机广播消息的优先级;

关机广播发送模块,用于根据所述优先级,将所述关机广播消息发送给对应的广播接收者。

第三方面,本发明实施例还提供了一种终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

监听系统发出的关机广播消息;

在监听到关机广播消息时,确定接收所述关机广播消息的广播接收者;

确定所述广播接收者接收所述关机广播消息的优先级;

根据所述优先级,将所述关机广播消息发送给对应的广播接收者。

本发明实施例的技术方案,通过在监听到系统发出的关机广播消息时,确定接收所述关机广播消息的广播接收者,确定所述广播接收者接收所述关机广播消息的优先级,根据所述优先级,将所述关机广播消息发送给对应的广播接收者,实现了按照接收关机广播消息的广播接收者的优先级顺序发送关机广播消息给相应的广播接收者,解决了所有同时向所有接收关机广播消息的广播接收者发送关机广播消息导致系统性能大的问题,减少了系统性能开销,提高了关机广播的处理速度。

附图说明

图1是本发明实施例提供的一种发送关机广播的方法的流程图;

图2是本发明一个实施例提供的一种发送关机广播的方法的流程图;

图3是本发明一个实施例提供的一种发送关机广播的方法的流程图;

图4是本发明实施例提供的一种发送关机广播的装置的结构示意图;

图5为本发明实施例提供的一种终端的结构示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。

在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各步骤描述成顺序的处理,但是其中的许多步骤可以被并行地、并发地或者同时实施。此外,各步骤的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。

图1是本发明实施例提供的一种发送关机广播的方法的流程图,本实施例可适用于按照广播接收者的优先级发送关机广播的情况,该方法可以由发送关机广播的装置来执行,其中该装置可由软件和/或硬件实现,该装置可集成于终端中,该终端可以是智能手机、平板电脑等,该方法包括如下步骤:

步骤110,监听系统发出的关机广播消息。

当用户按下终端的电源键进行关机时,系统接收到关机指令,发送相应的关机广播消息。

其中,广播机制本质上是在终端的操作系统中一种组件间的通讯方式,是一种广泛运用在应用程序之间传输消息的机制。例如在终端的安卓系统下,有一些操作完成以后,会发送广播消息。广播消息可以是操作系统中产生的各种各样的事件消息数据,比如说发出一条短信或打出一个电话,都会发送广播,当某个应用程序接收了这个广播时,就可以做出相应的处理。广播发送者可以是系统和应用程序软件。应用程序软件可以是安装于手机等终端的第三方应用软件或者系统自带的应用程序,例如:安装于终端的第三方应用软件可以包括微信客户端、qq客户端、淘宝客户端和支付宝客户端等,系统自带的应用程序可以包括日历、时钟、天气和便签等。广播消息可以是系统广播和应用广播,其中,系统广播可以包括亮屏广播、息屏广播、解锁广播、网络状态变化广播、蓝牙状态变化广播、切换语言广播、切换主题广播等,应用广播可以是由应用程序软件发出的广播。

当用户按下终端的电源键进行关机时,系统接收到关机指令,发送相应的关机广播消息。可以通过终端中的广播管理模块(如activitymanagerservice)监听系统的动态,检测系统是否发出关机广播消息。其中,activitymanagerservice在android系统的广播机制中扮演着广播中心的角色,负责系统中所有广播的注册和发布操作,其中,广播的注册是指应用程序把广播接收器注册到activitymanagerservice的过程。广播的发布包括广播发送者将广播发送到activitymanagerservice,activitymanagerservice接收到这个广播后在自己的注册中心查看有哪些广播接收器订阅了该广播,然后把这个广播逐一发送到这些广播接收器中。在android系统中,监听系统发出的关机广播消息即通过activitymanagerservice来监听系统是否将关机广播消息发送到activitymanagerservice,当通过activitymanagerservice监听到系统将关机广播消息发送到activitymanagerservice时,确定监听到系统发出了关机广播消息。

步骤120,在监听到关机广播消息时,确定接收所述关机广播消息的广播接收者。

在监听到关机广播消息时,通过查询注册了来接收关机广播消息的广播接收器,从而确定接收所述关机广播消息的广播接收者。

示例性的,在android系统中,广播发送者将要发布的广播消息发送到activitymanagerservice,activitymanagerservice接收到广播消息后在注册中心查看有哪些广播接收器订阅了该广播,这时可以确定注册接收该广播消息的广播接收器(即广播接收进程),通过广播接收器可以确定接收该广播消息的广播接收者(应用程序或者系统)。

步骤130,确定所述广播接收者接收所述关机广播消息的优先级。

在确定了关机广播消息的广播接收者后,可以根据广播接收者的重要程度确定所述广播接收者接收所述关机广播消息的优先级,例如,如果广播接收者是系统应用,则确定广播消息的优先级为较高的优先级;如果广播接收者是第三方应用程序,则确定广播消息的优先级为较低的优先级。也可以是将用户当前操作的应用程序接收关机广播消息的优先级设置为最高优先级,便于保存该应用程序的信息。

在一个实施例中,确定所述广播接收者接收所述关机广播消息的优先级,可选包括:

获取预先建立的应用属性与所述优先级的对应关系;

确定所述广播接收者的应用属性;

根据所述应用属性和所述对应关系,确定所述广播接收者接收所述关机广播消息的优先级。

其中,应用属性是在关机阶段接收关机广播消息的应用程序具有的属性,如需要用户编辑的应用、系统基础应用、系统重要应用等,需要用户编辑的应用接收关机广播消息的优先级可以设置的较高些,可以避免丢失用户的重要信息。

可以预先建立接收关机广播消息的广播接收者的应用属性与接收关机广播消息的优先级的对应关系,从而在确定广播接收者接收关机广播消息的优先级时先确定广播接收者的应用属性,根据广播接收者具有的应用属性和所述对应关系,可以确定广播接收者接收关机广播消息的优先级,提高了确定优先级的速度,从而加快了关机广播消息的处理速度。

步骤140,根据所述优先级,将所述关机广播消息发送给对应的广播接收者。

根据所述优先级,将所述关机广播消息按照广播接收者的优先级顺序发送给相应的广播接收者。即先将关机广播消息发送给具有最高优先级的广播接收者,然后发送给具有次一级优先级的广播接收者,直到发送给所有的广播接收者。

示例性的,可将用户当前操作的应用程序接收关机广播消息的优先级设置的较高些,从而可以在关机时保存用户的操作状态及应用程序当前的信息,例如,用户当前操作的是word文档,则先将关机广播消息发送给word文档,便于word文档保存当前的信息,避免丢失用户最新编辑的内容。

本实施例的技术方案,通过在监听到系统发出的关机广播消息时,确定接收所述关机广播消息的广播接收者,确定所述广播接收者接收所述关机广播消息的优先级,根据所述优先级,将所述关机广播消息发送给对应的广播接收者,实现了按照接收关机广播消息的广播接收者的优先级顺序发送关机广播消息给相应的广播接收者,解决了所有同时向所有接收关机广播消息的广播接收者发送关机广播消息导致系统性能大的问题,减少了系统性能开销,提高了关机广播的处理速度。

图2是本发明一个实施例提供的一种发送关机广播的方法的流程图,本实施例所述的方法包括如下步骤:

步骤210,监听系统发出的关机广播消息。

步骤220,在监听到关机广播消息时,确定接收所述关机广播消息的广播接收者。

步骤230,确定所述广播接收者接收所述关机广播消息的优先级。

步骤240,根据所述优先级,将所述关机广播消息发送给对应的广播接收者。

步骤250,记录所述广播接收者的当前状态信息,并关闭所述广播接收者。

其中,当前状态信息可以是用户操作的文档的当前内容状态,也可以是游戏的当前进度状态,还可以是视频的观看进度等。

在将关机广播消息发送给相应优先级的广播接收者后,记录该广播接收者的当前状态信息,然后再关闭该广播接收者,可以避免直接关机导致丢失重要信息。

本实施例的技术方案,通过在根据优先级将关机广播消息发送给对应的广播接收者后,记录该广播接收者的当前状态信息,并关闭该广播接收者,实现了按照优先级关闭不同优先级的广播接收者,解决了所有广播接收者同时触发带来的系统开销大的问题,减少了系统性能开销,提高了关机广播的处理速度,并通过记录广播接收者的当前状态信息,可以避免丢失重要信息。

图3是本发明一个实施例提供的一种发送关机广播的方法的流程图,本实施例所述的方法包括如下步骤:

步骤310,监听系统发出的关机广播消息。

步骤320,在监听到关机广播消息时,确定接收所述关机广播消息的广播接收者。

步骤330,在监听到关机广播消息时进行计时。

从在监听到关机广播消息时开始进行计时,来避免处理关机广播消息的时间较长,导致无法关机的情况。计时的方法可以调用系统时钟实现,或者采用计时器进行计时。

在一个实施例中,在监听到关机广播消息时进行计时,可选包括:

在监听到关机广播消息时,启动计时器进行计时。

在监听到关机广播消息时,启动计时器来进行计时,可以提高计时的准确性。

步骤340,确定所述广播接收者接收所述关机广播消息的优先级。

步骤350,根据所述优先级,将所述关机广播消息发送给对应的广播接收者。

步骤360,如果计时超过预设超时时间,则中断对关机广播消息的处理并关机断电。

设置预设超时时间,如果在对关机广播消息的处理过程中,计时超过预设超时时间,关机广播消息还没有处理完毕,则中断对关机广播消息的处理并直接关机断电,以避免系统处理关机广播消息时出现卡顿现象而无法关机。

例如:广播接收者接收关机广播消息的优先级有三个优先级:最高优先级、次优先级和最低优先级,在向次优先级的广播接收者发送关机广播消息的过程中计时超过预设超时时间,则此时中断对关机广播消息的处理,即不再继续发送关机广播消息,而直接关机断电。

本实施例的技术方案,通过在监听到关机广播消息时进行计时,并按照关机广播消息的广播接收者接收关机广播消息的优先级顺序向对应的广播接收者发送关机广播消息,解决了同时向所有接收关机广播消息的广播接收者发送关机广播消息导致系统性能大的问题,减少了系统性能开销,提高了关机广播的处理速度,并利用关机广播消息的超时处理机制来避免系统处理关机广播消息时出现卡顿现象而无法关机的情况出现。

图4是本发明实施例提供的一种发送关机广播的装置的结构示意图,如图4所示,本实施例所述的发送关机广播的装置包括:关机广播监听模块410、广播接收者确定模块420、优先级确定模块430和关机广播发送模块440。

其中,关机广播监听模块410,用于监听系统发出的关机广播消息;

广播接收者确定模块420,用于在监听到关机广播消息时,确定接收所述关机广播消息的广播接收者;

优先级确定模块430,用于确定所述广播接收者接收所述关机广播消息的优先级;

关机广播发送模块440,用于根据所述优先级,将所述关机广播消息发送给对应的广播接收者。

可选的,所述优先级确定模块包括:

对应关系获取单元,用于获取预先建立的应用属性与所述优先级的对应关系;

应用属性确定单元,用于确定所述广播接收者的应用属性;

优先级确定单元,用于根据所述应用属性和所述对应关系,确定所述广播接收者接收所述关机广播消息的优先级。

可选的,还包括:

广播接收者关闭模块,用于在将所述关机广播消息发送给对应的广播接收者之后,记录所述广播接收者的当前状态信息,并关闭所述广播接收者。

可选的,还包括:

计时模块,用于在监听到关机广播消息时进行计时;

超时处理模块,用于如果计时超过预设超时时间,则中断对关机广播消息的处理并关机断电。

可选的,所述计时模块具体用于:

在监听到关机广播消息时,启动计时器进行计时。

上述发送关机广播的装置可执行本发明任意实施例所提供的发送关机广播的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明任意实施例提供的发送关机广播的方法。

本发明实施例还提供了一种终端,该终端可以包括本发明任意实施例提供的发送关机广播的装置。图5为本发明实施例提供的一种终端的结构示意图,如图5所示,该终端可以包括:壳体(图中未示出)、存储器501、中央处理器(centralprocessingunit,cpu)502(又称处理器,以下简称cpu)、存储在存储器501上并可在处理器502上运行的计算机程序、电路板(图中未示出)和电源电路(图中未示出)。所述电路板安置在所述壳体围成的空间内部;所述cpu502和所述存储器501设置在所述电路板上;所述电源电路,用于为所述终端的各个电路或器件供电;所述存储器501,用于存储可在处理器上运行的计算机程序;所述cpu402通过读取并执行所述存储器501中存储的计算机程序。

该终端还包括:外设接口503、rf(radiofrequency,射频)电路505、音频电路506、扬声器511、电源管理芯片508、输入/输出(i/o)子系统509、触摸屏512、其他输入/控制设备510以及外部端口504,这些部件通过一个或多个通信总线或信号线507来通信。

应该理解的是,图示终端500仅仅是终端的一个范例,并且终端500可以具有比图中所示出的更多的或者更少的部件,可以组合两个或更多的部件,或者可以具有不同的部件配置。图中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。

下面就本实施例提供的用于发送关机广播的终端进行详细的描述,该终端以手机为例。

存储器501,所述存储器501可以被cpu502、外设接口503等访问,所述存储器501可以包括高速随机存取存储器,还可以包括非易失性存储器,例如一个或多个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

外设接口503,所述外设接口503可以将设备的输入和输出外设连接到cpu502和存储器501。

i/o子系统509,所述i/o子系统509可以将设备上的输入输出外设,例如触摸屏512(相当于上述实施例中的屏幕)和其他输入/控制设备510,连接到外设接口503。i/o子系统509可以包括显示控制器5091和用于控制其他输入/控制设备510的一个或多个输入控制器5092。其中,一个或多个输入控制器5092从其他输入/控制设备510接收电信号或者向其他输入/控制设备510发送电信号,其他输入/控制设备510可以包括物理按钮(按压按钮、摇臂按钮等)、拨号盘、滑动开关、操纵杆、点击滚轮。值得说明的是,输入控制器5092可以与以下任一个连接:键盘、红外端口、usb接口以及诸如鼠标的指示设备。

触摸屏512,所述触摸屏512是用户终端与用户之间的输入接口和输出接口,将可视输出显示给用户,可视输出可以包括图形、文本、图标、视频等。

i/o子系统509中的显示控制器5091从触摸屏512接收电信号或者向触摸屏512发送电信号。触摸屏512检测触摸屏上的接触,显示控制器5091将检测到的接触转换为与显示在触摸屏512上的用户界面对象的交互,即实现人机交互,显示在触摸屏512上的用户界面对象可以是运行游戏的图标、联网到相应网络的图标等。值得说明的是,设备还可以包括光鼠,光鼠是不显示可视输出的触摸敏感表面,或者是由触摸屏形成的触摸敏感表面的延伸。

rf电路505,主要用于建立手机与无线网络(即网络侧)的通信,实现手机与无线网络的数据接收和发送。例如收发短信息、电子邮件等。具体地,rf电路505接收并发送rf信号,rf信号也称为电磁信号,rf电路505将电信号转换为电磁信号或将电磁信号转换为电信号,并且通过该电磁信号与通信网络以及其他设备进行通信。rf电路505可以包括用于执行这些功能的已知电路,其包括但不限于天线系统、rf收发机、一个或多个放大器、调谐器、一个或多个振荡器、数字信号处理器、codec(coder-decoder,编译码器)芯片组、用户标识模块(subscriberidentitymodule,sim)等等。

音频电路506,主要用于从外设接口503接收音频数据,将该音频数据转换为电信号,并且将该电信号发送给扬声器511。

扬声器511,用于将手机通过rf电路505从无线网络接收的语音信号,还原为声音并向用户播放该声音。

电源管理芯片508,用于为cpu502、i/o子系统及外设接口所连接的硬件进行供电及电源管理。

本发明实施例提供的cpu502在执行所述存储器501中存储的计算机程序时实现以下步骤:

监听系统发出的关机广播消息;

在监听到关机广播消息时,确定接收所述关机广播消息的广播接收者;

确定所述广播接收者接收所述关机广播消息的优先级;

根据所述优先级,将所述关机广播消息发送给对应的广播接收者。

上述终端可执行本发明任意实施例所提供的方法,具备执行方法相应的功能模块和有益效果。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1