[发明专利]功能类使用Handler进行消息处理的方法和装置有效

专利信息
申请号: 201710625364.2 申请日: 2017-07-27
公开(公告)号: CN107515792B 公开(公告)日: 2020-11-10
发明(设计)人: 王永川 申请(专利权)人: 北京五八信息技术有限公司
主分类号: G06F9/54 分类号: G06F9/54
代理公司: 北京同立钧成知识产权代理有限公司 11205 代理人: 杨贝贝;刘芳
地址: 100083 北京市海淀区学清*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 功能 使用 handler 进行 消息 处理 方法 装置
【说明书】:

发明实施例提供一种功能类使用Handler进行消息处理的方法和装置。本发明功能类使用Handler进行消息处理的方法,包括:所述功能类接收业务处理请求消息;所述功能类通过第一Handler类和第二Handler类对所述业务处理请求消息进行处理;其中,所述第二Handler类弱引用所述第一Handler类,所述第二Handler类为原生Handler的子类。本发明实施例以简单的方式实现原生Handler到功能类的可达路径为弱可达,有效避免直接使用原生Handler导致功能类内存泄漏的问题,降低APP的崩溃率和OOM问题。

技术领域

本发明实施例涉及计算机技术,尤其涉及一种功能类使用Handler进行消息处理的方法和装置。

背景技术

消息处理程序(Handler)是安卓(Android)开发者进行消息传递的常用应用程序编程接口(Application Programming Interface,API),其主要用于异步消息的处理,当发出一个消息之后,首先进入一个消息队列,发送消息的函数即刻返回,而另外一个部分在消息队列中逐一将消息取出,然后对消息进行处理。然而随着开发者的使用不当或者不谨慎很容易引起内存泄漏问题,严重时会造成几MB的内存空间被占用,从而提高了内存溢出(Out Of Memory,OOM)的发生概率和应用程序(Application,APP)的崩溃概率。

为了避免在使用Handler引起的内存泄漏问题,可以在用户接口程序(Activity)中避免使用非静态内部类,将Handler声明为静态的,其存活期跟Activity的生命周期就无关了。同时通过弱引用的方式引入Activity,避免直接将Activity作为Context传入Handler,即使用静态内部类加弱引用(WeakReference)的方式。

然而,上述使用静态内部类加WeakReference的实现方式过于复杂,需要在每个使用Handler的地方都要声明一个静态内部类,如果需要多个Handler进行消息传递就需要声明多个,然后逐一进行实例化并且每次使用前判空,失去了原生Handler的简约性。

发明内容

本发明实施例提供一种功能类使用Handler进行消息处理的方法和装置,以简单的方式实现原生Handler到功能类的可达路径为弱可达,有效避免直接使用原生Handler导致功能类内存泄漏的问题,降低APP的崩溃率和OOM问题。

第一方面,本发明实施例提供一种功能类使用Handler进行消息处理的方法,包括:

所述功能类接收业务处理请求消息;

所述功能类通过第一Handler类和第二Handler类对所述业务处理请求消息进行处理;

其中,所述第二Handler类弱引用所述第一Handler类,所述第二Handler类为原生Handler的子类。

结合第一方面,在第一方面的一种可能的实现方式中,所述功能类接收业务处理请求消息之前,所述方法还包括:

创建所述第一Handler类,所述第一Handler类的属性包括调用所述第二Handler类。

结合第一方面或者第一方面任一种可能的实现方式,在第一方面的另一种可能的实现方式中,所述功能类接收业务处理请求消息之前,所述方法还包括:

创建所述第二Handler类,所述第二Handler类继承所述原生Handler类的所有属性和所有消息处理方法,且所述第二Handler类的属性还包括弱引用所述第一Handler类。

结合第一方面或者第一方面任一种可能的实现方式,在第一方面的另一种可能的实现方式中,所述第一Handler类和所述第二Handler类的可见性均为私有。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京五八信息技术有限公司,未经北京五八信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201710625364.2/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top