我们尝试在iOS上使用GTM来使用数据层跟踪非screenview事件,但无法使其工作。首先,这是我们对GTM的呼吁:
NSLog(@"voted!");
NSLog(@"question: %@, answer: %@",self.question.question,selectedAnswer.answer);
[[ATITracking instance] trackEventWithTagManager:@"didVote" parameters:@{@"questionValue":self.question.question,@"voteValue":selectedAnswer.answer}];
我们在GTM中为questionValue和voteValue设置了2个数据层变量。看到: https://www.dropbox.com/s/jru5a06vs1bfmm3/variables.jpg?dl=0
这是我们触发事件设置为didVote: https://www.dropbox.com/s/0ydxml4yemji2f5/trigger.jpg?dl=0
我们的事件代码使用上面的触发器(由于代表限制,无法发布链接。)
有没有人在iOS中使用GTM成功跟踪过非screenview事件?提前致谢。
答案 0 :(得分:1)
事件对我没有任何问题。这是GTM iOS SDK示例中稍微修改过的代码
-(void) logEvent:(NSString*) event withProperties:(NSDictionary*) properties {
NSMutableDictionary* eventProperties = [NSMutableDictionary dictionaryWithDictionary:@{@"event": @"customEvent",@"eventCategory":@"User action",@"eventName":event}];
if (properties) {
[eventProperties addEntriesFromDictionary:properties];
}
TAGDataLayer* dataLayer = self.tagManager.dataLayer;
[dataLayer push:eventProperties];
}
基于GTM文档https://developers.google.com/analytics/devguides/collection/protocol/v1/parameters#events事件类别和事件操作不得为空。在我在标签中配置这些参数并开始从客户端推送它们之前,我没有在GA中看到任何事件。 希望它有所帮助。
请参阅我的标签附带的屏幕截图: