ios无痕埋点_iOS - 无痕埋点+数据统计+记录用户行为轨迹

本文介绍了如何使用Aspects框架在iOS中实现无痕埋点,跟踪并记录用户行为轨迹。通过hook特定视图控制器的方法,如`viewDidLoad`,`viewWillDisappear`,`viewDidDisappear`和`viewDidAppear`,动态获取和设置页面别名,从而实现数据统计。文章详细解释了代码逻辑,并给出了实例。
摘要由CSDN通过智能技术生成

序言

该功能的实现是基于 Aspects 框架实现的,之前已经有对该框架做了深入的讲解,感兴趣的朋友可以先行阅读。iOS-Aspects框架详解

实现

调用Aspects框架的aspect_hookSelector方法对方法进行 hook

[BaseViewController aspect_hookSelector:@selector(viewDidLoad) withOptions:AspectPositionBefore usingBlock:^(id aspectInfo) {

BaseViewController *vc = aspectInfo.instance;

if (!vc.dataModel) vc.dataModel = [DataCubeModel new];

// 未设置别名使用控制器名

if (vc.dataModel.alias_page == nil) {

NSDictionary *dict = [DataCubeTracker sharedIntance].cubeMapp;

[dict enumerateKeysAndObjectsUsingBlock:^(NSString *key, NSString *obj, BOOL *stop) {

__block BOOL isContain = NO;

if ([obj containsString:@","]) {

NSArray *objArr = [obj componentsSeparatedByString:@","];

[objArr enumerateObjectsUsingBlock:^(NSString *obj1, NSUInteger idx,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值