Objective-C
iOS
adMob

AdMobの動画広告の音量制限の実装方法

More than 1 year has passed since last update.

はじめに

AdMobでは、動画広告の音量の初期値を実装によって指定できます。
基本的にこのページに手順が説明されています。
https://firebase.google.com/docs/admob/ios/global-settings?hl=ja

プロパティへのアクセスの仕方について公式説明の通りにできなかったので、解決方法を備忘のために書きます。(もし私が何か勘違いをしているようでしたら、一言教えていただけると幸いです。)

初期値の指定

端末音量との相対値0.0(ミュート)〜1.0(現在の端末音量)を指定することが可能です。

実装の仕方については、公式説明によれば、以下のように書けるとされています。

2017年2月23日付の公式説明の書き方
- (void)viewDidLoad {
  [super viewDidLoad];
  // Set app volume to be half of the current device volume.
  GADMobileAds.applicationVolume = 0.5;
  ...
}

しかし、これではプロパティにアクセスできない旨のエラーが出てしまいます。(Property 'applicationVolume' not found on object of type 'GADMobileAds')

実際には、次のようにするとアクセスできました。

実際に解決できた書き方
 GADMobileAds.sharedInstance.applicationVolume = 0.5;

ちなみに、ミュートの指定をするプロパティーのapplicationMutedについても同じです。GADMobileAds.applicationMuted = YES;ではなく、GADMobileAds.sharedInstance.applicationMuted = YES;としてアクセスできます。

終わりに

動画広告が表示された時に大音量が突然出始めるとユーザ体験が極めて悪くなります。一方、ミュート(applicationVolume == 0.0 || applicationMuted == YES)の場合、ミュートに適さない広告在庫が表示されないという注意書きが公式説明に書いてあります。
私見では、マイルドな値に設定しておく、というのが最もベターな方法なのではないかと思います。