0

アプリケーションに広告を追加したいと思います。特に、アプリがフォアグラウンドに入ったときにインタースティシャルを追加したいと考えています。

AppDelegate.m でこのメソッドを作成しました。

- (void)splashInterstitial
{
    UIImage *image;

    if (TEST_IPHONE_5) {
        image = [UIImage imageNamed:@"Default-568h.png"];
    } else {
        image = [UIImage imageNamed:@"Default.png"];
    }

    splashInterstitial_ = [[DFPInterstitial alloc] init];
    splashInterstitial_.adUnitID = ADMOBS_OUVERTURE;
    [splashInterstitial_ loadAndDisplayRequest:[GADRequest request]
                                   usingWindow:self.window
                                  initialImage:image];

}

私はそれを 2 回呼び出します: - でapplication:didFinishLaunchingWithOptions: - でapplicationWillEnterForeground:

で呼び出されると正常に動作しますapplication:didFinishLaunchingWithOptions:が、2 番目のケースでは、次のエラーが発生します。

Google リクエスト エラー: タイムアウトが発生する前に Google 広告リクエストを処理できませんでした。

明らかに、ロードには 5 秒かかりますが、アプリケーションを強制的に待機させる方法がわかりません。

誰もそれを行う方法を知っていますか?

ご協力いただきありがとうございます。

4

2 に答える 2

1

方法にはいくつかの問題がありますloadAndDisplayRequest:usingWindow:initialImage:このブログ投稿では、GADInterstitial の方法を使用して同じことを実現する方法について説明していますloadRequest:。ビュー階層をより細かく制御できるため、この実装の方が優れています。

于 2013-06-28T23:08:29.370 に答える
0

最初の起動時だけでなく、アプリがアクティブになるたびにもインタースティシャルを表示する方法を見つけました。

で、私のメソッドを(void)splashInterstitial1 回だけ呼び出す必要がありapplicationDidBecomeActive:ます。

- (void)applicationDidBecomeActive:(UIApplication *)application
{
    // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.

    // ADMobs
    [self splashInterstitial];

}


- (void)splashInterstitial
{
    UIImage *image;

    if (TEST_IPHONE_5) {
        image = [UIImage imageNamed:@"Default-568h.png"];
    } else {
        image = [UIImage imageNamed:@"Default.png"];
    }

    splashInterstitial_ = [[DFPInterstitial alloc] init];
    splashInterstitial_.adUnitID = ADMOBS_OUVERTURE;
    [splashInterstitial_ loadAndDisplayRequest:[GADRequest request]
                                   usingWindow:self.window
                                  initialImage:image];

}
于 2013-07-01T11:08:38.557 に答える