めも。
AdWhirlとAdMob各サイトでのアカウント設定、アプリ追加が終わってる所から。
AdWhirl
SDK最新版を取得、ライブラリ設定
現時点では AdWhirl 3.2.0 for Android
SDK: http://code.google.com/p/adwhirl/downloads/list
Project ->Properties ->Java Build Path
Libraries選択、Add External JARs…より、AdWhirlのライブラリを追加。
Order and Export
で、チェックを付ける。
広告を表示するActivityのレイアウトxmlに、広告用のレイアウトを追記。
<LinearLayout android:id="@+id/ad_layout" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true" />
対象のActivityに、implements AdWhirlInterface
public class 広告表示するActivity extends Activity implements AdWhirlInterface{ ...
OnCreateで、レイアウトに貼付ける
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.広告表示するActivityレイアウト); LinearLayout layout = (LinearLayout) findViewById(R.id.ad_layout); adWhirlLayout = new AdWhirlLayout(this,"AdWhirlのID"); RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); int diWidth = 320; int diHeight = 52; float density = getResources().getDisplayMetrics().density; adWhirlLayout.setAdWhirlInterface(this); adWhirlLayout.setMaxWidth((int)(diWidth * density)); adWhirlLayout.setMaxHeight((int)(diHeight * density)); //layoutParams.addRule(RelativeLayout.CENTER_HORIZONTAL); layout.addView(adWhirlLayout,layoutParams); layout.invalidate(); ...
マニフェストにADWHIRL_KEYを追加(一応)
公式のマニュアルも参照
<activity 広告表示するActivity...> <meta-data android:value="AdWhirlのID" android:name="ADWHIRL_KEY" />
ほぼ、こちらのサイトを参考にさせていただいた。
[メモ]AndroidでのAdWhirlの実装
AdMob
https://developers.google.com/mobile-ads-sdk/download#downloadandroid
SDK最新版を取得、ライブラリ設定
https://developers.google.com/mobile-ads-sdk/docs/
AdWhirlと同様。
Project ->Properties ->Java Build Path
Libraries選択、Add External JARs…より、AdMobのライブラリを追加。
Order and Export
で、チェックを付ける。
AdWhirlを利用すると、AdMob用のコードをほとんど書く必要がないようだ。
1点、広告用Activityの記述が必要。
マニフェストのapplication内に、以下を追記する必要がある。
<activity android:name="com.google.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/>
configChanges部分の内容は、API level13が必要なので、ProjectのビルドターゲットがAndroid 3.2以降だといいのかな。
忘れがちなパーミッション設定
マニフェストに以下を追加。すでにありそうだけど。
<uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
これくらいでよかった感じがする。