Ошибка в кампаниях по отслеживанию IOS Google Analytics Нет видимого @interface для 'GAIDictionaryBuilder' объявляет селектор 'set:value:'
Я следую инструкциям, содержащимся здесь https://developers.google.com/analytics/devguides/collection/ios/v3/campaigns
Xcode отказывается компилировать, так как это утверждение
[hitParams set:kGAICampaignMedium value:@"referrer"];
выдает эту ошибку:
No visible @interface for 'GAIDictionaryBuilder' declares the selector 'set:value:'
То же самое происходит с kGAICampaignSource
Я видел, что "правильные" звонки могут быть этими двумя
[hitParams setValue:kGAICampaignMedium forKey:@"referrer"];
[hitParams setValue:kGAICampaignSource forKey:[url host]];
Однако есть еще одна проблема с вызовом:
[tracker send:[[[GAIDictionaryBuilder createAppView] setAll:hitParams] build]];
Что посылает предупреждение, потому что hitParams должен быть NSDictionary, а это GAIDictionaryBuilder.
Я делаю что-то неправильно? Я обновил аналитику Google до последней (3.10) версии.
Спасибо вам всем
1 ответ
Решение
Конкретные строки, с которыми у вас возникают проблемы, не поддерживаются этой версией SDK. Похоже, документация SDK v3 устарела (по состоянию на 2 декабря 2014 г.).
// hitparams is of type GAIDictionaryBuilder
[hitParams set:@"referrer" forKey:kGAICampaignMedium];
[hitParams set:[url host] forKey:kGAICampaignSource];
NSDictionary *paramDictionary = [hitParams build];
// -setAll: requires an NSDictionary
[tracker send:[[[GAIDictionaryBuilder createAppView] setAll:paramDictionary] build]];