Хорошо, я нашел решение.
Я был почти там, но не совсем. Проблема в том, что делегату присвоено значение ноль, но место было неправильным.
Вот как я это решил:
- (void)viewDidLoad {
[super viewDidLoad];
adMobAd = [AdMobView requestAdWithDelegate:self]; // start a new ad request
[adMobAd retain];
}
- (void)viewDidUnload {
//Nothing to do here
}
- (void)dealloc {
//THIS IS THE IMPORTANT STUFF
if (adMobAd != nil){
adMobAd.delegate = nil;
}
[adMobAd release];
[super dealloc];
}
Перемещение «освобождения» делегата в блок dealloc исправило проблему для меня.
Надеюсь, это поможет!