2013-07-29 5 views
6

現在、AndroidゲームにAdMobを統合しています。AndroidのAdMobバナーサイズ

さまざまなデバイスでさまざまな画面領域を占めるため、スマートバナーをフレームレイアウトベースのレイアウトに統合するのは困難です。

たとえば、私のAcer A500(MDPI 1280x800)にスマートバナーを表示すると、1280x90pxのサイズが表示されますが、Nexus 7では1279x66px(TVDPI 1280x800)とGalaxy Nexus (HDPI 1280x720)(1196x64px)高さsmartbanner以来、 https://developers.google.com/mobile-ads-sdk/docs/admob/smart-banners

ただし、この動作は、私にとって大きな問題がある:AdMobのドキュメントによると

、それはマニュアルに与えられた値は、DPであることを考えると、理解しやすい行動かもしれません1200x800px MDPIスクリーン上の90pxの解像度は、HDPIスクリーン上の64pxの高さを持つスマートバナーよりもはるかに多くの画面領域を占有します(下のスクリーンショットを参照)。

ここに私の質問があります: - 少なくともスマートバナーのためにどれくらいのスペースを確保すべきですか? - 誰かが似たようなことを試したことがありますか?どのように対処しましたか?

注:残念ながら、framelayoutとは異なるレイアウトを使用することは現時点ではオプションではありません。さらに、XMLレイアウトを使用して広告を統合することはできません。

よろしく、

ローレンツ

スクリーンショット:

http://imgur.com/qGAk77Y(A500)

+0

http://imgur.com/qGAk77Y,dK3buz2,Gg1hvyu#2(ネクサス7) http://imgur.com/qGAk77Y,dK3buz2,Gg1hvyu#1(ギャラクシーネクサス) - 申し訳ありませんが、十分ではない担当者すべてのリンクを投稿する – lorenz

答えて

0
  1. は、PXの観点で考えてはいけません。 dp(密度に依存しないピクセル)について考える。
  2. 最大のスペースを確保する。たとえば、レイアウトを含むレイアウトを使用して1280dp、90dp、AdViewを内部に埋め込みます。
1

レイアウトがxmlで定義されている場合は、画面サイズごとにレイアウトを1つ作成できます(layout-xlarge/mylayout.xml、layout-large/mylayout.xml、layout-normal/mylayout.xmlなど)。 ...)ここで

詳細情報:、10.1" タブレットは、中程度の密度を持っていますが、4.3" 480x850の解像度を持つ携帯電話は、高い密度を持つことになりますので

http://developer.android.com/guide/practices/screens_support.htmlは、密度を見てはいけません。代わりに画面のサイズを使用します(xlarge large normal small)。あなたがプログラム的にそれを行う必要がある場合

、あなたはこれで画面サイズを取得することができます。

Configuration config = activity.getResources().getConfiguration(); 
int screenlayout = config.screenLayout; 

と比較するには、Configuration.SCREENLAYOUT_xxxを使用しています。