Search code examples
androidadmobandenginegoogle-play-servicesadview

Null Pointer Admob Adrequest


Im having some problems setting Admob up, First off here is my code this is all under the onCreateEngine method:

AdView adView = (AdView) findViewById(R.id.adView);
    AdRequest adRequest = new AdRequest.Builder()
        .addTestDevice("TEST_DEVICE_ID")
        .build();
    adView.setAdSize(AdSize.BANNER);
    adView.setAdUnitId(AD_UNIT_ID);
    adView.loadAd(adRequest);

Here is the xml part:

<com.google.android.gms.ads.AdView
    android:id="@+id/adView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_centerHorizontal="true" >
</com.google.android.gms.ads.AdView>

When i tried setting adsize as an xml attribute i get an error that says "Required xml attribute adSize was missing" So i tried setting it programmatically, however i have another issue. Whenever i call adView.loadAd(adRequest); i get a null pointer exception


Solution

  • I suppose you using AndEngine. Override onSetContentView() and put code inside this. Something like this:

       @Override
        protected void onSetContentView() {
            super.onSetContentView();
    
        AdView adView = (AdView) findViewById(R.id.adView);
        AdRequest adRequest = new AdRequest.Builder()
            .addTestDevice("TEST_DEVICE_ID")
            .build();
        adView.setAdSize(AdSize.BANNER);
        adView.setAdUnitId(AD_UNIT_ID);
        adView.loadAd(adRequest);
    }