账号统计

功能介绍

通过账号统计,可以实现对多种账号应用系统的统计,如微信/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多账号统计

  • 支持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登陆

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位正确的手机号码),否则无法识别,影响账号数据统计

Last updated