一种广播发送方法、装置及终端与流程

文档序号:12698599阅读:275来源:国知局
一种广播发送方法、装置及终端与流程

本发明涉及终端技术领域,尤其涉及一种广播发送的方法、装置及终端。



背景技术:

在Android系统中,有很多不同的模块,为了在不同的模块中快速的进行信息传递,Android系统提供了一种通信方式,类似现实生活中的播放广播的模式一样。当有消息要通知不同的模块时,就将这个消息通过广播的方式发送给不同的广播接收者。

其中,在分发广播消息时,各种类型的广播消息都是在广播队列中进行排队进行处理的,当广播消息发送的较多时,广播队列排队会较长,如果广播分发的速度小于广播入队的速度,会导致严重的阻塞问题,引起信息发送不通畅,导致终端运行异常。



技术实现要素:

本发明实施例提供一种广播发送的方法、装置及终端,能够提高广播消息的分发速度以及处理速度,解决广播引起的阻塞问题。

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

创建与广播消息的类型对应的广播发送队列;

检测接收到的广播消息的类型;

将接收到的所述广播消息移动到与所述广播消息的类型对应的广播发送队列中,以将所述广播消息并行发送给广播接收者。

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

创建模块,用于创建与广播消息的类型对应的广播发送队列;

第一检测模块,用于检测接收到的广播消息的类型;

移动模块,用于将接收到的所述广播消息移动到与所述广播消息的类型对应的广播发送队列中,以将所述广播消息并行发送给广播接收者。,包括:

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

创建与广播消息的类型对应的广播发送队列;

检测接收到的广播消息的类型;

将接收到的所述广播消息移动到与所述广播消息的类型对应的广播发送队列中,以将所述广播消息并行发送给广播接收者。

本发明实施例提供的技术方案,通过将接收到的广播消息移动到与广播消息类型对应的广播发送队列中,以将广播消息并行发送给广播接收者,能够提供广播消息分发的速度,解决广播引起的阻塞的问题。

附图说明

通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:

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

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

图3是本发明一个实施例提供的一种广播发送装置结构框图;

图4是本发明一个实施例提供的一种终端结构示意图。

具体实施方式

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

图1a是本发明一个实施例提供的一种广播发送方法流程图,所述方法由广播发送装置来执行,所述装置由软件和/或硬件来执行,所述装置配置在诸如手机等终端中。如图1a所示,本实施例提供的技术方案如下:

S110:创建与广播消息的类型对应的广播发送队列。

在本实施例中,在广播处理过程中,广播发送者的服务进程通过调用广播发送函数(如sendBroadcast函数)将广播消息发送至广播管理模块(如ActivityManagerService,活动管理服务),广播管理模块接收到该广播消息后将其放入广播发送队列,广播管理模块通过进程通信机制(如Binder进程通信机制)将广播发送队列中的广播消息发送至符合接收条件的广播接收者。

在广播机制中,广播消息指的是系统或者应用程序在运行过程中发送的,用于系统和/或应用程序之间传输的信息。广播消息包括系统关联广播消息和三方应用广播消息,其中,系统关联广播消息包括系统广播消息和系统内置应用广播消息。系统广播消息可以是系统启动广播消息,熄屏广播消息、亮屏广播消息等。系统内置应用广播消息可以是短信类广播消息等。

在创建广播发送队列之前,可以对终端内广播消息类型进行划分,根据划分的广播消息的类型创建与广播消息的类型对应的广播发送队列。当广播消息包括系统关联广播消息和三方应用广播消息,系统关联广播消息包括系统广播消息和系统内置应用广播消息时,可选的,所述创建与广播消息的类型对应的广播发送队列包括:创建与系统关联广播消息对应的第一广播发送队列,以及创建与三方应用广播消息对应的第二广播发送队列。其中,第一广播发送队列以及第二广播发送队列中的广播消息可以并行同时发送。

S120:检测接收到的广播消息的类型。

在本实施例中,检测广播管理模块接收到的广播消息的类型,其中广播管理模块接收到的广播消息为广播发送者发送的广播消息,其中,广播发送者可包括系统,系统内置应用或者三方应用。其中,接收到的广播消息包括系统关联广播消息和三方应用广播消息,其中,系统关联广播消息包括系统广播消息和系统内置应用广播消息。

S130:将接收到的广播消息移动到与所述广播消息的类型对应的广播发送队列中,以将所述广播消息并行发送给广播接收者。

在本实施例中,每一个广播消息的类型对应一个广播发送队列。当创建与系统关联广播消息对应的第一广播发送队列,以及创建与三方应用广播消息对应的第二广播发送队列时,可选的,所述将接收到的广播消息移动到与所述广播消息的类型对应的广播发送队列中,以将所述广播消息并行发送给广播接收者包括:将接收到的系统关联广播消息移动到第一广播发送队列中,以及将接收到的三方应用广播消息移动到第二广播发送队列中,以将系统关联广播消息和三方应用广播消息并行发送给广播接收者。

现有技术中,广播管理模块接收到广播发送者发送的广播消息,并将接收到的广播消息放在一个广播发送队列中进行分发,先入队的广播消息可以先分发,后入队的广播消息后分发。当广播发送者发送的广播消息较多时,广播发送队列中也会比较长,如果广播消息分发的速度小于广播消息放入广播发送队列的速度,则会引起严重的阻塞,发送广播消息发送不通畅。本实施例中,通过创建与广播类型消息对应的广播发送队列,并将广播管理模块接收到的广播消息移动到对应的广播发送队列中,以将广播消息并行发送给广播接收者,相对于现有技术而言,增加了广播发送队列,提高了广播消息分发的速度,解决了阻塞的问题。由于广播消息分发速度提高,因此,也提高了广播消息的处理速度。

并且现有技术中,系统广播消息、系统内置应用广播消息和三方应用广播消息在同一个广播发送队列中进行分发。如图1b所示,双箭头指向当前分发的广播消息,图1b中,三方应用广播消息、系统内置应用广播消息和三方应用广播消息在一个广播发送队列中,三方应用广播消息数量较多,且在系统广播消息以及系统内置应用广播消息之前,需要将三方应用广播消息分发完成才能分发系统广播消息和系统内置应用广播消息。相对于三方应用广播消息而言,系统广播消息或系统内置应用广播消息较重要,由于三方应用广播消息的数量较多,往往影响系统广播消息或者系统内置应用广播消息的分发,导致系统广播消息或者系统内置应用广播消息被三方应用广播消息阻塞,不能快速处理。例如,在终端内安装了一个三方应用,由于该三方应用自身的需要会较频繁的发送广播消息,所以广播发送队列中三方应用广播消息会较多。当需要对终端进行熄屏时,触发熄屏的操作需要发送熄屏广播消息,并对熄屏广播消息处理来实现。由于在广播发送队列中,熄屏广播消息之前有较多的三方应用,熄屏广播消息会被三方应用广播消息阻塞,影响熄屏广播消息的分发,从而影响熄屏广播消息的处理,以使终端的熄屏速度较慢。

本实施例中,通过将接收到的系统广播消息和系统内置应用广播消息移动到创建的第一广播发送队列中,以及将三方应用广播消息移动到第二广播发送队列中,以并行发送。例如,如图1c所示,双箭头为当前分发的广播消息,从图1c中可知,第一广播发送队列中的广播消息和第二广播队列中的广播消息可以同时分发,即系统关联广播消息和三方应用广播消息并行发送,其中,系统关联广播消息包括系统广播消息和系统内置应用广播消息。避免了系统广播消息或系统内置应用广播消息被三方应用广播消息阻塞的问题。

在上述实施例的基础上,当广播消息包括系统关联广播消息和三方应用广播消息,系统关联广播消息包括系统广播消息和系统内置应用广播消息时,创建与广播消息的类型对应的广播发送队列还可以包括:创建与系统广播消息对应的第一广播发送队列,创建与系统内置应用广播消息对应的第二广播发送队列以及创建与三方应用广播消息对应的第三广播发送队列。相应的,将接收到的广播消息移动到与所述广播消息的类型对应的广播发送队列中,以将所述广播消息并行发送给广播接收者,还可以包括:将接收到的系统广播消息移动到所述第一广播发送队列中,并将接收到系统内置应用广播消息移动到第二广播发送队列中,以及将接收到的三方应用广播消息移动到所述第三广播发送队列中,以将所述系统广播消息、系统内置应用广播消息和所述三方应用广播消息并行发送给广播接收者。

需要说明的是,对于创建与根据广播消息的类型对应的广播发送队列的方法并不局限于上述的方法,还可以对广播消息的类型进行细化,创建四个,或者其他数量的广播发送队列。也可以对创建的广播发送队列的数量不进行限制,可根据需要进行创建。或者对于广播消息类型的划分方法也可以不同,例如,广播消息可以包括:应用广播消息和系统广播消息,创建的广播发送队列与广播消息的类型对应,且将接收到的广播消息移动到与广播消息类型对应的广播发送队列中。其中,广播消息类型的划分方法还可以是其他方式,相应的,创建广播发送队列与广播消息的类型相对应。

需要说明的是,本实施例示例性将S110在S120之前执行,但本实施例仅仅是一个示例,在本发明的其他实施例中,还可以将S110在S120之后执行,对广播的发送并不产生影响。

本实施例中,通过将接收到的广播消息移动到与广播消息类型对应的广播发送队列中,以将广播消息并行发送给广播接收者,能够提供广播消息分发的速度,解决广播引起的阻塞的问题。

图2是本发明实施例提供的一种广播发送方法流程图,如图2所示,本实施例提供的技术方案包括:

S210:创建与广播消息的类型对应的广播发送队列;

S220:检测接收到的广播消息的类型。

S230:将接收到的广播消息移动到与所述广播消息的类型对应的广播发送队列中,以将所述广播消息并行发送给广播接收者。

S240:检测所述广播消息的标识信息。

在本实施例中,系统内置应用广播消息和三方应用广播消息的标识信息可以是应用的包名,或者也可以是其他标识信息。系统广播消息的标识信息可以是与广播消息功能相关的标识信息,也可以使其他形式的标识信息。其中,每个广播消息均存在标识信息。

S250:根据所述标识信息确定所述广播消息的发送者。

在本实施例中,根据广播消息的标识信息能够确定广播消息的发送者。例如,若广播消息的标识信息是微信的包名,则广播消息的发送者为微信应用。其中,广播消息的发送者可以是系统、系统内置应用或者三方应用,广播消息的发送者,即为与广播消息对应的广播发送者。

S260:根据所述广播消息的发送者的等级调整所述广播消息在广播发送队列中的顺序。

其中,可以对广播消息的发送者的等级进行设置。例如,可以设置系统设置为较高的等级,系统内置应用设置为较低的等级,在系统广播消息和系统内置应用广播消息所在的广播发送队列中,将系统广播消息调整在系统内置应用广播消息之前。由于系统内置应用和三方应用的种类有多个,也可以设置各系统内置应用和各三方应用的等级,以对各系统内置应用广播消息进行调整,将发送者等级高的系统内置应用广播消息调整在发送者等级低的系统内置应用广播消息之前。在另一个广播发送队列中,将发送者等级高的三方应用广播消息调整在等级低的三方应用广播消息之前。

或者也可以仅仅调整系统内置应用广播消息和三方应用广播消息分别在广播发送者队列中的顺序,调整的方法是根据广播消息的发送者的等级。而广播消息的发送者的等级可以通过终端界面内的功能选项进行设置,该功能选项用于选择广播消息的发送者的等级。其中,该功能选项可以设置在每个应用的下拉菜单中,为多个;也可以单独设置在终端界面内,为1个。

因此,当调整系统内置应用广播消息和三方应用广播消息分别在广播发送者队列中的顺序时,根据广播消息的发送者的等级调整广播消息在广播发送队列中的顺序之前,还包括设置选择广播消息的发送者等级的功能选项,其中,相应的,所述广播消息的发送者包括系统内置应用和三方应用。

由此,通过广播消息的发送者的等级调整广播消息在广播发送队列中的顺序,能够控制广播消息的分发顺序,提高广播消息分发的管理效率。

需要说明的是,本实施例示例性的将S240-S250在S230之后执行,但在本发明的其他实施例中,S240-S250还可以在S230之前执行,并且其他步骤的顺序也可以进行调整。

图3是本发明实施例提供的一种广播发送装置结构框图,所述广播发送装置300用于执行广播发送方法,包括:创建模块310、第一检测模块320以及移动模块330。

其中,创建模块310,用于创建与广播消息的类型对应的广播发送队列;

第一检测模块320,用于检测接收到的广播消息的类型;

移动模块330,用于将接收到的广播消息移动到与所述广播消息的类型对应的广播发送队列中,以将所述广播消息并行发送给广播接收者。

进一步的,所述广播消息包括系统关联广播消息和三方应用广播消息,其中,所述系统关联广播消息包括系统广播消息和系统内置应用广播消息;

所述创建模块310,用于创建与所述系统关联广播消息对应的第一广播发送队列,以及创建与所述三方应用广播消息对应的第二广播发送队列;

所述移动模块330,用于将接收到的系统关联广播消息移动到所述第广播一发送队列中,以及将接收到的三方应用广播消息移动到所述第二广播发送队列中,以将所述系统关联广播消息和所述三方应用广播消息并行发送给广播接收者。

进一步的,所述装置还包括:第二检测模块340,用于检测广播消息的标识信息;

确定模块350,用于根据所述标识信息确定所述广播消息的发送者;

调整模块360,用于根据所述广播消息的发送者的等级调整所述广播消息在广播发送队列中的顺序。

进一步的,所述装置还包括:设置模块370,用于设置选择广播消息的发送者等级的功能选项,其中,所述广播消息的发送者包括系统内置应用和三方应用。

需要说明的是,本发明实施例中的功能模块的连接关系并不局限与图3中的连接关系,各功能模块的连接关系还可以是其他方式。

本实施例提供的一种广播发送装置,通过将接收到的广播消息移动到与广播消息类型对应的广播发送队列中,以将广播消息并行发送给广播接收者,能够提供广播消息分发的速度,解决广播引起的阻塞的问题。

本发明实施例提供了一种终端,该终端中可集成本发明实施例提供的广播发送装置。图4为本发明一个实施例提供的一种终端的结构示意图。如图4所示,该终端400可以包括:存储器401、中央处理器(Central Processing Unit,CPU)402(又称处理器,以下简称CPU)、触摸屏412以及存储在存储器上并可在CPU上运行的计算机程序。所述触摸屏412,用于将用户操作转换成电信号输入至所述CPU,并显示可视输出信号;CPU402执行计算机程序时实现以下步骤:创建与广播消息的类型对应的广播发送队列;检测接收到的广播消息的类型;将接收到的广播消息移动到与所述广播消息的类型对应的广播发送队列中,以将所述广播消息并行发送给广播接收者。

所述终端400还包括:外设接口403、RF(Radio Frequency,射频)电路405、音频电路406、扬声器411、电源管理芯片408、输入/输出(I/O)子系统409、其他输入/控制设备410以及外部端口404,这些部件通过一个或多个通信总线或信号线407来通信。

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

下面就本实施例提供的集成有广播发送装置的终端进行详细的描述,该终端以手机为例。

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

外设接口403,所述外设接口403可以将设备的输入和输出外设连接到CPU402和存储器401。

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

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

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

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

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

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

电源管理芯片408,用于为CPU402、I/O子系统及外设接口所连接的硬件进行供电及电源管理。

本实施例提供的终端用于执行上述各实施例所述的广播发送方法,其技术原理和产生的技术效果类似,这里不再赘述。

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

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