こんにちは。管理人のピヨ猫でーす。
Androidに広告を掲載する方法を紹介します。
1.AdMob
Androidアプリに広告を載せるにはGoogleの広告表示サービスのAdMobを使うのが一番簡単です。AdMobは1クリックあたり数円が入るそうです。
admob.google.com
2.Androidアプリに広告を載せるには?
スタートアップガイド
ハマりました。
2週間近く広告の表示が出来ませんでした。
まあ、広告収入が入るほど使われていないので良いですが(-_-;)
ちゃんと本家AdMobのスタートアップガイドの通りにやればできましたので、
まずは以下を読むことをお勧めします。
https://developers.google.com/admob/android/quick-start?hl=ja
Androidアプリに広告を載せる手順
AdMobの登録
以下のAdMobサイトにてアカウント登録します。
Google AdMob - Mobile App Monetization
お支払い方法の設定
AdMobの管理コンソールより、お支払い → 設定を選択し、
AdMob → アプリ製作者(あなた)への支払い方法を設定します。
氏名や住所等を入力します。これをしないと広告は掲載されません。
アプリの追加
アプリ → アプリを追加より広告を追加するアプリを登録します。
アプリの設定に表示される「アプリ ID」はこの後使うので、控えておきます。
広告ユニットの追加
アプリ→広告ユニットより、広告ユニットを追加します。
広告のユニットIDはこの後使うので控えておきます。
アプリの設定
以下ガイドの通りです。
スタートガイド | Android | Google Developers
①プロジェクト レベルの build.gradleを設定する
allprojects {
repositories {
google()
jcenter()
}
}
②アプリレベルの build.gradleを設定する
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:26.1.0'
// 以下の行を追加
implementation 'com.google.android.gms:play-services-ads:17.1.1'
// ↑↑↑
}
③Manifest.xmlを設定する
<manifest>
<application>
<!-- 以下の行を追加 -->
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="[アプリID]"/>
<!-- ↑↑↑ -->
</application>
</manifest>
④MainActivityを設定する
public class MainActivity extends AppCompatActivity {
...
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 以下の行を追加
MobileAds.initialize(this, "[アプリID]");
// ↑↑↑
}
...
}
広告ユニットの表示設定(バナーの例)
以下ガイドの通りです。
スタートガイド | Android | Google Developers
①AdView をレイアウトに追加する
main_activity.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context=".MainActivity">
<TextView android:text="@string/hello_world"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<!-- 以下の行を追加 -->
<com.google.android.gms.ads.AdView
xmlns:ads="http://schemas.android.com/apk/res-auto"
android:id="@+id/adView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_alignParentBottom="true"
ads:adSize="BANNER"
ads:adUnitId="[ユニットID]">
</com.google.android.gms.ads.AdView>
<!-- ↑↑↑ -->
</RelativeLayout>
②広告を読み込む
public class MainActivity extends AppCompatActivity {
private AdView mAdView;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
MobileAds.initialize(this, "[アプリID]");
// 以下の行を追加
mAdView = findViewById(R.id.adView);
AdRequest adRequest = new AdRequest.Builder().build();
mAdView.loadAd(adRequest);
// ↑↑↑
}
}
表示されましたー\(^o^)/
画面下部に広告バナーが表示されています(画像はテスト用のバナーです)。
3.注意点(テスト時はテスト用のバナーを使う)
Play Storeに配布しないで、テストする場合は、テスト用のバナーを配置する必要があります。ガイドにしれっと恐ろしいことが書かれています。
adMobの注意点
アプリの開発中やテストの際は必ずテスト広告を使用し、実際の広告は使用しないでください。実際の広告でテストすると、アカウントが停止される場合があります。
テスト広告を読み込むには、次に示す Android バナー向けのテスト専用広告ユニット ID を使う方法が便利です。
ca-app-pub-3940256099942544/6300978111
この ID は、すべてのリクエストに対してテスト広告を返す特別な ID で、アプリのコーディング、テスト、デバッグで自由に使うことができます。なお、このテスト用 ID は、アプリを公開する前に必ずご自身の広告ユニット ID に置き換えてください。
まとめ
要約すると広告を表示するための作業は以下となります。
うーん多い。メンド。
1.事前準備
① AdMobを登録する
② お支払い方法を設定する
2.AdMobのコンソールでの作業
① アプリを追加する
② 広告ユニットを追加する
3.アプリのビルド設定
① プロジェクト レベルの build.gradleを設定する
② アプリレベルの build.gradleを設定する
4.アプリの設定
① Manifest.xmlを設定する
② MainActivityでアプリIDを設定する
5.広告ユニットの設定
① レイアウトに広告(AdView)を追加する
② 広告を読み込む
本日は以上です。この記事が少しでもお役に立てば幸いです。