Google Analytics(分析)屏幕跟踪 swift 3.0 不起作用
Posted
技术标签:
【中文标题】Google Analytics(分析)屏幕跟踪 swift 3.0 不起作用【英文标题】:Google Analytics screen tracking swift 3.0 not working 【发布时间】:2016-12-28 19:36:54 【问题描述】:Google 的屏幕跟踪代码在 swift 3.0 中不起作用 这是代码:
let tracker = GAI.sharedInstance().defaultTracker
tracker.set(kGAIScreenName, value: name)
let builder = GAIDictionaryBuilder.createScreenView()
tracker.send(builder.build() as [NSObject : AnyObject])
我收到以下错误:“无法将 NSMutableDictionary 类型的值转换为强制类型 [NSObject: AnyObject]”。 请问有什么帮助吗?
【问题讨论】:
如果删除as [NSObject : AnyObject]
会发生什么?编译器应该提示正确的类型(也可以在 .send
上执行 ALT+CLICK 以查看它返回的内容)。
是的,它返回 void 并且它需要一个 [AnyHashable: Any] 的参数。我试图将 NSMutableDictionary 转换为 [AnyHashable: Any] 并且仍然无法正常工作:“cast always fail”...
【参考方案1】:
首先转换为 NSDictionary。这有效:
tracker.send(builder.build() as NSDictionary as [NSObject : AnyObject])
【讨论】:
太棒了!谢谢。以上是关于Google Analytics(分析)屏幕跟踪 swift 3.0 不起作用的主要内容,如果未能解决你的问题,请参考以下文章
text 使用Google Analytics(分析)启动按钮CTA事件跟踪
javascript Google Analytics(分析) - 动态表单字段跟踪数据层实施
具有多个跟踪器的 Google Analytics(分析)跨域跟踪