事件配置

优质
小牛编辑
176浏览
2023-12-01

事件埋点统计,建议您使用可视化圈选功能。

此处介绍的是传统的手动埋点事件统计。

手动埋点事件目前包括两种类型,有时长的事件统计和无时长的事件统计。

其中的"eventId"和"attributes字典参数的key",需要预先在百度移动统计网页上进行配置,配置步骤如下:

eventId配置

  1. 登录MTJ网站,进入应用报告,在左侧栏目选择事件分析,然后点击+号添加埋点事件

    Add File 1

  2. 在弹出的窗口中,根据Web页面的提示,添加EventId及名称。这里的EventId就是在代码中埋点使用的id。

    Add File 1

attribue配置(可选)

  1. 在创建的事件右侧,点击设置

    Add File 1

  2. 在弹出的新页面中,填写参数配置。这里填写的配置名称,需要与代码中attributes参数的key值一致,具体调用代码可见下文。

    Add File 1

接口说明及调用示例

以下的事件埋点Api,可以灵活使用,没有固定的调用场景,在程序的业务场景触发处埋点即可。例如要统计“加入购物车”事件,可以将代码埋在“加入购物车”按钮的点击触发函数中。

1. 无时长事件分析

记录一次事件的发生。

eventId请在网站上创建和对应的attribute的key请在网站上创建,未创建的evenId和key将无法统计。

 @param eventId 事件Id,提前在网站端创建
 @param attributes 事件属性,对应的key需要在网站上创建,注意:value只接受NSString
// 标准无时长事件埋点
- (void)logEvent:(NSString *)eventId;
// 无时长事件埋点,带attributes参数。
- (void)logEvent:(NSString *)eventId attributes:(NSDictionary *)attributes;

//调用举例
[[BaiduMobStat defaultStat] logEvent:@"Event1"];
[[BaiduMobStat defaultStat] logEvent:@"Event1" attributes:@{@"商品类别": @"a",  @"数量": @"2", @"价格": @"100"}];
// 标准无时长事件埋点
func logEvent(eventId: String!)
// 无时长事件埋点,带attributes参数
func logEvent(eventId: String!, attributes: [String!: String!])

//调用举例
BaiduMobStat.default().logEvent("Event1")
BaiduMobStat.default().logEvent("Event1", attributes: ["商品类别": "a", "数量": "2", "价格": "100"])

2. 固定时长事件分析

记录一次固定时长事件的发生,适用于可以提前预知事件发生的时长的情况。

eventId请在网站上创建和对应的attribute的key请在网站上创建,未创建的evenId和key将无法统计。

 @param eventId 事件Id,提前在网站端创建
 @param duration 已知的自定义事件时长,单位为毫秒(ms)
 @param attributes 事件属性,对应的key需要在网站上创建,注意:value只接受NSString
// 标准时长事件埋点
- (void)logEventWithDurationTime:(NSString *)eventId durationTime:(unsigned long)duration;
// 时长事件埋点,带attributes参数
- (void)logEventWithDurationTime:(NSString *)eventId durationTime:(unsigned long)duration attributes:(NSDictionary *)attributes;

//调用举例
[[BaiduMobStat defaultStat] logEventWithDurationTime:@"Event2" durationTime:100];
[[BaiduMobStat defaultStat] logEventWithDurationTime:@"Event2" durationTime:100 attributes:@{@"商品类别": @"a",  @"数量": @"2", @"价格": @"100"}];
// 标准时长事件埋点
func logEvent(eventId: String!, durationTime: UInt)
// 时长事件埋点,带attributes参数
func logEvent(eventId: String!, durationTime: UInt, attributes: [String!: String!])

//调用举例
BaiduMobStat.default().logEvent(withDurationTime: "Event2", durationTime: 100)
BaiduMobStat.default().logEvent(withDurationTime: "Event2", durationTime: 100, attributes: ["商品类别": "a", "数量": "2", "价格": "100"])

3. 自定义时长事件分析

记录一次事件发生的起始和结束,并自动计算事件发生的时长。其中eventId相同的配对调用,才是一次有效调用。

eventId请在网站上创建和对应的attribute的key请在网站上创建,未创建的evenId和key将无法统计。

 @param eventId 事件Id,提前在网站端创建
 @param attributes 事件属性,对应的key需要在网站上创建,注意:value只接受NSString
// 自定义时长事件,开始埋点
- (void)eventStart:(NSString *)eventId;
// 自定义时长事件,结束埋点
- (void)eventEnd:(NSString *)eventId;
// 自定义时长事件,带attributes参数,结束埋点
- (void)eventEnd:(NSString *)eventId attributes:(NSDictionary *) attributes;

// 调用举例
[[BaiduMobStat defaultStat] eventStart:@"Event3"];
[[BaiduMobStat defaultStat] eventEnd:@"Event3"];
[[BaiduMobStat defaultStat] eventEnd:@"Event3" attributes:@{@"商品类别": @"a", @"数量": @"2", @"价格": @"100"}];
// 自定义时长事件,开始埋点
func eventStart(eventId: String!)
// 自定义时长事件,结束埋点
func eventEnd(eventId: String!)
// 自定义时长事件,带attributes参数,结束埋点
func eventEnd(eventId: String!, attributes: [String!: String!])

// 调用举例
BaiduMobStat.default().eventStart("Event3")
BaiduMobStat.default().eventEnd("Event3")
BaiduMobStat.default().eventEnd("Event3", attributes: ["商品类别": "a", "数量": "2", "价格": "100"])