Intersticial de AdMob con Viewpager: problemas después del descarte
He implementado el intersticial de AdMob cuando los fragmentos del visor se deslizan / cambian. Dependiendo de un par de condiciones (principalmente controladas por el tiempo), los intersticiales solicitados se cargan durante el deslizamiento llamando al siguiente código en onPageSelected in viewpager listener:
SharedPreferences myPreferences = getSharedPreferences("AdvertTime", MainActivity.this.MODE_PRIVATE);
long retrievedTime = myPreferences.getLong("ADTIME", System.currentTimeMillis());
boolean myBool = retrievedTime < System.currentTimeMillis();
boolean myBool1 = onLaunchTime < System.currentTimeMillis();
if (mInterstitialAd.isLoaded() && myBool && myBool1) {
mInterstitialAd.show();
SharedPreferences.Editor prefEditor = myPreferences.edit();
long myLong = System.currentTimeMillis() + MainActivity.myAdDelay;
prefEditor.putLong("ADTIME", myLong);
prefEditor.commit();
}
Después de que el anuncio se descarta con la 'X', las aplicaciones comienzan a comportarse de manera extraña, principalmente los íconos de la barra de acción no cambian al deslizar fragmentos y el cajón de navegación actúa de manera extraña al resaltar las opciones incorrectas de las que se hace clic. Por cierto, este problema desaparece cuando se ejecuta y se cierra una nueva actividad, o la aplicación se detiene y se reanuda.