我已经使用 Admob 中介服务设置了一个测试应用程序。我有一个问题,当发生错误并由方法处理时,如果我隐藏横幅视图,则不会导致进一步的广告请求发生,可能是由于这种“隐藏状态”。
我能做的是在错误方法中睡眠一段时间然后再次请求,但这不是最好的方法......我猜这会在睡眠时锁定一些进程和潜在的其他用户输入?我不确定这一点,因为该应用程序仅包含广告,因此无法测试。
这是我的方法...
- (void)adView:(GADBannerView *)view didFailToReceiveAdWithError:(GADRequestError *)error;
{
NSLog(@"Failed to receive ad with error: %@", [error localizedFailureReason]);
bannerView_.hidden = YES;
sleep(59);
[bannerView_ loadRequest:[self createRequest]];
}
- (void)adViewDidReceiveAd:(GADBannerView *)view;
{
NSLog(@"Ad Received");
bannerView_.hidden = NO;
}
我正在寻找最好的方法: 1. 在没有返回广告时隐藏视图,但确保请求继续,并且在收到广告后再次显示广告视图。2.在错误方法中使用循环来处理再次请求,直到成功并且不锁定其他任何内容。
目前仅在模拟器上进行测试,如果有任何区别。