2

Android アプリで Admob SMART_BANNER を使用しています。デバイスが縦向きモードのときにアプリが表示されます。ただし、デバイスの向きが横向きモードの場合、追加は表示されません。追加を表示するのに十分なスペースがない場合、追加のバナーが表示されないことはわかっています。しかし、私の場合、追加を表示するのに十分なスペースがあるようです。これが私のコードです:

activity_main.xml ファイル:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:ads="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <TextView android:text="@string/hello_world"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:padding="15dp"/>

    <com.google.android.gms.ads.AdView
        android:id="@+id/adView"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_alignParentBottom="true"
        ads:adSize="SMART_BANNER"
        ads:adUnitId="@string/banner_ad_unit_id">
    </com.google.android.gms.ads.AdView>


</RelativeLayout>

値フォルダー内のstrings.xmlファイル:

<resources>
    <string name="app_name">Banner Example</string>

    <string name="banner_ad_unit_id">ca-app-pub-3940256099942544/6300978111</string>

</resources>

Java コード:

TelephonyManager tManager = (TelephonyManager)this.getSystemService(Context.TELEPHONY_SERVICE);
       String uid = tManager.getDeviceId();

        AdView mAdView = (AdView) findViewById(R.id.adView);
        AdRequest adRequest = new AdRequest.Builder`enter code here`()
                .addTestDevice(uid)
                .build();
        mAdView.loadAd(adRequest);
4

3 に答える 3

1

これは元の質問には当てはまらないかもしれませんが、 SMART_BANNERが機能しない場合の解決策を共有したいと思いました。

私の場合、SMART_BANNER は、横向きか縦向きかに関係なく、画面の幅全体を使用したいことがわかりました。AdView を一番下に配置しました。画面の幅の 80% を占める列にある場合、表示もエラーも発生しません (つまり、onAdFailedToLoad は呼び出されません)。それは単に隠れます。幅全体を占めると、広告は問題なく表示されます。

于 2017-10-20T11:43:56.940 に答える