功能介绍
通过账号统计,可以实现对多种账号应用系统的统计,如微信/qq/微博等账号分类及统计,统计数据指标含新增账号、活跃账号等,相对于设备维度统计,可以帮助开发者更贴合业务统计用户注册以及登录情况。
快速入口:
账号类型支持
支持统计的账号分类如下:
1/通用账号 手机号、邮箱
2/第三方账号
国内: QQ号、微信openid、QQ openid、新浪微博、支付宝、淘宝、豆瓣、百度、京东、钉钉、小米
国外: facebook、twitter、google、linkin、line、instagram
3/其他 游客模式及自定义
如何统计
使用账号统计之前时,需先在iOS,Android端接入对应的SDK,如已接入请核对sdk版本号是否支持:
iOS SDK:需要使用V2.4.0及之后的版本(点击下载)
Android SDK:需要使用V3.4.3及之后的版本(点击下载)
Android SDK多账号统计
方法
包括登陆、注销等接口
/**
* 上报单个账号,通常用于登陆/刷票登陆/第三方登陆等时机调用
* @param context 上下文
* @param account 待上报的账号
*/
public static void reportMultiAccount(Context context, final StatMultiAccount account);
/**
* 上报多个账号,适用于App内部已经绑定了多个账号的情况下使用
* @param context 上下文
* @param accountList 待上报的账号列表
*/
public static void reportMultiAccount(Context context, final List<StatMultiAccount> accountList);
/**
* 获取SDK内部账号列表
* @return 账号列表
*/
public static Map<StatMultiAccount.AccountType, StatMultiAccount> getMultiAccount();
/**
* 根据账号类型删除某个账号,通常用于注销时调用
* @param context 上下文
* @param accountType 待删除的账号类型
*/
public static void removeMultiAccount(Context context, StatMultiAccount.AccountType accountType);
示例
// 登陆时调用
StatMultiAccount account = new StatMultiAccount(
StatMultiAccount.AccountType.PHONE_NO, "1380000000");
long time = System.currentTimeMillis() / 1000;
// 登陆时间,单秒为秒
account.setLastTimeSec(time);
// 过期时间
account.setExpireTimeSec(time + 24 * 60);
StatService.reportMultiAccount(context, account);
// 注销时调用
StatService.removeMultiAccount(context, StatMultiAccount.AccountType.PHONE_NO);
StatMultiAccount类说明
StatMultiAccount
类是账号的实体类,主要包含各个属性的配置方法以及定义的枚举。
方法列表
AccountType
账号类型
AccountStatus
账号状态
AccountRequestType
账号登陆请求类型
iOS SDK多账号
账号统计的全部接口都在 MTA+Account.h 头文件中。详细的接口说明请前往头文件查看,这里以邮箱账号为例,介绍一下基础用法。
登录
void login() {
MTAAccountInfo *info = [MTAAccountInfo new];
// 如果是其他类型的账号,请设置对应的枚举值
info.type = MTAAccountEmail;
info.account = @"example@example.com";
info.accountStatus = MTAAccountStatusNormal;
[MTA reportAccountExt:@[info]];
}
注销
void logout() {
MTAAccountInfo *info = [MTAAccountInfo new];
info.type = MTAAccountEmail;
info.account = @"example@example.com";
// 这里设置成logout
info.accountStatus = MTAAccountStatusLogout;
[MTA reportAccountExt:@[info]];
}
注销账号一个账号的同时登录另一个账号
void exchange() {
MTAAccountInfo *info1 = [MTAAccountInfo new];
// 如果是其他类型的账号,请设置对应的枚举值
info1.type = MTAAccountEmail;
info1.account = @"example@example.com";
info1.accountStatus = MTAAccountStatusNormal;
MTAAccountInfo *info2 = [MTAAccountInfo new];
info2.type = MTAAccountQQOpenid;
info2.account = @"qqOpenId";
// 这里设置成logout
info2.accountStatus = MTAAccountStatusLogout;
[MTA reportAccountExt:@[info1, info2]];
}
注意事项
1)一个账号使用多种注册方式(游客模式,qq账号,微信账号)注册,我们统计为多个账号
例如:用户游客模式登录后又使用另一种微信登录账号,如果当时只上报了游客模式的用户类别,而未上报微信登录账号类别,则会在账号处算为1个账号;如果同时上报了游客模式和微信登录账号,则算为2个账号
建议尽可能一次性上传应用可支持的多种账号类别,便于后续分类别查看账号数据统计情况
2)若没有上报账号类型, 此时账号类型视为0 (UNDEFINED),不建议用户上报此类型
3)请按照账号类型对应的正确格式进行上报(如账号类型选择手机号,则上报11位正确的手机号码),否则无法识别,影响账号数据统计