V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
jpush
V2EX  ›  推广

iOS 轻松使用 App 数据统计

  •  
  •   jpush · 2017-03-24 16:42:15 +08:00 · 1450 次点击
    这是一个创建于 2801 天前的主题,其中的信息可能已经有所发展或是发生改变。
    • 想获取用户各项行为数据吗?
    • 想轻松查看用户行为图表吗?
    • 想高效进行 App 运营管理吗?

    想,来我带你玩转 App 数据统计。这里我使用专业、轻便的 JAnalytics。 本文内容分为两部分:代码示例&使用技巧部分、控制台图表查看部分。

    代码示例&使用技巧


    集成

    1. 下载 JAnalytics SDK
    2. 添加 Lib 文件夹下的全部文件至 Xcode Project
    3. 增加相关的 framework 依赖: UIKit.framework SystemConfiguration.framework CoreTelephony.framework CoreGraphics.framework Security.framework Foundation.framework CoreLocation.framework CoreFoundation.framework CFNetwork.framework libz.tbd libresolv.tbd

    初始化 SDK

    #import "JANALYTICSService.h"
    

    application:didFinishLaunchingWithOptions 中添加以下代码:

    代码示例
    JANALYTICSLaunchConfig * config = [[JANALYTICSLaunchConfig alloc] init];
    config.appKey = @"your appkey";
    config.channel = @"channel";     
    [JANALYTICSService setupWithConfig:config];
    

    其中的 appKey 参数,需要你在极光控制台注册个帐号,并创建一个 App 项目来获取。

    页面流统计

    • +startLogPageView:开始统计某页面,可以写在 ViewControler 的 viewDidAppear:
    • +stopLogPageView:结束统计某页面,可以写在 ViewControler 的 viewDidDisappear:
    代码示例
    - (void)viewDidAppear:(BOOL)animated {
      [JANALYTICSService startLogPageView:@"页面名称"];
    }
    - (void)viewDidDisappear:(BOOL)animated {
      [JANALYTICSService stopLogPageView:@"页面名称"];
    }
    
    使用技巧

    以上方法需要在所有 Controller 中全部写一遍,建议在自己的 UIViewController 基类 BaseViewController 或者为 UIViewController 添加 Category ,添加以下代码。只要写一遍即可统计所有现有或者新增的页面,既减少了代码量,也不用担心有遗漏的页面:

    - (void)viewDidAppear:(BOOL)animated {
      [JANALYTICSService startLogPageView:NSStringFromClass([self class])];
    }
    - (void)viewDidDisappear:(BOOL)animated {
      [JANALYTICSService stopLogPageView:NSStringFromClass([self class])];
    }
    

    在以上代码的基础上还可单独定义一个类似 PageNameFromClass 的方法,通过获取 class 转为具体的页面名称

    地理位置统计

    +setLatitude:longitude::上报地理位置信息

    代码示例
    [JANALYTICSService setLatitude:116.46 longitude:39.92];
    

    崩溃日志统计

    +crashLogON:开启对 crash 日志的收集 建议在 application:didFinishLaunchingWithOptions 调用该方法。

    代码示例
    [JANALYTICSService setLatitude:116.46 longitude:39.92];
    

    事件统计

    +eventRecord通过传入不同的事件模型来进行各种事件的统计,现支持的事件有:注册、登录、购买、浏览、计数、计算。

    代码示例
    [JANALYTICSService eventRecord:event];
    

    其中的 event 需要根据事件的不同进行创建。 例如注册事件:

    JANALYTICSRegisterEvent * event = [[JANALYTICSRegisterEvent alloc] init];
    event.success = YES;//是否注册成功
    event.method = @"注册方法"; 
    event.extra = @{@"自定义 key1":@"自定义 value1"};
    [JANALYTICSService eventRecord:event];
    

    各种不同事件的创建方法参照此处

    控制台图表查看


    控制台统计页面可以查看到 App 中各项数据的统计图表。

    • 免费功能:包括推送统计、用户统计、参与留存、错误分析、事件统计、页面统计等,也足以满足各项统计需求了。
    • VIP 功能:包括 终端统计、排行统计、用户画像等高级功能。

    其中的各项数据一般会在 App 调用相应接口之后每隔 1 小时进行刷新。 另外每项统计下面又包含多种不同功能,大家可以依次尝试一下。

    作者: pikacode - 极光( jpush 为极光团队账号)

    原文:iOS 轻松使用 App 数据统计

    知乎专栏:极光日报

    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2787 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 07:18 · PVG 15:18 · LAX 23:18 · JFK 02:18
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.