我已将AdMob(320x50横幅)添加到我的项目中,并在调试模式下成功测试了它。对于生产版本,我启用了ProGuard混淆,横幅消失了。 我尝试过使用这些ProGuard规则,但它并没有影响:
-keep public class com.google.android.gms.ads.** {
public *;
}
-keep public class com.google.ads.** {
public *;
}
我在我的Application类中初始化AdMob,如:
MobileAds.initialize(getApplicationContext(), getString(R.string.banner_ad_id));
在xml布局中我放置横幅:
<com.google.android.gms.ads.AdView
xmlns:ads="http://schemas.android.com/apk/res-auto"
android:id="@+id/adView"
android:layout_width="match_parent"
android:visibility="gone"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_alignParentBottom="true"
ads:adSize="BANNER"
ads:adUnitId="@string/banner_ad_unit_id">
</com.google.android.gms.ads.AdView>
之后,我以这种方式加载横幅:
AdView adMobView = (AdView) bannerLayout.findViewById(R.id.adView);
AdRequest adRequest = new AdRequest.Builder().build();
adMobView.loadAd(adRequest);
此外,我使用第二个广告提供商(adtech)并根据条件发挥其可见性。 知道如何让它们可见吗?
答案 0 :(得分:0)
最后,我发现我的问题出在哪里 - 我不应该将AdView的初始可见性参数设置为GONE。即便通过我已经以编程方式将其更改为VISIBLE - 它在签名的apk中也不起作用(仍然是一个谜)。