ライブラリの追加 : build.gradle
builde.gradle の dependencies に play-services への依存を追加します。AdMob は Play Services の一部になっています。
(以下の例の、play-services 以外はプロジェクトのデフォルトで設定されていたものです。)
dependencies { compile 'com.android.support:support-v13:19.+' compile 'com.android.support:support-v4:19.+' compile 'com.google.android.gms:play-services:+' compile fileTree(dir: 'libs', include: ['*.jar']) }
追加後、Sync Project With Gradle ボタンを押します。
以降は、Google Mobile Ads SDK - スタートガイドに沿って AndroidManifest.xml の設定を行い、バナー広告1 に進み AdView の追加と広告のリクエストを行えば広告が表示できます。
AdView の API リファレンスはこちら。
以下、必要な事を簡単にまとめておきます。
AndroidManifest.xml
INTERNET と ACCESS_NETWORK_STATE のパーミッションを manifest タグ下に、meta-data を application タグ下に、
AdActivity を application タグ下に、
それぞれ追加します。
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.addmob" > <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version"/> <activity android:name="com.example.addmob.MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="com.google.android.gms.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/> </application> </manifest>
AdView の追加と広告の表示
xml で AdView のレイアウトを追加する場合は以下の様な形式になります。UNIT_ID は AdMob のページで作成した ID です。(ca-app-pub-XXXX....)
<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" ads:adUnitId="UNIT_ID" ads:adSize="BANNER"/>
AdView を加えただけでは広告は表示されないので、コード中で広告をリクエストする必要があります。
AdView mAdView;
...
mAdView = (AdView)findViewById(R.id.adView); AdRequest adRequest = new AdRequest.Builder().build(); mAdView.loadAd(adRequest);
また、AdView の処理の中断と再開、終了をきちんとおこなうため、Activity(Fragment) の onPause, onResume, onDestroy で AdView の pause, resume, destroy も呼んでおきます。
@Override protected void onResume() {
super.onResume(); mAdView.resume(); } @Override protected void onPause() { mAdView.pause(); super.onPause(); } @Override protected void onDestroy() { mAdView.destroy(); super.onDestroy(); }
0 件のコメント:
コメントを投稿