全般設定

GADMobileAds クラスは、Mobile Ads SDK によって収集される特定の情報を制御するための全般設定を提供します。

動画広告のボリューム調整

アプリに独自のボリューム調整(音楽や音声効果などのカスタム音量設定)機能が備わっている場合、Google Mobile Ads SDK にアプリの設定ボリュームを開示すると、動画広告でアプリ側の設定を使用できるようになります。これにより、想定どおりのボリュームでユーザーに動画広告が配信されるようになります。

デバイスのボリューム(ボリューム ボタンや OS レベルのボリューム スライダーで制御)は、デバイスの音声出力の大きさを決定します。ただし、音声の聞きやすさを改善するために、アプリは端末ボリュームとの相対的な音量レベルを独立して調節できます。applicationVolume プロパティを設定して、相対的なアプリ ボリュームを Google Mobile Ads SDK に報告することができます。有効な広告ボリューム値の範囲は、0.0(無音)から 1.0(現在の端末音量)までです。次の例は、相対的なアプリ ボリュームを SDK に報告する方法を示します。

Swift

func viewDidLoad() {
  super.viewDidLoad()
  // Set app volume to be half of the current device volume.
  GADMobileAds.sharedInstance().applicationVolume = 0.5
  ...
}

Objective-C

- (void)viewDidLoad {
  [super viewDidLoad];
  // Set app volume to be half of the current device volume.
  [GADMobileAds sharedInstance].applicationVolume = 0.5;
  ...
}

アプリ ボリュームがミュートになったことを Google Mobile Ads SDK に通知するには、applicationMuted プロパティを次のように設定します。

Swift

GADMobileAds.sharedInstance().applicationMuted = true

Objective-C

[GADMobileAds sharedInstance].applicationMuted = YES;

アプリ ボリュームのミュートを解除すると、以前の設定レベルに戻ります。デフォルトで、Google Mobile Ads SDK のアプリ ボリュームは 1(現在の端末音量)に設定されています。

オーディオ セッションを変更する

オーディオ セッションを使用すると、アプリの音声の動作に関する意図をシステムに伝えることができます。オーディオ セッションについて詳しくは、Apple の Audio Session Programming Guide をご覧ください。Google Mobile Ads SDK のオーディオを管理するために利用できるオプションは、audioVideoManager プロパティを介して設定します。

アプリでオーディオを使用しない場合は、これらの API を使用する必要はありません。Google Mobile Ads SDK は、オーディオを再生する際にオーディオ セッション カテゴリを自動的に管理します。アプリでオーディオを再生し、Google Mobile Ads SDK のオーディオ再生の方法とタイミングを厳密に管理したい場合、これらの API が役立ちます。

オーディオ動画管理で、オーディオ セッション カテゴリの管理を自分で行う場合は、audioSessionIsApplicationManaged プロパティを YES に設定できます。

オーディオ セッション カテゴリを管理する場合は、GADAudioVideoManagerDelegate を実装し、オーディオ動画管理の delegate プロパティを設定して、広告の動画やオーディオ再生イベントを通知する必要があります。次に、上にリンクされている Apple の「Audio Session Programming Guide」に沿って、オーディオ セッションのカテゴリを関連するカテゴリに変更します。

上記の API を使用して、アプリが音楽を再生する場合の推奨アプローチを示す簡略化したコードサンプルを以下に示します。

Swift

func setUp() {
    GADMobileAds.sharedInstance().audioVideoManager.delegate = self
    GADMobileAds.sharedInstance().audioVideoManager.audioSessionIsApplicationManaged = false
}
func myAppWillStartPlayingMusic() {
    // Mutes all Google video ads.
    GADMobileAds.sharedInstance().audioVideoManager.audioSessionIsApplicationManaged = true
    GADMobileAds.sharedInstance().applicationMuted = true
}
func myAppDidStopPlayingMusic() {
    // Un-mutes all of our video ads.
    GADMobileAds.sharedInstance().audioVideoManager.audioSessionIsApplicationManaged = false
    GADMobileAds.sharedInstance().applicationMuted = false
}

// MARK: - GADAudioVideoManagerDelegate
func audioVideoManagerWillPlayAudio(_ audioVideoManager: GADAudioVideoManager) {
    // The mobile ads SDK is notifying your app that it will play audio. You
    // could optionally pause music depending on your apps design.
    MyAppObject.sharedInstance().pauseAllMusic()
}

func audioVideoManagerDidStopPlayingAudio(_ audioVideoManager: GADAudioVideoManager) {
    // The mobile ads SDK is notifying your app that it has stopped playing
    // audio. Depending on your design, you could resume music here.
    MyAppObject.sharedInstance().resumeAllMusic()
}

Objective-C

- (void)setUp {
  [GADMobileAds sharedInstance].audioVideoManager.delegate = self;
  [GADMobileAds sharedInstance].audioVideoManager.audioSessionIsApplicationManaged = NO;
}

- (void)myAppWillStartPlayingMusic {
  // Mutes all Google video ads.
  [GADMobileAds sharedInstance].audioVideoManager.audioSessionIsApplicationManaged =
  YES;
  [GADMobileAds sharedInstance].applicationMuted = YES;
}
- (void)myAppDidStopPlayingMusic {
  // Un-mutes all of our video ads.
  [GADMobileAds sharedInstance].audioVideoManager.audioSessionIsApplicationManaged =
  NO;
  [GADMobileAds sharedInstance].applicationMuted = NO;
}

#pragma mark - GADAudioVideoManagerDelegate

- (void)audioVideoManagerWillPlayAudio:(GADAudioVideoManager *)audioVideoManager {
  // The mobile ads SDK is notifying your app that it will play audio. You
  // could optionally pause music depending on your apps design.
  [[MyAppObject sharedInstance] pauseAllMusic];
}

- (void)audioVideoManagerDidStopPlayingAudio:(GADAudioVideoManager *)audioVideoManager {
    // The mobile ads SDK is notifying your app that it has stopped playing
    // audio. Depending on your design, you could resume music here.
  [[MyAppObject sharedInstance] resumeAllMusic];
}

アプリ内課金のレポート

アプリ内課金の収益の増大と、アプリで得られる合計収益の最大化を図るために、Mobile Ads SDK では、一般的なアプリ内課金(IAP)情報(アイテムの購入価格や通貨など)が自動的に収集されるようになりました。このため、IAP コンバージョンを自分自身でトラックするための追加ロジックを実装する必要がなくなりました。AdMob デベロッパー様は、この機能の下で AdMob のスマートな収益化サービスを利用することをおすすめします。この IAP レポート設定は、アプリ内課金用の自社広告を出している場合は常に有効にする必要があります(現在、限定ベータ段階)。IAP 自社広告のコンバージョンのレポートを作成する際に必要なためです。

アプリ内課金レポートは、最新の SDK リリースではデフォルトで有効になっています。これは必要に応じて、disableAutomatedInAppPurchaseReporting メソッドを使用して無効にすることができます(上記のとおり、IAP 自社広告を出していない場合に限ります)。このメソッドを呼び出す最適なタイミングは、アプリの起動時です。

Swift

AppDelegate.swift

func application(application: UIApplication,
    didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
  GADMobileAds.disableAutomatedInAppPurchaseReporting()
  return true
}

Objective-C

AppDelegate.m
- (BOOL)application:(UIApplication *)application
    didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
  [GADMobileAds disableAutomatedInAppPurchaseReporting];
  return YES;
}

Crash Reporting

Mobile Ads SDK では、iOS アプリで発生する例外が検査され、SDK が原因かどうかが記録されます。これらの例外は、今後のバージョンの SDK での例外を防止するために収集されます。

最新の SDK リリースでは、Crash Reporting は既定で有効になっています。SDK 関連の例外を記録したくない場合は、disableSDKCrashReporting メソッドを呼び出してこの機能を無効にすることができます。このメソッドを呼び出す最適なタイミングは、アプリの起動時です。

Swift

AppDelegate.swift

func application(application: UIApplication,
    didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
  GADMobileAds.disableSDKCrashReporting()
  return true
}

Objective-C

AppDelegate.m
- (BOOL)application:(UIApplication *)application
    didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
  [GADMobileAds disableSDKCrashReporting];
  return YES;
}

フィードバックを送信...

ご不明な点がありましたら、Google のサポートページをご覧ください。