何が起きたのか
2022年7月に趣味で作成したFlutter製のアプリ(iOS/Android)をストアにリリースしました。
このアプリ内にはAdMobを利用した広告を載せており、毎月ちょっとずつですが広告収入がありました。
利用にあたっては、以下のパッケージを利用していました。
しかしながら、2022年10月のある日、いきなり広告がアプリ内に表示されなくなり、収入も0になりました。(iOS/Android両方で表示されず・・・)
Google AdMobのページを見たところ、リクエスト数0、表示回数0、マッチ率0%という状態でした。
アプリの最終更新は2022年8月であり、それ以来何かをアップデートしたり、AdMobの設定を変更したりといったことはしていませんでした。
また、10月までは少なからず広告収入があった状態だったので、「設定もバッチリ完了している」という認識でした。(これが後々誤解だったということが発覚します)
色々ググったところ、「ほっといたら1ヶ月ほどで再度出るようになった」とかいった情報もあったので、何らかの理由で一時的に表示されなくなったのかなと思い、10月いっぱいは放置していました。
しかしながら11月になっても一向に解決される気配がなかったので、流石に対処していくかーと重い腰を上げて格闘開始しましたとさ。
開発環境
Mac mini(Monterey 12.6.1)
Flutter 2.10.3
google_mobile_ads: 1.1.0
とりあえずデバッガで状況を確認
「それすらも1ヶ月していなかったんかい!」とお叱りを喰らいそうですが、すみません。。。してませんでした。。。
スマホをPCに繋ぎ、VSCodeでいざデバッグ実行!
すると広告が表示されるはずの画面に遷移したところで以下のログが表示されました。
I/Ads ( 1664): Ad failed to load : 3
I/flutter ( 1664): Ad failed to load: ca-app-pub-xxxxxxxxxxxxxxxx, LoadAdError(code: 3, domain: com.google.android.gms.ads, message: Account not approved yet. <https://support.google.com/admob/answer/9905175#1>, responseInfo: ResponseInfo(responseId: null, mediationAdapterClassName: , adapterResponses: [])).
なんか"Account not approved yet"とか言われてる!!
いやー、先月まで出てましたやん。なんでいきなりnot approvedやねん。とエセ関西弁でGoogleにツッコミを入れつつ、その後に書かれたURLを覗きに行きました。
オンボーディングに関する一般的な問題を解決する
ログに記載された以下のURLにアクセスすると、Googleの公式ドキュメントで何がまずいのかが説明されていました。
とても親切に書かれています。
「これは助かる!」と意気揚々と読んでいましたが、どうもおかしい。
というのも、このドキュメントはどうも「ちょうど実装が完了したけど、1度も広告の表示に成功できていない」人向けの資料っぽいのです。
自分の場合は過去3ヶ月間に渡って製品版のアプリで表示できていた実績があり、その後コードの変更も行っていないので、何とも当てはまる要素がない感じでした。
制限事項もパスしているはずだし、AdMobのページ上でも特にエラーメッセージは表示されていないし、一体なんだろうなあという感じでした。。。
ついに神サイトを見つける
途方に暮れて、Googleにて「admob Account not approved yet」とかで検索していたら、以下のサイトに辿り着きました。
このサイトは、GoogleのAdMobに関するコミュニティで、ユーザー同士で質問しあえるところでのやりとりなようです。
中身は英語でしたが、手順が箇条書きで示されており、一個一個やっていく上では特に苦労せず読むことができました。
Please check the next:
- Make sure there are no restrictions on the account.
- Make sure that the account setup is fully completed. Name, address, phone number and tax info in your AdMob account with verification if applicable.
- you have Address verification with PIN" and Verify payment details ?
- the app-ads.txt if its correct ?
- the "policy center" any error ?
- your app linked to admob with this store? (Play google/ Appstore) the app must to be live with sdk google active for the app can start show ads live
- Check that the eCPM floor settings not on high (recommend all prices)
- "AdMob requires you to have both a valid AdSense account and Google Ads account. All future AdMob ad serving and payments will be linked to these accounts, so make sure you're using the AdSense and Google Ads accounts you want linked with your AdMob account. These accounts cannot be changed after your AdMob account is created."
follow on this guide:
https://support.google.com/admob/answer/7356173- (you need verify account AdSense too) --- https://www.google.com/adsense/start/
AdSense > payment > all there verify?- you need have account google ads active
google ads, admob, adsense (all need register on the same email)- admob > setting > Account Information > seller information > change to > Transparent
check this:
https://support.google.com/admob/troubleshooter/9092685- Have you followed all the instructions in the Google Developers Get Started guide?
Android - https://developers.google.com/admob/android/quick-start
IOS - https://developers.google.com/admob/ios/quick-start- Is your ad implementation code working properly?
https://support.google.com/admob/answer/9388275
(If your ad implementation code is not correct, ads won’t show.)- Enable user metrics for your apps (its active?)
https://support.google.com/admob/answer/9263723- admob > Apps > your app > Approval status > it's on "Ready"?
- Check this: Can't See Ads Troubleshooter
https://support.google.com/admob/troubleshooter/9092685
これらに従ったところ無事に解決できました。皆様のトラブルも解決されますように・・・!