2015-06-10 7 views
0
if (NSClassFromString(@"ASIdentifierManager")) 
    { 
     limitAdTracking = !ASIdentifierManager.sharedManager.advertisingTrackingEnabled; 
     idfa = [ASIdentifierManager.sharedManager.advertisingIdentifier UUIDString]; 
     userDict[@"limit_ad_tracking"] = @(limitAdTracking); 
    } 

У меня есть SDK. Этот sdk используется в разных приложениях. Но иногда мой SDK не получает idfa. Это может произойти в одной версии приложения (один раз я получаю один раз - нет). Что может случиться?IDFA/ASIdentifierManager не найден

+0

Вы имеете в виду, что вы запустили приложение на устройстве и обнаружили ASIdentifierManager. то вы остановите приложение и запустите его снова на том же устройстве, и бум его там нет! – hasan83

+0

Нет. Я имею в виду, что я вижу, что одна версия приложения (приложение моего клиента) когда-то отправила idfa в запрос, но когда-то - нет. И я не могу найти причину этого. – Fess

+0

Почему вы проверяете, существует ли ASIdentifierManager? поддерживаете ли вы версию iOS до 6.0? – hasan83

ответ

1

Если ваше приложение не было связано с AdSupport.framework, то NSClassFromString(@"ASIdentifierManager") вернет nil, и вы никогда не получите IDFA.

Возможно ли, что вы добавили/удалили AdSupport.framework между версиями, которые отличаются поведением?

+0

Я знаю. Но AdSupport.framework связан = ( – Fess

Смежные вопросы