不会在弹出窗口中显示的admob横幅

时间:2017-07-26 20:09:07

标签: android popup admob adsense banner

我想在我的Android音乐播放器的弹出播放器之后添加横幅。在Android工作室预览模式中,我没有错误,它运行正常但横幅未显示。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout  

xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:ads="http://schemas.android.com/apk/res-auto"
android:layout_width="320dp"
android:layout_height="fill_parent"
android:orientation="vertical"
android:weightSum="1.0">


<RelativeLayout    
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@color/primary"
    android:paddingBottom="5dp"
    android:paddingLeft="20dp"
    android:paddingRight="20dp"
    android:paddingTop="20dp">

    <TextView
        android:id="@+id/name"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="10dp"
        android:maxLines="5"
        android:textColor="@color/white"
        android:textSize="@dimen/text_medium"
        tools:text="Mr.Afghani" />

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/name"
        android:gravity="center_vertical">

        <ImageView
            android:id="@+id/play"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="6"
            android:src="@mipmap/play" />

        <ImageView
            android:id="@+id/pause"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="6"
            android:src="@mipmap/pause"
            android:visibility="gone" />

        <FrameLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_weight="0.8"
            android:paddingEnd="10dp"
            android:paddingRight="10dp">

            <SeekBar
                android:id="@+id/media_seekbar"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_gravity="center_vertical" />

            <TextView
                android:id="@+id/playback_time"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="end|top"
                android:ellipsize="end"
                android:textColor="@color/white"
                android:textSize="11sp"
                tools:text="00:00" />
        </FrameLayout>
    </LinearLayout>

</RelativeLayout>

<com.google.android.gms.ads.AdView
    android:id="@id/adView"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    ads:adSize="BANNER"
    ads:adUnitId="@string/bannerAd1" />
</LinearLayout>

在mainActivity中我的代码是正确的,我想因为我尝试将横幅放在其他屏幕上并且工作正常。有没有办法把横幅放在弹出屏幕上?

我在MainActivity中的代码是:

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    init();
    AdView mAdView = (AdView) findViewById(R.id.adView);
    AdRequest request = new AdRequest.Builder().build();
    mAdView.loadAd(request);



    mInterstitialAd = new InterstitialAd(this);
    mInterstitialAd.setAdUnitId("ca-app-pub-1234");
    AdRequest adRequest = new AdRequest.Builder().build();
    mInterstitialAd.loadAd(adRequest);
    mInterstitialAd.setAdListener(new AdListener() {
        @Override
        public void onAdClosed() {
            AdRequest adRequest1 = new AdRequest.Builder().build();
            mInterstitialAd.loadAd(adRequest1);
        }
    });

1 个答案:

答案 0 :(得分:1)

广告未在对话框/弹出窗口中显示的主要原因是横幅广告没有获得足够的空间(宽度)来展示。 请记住广告尺寸:

320x50      Standard Banner        Phones and Tablets   BANNER
320x100     Large Banner           Phones and Tablets   LARGE_BANNER
300x250     IAB Medium Rectangle   Phones and Tablets   MEDIUM_RECTANGLE
468x60      IAB Full-Size Banner   Tablets              FULL_BANNER
728x90      IAB Leaderboard        Tablets              LEADERBOARD
Screen      width x 32|50|90       Smart Banner     Phones and Tablets  SMART_BANNER

Source

因此,由于您使用的是Banner广告尺寸,因此请确保您弹出的广告尺寸至少为320,以便能够展示广告。如果您确实有足够的空间并且广告仍然无法显示,则问题可能是填充率问题,这意味着您的位置无法投放广告。如果有帮助,请告诉我

<强>更新

onCreate()方法中,您可以设置对话框的宽度以覆盖设备屏幕的全宽:

  DisplayMetrics metrics = getResources().getDisplayMetrics();
        // int screenWidth = (int) (metrics.widthPixels * 0.99); //99 percent
        boolean isLandscape = getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE;
        if(isLandscape)
            getWindow().setLayout((int) (metrics.widthPixels * 0.70), ViewGroup.LayoutParams.WRAP_CONTENT);
        else getWindow().setLayout(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);

您可以随时查看android studio中的日志,看看问题是否为横幅尺寸