iOSアプリでテスト広告を表示するにはapp-ads.txtにデモ広告のアプリIDを追記する必要がある

November 05, 2021

はじめに

FlutterでiOSアプリを開発しているのですが、シミュレータ、実機の両方でテスト広告が表示できなくなっていました。その解決策を2つ見つけたのでまとめておきます。

エラー内容

広告の読み込もうとすると下記のエラーが発生します。ちなみにこのエラーの通りに Other Linker Flags-ObjC を追加しても解決できませんでした。

<Google> Cannot find an ad network adapter with the name(s): com.google.DummyAdapter. Remember to link all required ad network adapters and SDKs, and set -ObjC in the 'Other Linker Flags' setting of your build target.     

原因と解決策

Mobile Ads SDK (iOS)のページに警告の表示がありました。

注意:アプリで app-ads.txt ファイルを設定している場合は、デモ広告ユニットを使って広告を読み込むために、次の行を app-ads.txt ファイルに含める必要があります。

google.com, pub-3940256099942544, DIRECT, f08c47fec0942fa0

代わりに、テストデバイスを有効にして、独自の広告ユニット ID を使用することもできます。

app-ads.txtを設定している場合、そのままだと広告が読み込まれない、ということでした。

解決策としては、次の2つです。

  • app-ads.txtにデモ広告のアプリIDを追記する
  • テストデバイスを有効にして、独自の広告ユニットID(デモ広告ユニットIDではなく、自分で作成した広告ユニットID)をしようする

どちらの解決策を選ぶか

どちらでも問題なさそうですが、app-ads.txtに追記すると本番でもデモ広告が表示できるのでは?という懸念があるので、個人的にはテストデバイスを使っていこうと思っています。


プロフィール画像

nabehide Software Developer, Tokyo Japan @____nabehide