#android #facebook #admob #ads #heyzap
#Android #Facebook #admob #реклама #heyzap
Вопрос:
Я пытаюсь показать 2 баннера на 1 экране, но он показывает только 1 баннер. Баннер 1 загружен и отображается, но при загрузке баннера 2 он отображается, а баннер 1 пуст. Мой код не может отображать оба баннера 2. Можете ли вы мне помочь.
Мой КОД:
@BindingAdapter({"bind:initAds"})
public static void initAds(FrameLayout view, MainData data) {
if (data.getAds() > 0) {
AdsUtil.addBannerAds(view, data);
} else {
view.setVisibility(View.GONE);
}
//AdsUtil.addBannerAds(view, data);
}
public static void addBannerAds(final FrameLayout bannerWrapper, final MainData data)
{
Activity mActivity = IxuApplication.getInstance().getCurrentActivity();
BannerAdView bannerAdView = new BannerAdView(mActivity);
HeyzapAds.setNetworkCallbackListener(new HeyzapAds.NetworkCallbackListener() {
@Override
public void onNetworkCallback(String network, String event) {
Log.e("tungtung",network " " event);
}
});
HeyzapAds.BannerOptions bannerOptions = bannerAdView.getBannerOptions();
bannerOptions.setFacebookBannerSize(HeyzapAds.CreativeSize.BANNER);
bannerOptions.setAdmobBannerSize(HeyzapAds.CreativeSize.BANNER);
bannerOptions.setGenericBannerSize(HeyzapAds.CreativeSize.BANNER);
if(bannerWrapper.getChildCount()>0)
bannerWrapper.removeAllViews();
bannerWrapper.addView(bannerAdView);
bannerAdView.setBannerListener(new HeyzapAds.BannerListener() {
@Override
public void onAdError(BannerAdView bannerAdView, HeyzapAds.BannerError bannerError) {
}
@Override
public void onAdLoaded(BannerAdView bannerAdView) {
if(data.getEnable()!=2)
data.setShowLineForAds(1);
bannerWrapper.setVisibility(View.VISIBLE);
}
@Override
public void onAdClicked(BannerAdView bannerAdView) {
}
});
bannerAdView.load();
}
Ответ №1:
К сожалению, если вы используете наш новый унифицированный SDK 10.x, мы больше не поддерживаем одновременное размещение нескольких баннеров. Это ограничение нового SDK, и в настоящее время мы ищем лучшее решение.
Если вы используете SDK 9.x, я могу дать вам несколько замечаний:
Чтобы повысить надежность показа рекламы, мы рекомендуем вам не изменять View
видимость BannerAdView
самостоятельно и оставить вид неизменным на VISIBLE
протяжении всего жизненного цикла баннера.
Следующее замечание заключается в том, что следующий код уничтожает все существующие баннеры при вызове addBannerAds
.
if(bannerWrapper.getChildCount() > 0)
bannerWrapper.removeAllViews();
Если вы удалите этот код из своей реализации, вы сможете добавлять bannerWrapper
сразу несколько баннеров и, надеюсь, видеть несколько баннеров.
Комментарии:
1. Спасибо. Я исправил.
2. Отсутствие нескольких баннеров является проблемой для меня в SDK 10.x. Может быть, я буду использовать 9.x. У меня есть несколько вкладок, каждая с баннером внизу, поэтому отсутствие нескольких баннеров немного мешает: ( 🙁