めも。
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"/>
これくらいでよかった感じがする。
