【问题标题】:Xcode - Show ad every x times view appearsXcode - 每出现 x 次视图就显示广告
【发布时间】:2015-07-25 21:11:22
【问题描述】:

我已经实现了 AdMob 框架并使其工作,因此它会显示,但我需要让广告每 3 次显示一次视图出现,我被卡住了。

编辑: @property (nonatomic, strong) GADInterstitial *interstitial;

到目前为止我有什么:

- (void) viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[self.navigationController setNavigationBarHidden:YES];


static long int counter = 1;



NSLog(@"Before: %ld", counter);

if ([self.interstitial isReady] && !(counter++ % 3)) {
    [self.interstitial presentFromRootViewController:self];

    counter = 1;
    NSLog(@"After increase : %ld", counter);
}

}

问题是每次显示广告时,计数器都会增加 2 倍,这意味着广告会显示奇数次。

【问题讨论】:

  • 没有理由 -viewWillAppear: 应该导致计数器增加 2,除非视图即将出现......两次......
  • 随着广告消失,视图将再次出现。

标签: ios xcode viewwillappear


【解决方案1】:

也许尝试将counter 声明为全局变量:

int counter;

然后执行以下操作:

- (void)viewWillAppear:(BOOL)animated {

    [super viewWillAppear:animated];
    [self.navigationController setNavigationBarHidden:YES];

    if ([self.interstitial isReady] && counter >= 3) {
        [self.interstitial presentFromRootViewController:self];
        counter = 0;
    } else {
        counter++;
        NSLog(@"After increase : %d", counter);
    }
}

【讨论】:

  • 感谢您的回复,但这似乎在每次视图出现时都会显示一个广告。我的想法更像是每 3 次我的视图出现一次
  • 哪个部分负责展示广告,我不确定 — 您如何确定非广告浏览的频率?就像你说它应该每显示三次视图一样,那么我认为它应该是一个简单的修复。
  • 哦,上面的 viewWillAppear 方法在我的应用程序的首页,在我的首页上,该游戏中有一个 Play Game 按钮,你有 3 条生命,当你剩下 0 条生命时视图控制器从我的导航堆栈中弹出。并返回首页。 (这是你的意思吗?)
  • 是的。所以你的意思是每三个非广告视图应该有一个有广告的视图?
  • 是的,这似乎有效,抱歉没有快速响应,先修复一个小错误 :) 谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-02-02
  • 1970-01-01
  • 2021-08-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多