Google AdModを試すためにニッチすぎて収益性がないアプリだけど追加してみました
app-ads.txt
まずはGoogle Play Consoleでウェブサイトを設定

アプリ – すべてのアプリを表示でapp-ads.txtの項目が出るので、app-ads.txtに必要な内容をコピーする

指定したサイトはロリポップでWordPressで作っているので、ロリポップのFTPでapp-ads.txtを自分のサイトのルートに置く
そのうちクローラが発見してくれるので待つ(1週間くらいかかるらしい)
Google Play ConsoleでAndroid 13以降は広告 IDの申告が必要なので設定する
(審査に出すタイミングで設定を促す画面が出てくるはず
広告ユニットを追加
Google AdModサイトで広告ユニットを追加を選択する
ここではバナー広告を選択
ポリシー違反にならないようにテスト端末の広告IDもGoogle AdModサイトに登録しておく
テスト端末の広告IDは端末の設定-Googleですべてのサービスの広告で確認できる
(コピペができないから手打ち…
実装
参考
https://developers.google.com/admob/android/quick-start?hl=ja#import_the_mobile_ads_sdk
依存関係の追加
com.google.android.gms:play-services-ads
メタデータの追加
<manifest>
<application>
<!-- Sample AdMob app ID: ca-app-pub-3940256099942544~3347511713 -->
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/>
</application>
</manifest>Firebaseとかと競合するなら以下を追加
<manifest>
<application>
<property
android:name="android.adservices.AD_SERVICES_CONFIG"
android:resource="@xml/gma_ad_services_config"
tools:replace="android:resource" />
</application>
</manifest>とりあえず出すだけなら以下
quick-startのようにinitializeをバックグラウンドで行うとloadAdとの同期が必要そうです
UnitIdはテスト用
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
MobileAds.initialize(this)
}
}
AndroidView(
modifier = Modifier.fillMaxWidth(),
factory = { context ->
AdView(context).apply {
setAdSize(AdSize.BANNER)
// test
adUnitId = "ca-app-pub-3940256099942544/9214589741"
loadAd(AdRequest.Builder().build())
}
}
)Android Studio Koala 2024.1.1 Patch 1 built on July 11, 2024
