トップ 差分 一覧 ping ソース 検索 ヘルプ PDF RSS ログイン

Android AdMob



目次



記事一覧

キーワード

Android AdMob

[Android][Eclipse][Java]
http://jp.admob.com/

 アカウントロックについて


突然アカウントがロックされることがあるので【注意】


 アカウントの登録

 Android SDK インストールの仕方

  • Admob Android SDKは、AdMob 広告をアプリケーションにインストールするのに必要なコードを含んでいる。

 ステップ1

  • プロジェクトのルートディレクトリに libs サブディレクトリを作成する。
  • Android の activitycreator toolを使った場合、すでに作成されているはず。
  • AdMob JAR(admob-sdk-android.jar)をそこにコピーする。

Eclipse プロジェクトでは

  • プロジェクトのコンテキストメニューから、プロパティを開く
  • Java Build Path を選択
  • Libraries タブを選択
  • Add JARs をクリック
  • OK で、アプリケーションにAdMobのSDKを追加する。

 ステップ2

パブリッシャーIDの確認

サイト及びアプリケーション タブから、アプリケーションの設定と管理を選択
ここにある。

AndroidManifest.xml に、以下のようにパブリッシャーIDを記述

            :
    <meta-data android:value="a14xxxxxxxxxxxx" android:name="ADMOB_PUBLISHER_ID"/>
</application>

 ステップ3

パーミッションの追加

android.permission.INTERNET を追加

オプションで、以下のいずれかを追加
  • android.permission.ACCESS_COARSE_LOCATION
  • android.permission.ACCESS_FINE_LOCATION


 ステップ4

res/values/attrs.xml を作成

  • 以下の記述を追加
  • 既にある場合、declare-styleable 要素を追記
<?xml version="1.0" encoding="utf-8"?> 
<resources>
    <declare-styleable name="com.admob.android.ads.AdView"> 
        <attr name="backgroundColor" format="color" /> 
        <attr name="primaryTextColor" format="color" /> 
        <attr name="secondaryTextColor" format="color" /> 
        <attr name="keywords" format="string" /> 
        <attr name="refreshInterval" format="integer" /> 
    </declare-styleable>
</resources> 

 ステップ5

  • パッケージ名が設定されているAndroidManifest.xml を含んでいる xmlns 行を追加することで、レイアウト要素へ attrs.xmlファイルへの参照を作成

例えば、パッケージ名が、com.example.SampleApp の場合、以下の様になる

xmlns:myapp="http://schemas.android.com/apk/res/com.example.SampleApp" 
一つの広告を含むシンプルなスクリーンは、以下の様になる
<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout  
      xmlns:android="http://schemas.android.com/apk/res/android" 
      xmlns:myapp="http://schemas.android.com/apk/res/com.example.SampleApp" 
android:orientation="vertical" 
android:layout_width="fill_parent" 
      android:layout_height="fill_parent"> 
     
            <com.admob.android.ads.AdView   
                  android:id="@+id/ad"  
                  android:layout_width="fill_parent"  
                  android:layout_height="wrap_content" 
                  myapp:backgroundColor="#000000" 
                  myapp:primaryTextColor="#FFFFFF" 
                  myapp:secondaryTextColor="#CCCCCC" 
            /> 
                         
 </LinearLayout> 

 ステップ5.5

SDKのバージョンアップによりAndroidManifest.xmlに、以下のような記述をしなければならなくなったようだ(詳しい確認は後日行う)


       <!-- AdMob Activity -->
       <activity android:name="com.admob.android.ads.AdMobActivity" 
             android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
             android:configChanges="orientation|keyboard|keyboardHidden"
             />
       <!-- Track Market installs from AdMob ads -->        
       <receiver android:name="com.admob.android.ads.analytics.InstallReceiver" android:exported="true">
           <intent-filter>
               <action android:name="com.android.vending.INSTALL_REFERRER" />
           </intent-filter>
       </receiver>
       <!-- The application's publisher ID assigned by AdMob -->
       <meta-data android:value="a1496ced2842262" android:name="ADMOB_PUBLISHER_ID"/>
       <!-- use a separate publisher id here to aid in tracking intersitial statistics -->
       <meta-data android:value="a1496ced2842262" android:name="ADMOB_INTERSTITIAL_PUBLISHER_ID" />

 ステップ6

テストモードの利用

  • AdMob 広告をアプリケーションに統合する場合、テストモードの利用を推奨
  • テストモードの場合、広告は常に返される
  • テストモードは、デバイス単位に有効化する。
  • デバイスのテストモードを有効化されている場合、最初の広告リクエスト時にLogCatで以下の様なメッセージを確認できる。
To get test ads on the emulator use AdManager.setTestDevices...


  • 一度、AdManager.setTestDevices を呼び出すことでデバイスIDを取得できる
AdManager.setTestDevices( new String[] {                  
    AdManager.TEST_EMULATOR,             // Android emulator 
    "E83D20734F72FB3108F104ABC0FFC738",  // My T-Mobile G1 Test Phone 
    } );  
} 
  • 一旦テスト広告へのリクエストが成功したら、アプリケーションからのテスト広告へのクリックが正しく機能しているか確認する。
  • テスト広告の結果は AdManager.setTestAction で変更される。



YAGI Hiroto (piroto@a-net.email.ne.jp)
twitter http://twitter.com/pppiroto

Copyright© 矢木 浩人 All Rights Reserved.