[发明专利]一种Android系统中的消息处理方法及Android电子设备在审
申请号: | 201810657259.1 | 申请日: | 2018-06-22 |
公开(公告)号: | CN108874494A | 公开(公告)日: | 2018-11-23 |
发明(设计)人: | 张磊;张文明;陈少杰 | 申请(专利权)人: | 武汉斗鱼网络科技有限公司 |
主分类号: | G06F9/451 | 分类号: | G06F9/451 |
代理公司: | 中科专利商标代理有限责任公司 11021 | 代理人: | 周天宇 |
地址: | 430000 湖北省武汉市武汉东湖*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 主线程 判定 电子设备 消息处理 消息类型 消息内容 线程 处理效率 冗余逻辑 消息转化 消息总线 子线程 更新 筛选 合法 | ||
本公开提供了一种Android系统中的消息处理方法及Android电子设备,方法包括:对消息总线中的消息进行筛选,获取特定消息类型的消息;采用Android系统中的Message.obtain()方法获取特定消息类型的消息,得到一个mMessage对象,其中,mMessage对象包括该消息的消息内容及消息ID;采用Android系统中的mHandler.sendMessage()方法,将mMessage对象发送到主线程中;在主线程中判定mMessage对象中消息ID是否合法,如果是,则获取mMessage对象中的消息内容。本公开能够能够在需要更新UI时,自动将子线程的消息转化为主线程消息,这样,系统在接收到消息后无需判定消息的线程问题进而直接进行UI更新,提高了消息的处理效率和降低了线程判定的冗余逻辑。
技术领域
本公开属于计算机软件领域,具体涉及一种Android系统中的消息处理方法及Android电子设备。
背景技术
在Android开发过程中,常需要更新用户界面(User Interface,UI)。而更新UI是要主线程来更新的,即UI线程更新。如果在主线线程之外的线程中直接更新页面显示常会报错。
然而,系统在接收到用于更新UI的消息时,并不清楚其是子线程中的消息还是主线程中的消息。因此在接收到消息后需要判定消息的线程,如果是子线程,还需要将消息转发到主线程才能更新UI操作,以上对消息的线程判定和自己转换线程的过程会耗费很多的资源开销且存在很多冗余代码。
发明内容
本公开鉴于上述问题,提供一种Android系统中的消息处理方法及Android电子设备,能够在需要更新UI时,自动将子线程的消息转化为主线程消息,这样,系统在接收到消息后无需判定消息的线程问题进而直接进行UI更新,提高了消息的处理效率和降低了线程判定的冗余逻辑。
本公开的一个方面提供了一种Android系统中的消息处理方法,包括:对消息总线中的消息进行筛选,获取特定消息类型的消息;采用Android系统中的Message.obtain()方法获取所述特定消息类型的消息,得到一个mMessage对象,其中,所述mMessage对象包括该消息的消息内容及消息ID;采用Android系统中的mHandler.sendMessage()方法,将所述mMessage对象发送到主线程中;在主线程中判定所述mMessage对象中消息ID是否合法,如果是,则获取所述mMessage对象中的消息内容。
可选地,所述对消息总线中的消息进行筛选,获取特定消息类型的消息,包括:为每个消息设置一个Bean结构,该Bean结构用于标识每个消息的消息类型;根据每个消息的Bean结构,对消息总线中的消息进行筛选,得到特定消息类型的消息。
可选地,所述对消息总线中的消息进行筛选,获取特定消息类型的消息,还包括:将得到特定消息类型的消息发送至onEvent()函数,该onEvent()函数中的参数类型为所述特定消息类型的消息。
可选地,所述在主线程中判定所述mMessage对象中消息ID是否合法,如果是,则获取所述mMessage对象中的消息内容,包括:将所述mMessage对象中消息ID与全局中的消息ID进行对比,若一致,则所述mMessage对象中消息ID合法,否则所述mMessage对象中消息ID不合法。
可选地,方法还包括:所述主线程采用所述消息内容对用户界面进行更新。
可选地,所述消息ID为MSG_ID_XXX,其中,XXX为所述Bean结构的名称。
可选地,采用Android系统中的mHandler.sendMessage()方法,将所述mMessage对象发送到主线程中,包括:将所述mMessage对象作为参数值,并执行mHandler.sendMessage(mMessage),以将mMessage对象发送至主线程中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉斗鱼网络科技有限公司,未经武汉斗鱼网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810657259.1/2.html,转载请声明来源钻瓜专利网。