Я пытаюсь реализовать пример NavigationBanner
iAdSuite
в моем проекте, чтобы я мог совместно использовать один экземпляр AdBannerView
для нескольких контроллеров представлений, но я продолжаю получать следующую ошибку:
Ошибка домена = ADErrorDomain Code = 2 "Операция не может быть завершена Загрузка дроссельной заслонки
Я скопировал соответствующий код точно из текущего iAdSuite в свое приложение и получаю эту ошибку. Фактически, эта ошибка повторяется в собственном примере Apple для iAdSuite для NavigationBanner (который является примером, который я пытаюсь реализовать). Ошибка можно увидеть, добавив:
NSLog (@"%@",error);
в
- (void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error
Чтобы реплицировать проблему в iAdSuite
, выполните следующие действия:
- Превратите ваше устройство Режим полета в положение "Вкл."
- Запустите iAdSuite NavigationBanner с Xcode. Это сразу вызывает ошибку "Ошибка ADErrorDomain 1".
- Выйдите из приложения, нажав кнопку "Домой" на вашем устройстве, затем выключите режим полета.
- Перезапустите NavigationBanner, нажав на значок, и появится ошибка.
Это проблема для моего приложения, потому что я хочу скрыть iAd, если нет возможности подключения, а затем снова заново появиться после возобновления подключения. Если приложение получает ошибку дросселирования, тогда будет длительная задержка, прежде чем он сможет получить другое объявление.
Как избежать ошибки дросселя? Я думал, что bannerView нужно удалить, а затем снова добавить, но не мог понять, как это сделать правильно.
Последнее, что нужно отметить, это то, что текущий iAdSuite использует ARC, пока мое приложение этого не делает. Тем не менее, ошибка возникает как с моим приложением, так и с iAdSuite.