¿Cómo comprobar si AdView está visible?

Quiero comprobar si AdView ha cargado anuncios y es visible y, por lo tanto, necesita espacio en la pantalla o si no ha cargado un anuncio, por ejemplo si la conexión a Internet no está disponible. Si no carga anuncios, puedo usar el espacio para otra cosa.

¿Cómo lograr esto?

2 Solutions collect form web for “¿Cómo comprobar si AdView está visible?”

Puede implementar AdListener para este propósito. Simplemente anula onAdFailedToLoad y onAdLoaded .

 mAdView = (AdView) findViewById(R.id.adView); mAdView.setAdListener(new AdListener() { // Called when an ad is loaded. @Override public void onAdLoaded() { Log.e(TAG, "Google onAdLoaded"); } // Called when an ad failed to load. @Override public void onAdFailedToLoad(int error) { String message = "Google onAdFailedToLoad: " + getErrorReason(error); Log.e(TAG, message); } // Called when an Activity is created in front of the app // (eg an interstitial is shown, or an ad is clicked and launches a new Activity). @Override public void onAdOpened() { Log.e(TAG, "Google onAdOpened"); } // Called when an ad is clicked and about to return to the application. @Override public void onAdClosed() { Log.e(TAG, "Google onAdClosed"); } // Called when an ad is clicked and going to start a new Activity that will leave the application // (eg breaking out to the Browser or Maps application). @Override public void onAdLeftApplication() { Log.d(TAG, "Google onAdLeftApplication"); } }); mAdRequest = new AdRequest.Builder().build(); mAdView.loadAd(mAdRequest); private String getErrorReason(int errorCode) { // Gets a string error reason from an error code. String errorReason = ""; switch (errorCode) { case AdRequest.ERROR_CODE_INTERNAL_ERROR: errorReason = "Internal error"; break; case AdRequest.ERROR_CODE_INVALID_REQUEST: errorReason = "Invalid request"; break; case AdRequest.ERROR_CODE_NETWORK_ERROR: errorReason = "Network Error"; break; case AdRequest.ERROR_CODE_NO_FILL: errorReason = "No fill"; break; } return errorReason; } 
FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.