系统广播发送方法和电子设备与流程

文档序号:37349121发布日期:2024-03-18 18:27阅读:11来源:国知局
系统广播发送方法和电子设备与流程

本申请涉及终端,尤其涉及一种系统广播发送方法和电子设备。


背景技术:

1、电子设备可以通过发送系统广播的方式将系统的各种状态信息通知给各个应用程序。比如手机开机完成后发出一条开机广播,手机电池电量发生变化后发出一条电量变化广播,手机亮屏后发出一条亮屏广播,手机熄屏后发出一条熄屏广播等。

2、应用程序想要接收系统广播,需要应用程序的进程预先在系统中注册广播接收器(广播接收者)。例如,进程a、进程b和进程c分别在系统中注册了亮屏广播接收器,手机亮屏后,系统会向进程a的广播接收器、进程b的广播接收器和进程c的广播接收器发送亮屏广播。例如,进程a、进程d和进程e分别在系统中注册了熄屏广播接收器,手机熄屏后,系统会向进程a的广播接收器、进程d的广播接收器和进程e的广播接收器发送熄屏广播。

3、应用程序的进程通过广播接收器接收到系统广播,就可以执行相应的动作。例如显示预设界面、执行预设指令等。

4、一般来说,针对同一条系统广播注册广播接收器的进程很多。系统向各个进程的广播接收器发送同一条系统广播时,需要按照一定的先后顺序进行发送。如何对多个广播接收器进行排序,是需要解决的一个问题。


技术实现思路

1、本申请实施例提供一种系统广播发送方法和电子设备,优化了向多个广播接收器发送系统广播时广播接收器的排序方式,提高了系统性能。

2、为达到上述目的,本申请的实施例采用如下技术方案:

3、第一方面,提供了一种系统广播发送方法,该方法包括:获取第一系统广播对应的第一广播队列;第一广播队列包括多个广播接收器,多个广播接收器中接收优先级相同且属于同一个进程的排列在一起;按照第一广播队列中广播接收器由先到后的顺序,依次向第一广播队列中每个广播接收器发送第一系统广播。

4、在该方法中,系统按照先后顺序向各个广播接收器发送前台广播,广播接收器接收到这条前台广播就会执行相应的动作。广播接收器是由应用的进程注册的,向广播接收器发送前台广播即向广播接收器所属的进程发送前台广播。cpu会对接收前台广播的进程轮流设置cpu分组,以提高正在接收前台广播的进程的cpu优先级,如果前一个接收前台广播的进程与本次接收前台广播的进程是同一进程,由于该进程已经在cpu优先级较高的cpu分组,则不修改进程的cpu分组。

5、每次设置cpu分组都会带来功耗浪费,发送系统广播时将多个广播接收器中接收优先级相同且属于同一个进程的排列在一起,就可以减少调整cpu分组的次数,降低手机功耗。

6、结合第一方面,在一种实施方式中,获取第一系统广播对应的静态广播队列和动态广播队列;静态广播队列包括静态注册的广播接收器,动态广播队列包括动态注册的广播接收器;将静态广播队列和动态广播队列合并为该第一广播队列。

7、结合第一方面,在一种实施方式中,将静态广播队列和动态广播队列合并为第一广播队列包括:将静态广播队列中的广播接收器插入动态广播队列,获取第一广播队列;在将静态广播队列中的广播接收器插入动态广播队列时,静态广播队列与动态广播队列中接收优先级相同且属于同一个进程的广播接收器排列在一起。

8、结合第一方面,在一种实施方式中,将静态广播队列和动态广播队列合并为第一广播队列之前,将静态广播队列中接收优先级相同且属于同一个进程的广播接收器排在一起;将动态广播队列中接收优先级相同且属于同一个进程的广播接收器排在一起。这样可以方便在将静态广播队列和动态广播队列合并为第一广播队列时,将静态广播队列与动态广播队列中接收优先级相同且属于同一个进程的广播接收器排列在一起。

9、结合第一方面,在一种实施方式中,第一广播队列中接收优先级相同且属于同一个进程的广播接收器中,动态注册的广播接收器排在静态注册的广播接收器之前。

10、结合第一方面,在一种实施方式中,第一广播队列中,接收优先级高的广播接收器先于接收优先级低的广播接收器。

11、结合第一方面,在一种实施方式中,第一广播队列中包括第一广播接收器,第一广播接收器属于第一进程,该方法还包括:向第一广播接收器发送第一系统广播时,调高第一进程的cpu优先级。

12、结合第一方面,在一种实施方式中,向第一广播接收器发送第一系统广播时,调低第二进程的cpu优先级;第二进程与第一进程不同,第二进程为第一广播队列中第一广播接收器的前一个广播接收器所属的进程。

13、结合第一方面,在一种实施方式中,第一系统广播为前台广播。

14、第二方面,提供了一种电子设备,该电子设备具有实现上述第一方面所述的方法的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。

15、第三方面,提供了一种电子设备,包括:处理器和存储器;该存储器用于存储计算机执行指令,当该电子设备运行时,该处理器执行该存储器存储的该计算机执行指令,以使该电子设备执行如上述第一方面中任一项所述的方法。

16、第四方面,提供了一种电子设备,包括:处理器;所述处理器用于与存储器耦合,并读取存储器中的指令之后,根据所述指令执行如上述第一方面中任一项所述的方法。

17、第五方面,提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机可以执行上述第一方面中任一项所述的方法。

18、第六方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机可以执行上述第一方面中任一项所述的方法。

19、第七方面,提供了一种装置(例如,该装置可以是芯片系统),该装置包括处理器,用于支持电子设备实现上述第一方面中所涉及的功能。在一种可能的设计中,该装置还包括存储器,该存储器,用于保存电子设备必要的程序指令和数据。该装置是芯片系统时,可以由芯片构成,也可以包含芯片和其他分立器件。

20、其中,第二方面至第七方面中任一种设计方式所带来的技术效果可参见第一方面中不同设计方式所带来的技术效果,此处不再赘述。



技术特征:

1.一种系统广播发送方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述方法还包括:

3.根据权利要求2所述的方法,其特征在于,所述将所述静态广播队列和所述动态广播队列合并为所述第一广播队列包括:

4.根据权利要求2或3所述的方法,其特征在于,所述将所述静态广播队列和所述动态广播队列合并为所述第一广播队列之前,所述方法还包括:

5.根据权利要求1-4中任一项所述的方法,其特征在于,所述第一广播队列中,接收优先级相同且属于同一个进程的广播接收器中,动态注册的广播接收器排在静态注册的广播接收器之前。

6.根据权利要求1-5中任一项所述的方法,其特征在于,所述第一广播队列中,接收优先级高的广播接收器先于接收优先级低的广播接收器。

7.根据权利要求1-6中任一项所述的方法,其特征在于,所述第一广播队列中包括第一广播接收器,所述第一广播接收器属于第一进程,所述方法还包括:

8.根据权利要求7所述的方法,其特征在于,所述方法还包括:

9.根据权利要求1-8中任一项所述的方法,其特征在于,所述第一系统广播为前台广播。

10.一种电子设备,其特征在于,所述电子设备包括:处理器和存储器,所述处理器与所述存储器耦合;所述存储器中存储有一个或多个计算机程序,所述一个或多个计算机程序包括指令,当所述指令被所述电子设备执行时,使得所述电子设备执行如权利要求1-9中任一项所述的方法。

11.一种计算机可读存储介质,其特征在于,包括计算机指令;当所述计算机指令在电子设备上运行时,使得所述电子设备执行如权利要求1-9中任一项所述的方法。


技术总结
本申请公开了一种系统广播发送方法和电子设备,涉及终端技术领域。系统按照先后顺序向各个广播接收器发送前台广播,广播接收器接收到这条前台广播就会执行相应的动作。广播接收器是由应用的进程注册的,向广播接收器发送前台广播即向广播接收器所属的进程发送前台广播。CPU会对接收前台广播的进程轮流设置CPU分组,以提高正在接收前台广播的进程的CPU优先级,如果前一个接收前台广播的进程与本次接收前台广播的进程是同一进程,由于该进程已经在CPU优先级较高的CPU分组,则不修改进程的CPU分组。每次设置CPU分组都会带来功耗浪费,发送前台广播时将接收优先级相同且属于同一个进程的排列在一起,就可以减少调整CPU分组的次数,降低手机功耗。

技术研发人员:张宇
受保护的技术使用者:荣耀终端有限公司
技术研发日:
技术公布日:2024/3/17
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1