Краткое изложение того, что здесь происходит.
У меня есть GameScene и GameOverUIController. Когда Игра заканчивается, она загружает GameOverUIController, который загружает XIB, который загружает MobFoxBannerView.
Вот в чем проблема: если вы нажмете кнопку «Воспроизвести снова» для быстрой или вы играете в раунде дольше, чем около 3 минут, реклама загружается в фоновом режиме, но по существу не имеет, куда идти, и вылетает.
Я воспользовался советом друзей, добавив ViewDidUnload, чтобы установить для bannerview значение nil, но оно все равно вылетает ... Я не самый удивительный программист, но я чувствую, что где-то совершаю самую глупую ошибку ... Любая помощь очень ценится. Я просто использую неправильный синтаксис на чем-то здесь?
Я сделал следующие вещи.
Я синтезирую bannerView в реализации GameOverUI.
Теперь вручную добавьте его в представление, прежде чем я добавлю UIwebview непосредственно в конструктор интерфейса xib для GameOverUIController
self.bannerView = [[[MobFoxBannerView alloc] initWithFrame:CGRectMake(0, 0, 320, 50)] autorelease];
bannerView.delegate = self;
[self.view addSubview:bannerView];
[self.view bringSubviewToFront:bannerView];
И это в моей основной реализации. Поэтому каждый раз, когда он загружает экран GameOver, он запрашивает новое добавление.
Затем я устанавливаю значения в заголовочном файле.
-(NSString *) publisherIdForMobFoxBannerView:(MobFoxBannerView *)banner;
@property (nonatomic, retain) MobFoxBannerView *bannerView;
и установите мой идентификатор издателя в нижней части GameOverUIController.m
- (NSString *)publisherIdForMobFoxBannerView:(MobFoxBannerView *)banner
{
return @"xxxxxxxxxxxx";
}
Тогда ... ЕЩЕ ПОЛУЧИТЕ сбой, поэтому я попытался установить его на ноль, надеясь, что это сработает ... но я не уверен насчет синтаксиса ...
On GameOverUIController.m
- (void)viewDidUnload
{
[super viewDidUnload];
self.bannerView = nil;
// or ? bannerView.delegate = nil;
}
Ни одна из этих строк не работает ..... Я в полной растерянности. Собираюсь перейти на другую рекламную платформу, если я не смогу выяснить это до конца выходных. Бэйн моего существования прямо сейчас. Любая помощь будет принята с благодарностью. Большое спасибо
Edit:
Разобрался ...
Не имеет ничего общего с ViewUnload ....
- (void)dealloc
{
bannerView.delegate = nil;
[super dealloc];
}
Добавлял его в неправильное место ... Теперь отлично работает.