Баннерная реклама InMobi не загружается

Я новичок в InMobi и пытаюсь внедрить рекламный баннер в свое приложение. Вот мой код

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    setUpBannerAd();
}
private void setUpBannerAd(){
    InMobiSdk.init(MainActivity.this, MY_ID);
    InMobiBanner bannerAd = findViewById(R.id.banner);
    bannerAd = new InMobiBanner(MainActivity.this, BANNER_ID);
    bannerAd.setListener(new InMobiBanner.BannerAdListener() {
        @Override
        public void onAdLoadSucceeded(InMobiBanner inMobiBanner) {
            Toast.makeText(MainActivity.this, "sucess", Toast.LENGTH_SHORT).show();
        }

        @Override
        public void onAdLoadFailed(InMobiBanner inMobiBanner,
                                   InMobiAdRequestStatus inMobiAdRequestStatus) {
            Toast.makeText(MainActivity.this, "fail", Toast.LENGTH_SHORT).show();

        }

        @Override
        public void onAdDisplayed(InMobiBanner inMobiBanner) {
        }

        @Override
        public void onAdDismissed(InMobiBanner inMobiBanner) {
        }

        @Override
        public void onAdInteraction(InMobiBanner inMobiBanner, Map<Object, Object> map) {
        }

        @Override
        public void onUserLeftApplication(InMobiBanner inMobiBanner) {
        }

        @Override
        public void onAdRewardActionCompleted(InMobiBanner inMobiBanner, Map<Object, Object> map) {
        }
    });
    bannerAd.load();

}

} Я думаю, что у меня есть все необходимые импорты, а также объявления манифеста, но я не совсем уверен, потому что я новичок в этой платформе. Тестовая реклама включена. Тосты даже НЕ появляются. Спасибо за ответы!


person Jonáš Tichý    schedule 10.05.2018    source источник


Ответы (1)


  1. Вам нужно добавить баннер в иерархию представлений после его создания. Что-то вроде этого:

    RelativeLayout adContainer = (RelativeLayout) findViewById(R.id.ad_container);
    RelativeLayout.LayoutParams bannerLp = new 
    RelativeLayout.LayoutParams(640, 100); 
    bannerLp.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
    bannerLp.addRule(RelativeLayout.CENTER_HORIZONTAL);
    adContainer.addView(bannerAd, bannerLayoutParams);</code>
    
  2. Похоже, вы создали баннер дважды. Один раз в XML и один раз в коде:

    //the banner is created below by reference to xml
    InMobiBanner bannerAd = findViewById(R.id.banner);
    //the banner is created below in code
    bannerAd = new InMobiBanner(MainActivity.this, BANNER_ID);</code>
    

Дополнительные сведения см. в этом руководстве: https://support.inmobi.com/monetize/android-guidelines/banner-ads-for-android/

person markerj    schedule 20.06.2018