admobの2012年5月にて

admobの状況は逐一変化をするようで、以前の記事のデータでは対応できなくなっていたので、

現状のadmobを組み込みを勉強します。

 

step1:admobに登録してコードとか.jarとかを取得

このstepに関しては、割りとどのブログでも説明してるので問題ないかと。

 

step2:admobを組み込んでpathを通す。

libsフォルダ(本当はなんでもいい。)を作成して、その中に.jarファイルをいれて、右クリックでadd to pathをする。

 

step3:admob用に権限を追加する

ネット経由でバナーを取得しているのと、おそらく地域を判別したりしているのかと思います。

<uses-permission android:name="android.permission.INTERNET" />
 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

 

step4:admobのアクティビティをマニフェストに追加する。

以前はここには項目が3つくらいだったのだけど、これを設定しないとダメなようです。

<activity 
 android:name="com.google.ads.AdActivity" 
 android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/>

 

step5:ここは個人的な方法です。

<LinearLayout 
 android:id="@+id/adcontainer"
 android:layout_width="fill_parent"
 android:layout_height="wrap_content"></LinearLayout>

で位置を決めておく。

 

step6:step5で用意した対象にadmobを追加する。

LinearLayout _lay = (LinearLayout)findViewById(R.id.adcontainer);
 AdView adGoogle = new AdView(this, AdSize.BANNER, "a14fa263cda65f7");
 _lay.addView(adGoogle);
 AdRequest adr = new AdRequest();
 adGoogle.loadAd(adr);

これで表示ができます。

 

が、ここで、問題が発生しました。

step4のconfigChangeのなかにscreenSize|smallestScreenSizeが入らない。という問題が発生しました。

どうやらadmobの方で、androidのSdkVersion:13以降でなくては、対応できない項目のようで、このままではエラーが出てしまいました。

また、androidのminSdkVersion:13にすると、android3.2くらいからの対応になるので、現在のスマホの事情(2.3.xが一般的)には合わないです。

 

で、ここではminSdkVersionと、アプリ開発のバージョンを違うものを設定する事ができるようです。

(今回はしれっと使ってみますが、個人的には、使えない関数とかもコードヒントとかで出てしまうのではないかと、ちょっと詳細を調べたいのですが)

 

開発の最初にバージョンの指定をするところで、現在最新の15を選ぶなどをすると、eclipseandroidの4対応仕様bになってくれます。

で、開発がある程度進んでしまっている場合には、

eclipseのマニフェストの下に、project.propertiesというファイルがあります。このファイルのなかにtarget=android-7とかの項目があるので、target=android-15とかに変更してみてください。

一方で、minSDKのバージョンを8に設定したりできます。

 

これでパブリッシュをすれば、androidのバージョンが2.3の端末でも問題なく

admobが表示されました。

 

前の時点でも、古い情報が多く苦戦したのですが、相変わらず変更を重ねてきてめんどうくさいです。

以上です。

前後の記事

前の記事:

次の記事:

関連の記事

コメントの投稿

  • サイト内検索

新作アプリの紹介

関連サイトの紹介

アンドロイドアプリ開発TIPS
きぐるみカメラ
ふらいぱん
アンドロイドのデザイン集
Page top↑