Skip to content

iOS埋点接入指南

WARNING

游戏层接入U8SDK行为日志/统计插件接口后,需要通过打包工具打入具体的行为日志/统计插件SDK,才能统计到数据。

目前支持的统计/埋点SDK如下:

插件SDK名称SDK目录
友盟统计UmengAction

基础SDK配置

埋点插件接入,依赖U8聚合SDK。 如果还没有按U8聚合SDK接入文档进行配置,请先接入U8SDK

在接入文件中,引入头文件

objc

#import <U8SDKCore/U8SDKCore.h>

账号注册

在玩家注册成功的时候调用账号注册埋点上报接口。 如果游戏层没有特殊需求, 可以在收到聚合SDK登录监听中的OnUserLogin回调,并判断UToken中newAccount为1时调用:

objc

[[U8Action sharedInstance] userRegister:@{
        U8_ACTION_KEY_SUCCESS:@"1",
        U8_ACTION_KEY_METHOD: @"channel"
}];

参数说明:

参数名称参数类型参数说明
U8_ACTION_KEY_SUCCESSint行为是否成功, 1: 成功;0:失败
U8_ACTION_KEY_METHODString注册方式,默认:channel

登录

在玩家登陆成功的时候调用登录埋点上报接口,如果游戏层没有特殊需求,可以在收到聚合SDK登录监听中的OnUserLogin回调时调用:

objc

[[U8Action sharedInstance] login:@{
        U8_ACTION_KEY_SUCCESS:@"1",
        U8_ACTION_KEY_METHOD:@"channel"
}];

参数说明:

参数名称参数类型参数说明
U8_ACTION_KEY_SUCCESSint行为是否成功, 1: 成功;0:失败
U8_ACTION_KEY_METHODString注册方式,比如wechat等

角色创建

在玩家创建角色成功时调用角色创建埋点接口。如果游戏没有角色概念,可以在游戏自己的账号生成之后调用:

objc

[[U8Action sharedInstance] createRole:@{
        U8_ACTION_KEY_SUCCESS: @"1",
        U8_ACTION_KEY_SERVERID: @"1",
        U8_ACTION_KEY_SERVER_NAME:@"一区",
        U8_ACTION_KEY_ROLEID:@"1",
        U8_ACTION_KEY_ROLE_NAME:@"天下第一",
        U8_ACTION_KEY_ROLE_LEVEL:@"99"
}];

参数说明:

参数名称参数类型参数说明
U8_ACTION_KEY_SUCCESSboolean行为是否成功, 1: 成功;0:失败
U8_ACTION_KEY_SERVERIDString服务器ID
U8_ACTION_KEY_SERVER_NAMEString服务器名称
U8_ACTION_KEY_ROLEIDString角色ID
U8_ACTION_KEY_ROLE_NAMEString角色名称
U8_ACTION_KEY_ROLE_LEVELString角色等级

进入游戏

在玩家进入游戏内时,调用进入游戏埋点接口:

objc
[[U8Action sharedInstance] enterGame:@{
        U8_ACTION_KEY_SUCCESS: @"1",
        U8_ACTION_KEY_SERVERID: @"1",
        U8_ACTION_KEY_SERVER_NAME:@"一区",
        U8_ACTION_KEY_ROLEID:@"1",
        U8_ACTION_KEY_ROLE_NAME:@"天下第一",
        U8_ACTION_KEY_ROLE_LEVEL:@"99"
}];

参数说明:

参数名称参数类型参数说明
U8_ACTION_KEY_SUCCESSboolean行为是否成功, 1: 成功;0:失败
U8_ACTION_KEY_SERVERIDString服务器ID
U8_ACTION_KEY_SERVER_NAMEString服务器名称
U8_ACTION_KEY_ROLEIDString角色ID
U8_ACTION_KEY_ROLE_NAMEString角色名称
U8_ACTION_KEY_ROLE_LEVELString角色等级

等级提升

在玩家角色等级升级时,调用等级提升埋点接口:

objc
    [[U8Action sharedInstance] levelUp:@{
            U8_ACTION_KEY_SUCCESS: @"1",
            U8_ACTION_KEY_SERVERID: @"1",
            U8_ACTION_KEY_SERVER_NAME:@"一区",
            U8_ACTION_KEY_ROLEID:@"1",
            U8_ACTION_KEY_ROLE_NAME:@"天下第一",
            U8_ACTION_KEY_ROLE_LEVEL:@"100"
    }];

参数说明:

参数名称参数类型参数说明
U8_ACTION_KEY_SUCCESSboolean行为是否成功, 1: 成功;0:失败
U8_ACTION_KEY_SERVERIDString服务器ID
U8_ACTION_KEY_SERVER_NAMEString服务器名称
U8_ACTION_KEY_ROLEIDString角色ID
U8_ACTION_KEY_ROLE_NAMEString角色名称
U8_ACTION_KEY_ROLE_LEVELString角色等级

充值

当玩家在游戏中付费成功时调用, 如果游戏层没有特殊需求, 可以在收到聚合SDK支付监听中OnEventWithCode中调用:

objc
[[U8Action sharedInstance] purchase:@{
        U8_ACTION_KEY_SUCCESS: @"1",
        U8_ACTION_KEY_SERVERID: @"1",
        U8_ACTION_KEY_SERVER_NAME:@"一区",
        U8_ACTION_KEY_ROLEID:@"1",
        U8_ACTION_KEY_ROLE_NAME:@"天下第一",
        U8_ACTION_KEY_ROLE_LEVEL:@"100",
        U8_ACTION_KEY_PRODUCT_TYPE: @"礼包",
        U8_ACTION_KEY_PRODUCTID: @"p1",
        U8_ACTION_KEY_PRODUCT_NAME: @"60钻石",
        U8_ACTION_KEY_PRODUCT_NUM: @"1",
        U8_ACTION_KEY_PAY_TYPE: @"channel",
        U8_ACTION_KEY_CURRENCY: @"CNY",
        U8_ACTION_KEY_PRICE: @"600",    //fen
        U8_ACTION_KEY_ORDERID: @"542rwer223244"
}];

参数说明:

参数名称参数类型参数说明
U8_ACTION_KEY_SUCCESSboolean行为是否成功, 1: 成功;0:失败
U8_ACTION_KEY_SERVERIDString服务器ID
U8_ACTION_KEY_SERVER_NAMEString服务器名称
U8_ACTION_KEY_ROLEIDString角色ID
U8_ACTION_KEY_ROLE_NAMEString角色名称
U8_ACTION_KEY_ROLE_LEVELString角色等级
U8_ACTION_KEY_PRODUCT_TYPEString商品类型,比如礼包,首冲,充值项
U8_ACTION_KEY_PRODUCTIDString商品ID
U8_ACTION_KEY_PRODUCT_NAMEString商品名称
U8_ACTION_KEY_PRODUCT_NUMString商品数量
U8_ACTION_KEY_PAY_TYPEString支付方式,比如alipay等,如果获取不到,可以传channel
U8_ACTION_KEY_CURRENCYString币种,默认CNY
U8_ACTION_KEY_PRICEString金额:单位分
U8_ACTION_KEY_ORDERIDString游戏唯一订单号

购买行为

当玩家在游戏中购买道具的时候调用。 通常是玩家使用游戏币购买道具的时候,比如玩家用钻石购买了XXX礼包,购买了XXX道具等。

objc
[[U8Action sharedInstance] buy:@{
        U8_ACTION_KEY_SUCCESS: @"1",
        U8_ACTION_KEY_SERVERID: @"1",
        U8_ACTION_KEY_SERVER_NAME:@"一区",
        U8_ACTION_KEY_ROLEID:@"1",
        U8_ACTION_KEY_ROLE_NAME:@"天下第一",
        U8_ACTION_KEY_ROLE_LEVEL:@"100",
        U8_ACTION_KEY_BUY_TYPE: @"基金",
        U8_ACTION_KEY_TARGET_ID: @"1",
        U8_ACTION_KEY_TARGET_NAME: @"100基金",
        U8_ACTION_KEY_TARGET_NUM: @"100",
        U8_ACTION_KEY_V_CURRENCY: @"1",
        U8_ACTION_KEY_V_CUREENCY_NAME: @"钻石",
        U8_ACTION_KEY_CURRENCY: @"个",
        U8_ACTION_KEY_COST: @"10"
}];

参数说明:

参数名称参数类型参数说明
U8_ACTION_KEY_SUCCESSboolean行为是否成功, 1: 成功;0:失败
U8_ACTION_KEY_SERVERIDString服务器ID
U8_ACTION_KEY_SERVER_NAMEString服务器名称
U8_ACTION_KEY_ROLEIDString角色ID
U8_ACTION_KEY_ROLE_NAMEString角色名称
U8_ACTION_KEY_ROLE_LEVELString角色等级
U8_ACTION_KEY_BUY_TYPEString购买类型,比如礼包,基金等
U8_ACTION_KEY_TARGET_IDString购买项的ID
U8_ACTION_KEY_TARGET_NAMEString购买项的名称,比如XX礼包
U8_ACTION_KEY_TARGET_NUMString购买数量
U8_ACTION_KEY_V_CURRENCYString是否虚拟币单位,一般设置为true
U8_ACTION_KEY_V_CUREENCY_NAMEString虚拟币名称,比如钻石
U8_ACTION_KEY_CURRENCYString币种单位,比如“个”
U8_ACTION_KEY_COSTString耗费的虚拟币个数,比如花费100钻石购买了一个礼包,这里填100

任务关卡

当玩家在游戏中完成某项任务、关卡、新手引导等地方调用。

objc
[[U8Action sharedInstance] task:@{
        U8_ACTION_KEY_SUCCESS: @"1",
        U8_ACTION_KEY_SERVERID: @"1",
        U8_ACTION_KEY_SERVER_NAME:@"一区",
        U8_ACTION_KEY_ROLEID:@"1",
        U8_ACTION_KEY_ROLE_NAME:@"天下第一",
        U8_ACTION_KEY_ROLE_LEVEL:@"100",
        U8_ACTION_KEY_TASK_TYPE: @"关卡",
        U8_ACTION_KEY_TASKID: @"1",
        U8_ACTION_KEY_TASK_NAME: @"第一关:新手村",
        U8_ACTION_KEY_TASK_LEVEL: @"1",
        U8_ACTION_KEY_TASK_DESC: @"简单难度关卡"
}];

SDKParams参数内容:

参数名称参数类型参数说明
U8_ACTION_KEY_SUCCESSboolean行为是否成功, 1: 成功;0:失败
U8_ACTION_KEY_SERVERIDString服务器ID
U8_ACTION_KEY_SERVER_NAMEString服务器名称
U8_ACTION_KEY_ROLEIDString角色ID
U8_ACTION_KEY_ROLE_NAMEString角色名称
U8_ACTION_KEY_ROLE_LEVELString角色等级
U8_ACTION_KEY_TASK_TYPEString任务类型,比如任务、关卡、新手引导等
U8_ACTION_KEY_TASKIDString任务ID
U8_ACTION_KEY_TASK_NAMEString任务名称
U8_ACTION_KEY_TASK_LEVELString任务难度或者等级等信息
U8_ACTION_KEY_TASK_DESCString任务描述

自定义上报

游戏中需要自定义其他行为的上报时调用:

objc
[[U8Action sharedInstance] customEventWithName:@"customEvent" params:@{
    @"param1": @"1",
    @"param2": @"2"
}];

参数说明:

参数名称参数类型参数说明
nameString自定义事件的名称
paramsString自定义事件的数据,NSDictionary格式

版权所有© 2021-2030 上海丞诺网络科技有限公司