一种基于制造技术

技术编号:39675969 阅读:8 留言:0更新日期:2023-12-11 18:42
本发明专利技术提供的一种基于

【技术实现步骤摘要】
一种基于AOP用户行为数据统一采集的开发方法


[0001]本专利技术涉及手机银行
app
领域,尤其涉及一种基于
AOP
用户行为数据统一采集的开发方法


技术介绍

[0002]用户使用手机银行
app
完成某种业务或者参与某个营销活动都会产生用户的行为数据,业务人员根据需要统计他们感兴趣的数据如:包括每个页面访问数某个页面停留时长,页面内业务功能的使用率,这样的信息收集可以大致分为两种:页面统计,操作行为统计

这些数据的捕获,处理,上报以及实施过程统称为埋点

这些通过埋点收集的数据以可视化的形式呈现出来,作为产品方向和运营决策的依据

[0003]产品人员对
app
内页面的业务模块进行埋点说明,包括埋点事件类型,埋点属性值定义,然后制定成埋点文档表格

开发人员根据埋点说明在业务模块内加入埋点代码,因为侵入了业务代码,系统代码,对已有代码产生了污染,不易维护,上述埋点简称代码埋点

代码埋点需要产品人员,开发人员共同维护,易出现遗漏,且使用成本高

[0004]代码埋点前期需要运营和产品做好业务埋点表,需要大量手工录入,数据不全面,易出现遗漏,每次业务变化,产品人员都需要更新埋点表,开发人员需要及时开发埋点代码,且每次产品人员和开发人员都要共同参与

开发人员每次在业务模块添加埋点代码后都需要跟随
app
版本一起发布才能生效,无法动态更新及时添加埋点,导致埋点时效性弱,耽误数据的收集与统计

[0005]基于
AOP
无代码埋点实现了对原有代码的零侵入,好拆解,易于开发人员进行维护,用研或者产品人员一方负责即可无需双方共同维护

利用圈选工具进行可视化圈选由圈选工具生成需要的埋点说明并上传,不需要产品人员提供埋点表

此埋点方案覆盖
App
运行时的所有事件,采集到的数据全面

无遗漏,
App
不发版就可完成新业务数据采集工作埋点时效性强,埋点的配置方式和解析方式可脱离手机银行
app
封装为
SDK(
开发工具包
)
在多个项目中重复使用

做用户行为数据收集业务时,一次接入无埋点
sdk
即可,无需二次开发


技术实现思路

[0006]鉴于上述问题,提出了本专利技术以便提供克服上述问题或者至少部分地解决上述问题的一种基于
AOP
用户行为数据统一采集的开发方法

[0007]根据本专利技术的一个方面,提供了一种基于
AOP
用户行为数据统一采集的开发方法,所述开发方法包括:
[0008]利用
App

Runtime
特性实现
Method Swizzling
交换方法,对所述交换方法进行
AOP
形式的封装;
[0009]利用
hook
方法完成
App
系统类事件拦截;
[0010]利用
hook
方法完成
App
系统代理类的拦截;
[0011]利用
hook
方法完成
App
自定义类的事件拦截;
[0012]对
APP
中某个页面的某个
view
进行数据收集

统计与分析;
[0013]通过
APP

KVC
特性获取对象的属性

[0014]可选的,所述利用
hook
方法完成
App
系统类事件拦截具体包括:
[0015]hook
了系统的
UIViewController
的生命周期的方法

[0016]可选的,所述利用
hook
方法完成
App
系统代理类的拦截具体包括:
[0017]在实现列表元素点击事件的收集时,采用
[0018]Hook UITableViewDelegate
[0019]中的
tableView:didSelectRowAtIndexPath
方法

[0020]可选的,所述利用
hook
方法完成
App
自定义类的事件拦截具体包括:
[0021]手势对象所指定的
target
中的
action
方法,按钮点击的
UIControlEvent
方法

[0022]可选的,所述对
APP
中某个页面的某个
view
进行数据收集

统计与分析具体包括:
[0023]采用
viewPath
,计算出的
viewID
来标识,能够唯一的标识与定位视图

[0024]可选的,所述通过
APP

KVC
特性创建
KVC
配置文件

[0025]可选的,所述
KVC
配置文件的配置信息包括:
[0026]用来标识应用的
appKey

[0027]用于标识应用的版本号
appVersion

[0028]标识某个事件类型
viewEvent

[0029]目标
view

viewTree
中的信息
viewPath

[0030]目标
view
与要收集的业务数据间的关联路径,用于
KVC
取值;
[0031]为要收集的业务数据定义一个
key
,最终组成
key

value
的形式上报,用于区分多个收集的数据

[0032]本专利技术提供的一种基于
AOP
用户行为数据统一采集的开发方法,所述开发方法包括:利用
App

Runtime
特性实现
Method Swizzling
交换方法,对所述交换方法进行
AOP
形式的封装;利用
hook
方法完成
App
系统类事件拦截;利用
hook
方法完成
App
系统代理类的拦截;利用
hook
...

【技术保护点】

【技术特征摘要】
1.
一种基于
AOP
用户行为数据统一采集的开发方法,其特征在于,所述开发方法包括:利用
App

Runtime
特性实现
Method Swizzling
交换方法,对所述交换方法进行
AOP
形式的封装;利用
hook
方法完成
App
系统类事件拦截;利用
hook
方法完成
App
系统代理类的拦截;利用
hook
方法完成
App
自定义类的事件拦截;对
APP
中某个页面的某个
view
进行数据收集

统计与分析;通过
APP

KVC
特性获取对象的属性
。2.
根据权利要求1所述的一种基于
AOP
用户行为数据统一采集的开发方法,其特征在于,所述利用
hook
方法完成
App
系统类事件拦截具体包括:
hook
了系统的
UIViewController
的生命周期的方法
。3.
根据权利要求1所述的一种基于
AOP
用户行为数据统一采集的开发方法,其特征在于,所述利用
hook
方法完成
App
系统代理类的拦截具体包括:在实现列表元素点击事件的收集时,采用
hook UITableViewDelegate
中的
tableView:didSelectRowAtIndexPath
方法
。4.
根据权利要求1所述的一种基于
AOP
用户行为数据统一采集的开发方法,其...

【专利技术属性】
技术研发人员:燕航张自力
申请(专利权)人:北银金融科技有限责任公司
类型:发明
国别省市:

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

1