Objective c MobFox iOS框架,XIB卸载时崩溃。。。我做错了什么?

Objective c MobFox iOS框架,XIB卸载时崩溃。。。我做错了什么?,objective-c,ios,crash,ads,Objective C,Ios,Crash,Ads,这里发生的事情的简要说明 我有一个游戏场景和一个游戏玩家。当游戏结束时,它加载GameOverler,加载xib,加载MobFoxBannerView 问题是:如果你按“再次播放”按钮快速播放,或者播放一轮时间超过3分钟,广告会在后台加载,但基本上没有去向,然后崩溃 我接受了朋友的建议,添加ViewDidUnload以将bannerview设置为零,但它仍然崩溃。。。我不是公认的最了不起的程序员,但我觉得我在某个地方犯了最愚蠢的错误。。。非常感谢您的帮助。我只是在这里使用了错误的语法吗 我做了以

这里发生的事情的简要说明

我有一个游戏场景和一个游戏玩家。当游戏结束时,它加载GameOverler,加载xib,加载MobFoxBannerView

问题是:如果你按“再次播放”按钮快速播放,或者播放一轮时间超过3分钟,广告会在后台加载,但基本上没有去向,然后崩溃

我接受了朋友的建议,添加ViewDidUnload以将bannerview设置为零,但它仍然崩溃。。。我不是公认的最了不起的程序员,但我觉得我在某个地方犯了最愚蠢的错误。。。非常感谢您的帮助。我只是在这里使用了错误的语法吗

我做了以下几件事

我在GameOverUI实现上合成了bannerView

现在手动将其添加到视图中,在我将UIwebview直接添加到用于GameOverUIController的xib界面生成器之前

self.bannerView = [[[MobFoxBannerView alloc] initWithFrame:CGRectMake(0, 0, 320, 50)] autorelease]; 
bannerView.delegate = self;

[self.view addSubview:bannerView];
[self.view bringSubviewToFront:bannerView];
这就是我的主要实现。因此,每次在屏幕上加载游戏时,它都会请求一个新的添加

然后在头文件中设置值

-(NSString *) publisherIdForMobFoxBannerView:(MobFoxBannerView *)banner;

@property (nonatomic, retain) MobFoxBannerView *bannerView;
并在gameoverler.m的底部设置我的发布者ID

- (NSString *)publisherIdForMobFoxBannerView:(MobFoxBannerView *)banner
{
return @"xxxxxxxxxxxx";
}
- (void)viewDidUnload
{

[super viewDidUnload];

self.bannerView = nil;
// or ? bannerView.delegate = nil;
}
然后。。。还是会崩溃,所以我试着把它设为零,希望能奏效。。。但我不确定语法

关于gameoverler.m

- (NSString *)publisherIdForMobFoxBannerView:(MobFoxBannerView *)banner
{
return @"xxxxxxxxxxxx";
}
- (void)viewDidUnload
{

[super viewDidUnload];

self.bannerView = nil;
// or ? bannerView.delegate = nil;
}
这些台词中的尼瑟在工作。。。。。我完全不知所措。除非我能在周末结束前弄清楚,否则我会转移到另一个广告平台。我现在生活的祸根。任何帮助都将不胜感激。多谢各位

编辑:

我想出来了。。。 与ViewUnload无关

- (void)dealloc
{
bannerView.delegate = nil;
[super dealloc];

}

正在将其添加到错误的位置。。。现在效果很好。

我想你的问题出在

bannerView.delegate = self;
  • 加载add时(例如,由于糟糕的internet,它可能非常慢)-正在调用委托方法,但“self”被释放-因此引发运行时异常
顺便说一下,我对MobFox框架一无所知。这只是一种常见的反模式