J'ai récemment commencé à utiliser des bannières publicitaires admob dans mes applications Android. Cela fonctionne très bien, mais j'ai quelques problèmes. Pour l'instant, j'utilise BANNER, et non SMART_BANNER. Mes bannières fonctionnent sur la plupart des téléphones, sauf pour un petit groupe. Sur mon émulateur, je peux voir que le problème se produit lorsque la bannière est trop grande pour l'écran.Redimensionner bannière admob à la taille de l'écran dans le studio android
J'ai essayé d'utiliser des bannières intelligentes, mais j'ai toujours le même message dans logcat: "bannière a besoin de 340 x 50. Seulement 288x460". Mes bannières fonctionnent sur la plupart des écrans de 5 pouces, sauf pour certains, mais lorsque j'essaie l'application sur des écrans de petite taille, la bannière n'est pas visible
Ma question est: comment redimensionner ma bannière pour l'adapter à tous les écrans ? tailles
voici mon code que j'utiliser pour créer bannière publicitaire:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:ads="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_height="match_parent">
<android.support.percent.PercentRelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:id="@+id/timer1background2"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="127dp"
android:id="@+id/TimerTextview1"
android:textColor="@android:color/black"
android:textStyle="normal|bold"
app:layout_marginTopPercent="11%"
android:text="APP NAME"
android:textSize="45dp" />
<Button
android:text="Go To Timer 1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:id="@+id/StartB1"
android:textColor="@android:color/background_light"
android:background="@color/colorPrimaryDark"
android:textStyle="normal|bold"
android:textSize="35sp"
app:layout_marginTopPercent="33%"
app:layout_heightPercent="15%"/>
<Button
android:text="Go To Timer 2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:id="@+id/StartB2"
android:textColor="@android:color/background_light"
android:background="@color/colorPrimaryDark"
android:textStyle="normal|bold"
android:textSize="35sp"
app:layout_marginTopPercent="58%"
app:layout_heightPercent="15%"/>
</android.support.percent.PercentRelativeLayout>
<com.google.android.gms.ads.AdView
android:id="@+id/adView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_alignParentBottom="true"
ads:adSize="BANNER"
ads:adUnitId="MY KEY">
</com.google.android.gms.ads.AdView>
</RelativeLayout>
Et:
//Load ads
MobileAds.initialize(getActivity().getApplicationContext(), "MY KEY");
AdView adView = (AdView) myView.findViewById(R.id.adView);
AdRequest adRequest = new AdRequest.Builder().build();
adView.loadAd(adRequest);
Vous pouvez voir que le WxH minimum pour BANNER est 320x50. Alors, que faire si la taille de l'écran est plus petit que cela? – AndreasWT
C'est le ratio. Si la largeur du périphérique varie, l'affichage de l'annonce l'ajustera. – ADM
Mais quand je fais comme vous le dites, l'annonce n'est pas affichée. Seulement quand l'écran a de la place pour ça. – AndreasWT