Проблемы с изменениями iAd в 4.2 - PullRequest
0 голосов
/ 22 декабря 2010

Я пытаюсь использовать iAds в своем приложении, но я хочу поддерживать все версии от 4.0 и выше. Однако код для установки идентификатора текущего размера в SDK 4.2 изменился: раньше он был:

ad.currentContentSizeIdentifier = ADBannerContentSizeIdentifier480x32;

но в 4.2 код:

ad.currentContentSizeIdentifier = ADBannerContentSizeIdentifierLandscape;

и, следовательно, когда я использую старый код в 4.2 SDK, он падает, и если я использую правильный код для 4.2, любое устройство под управлением предыдущей версии до 4.2 дает сбой. Кто-нибудь знает, как я могу поддерживать оба или мне придется использовать 4.2 в качестве цели развертывания?

Ответы [ 2 ]

2 голосов
/ 24 марта 2011

Существует обходной путь для поддержки версий 4.2 и более ранних версий.

Вы можете проверить, существует ли константа в вашей версии ios, используя что-то похожее на код ниже:затем просто используйте строку, чтобы инициализировать ваше представление iAd

[yourAdBannerView setRequiredContentSizeIdentifiers:[NSSet setWithObject:sizeIdentifier]];

[yourAdBannerView setCurrentContentSizeIdentifier:sizeIdentifier];
2 голосов
/ 22 декабря 2010

В вашем коде есть другая проблема - использование ADBannerContentSizeIdentifier480x32 под 4.2 не вызывает сбой, даже не вызывает предупреждения компилятора. Это устарело, но остается доступным.

...