一种若干Launcher共存下的事件分发处理方法技术

技术编号:39396557 阅读:7 留言:0更新日期:2023-11-19 15:51
本发明专利技术公开了一种若干Launcher共存下的事件分发处理方法,属于安卓系统的VoIP相关领域,具体为:针对VoIP话机,搭建事件上报模块,事件分发模块以及Launcher模块;每个Launcher模块将处理各事件的参数注册到事件分发模块;事件分发模块放到维护的Map集合中,形成包括Key值和Value值的数据;同时,根据实际情况,人为设置当前VoIP话机的事件分发的全局Level;当有不同事件同时触发,通过事件上报模块分别传输到事件分发模块;事件分发模块同步进行处理,通过全局Level与Map集合中每条数据的Level进行比对,将每个事件分发到Level相同的Set集合中的Launcher模块;最后,各个Launcher模块收到各自的事件后,分别进行同步处理。本发明专利技术简化了VoIP领域技术人员的开发工作量,降低了成本。低了成本。低了成本。

【技术实现步骤摘要】
一种若干Launcher共存下的事件分发处理方法


[0001]本专利技术属于安卓系统的VoIP(代表“IP语音”或“互联网语音协议”)相关领域,具体是一种若干Launcher(安卓系统桌面启动器)共存下的事件分发处理方法。

技术介绍

[0002]随着嵌入式技术的不断发展,嵌入式设备的功能和硬件条件也在不断提升;基于嵌入式系统开发的VoIP产品功能也在不断丰富,从单纯的语音通话,发展到音、视频通话以及视频会议等,不断满足用户的使用需求。
[0003]Launcher作为基于安卓系统的VoIP话机的界面程序,管理着所有的应用程序,有多个Launcher共存的需求,在这种情况下,专业人员需要处理一个事件如何分发到具体的Launcher,需要大量的人力和资源;从软件上实现事件分发的处理,有利于在多个Launcher存在的情况下的开发,满足用户对于同时有多个Launcher,且每个Launcher事件独立处理的需求,有利于VoIP设备的推广。

技术实现思路

[0004]针对现有技术存在的上述问题,本专利技术提供了一种若干Launcher共存下的事件分发处理方法,通过事件分发处理模块将相应的事件分发到对应的Launcher;简化了VoIP领域技术人员的开发工作量,降低成本。
[0005]所述的若干Launcher共存下的事件分发处理方法,具体步骤如下:
[0006]步骤一、针对基于安卓系统的VoIP话机,搭建事件上报模块,事件分发模块以及Launcher模块;
[0007]事件上报模块基于JNI与AIDL方法以及事件传输方法形成,用于对触发的事件进行上报;
[0008]事件分发模块基于Map集合、VoIP话机事件分发的全局Level和事件分发处理方法形成;用于事件分发时,进行Level比对;VoIP话机事件分发的全局Level全局唯一;
[0009]Launcher模块包括多个,每个Launcher模块可以处理一个或多个事件,每个Launcher模块对各自的事件处理的Level根据实际情况设定;且不同Launcher模块可以对同一事件作不同处理;
[0010]步骤二、每个Launcher模块将处理各事件的参数注册到事件分发模块;
[0011]每个Launcher模块注册参数包括:处理各事件的Level、对各自事件的监听;
[0012]步骤三、事件分发模块接收到注册的参数之后,将各个Launcher模块注册的参数放到维护的Map集合中,形成包括Key值和Value值的数据;
[0013]Map集合的Key值为Launcher模块处理各自事件的Level,事件可以在每个Launcher模块对应一个或多个Level;Value值为不同Launcher模块处理的,Level相同的各事件监听的Set集合;
[0014]Set集合为处理当前Level事件的所有Launcher模块的集合;
[0015]步骤四、根据实际情况,人为设置当前VoIP话机的事件分发的全局Level;
[0016]根据事件想要分发到的Launcher模块,设置全局Level与该Launcher模块处理该事件的Level相同;每次有新的事件触发时,都要提前手动设置全局Level;
[0017]步骤五、当有不同事件同时触发,通过事件上报模块分别传输到事件分发模块;
[0018]步骤六、事件分发模块同步进行处理,通过全局Level与Map集合中每条数据的Level进行比对,将每个事件分发到Level相同的Set集合中的Launcher模块;
[0019]比对是指:Map集合中每条数据的Level与全局Level进行比较,Level相同时会将该数据对应的事件分发到Set集合中的所有Launcher模块,否则事件不再进行分发;具体情况如下:
[0020]针对两个Launcher模块:Launcher A与Launcher B,同时对事件a做处理的场景;
[0021]两个Launcher模块的处理level中,选择与全局Level值相同的模块,对事件a进行处理;当两个Launcher模块对事件a的处理level与全局Level值都不同,则事件a触发没有Launcher模块进行处理,不再进行分发;当两个Launcher模块对事件a的处理level均与全局Level值相同,事件a触发会同时分发到两个Launcher A与B模块进行同步处理;
[0022]针对两个Launcher模块:Launcher A与Launcher B,同时对事件a和事件b分别做处理的场景:Launcher A对事件a的处理level,Launcher B对事件b的处理level中,当Launcher A对事件a的处理level与全局Level相同,则事件a、b同时触发,事件分发模块同步将事件a分发到Launcher A处理,事件b不进行分发;反之,当Launcher B对事件b的处理level与全局Level相同,则事件a、b同时触发,事件分发模块同步将事件b分发到Launcher B处理,事件a不进行分发;
[0023]针对大于等于3个的事件和Launcher模块,同理上述操作;
[0024]步骤七、各个Launcher模块收到各自的事件后,分别进行同步处理。
[0025]本专利技术的优点在于:
[0026]一种若干Launcher共存下的事件分发处理方法,基于安卓系统的VoIP产品,有多个Launcher模块的情况下,可以根据每个Launcher模块持有的不同的事件处理Level来精准分发对应的事件,使得VoIP话机可以实现多个Launcher共存且事件处理独立的需求,简化了开发工作量,降低了多个Launcher共存事件分发处理的开发成本。
附图说明
[0027]图1为本专利技术一种若干Launcher共存下的事件分发处理方法流程图;
具体实施方式
[0028]为了便于本领域普通技术人员理解和实施本专利技术,下面结合附图对本专利技术作进一步的详细和深入的具体过程描述。
[0029]本专利技术提供了一种若干Launcher共存下的事件分发处理方法,同时拥有多个Launcher模块且不同Launcher需要进行不同事件处理的VoIP话机;事件通过事件上报模块,传输到事件分发模块,事件分发模块通过分发Level将事件分发到对应的Launcher模块,在对应的Launcher模块进行自己的处理。具体为:每个Launcher模块将处理事件的Level与监听注册到事件分发模块,在合适的位置修改全局的事件分发Level为对应的值,
事件触发后,通过事件上报模块方法调用上报到事件分发模块,事件分发模块根据当前全局的事件分发Level与维护Map中Launcher模块的事件处理Level对比,分发到相应的Launcher模块。
[0030]如图1所示,具体步骤如下:
[0031]步骤一、针对基于安卓系统的VoIP话机,搭建本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种若干Launcher共存下的事件分发处理方法,其特征在于,具体步骤如下:步骤一、针对基于安卓系统的VoIP话机,搭建事件上报模块,事件分发模块以及Launcher模块;步骤二、每个Launcher模块将处理各事件的参数注册到事件分发模块;每个Launcher模块注册参数包括:处理各事件的Level、对各自事件的监听;步骤三、事件分发模块接收到注册的参数之后,将各个Launcher模块注册的参数放到维护的Map集合中,形成包括Key值和Value值的数据;Map集合的Key值为Launcher模块处理各自事件的Level,事件在每个Launcher模块对应一个或多个Level;Value值为不同Launcher模块处理的,Level相同的各事件监听的Set集合;Set集合为处理当前Level事件的所有Launcher模块的集合;步骤四、根据实际情况,人为设置当前VoIP话机的事件分发的全局Level;步骤五、当有不同事件同时触发,通过事件上报模块分别传输到事件分发模块;步骤六、事件分发模块同步进行处理,通过全局Level与Map集合中每条数据的Level进行比对,将每个事件分发到Level相同的Set集合中的Launcher模块;比对是指:Map集合中每条数据的Level与全局Level进行比较,Level相同时会将该数据对应的事件分发到Set集合中的所有Launcher模块,否则事件不再进行分发;具体情况如下:针对两个Launcher模块:Launcher A与Launcher B,同时对事件a做处理的场景;两个Launcher模块的处理level中,选择与全局Level值相同的模块,对事件a进行处理;当两个Launcher模块对事件a的处理level与全局Level值都不同,则事件a触发没有Launcher模块进行处理,不再进行分发;当两个Launcher模块对事件a的处理...

【专利技术属性】
技术研发人员:刘建兵冯波杨旭辉高峰商易孙智慧朱海波姜瑞
申请(专利权)人:深圳方位智联科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1