Admob横幅放慢了应用程序并在主线程上做了太多工作 - Android

时间:2015-12-14 22:03:59

标签: android admob

我的活动包含最多30个项目的RecycleView。每个项目包含2到3个文本视图和1个按钮。点击按钮我有动画。

在添加admob横幅之前,性能非常好,滚动顺畅。

添加admob横幅后,滚动正在剪切,单击按钮需要稍作响应。另外,我看到消息显示我在主线程上工作太多了!

有关于如何修复的建议吗?或者有什么可以帮助它变得更好? 如何在启用admob横幅的情况下顺利滚动?

希望我不是唯一面临这个问题的人!

更新

<?xml version="1.0" encoding="utf-8"?>
<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">

    <android.support.v7.widget.RecyclerView
        android:paddingTop="30dp"
        android:paddingBottom="64dp"
        android:clipToPadding="false"
        android:id="@+id/rv_Test"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />


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

</RelativeLayout>

2 个答案:

答案 0 :(得分:3)

它发现adView是问题所在 我已将adView替换为NativeContentAdView以使用原生广告

现在滚动顺畅

这是doc的链接 https://developers.google.com/admob/android/native

答案 1 :(得分:0)

Admob 在开始时需要一些时间来加载广告,因此在 Activity 过渡动画完成后加载广告会有一些延迟:

Handler handler = new Handler ();
handler.postDelayed (new Runnable () {
 @Override
 public void run () {
      AdRequest bannerRequest = new AdRequest.Builder (). Build ();
      mAdView.loadAd (bannerRequest);
 }
}, 2000);