Отслеживание событий в UIButton Google Analytics (Swift)
Я хотел бы отслеживать событие, когда пользователь удаляет UIButton с помощью Google Analytics. У меня есть код ниже, но мне показана ошибка. Где я иду не так? Благодаря
код:
@IBAction func startGame1(sender: AnyObject) {
var tracker = GAI.sharedInstance().defaultTracker
tracker.send(GAIDictionaryBuilder.createEventWithCategory("Game 1", action: "Start Pressed", label: "Start Timer One", value: nil).build())
}
Ошибка:
Cannot invoke 'send' with an argument list of type'(NSMutableDictionarry)'
Ответы
Ответ 1
Так как Swift 1.2 выпущен, вы должны использовать GAIDictionaryBuilder
как [NSObject : AnyObject]
Смотрите это сообщение в StackOverflow
Google Analytics не работает с Swift 1.2 и Xcode 6.3
Существует решение для вашей проблемы
@IBAction func startGame1(sender: AnyObject) {
var tracker = GAI.sharedInstance().defaultTracker
tracker.send(GAIDictionaryBuilder.createEventWithCategory("Game 1", action: "Start Pressed", label: "Start Timer One", value: nil).build() as [NSObject : AnyObject])
}
Надеюсь, что это поможет!
Ответ 2
Этот ответ был обновлен для Swift 3
let tracker = GAI.sharedInstance().defaultTracker
tracker.set(kGAIDescription, value: "ScreenViewName")
let eventTracker: NSObject = GAIDictionaryBuilder.createScreenView().build()
tracker.send(eventTracker as! [NSObject : AnyObject])
OR...
let tracker = GAI.sharedInstance().defaultTracker
let eventTracker: NSObject = GAIDictionaryBuilder.createEvent(
withCategory: "SomeCategory",
action: "SomeAction",
label: "SomeLabel",
value: nil).build()
tracker.send(eventTracker as [NSObject : AnyObject]!)
Ответ 3
Swift 3: вы должны использовать "[AnyHashable: Any]" вместо [NSObject: AnyObject].
Источник: https://developer.apple.com/swift/blog/?id=39
guard let tracker = GAI.sharedInstance().defaultTracker else {return}
let eventTracker: NSObject = GAIDictionaryBuilder.createEvent(
withCategory: YOUR_CATEGORY_NAME,
action: YOUR_ACTION_NAME,
label: YOUR_LABEL_NAME,
value: nil).build()
tracker.send(eventTracker as! [AnyHashable: Any])