[发明专利]一种事件监听方法、智能设备及存储介质在审
申请号: | 201710973641.9 | 申请日: | 2017-10-10 |
公开(公告)号: | CN107908443A | 公开(公告)日: | 2018-04-13 |
发明(设计)人: | 谷闹年 | 申请(专利权)人: | 武汉极意网络科技有限公司 |
主分类号: | G06F9/448 | 分类号: | G06F9/448;G06F11/34 |
代理公司: | 深圳市世纪恒程知识产权代理事务所44287 | 代理人: | 胡海国,杨小鑫 |
地址: | 430023 湖北省武汉市东湖开发区大学*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 事件 监听 方法 智能 设备 存储 介质 | ||
技术领域
本发明涉及互联网技术领域,尤其涉及一种事件监听方法、智能设备及存储介质。
背景技术
用户在使用基于安卓(Android)系统的智能设备时,比如,智能手机或平板电脑等设备,为了实时地确定用户当前的操作行为,智能设备需要具备监听点击事件的功能。其中,在Android系统的发展过程中,RecyclerView控件作为Android系统中原有的ListView控件的升级版而被人们所运用,但是,监听RecyclerView控件与ListView控件的点击事件在实现方式上存在差异。
这是因为,RecyclerView控件没有具备ListView控件中的setOnItemClickListener()方法,所以,在实现对于RecyclerView控件的监听时需要使用其他方式,比如,其一,可通过在创建ItemView时添加点击接口以实现回调,但是,在进行点击事件的埋点以获取统计数据时ItemView是无法获取的;其二,可通过反射机制以获取到所有控件的点击信息,但是,基于反射机制在页面的跳转过程将存在控件信息的缺失,所以,RecyclerView控件也不能进行监听;其三,也可通过AspectJ来找到控件的点击信息,但是,由于RecylerView控件没有setOnItemClickListener()方法,也不可对RecyclerView控件进行事件监听,其中,AspectJ是Java语言的一个面向切面编程(Aspect Oriented Programming,AOP)实现。所以,当前存在不能较好地实现对RecyclerView控件的事件进行监听的技术问题。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供一种事件监听方法、智能设备及存储介质,旨在解决当前存在的不能较好地实现对RecyclerView控件的事件进行监听的技术问题。
为实现上述目的,本发明提供一种事件监听方法,所述方法包括以下步骤:
智能设备遍历当前页面的各控件,判断遍历到的控件是否为RecyclerView控件;
在遍历到的控件为RecyclerView控件时,对遍历到的控件添加预设事件监听函数,所述预设事件监听函数用于对RecyclerView控件进行事件的监听。
优选地,所述智能设备遍历当前页面的各控件,判断遍历到的控件是否为RecyclerView控件,具体包括:
智能设备获取当前页面的各控件,对获取到的当前页面的各控件进行遍历;
判断遍历到的控件是否为RecyclerView控件;
相应地,所述在遍历到的控件为RecyclerView控件时,对遍历到的控件添加预设事件监听函数之后,所述方法还包括:
清除获取到的当前页面的各控件。
优选地,所述智能设备获取当前页面的各控件,对获取到的当前页面的各控件进行遍历之前,所述方法还包括:
对预设应用程序进行生命周期函数的注册;
相应地,所述智能设备获取当前页面的各控件,对获取到的当前页面的各控件进行遍历,具体包括:
智能设备在接收到所述预设应用程序的开启指令时,回调所述生命周期函数中的第一子函数,以获取当前页面的各控件;
对获取到的当前页面的各控件进行遍历。
优选地,所述智能设备在接收到所述预设应用程序的开启指令时,回调所述生命周期函数中的第一子函数,以获取当前页面的各控件,具体包括:
智能设备在接收到所述预设应用程序的开启指令时,获取当前窗口,并获取所述当前窗口的根视图;
根据所述根视图查找到当前页面的各控件。
优选地,所述清除获取到的当前页面的各控件,具体包括:
在接收到应用程序切换指令时,回调所述生命周期函数中的第二子函数,以清除获取到的当前页面的各控件,所述应用程序切换指令用于切换所述预设应用程序。
优选地,所述智能设备遍历当前页面的各控件,判断遍历到的控件是否为RecyclerView控件,具体包括:
智能设备遍历当前页面的各控件,判断遍历到的控件是否为ViewGroup控件;
对遍历到的ViewGroup控件进行重新遍历,判断遍历到的ViewGroup控件是否为RecyclerView控件。
优选地,所述在遍历到的控件为RecyclerView控件时,对遍历到的控件添加预设事件监听函数之后,所述方法还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉极意网络科技有限公司,未经武汉极意网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710973641.9/2.html,转载请声明来源钻瓜专利网。