[发明专利]页面跳转监听方法及装置在审

专利信息
申请号: 201711172049.5 申请日: 2017-11-22
公开(公告)号: CN107967169A 公开(公告)日: 2018-04-27
发明(设计)人: 乔艳飞 申请(专利权)人: 北京搜狐新媒体信息技术有限公司
主分类号: G06F9/48 分类号: G06F9/48;G06F11/30
代理公司: 北京集佳知识产权代理有限公司11227 代理人: 王宝筠
地址: 100190 北京市海淀*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 页面 跳转 监听 方法 装置
【说明书】:

技术领域

发明数据处理领域,更具体的说,涉及页面跳转监听方法及装置。

背景技术

在Android系统中,对页面跳转的监听,实际上就是对Activity生命周期变化的监听。Activity是Android组件中最基本、最为常见用的组件之一。

现有的一种技术方案,利用Application组件通过ActivityLifecycleCall-backs使用接口提供了一套回调方法,用于让开发者对Activity的生命周期事件进行集中处理。但是,目前大部分重量级应用都采用了插件化开发,而插件中的Activity,通常都不是Android系统层面的真实Activity,所以插件中的Activity并不会调用系统层面callback,对于这种情况,利用Application组件通过ActivityLifecycleCallbacks使用接口提供的回调方法,就无法监听到Android系统中的Activity的状态变化了。并且,ActivityLifecycleCall backs只能在API 14+(Android 4.0+)的环境条件下使用,受Android系统版本限制。

现有的另一种技术方案,采用的是静态代码注入方式,利用AOP(Aspect Oriented Programming,面向切向编程)字节码插桩来侵入实现的Activity代码来完成,该方案虽然能够解决由于应用插件化而无法实现对Android系统Activity进行监听的问题,但却需要对所有的插件化应用进行AOP字节码插桩,实现复杂,联动性较强,导致安全性较差且不易维护。

所以,目前迫切需要一种简单、高效且安全可靠的页面跳转监听方案,能够在应用插件化的环境中对系统Activity的状态变化信息进行监听。

发明内容

有鉴于此,本发明提供了一种页面跳转监听方法及装置,以解决现有的页面跳转监听方案,虽然能够在应用插件化的环境中对系统Activity的状态变化进行监听,但其实现复杂、安全性较差且不易维护的技术问题。

为实现上述目的,本发明提供如下技术方案:

一种页面跳转监听方法,应用于Android系统,所述方法包括:

反射获取应用进程对应的ActivityThread对象;

反射获取与所述ActivityThread对象相对应的mH对象;

反射获取与mH对象相对应的mCallback对象;

将所述mCallback对象替换为预设对象;

利用所述预设对象,获取Activity变化消息;

根据所述Activity变化消息,获取Activity对象的状态变化信息;其中,所述Activity对象与所述Activity变化消息相对应。

优选的,所述将所述mCallback对象替换为预设对象包括:

当所述mCallback对象为空时,将所述mCallback对象替换为自定义的Hander.CallBack对象;

当所述mCallback对象不为空时,将所述mCallback对象替换为动态代理对象;所述动态代理对象是根据所述mCallback对象生成的。

优选的,所述利用所述预设对象,获取Activity变化消息包括:

当所述预设对象为所述Hander.CallBack对象时,利用所述Hander.CallBack对象获取Activity变化消息;

当所述预设对象为所述动态代理对象时,利用所述动态代理对象获取Activity变化消息。

优选的,所述根据所述Activity变化消息,获取Activity对象的状态变化信息包括:

根据所述Activity变化消息,获取与所述Activity对象相对应的ActivityClientRecord对象;

根据所述ActivityClientRecord对象记录的信息,获取所述Activity对象的状态变化信息。

优选的,所述根据所述Activity变化消息,获取与所述Activity对象相对应的ActivityClientRecord对象包括:

当所述Activity变化消息的类型为LAUNCH_ACTIVITY时,从所述Activity变化消息的附带信息中,获取与所述Activity对象相对应的ActivityClientRecord对象;

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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