1. 账号统计


1.1. 功能介绍

通过账号统计,可以实现对多种账号应用系统的统计,如微信/qq/微博等账号分类及统计,统计数据指标含新增账号、活跃账号等,相对于设备维度统计,可以帮助开发者更贴合业务统计用户注册以及登录情况。

快速入口:

1.2. 账号类型支持

支持统计的账号分类如下:

1/通用账号 手机号、邮箱

2/第三方账号

  • 国内: QQ号、微信openid、QQ openid、新浪微博、支付宝、淘宝、豆瓣、百度、京东、钉钉、小米

  • 国外: facebook、twitter、google、linkin、line、instagram

3/其他 游客模式及自定义

1.3. 如何统计

使用账号统计之前时,需先在iOS,Android端接入对应的SDK,如已接入请核对sdk版本号是否支持:
iOS SDK:需要使用V2.4.0及之后的版本(点击下载)
Android SDK:需要使用V3.4.3及之后的版本(点击下载)

1.3.1. Android SDK多账号统计

  • 支持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类是账号的实体类,主要包含各个属性的配置方法以及定义的枚举。

方法列表

方法原型 参数 说明
StatMultiAccount(AccountType type, String id) type:账号类型;id:账号 构造方法
StatMultiAccount setType(AccountType type) type:账号类型 设置账号类型
AccountType getType() 返回值:账号类型 获取账号类型
StatMultiAccount setId(String id) id:账号 设置账号
String getId() 返回值:账号 获取账号
StatMultiAccount setRequestType(AccountRequestType requestType) requestType:账号请求类型 设置账号的请求类型
AccountRequestType getRequestType() 返回值:账号的请求类型 获取账号的请求类型
StatMultiAccount setCurrentStatusType(AccountStatus currentStatusType) currentStatusType:账号当前状态 设置账号当前状态
AccountStatus getCurrentStatusType() 返回值:账号当前状态 获取账号的状态
StatMultiAccount setLastTimeSec(long lastTime) lastTime:最近登陆的时间,单位为秒 设置最近登陆时间
long getLastTimeSec() 返回值:近登陆时间 获取近登陆时间
StatMultiAccount setExpireTimeSec(long expireTimeSec) expireTimeSec:账号登陆态的过期时间,单位为秒 设置账号登陆态的过期时间
long getExpireTimeSec() 返回值:过期时间 获取过期时间

AccountType账号类型

枚举值 说明
PHONE_NO 手机号码
EMAIL email(邮箱)
QQ_NUM QQ号码
OPEN_WEIXIN 微信 openid
OPEN_QQ 手Q openid
OPEN_WEIBO 微博
OPEN_ALIPAY 支付宝
OPEN_TAOBAO 淘宝
OPEN_DOUBAN 豆瓣
OPEN_FACEBOOK facebook
OPEN_TWITTER twitter
OPEN_GOOGLE google
OPEN_BAIDU 百度
OPEN_JINGDONG 京东
OPEN_DINGDING 钉钉
OPEN_XIAOMI 小米
OPEN_LINKIN linkin
OPEN_LINE line
OPEN_INSTAGRAM instagram
GUEST_MODE 游客模式
CUSTOM 自定义
UNDEFINED 未定义,默认值

AccountStatus账号状态

枚举值 说明
UNDEFINED 未定义,默认值
NORMAL 正常
LOGOUT 注销

AccountRequestType账号登陆请求类型

枚举值 说明
UNDEFINED 未定义,默认值
NORMAL_LOGIN 正常登陆
REFLESH_TOKEN 刷票
EXCH_SHORT_TOKEN 换短票
EXCH_3PART_TOKEN 第三方SDK登陆

1.3.2. iOS SDK多账号

账号统计的全部接口都在 MTA+Account.h 头文件中。详细的接口说明请前往头文件查看,这里以邮箱账号为例,介绍一下基础用法。

登录

```c
void login() {
    MTAAccountInfo *info = [MTAAccountInfo new];
    // 如果是其他类型的账号,请设置对应的枚举值
    info.type = MTAAccountEmail;
    info.account = @"example@example.com";
    info.accountStatus = MTAAccountStatusNormal;

    [MTA reportAccountExt:@[info]];
}
```

注销

```c
void logout() {
    MTAAccountInfo *info = [MTAAccountInfo new];

    info.type = MTAAccountEmail;
    info.account = @"example@example.com";
    // 这里设置成logout
    info.accountStatus = MTAAccountStatusLogout;

    [MTA reportAccountExt:@[info]];
}
```

注销账号一个账号的同时登录另一个账号

```c
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.4. 注意事项

1)一个账号使用多种注册方式(游客模式,qq账号,微信账号)注册,我们统计为多个账号

例如:用户游客模式登录后又使用另一种微信登录账号,如果当时只上报了游客模式的用户类别,而未上报微信登录账号类别,则会在账号处算为1个账号;如果同时上报了游客模式和微信登录账号,则算为2个账号

建议尽可能一次性上传应用可支持的多种账号类别,便于后续分类别查看账号数据统计情况

2)若没有上报账号类型, 此时账号类型视为0 (UNDEFINED),不建议用户上报此类型

3)请按照账号类型对应的正确格式进行上报(如账号类型选择手机号,则上报11位正确的手机号码),否则无法识别,影响账号数据统计

results matching ""

    No results matching ""