iOS 轻松使用 App 数据统计
- 想获取用户各项行为数据吗?
- 想轻松查看用户行为图表吗?
- 想高效进行 App 运营管理吗?
想,来我带你玩转 App 数据统计。这里我使用专业、轻便的 JAnalytics。
本文内容分为两部分:代码示例&使用技巧部分、控制台图表查看部分。
代码示例&使用技巧
集成
- 下载 JAnalytics SDK
- 添加
Lib文件夹下的全部文件至 Xcode Project - 增加相关的 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 - 极光
原文:iOS 轻松使用 App 数据统计
知乎专栏:极光日报
iOS 轻松使用 App 数据统计的更多相关文章
- 金牌架构师:我们是这样设计APP数据统计产品的
前言:近期,智能大数据服务商“个推”推出了应用统计产品“个数”,今天我们就和大家来谈一谈个数实时统计与AI数据智能平台整合架构设计. 很多人可能好奇,拥有数百亿SDK的个推,专注消息推送服务多年,现在 ...
- 个推数据统计产品(个数)iOS集成实践
最近业务方给我们部门提了新的需求,希望能一站式统计APP的几项重要数据.这次我们尝试使用的是个推(之前专门做消息推送的)旗下新推出的产品“个数·应用统计”,根据官方的说法,个推的数据统计产品通过专业的 ...
- Fiddler基本原理与抓取Andriod与IOS的App数据包
Fiddler基本原理 Fiddler数据包的原理是Fiddler将自己设置为一个代理服务器,默认监听127.0.0.1:8888端口同时将浏览器的HTTP.HTTPS协议设置为使用代理服务器也就是使 ...
- iOS-----GitHub上比较齐全的iOS 工具和App
Github-iOS 工具 和 App 系统基础库 Category/Util sstoolkit 一套Category类型的库,附带很多自定义控件 功能不错- BFKit 又一套Ca ...
- Apple的App Analytics统计平台你必须知道的Q&A整理与翻译
Apple的App Analytics统计平台你必须知道的Q&A整理与翻译 Apple最近在iTunesConnect里最新发布了App Analytics统计平台,提供了现有友盟统计平台和自 ...
- Android之友盟多渠道打包与数据统计
文章大纲 一.多渠道打包与数据统计介绍二.友盟实现多渠道打包实战三.友盟数据统计实战四.项目源码下载五.参考文章 一.多渠道打包与数据统计介绍 多渠道打包,相信很多同学都知道.在Android ...
- <iOS开发>之App上架流程(2017)
本文主要介绍了App上架流程,以及上架过程中会遇到的一些问题. 一.App上架前的准备. 上架前,需要开发人员有苹果开发者账号,具体请阅读苹果开发者账号注册申请流程.本文是在已经拥有开发者账号的前提下 ...
- iOS 最新公布app到AppStore全流程具体解释
一.生成公布证书(证书的作用:类似于驾照,证明你的身份能够进行开发人员一些操作) 打开https://developer.apple.com 点击右上角开发人员中心 这里输入你付款过的Apple 帐号 ...
- App渠道统计方法全面解析 总有一种适合你
一.App渠道统计对于App推广运营的重要性 (理解App渠道统计重要性的老司机,请直接移步到第二部分) App服务的竞争重点已经由功能竞争转向市场和运营的竞争,而App的推广与运营离不开App渠道统 ...
随机推荐
- 【LA3415 训练指南】保守的老师 【二分图最大独立集,最小割】
题意 Frank是一个思想有些保守的高中老师.有一次,他需要带一些学生出去旅行,但又怕其中一些学生在旅行中萌生爱意.为了降低这种事情发生的概率,他决定确保带出去的任意两个学生至少要满足下面四条中的一条 ...
- 混合开发之iOS快速集成DSBridge
DSBridge-IOS github:https://github.com/wendux/DSBridge-IOS 使用 Native 实现API 代理类 //JsApiTest.m @implem ...
- 虚拟机安装centos发现inet为127.0.0.1,导致Xshell连接不上
问题如标题所示: 设置网卡开机自动启动: 实质linux是看一个网卡文件的配置,就是/etc/sysconfig/network-scripts/ifcfg-eth0 (这个文件名看你网卡名称而异,具 ...
- 修改字段注释modify
alter table test1 modify 字段名 类型 comment '修改后的字段注释'; ALTER TABLE tc_activity_miaosha MODIFY `validity ...
- a Concise Sparse Matrix package
简明稀疏矩阵包 https://github.com/kulhanek/csparse https://github.com/kulhanek/csparse
- BS4爬虫实例应用-CISP
爬取目前在官网可查询的CISP证书编号以及有效期并入库 也算是暴力破解,burp使用grep功能呢也可以实现. 下面是python的代码 #coding=utf-8 import requests i ...
- Web测试实践--Rec 4
累计完成任务情况: 阶段内容 参与人 整理小组工作记录,维护小组博客 小尹 分析产品并撰写文档相关板块 小靳 撰写文档中对被测系统进行功能性分析相关板块 小龙.小黄 撰写文档中用户调研相关板块 小熊 ...
- 1700 Crossing River
题目链接: http://poj.org/problem?id=1700 1. 当1个人时: 直接过河 t[0]. 2. 当2个人时: 时间为较慢的那个 t[1]. 3. 当3个人时: 时间为 t[0 ...
- 用Collections升降排序
//期末从业人员 总收入 资产总计等 升降 排序 if("qmcyry".equals(sss)){ if("desc".equals(orders)){ Co ...
- Qt之生成pdf(转)
Qt中如何让图片.文本.HTML或者其他形式的内容生成pdf呢?主要利用QPrinter来实现,QPrinter不止可以操作打印机来打印纸张文件,并且可以将文件保存至磁盘,存储为pdf格式的文件. ...