user6405383
user6405383

Reputation: 146

Admob live ads not showing in my application,while testing ads showing

Admob Live ads are not showing, while testing ads are showing. Live ads are not showing at all, I don't know what i am missing.

Here is code.

String.java XML

     <!-- Insert Id admob -->

     <string name="BannerAd_unit_id">cca-app-pub-1154915214031679/2100011458</string>

     <string name="InterstitialAd_unit_id">ca-app-pub-1154915214031679/9049914448</string>

MainGame.Java Class

  this.BANNER_AD_UNIT_ID = getResources().getString(R.string.BannerAd_unit_id);
    showBanner();

screen java.class

   public void showBanner() {
    //banner ad
    if (BANNER_AD_UNIT_ID.length() > 0) {
        // Create an ad.

        adView = new AdView(this);
        adView.setAdSize(AdSize.BANNER);
        adView.setAdUnitId(BANNER_AD_UNIT_ID);

        //make ad visible on bottom of screen
        RelativeLayout.LayoutParams params1 = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
        params1.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
        params1.addRule(RelativeLayout.CENTER_HORIZONTAL);
        adView.setLayoutParams(params1);
        layout.addView(adView);

        // Create an ad request. Check logcat output for the hashed device ID to
        // get test ads on a physical device.
        AdRequest adRequest = new AdRequest.Builder()
                //.addTestDevice(AdRequest.DEVICE_ID_EMULATOR)      

//.addTestDevice("C01834A0B4A8FA4C03A0E09605F43819")//GalaxyS4*/
                .build();

        // Start loading the ad in the background.
        adView.loadAd(adRequest);
    }
}

If I Remove comment ".addTestDevice" Then testing ads are showing, if I comment it then live ads not showing. I don't know what is going on, any help will be appreciated.

Upvotes: 1

Views: 2366

Answers (3)

sparsh sharma
sparsh sharma

Reputation: 1

If the test ads are working fine then your implementation is correct, but there is an option of "Payment" in the admob account which you need to fill. After filling up that form you will receive an email regarding the confirmation of payment details and message indicating that whether your information was accepted by the admob team or not if yes then your live ads will be showing up. But keep in mind that for the first few time the ad won't show up. it takes time to appear after the approval as well.

Here is the code snippet for the error code to find what is going wrong

 mAdView = (com.google.android.gms.ads.AdView) findViewById(R.id.adView);

        mAdView.setAdListener(new com.google.android.gms.ads.AdListener() {
            @Override
            public void onAdLoaded() {
                // Code to be executed when an ad finishes loading.
                Toast.makeText(HomeActivity.this, "onAdLoaded", Toast.LENGTH_SHORT).show();
            }

            @Override
            public void onAdFailedToLoad(int errorCode) {
                if(errorCode==AdRequest.ERROR_CODE_INTERNAL_ERROR)

                Toast.makeText(HomeActivity.this, "onAdFailedToLoad", Toast.LENGTH_SHORT).show();

                // Code to be executed when an ad request fails.
            }

            @Override
            public void onAdOpened() {
                Toast.makeText(HomeActivity.this, "onAdOpened", Toast.LENGTH_SHORT).show();


            }

            @Override
            public void onAdLeftApplication() {
                Toast.makeText(HomeActivity.this, "onAdLeftApplication", Toast.LENGTH_SHORT).show();


            }

            @Override
            public void onAdClosed() {
                Toast.makeText(HomeActivity.this, "onAdClosed", Toast.LENGTH_SHORT).show();



            }
        })
        AdRequest adRequest = new AdRequest.Builder().build();
        mAdView.loadAd(adRequest);

Get the error code:
  • ERROR_CODE_INTERNAL_ERROR - Something happened internally; for instance, an invalid response was received from the ad server.
  • ERROR_CODE_INVALID_REQUEST - The ad request was invalid; for instance, the ad unit ID was incorrect.
  • ERROR_CODE_NETWORK_ERROR - The ad request was unsuccessful due to network connectivity.
  • ERROR_CODE_NO_FILL - The ad request was successful, but no ad was returned due to lack of ad inventory.

Upvotes: 0

live-love
live-love

Reputation: 52366

Make sure you have updated AdMob with your payment details (go to Payments Section for that).

Check your AdMob dashboard to see the status of your ads to check if they are active.

Verify you used the correct Ad Unit Id.

After you update your info, it may take up to 24 hours to verify your information. After verification, they will enable your ad serving. You will get an email notification saying your ads are now being served.

Upvotes: 0

Adrian Coman
Adrian Coman

Reputation: 1536

If you're not receiving real ads, but are receiving 'test ads' then the implementation should be ok.

If you just created the ad account, it takes a few hours until real ads will appear and sometimes there might be no adds available to show.

Set an adListener to your adView and see what you're getting back. It might be a ERROR_CODE_NO_FILL or it might give you other hints to solve the problem.

Upvotes: 2

Related Questions