バックグラウンドの音声広告の再生

このガイドは、IMA SDK の実装にオーディオ広告再生のバックグラウンド再生機能を追加したいと考えている iOS パブリッシャー様を対象としています。これにより、アプリはバックグラウンドで広告をリクエストできます。また、アプリがバックグラウンドに移り、広告の再生を最後まで継続することもできます。

動画広告をバックグラウンドで再生することはおすすめしません。

前提条件

  • IMA SDK が実装された iOS アプリ
  • IMA SDK V3 ベータ版 v13 以降。

参考情報

それでもアプリに IMA SDK を実装する必要がある場合は、スタートガイドをご覧ください。

アプリにバックグラウンド再生を追加する

バックグラウンド再生を追加する手順は次のとおりです。

  1. バックグラウンド モードの [Audio and Airplay] を有効にします。Xcode 6 で、ターゲットを選択し、[Capabilities] >Background Modes については、[音声と AirPlay] を有効にします。
  2. AVAudioSession を有効化し、そのカテゴリに、バックグラウンド音声を再生できる AVAudioSessionCategoryAVAudioSessionCategoryPlayback など)を設定します。
  3. - (void)viewDidLoad {
      [super viewDidLoad];
    
      NSError *error;
      [[AVAudioSession sharedInstance] setActive:YES error:&error];
      if (error != nil) {
        NSLog(@"Error: %@", error.localizedDescription);
      }
    
      [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:&error];
      if (error != nil) {
        NSLog(@"Error: %@", error.localizedDescription);
      }
    }
  4. IMAAdsLoader を作成し、enableBackgroundPlaybackYES に設定して IMASettings オブジェクトを渡します。
  5.   IMASettings *settings = [[IMASettings alloc] init];
      settings.enableBackgroundPlayback = YES;
      IMAAdsLoader *adsLoader = [[IMAAdsLoader alloc] initWithSettings:settings];
    

重要

バックグラウンドで広告リクエストを行うには、コンテンツが再生されている必要があります。そのため、アプリがバックグラウンドに入る前に、[IMAAdsLoader requestAds:] を呼び出す前にコンテンツ プレーヤーで play を手動で呼び出すことが必要になる場合があります。

iOS アプリをバックグラウンドにすると、広告の再生が自動的に一時停止します。広告の再生中にアプリがバックグラウンドで実行されている場合、再生を再開するには [IMAAdsManager resume] を呼び出す必要があります。

よくある質問

アプリで音声と AirPlay のバックグラウンド モード機能を有効にしないとどうなりますか?
このモードを選択しない場合、アプリがバックグラウンドに移行したときにアプリが再生している音声はすべて停止します。また、バックグラウンドで音声を起動することもできません。