Я искал и искал и искал разъяснения о том, как это сделать, но я до сих пор не знаю, как это сделать правильно.ADBannerView Confusion (iOS 8)
Мой затруднительное и то, что я хочу, чтобы мой результат будет:
У меня есть ADBannerView
добавил к моей раскадровки, и имя переменной, где я реализую это bannerView
. Я делаю выбор disable объявлений в игре. Если реклама отключена, объявления не должны загружаться. Если я прав, то метод делегата bannerViewWillLoadWithAd:
не следует вызывать, а также метод bannerViewDidLoadAd:
. Я использую этот код, заключенный в «если» заявление, чтобы удалить ADBannerView
из контроллера представления:
[bannerView removeFromSuperview];
[self setCanDisplayBannerAds:NO];
И тогда мои методы делегируют выглядеть следующим образом (мой делегат моя сцена игры, и контроллер мнение на который ссылается свойство упомянутой сцены viewController1
):
-(BOOL)bannerViewActionShouldBegin:(ADBannerView *)banner willLeaveApplication:(BOOL)willLeave {
NSLog(@"banner view action will begin.");
self.paused = YES;
return YES;
}
-(void)bannerViewDidLoadAd:(ADBannerView *)banner {
NSLog(@"Ad loaded.");
}
-(void)bannerViewWillLoadAd:(ADBannerView *)banner {
NSLog(@"Ad Banner will load ad.");
if (// ads are disabled) {
viewController1.canDisplayBannerAds = NO;
[banner removeFromSuperview];
NSLog(@"Banner shouldn't load");
}
}
-(void)bannerViewActionDidFinish:(ADBannerView *)banner{
NSLog(@"Ad Banner action did finish");
self.paused = NO;
}
-(void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error {
NSLog(@"Ad banner view failed to load. Details about the error: %@", error.debugDescription);
banner.hidden = YES;
}
код работает, но я в конечном итоге получаю ошибки и нечетные события в журналах, которые обычно включают в себя «обслуживание сессии прекращено», когда объявления должны показать и объявления когда они не должны. Любая идея, как это исправить?
Я никогда не ставил 'canDisplayBannerAds' в' YES' , Однако я могу удалить, где он устанавливает 'canDisplayBannerAds' значение' NO'. – DDPWNAGE
Извините @DDPWNAGE, я предположил, что вы устанавливаете 'canDisplayBannerAds', как вы показали, вы устанавливаете его в« НЕТ ». Нет необходимости устанавливать его в «НЕТ», если вы не устанавливаете его в «YES». Просто удалите 'canDisplayBannerAds' и следуйте второму примеру, который я вам предоставил. –
Когда я получу шанс. Я не знал, что 'canDisplayBannerAds' сделает второй вид баннера в нижней части экрана. Как получить свойства вида _that_ banner (например, делегат, кадр и т. Д.)? – DDPWNAGE