title: How to make Admob interstitial show without delay?
body: <p>I have a simple game made in android sdk. When the user has level failed I want an interstitial to appear, more or less exactly at that moment. The problem is from the code I have, is a @5 seconds delay from the moment that interstitial function start until interstitial appear(checked in LogCat. Here is the code:</p>
  
  <pre><code>public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
  
      if (getResources().getString(R.string.InterstitialAd_unit_id).length() &gt; 0) {
          // Create the interstitial
          interstitial = new InterstitialAd(this);
          interstitial.setAdUnitId(getResources().getString(R.string.InterstitialAd_unit_id));
  
          // Create ad request.
          adRequest = new AdRequest.Builder()
                  .addTestDevice(AdRequest.DEVICE_ID_EMULATOR)
                  .build();
      }
      //initialise banner ad
      this.BANNER_AD_UNIT_ID = getResources().getString(R.string.BannerAd_unit_id);
      showBanner();
  
  }
  
  public void openAd() {
      if (getResources().getString(R.string.InterstitialAd_unit_id).length() &gt; 0) {
          runOnUiThread(new Runnable() {
              public void run() {
                  if (!interstitial.isLoaded()) {
                      interstitial.loadAd(adRequest);
                  }
                  interstitial.setAdListener(new AdListener() {
                      public void onAdLoaded() {
                          interstitial.show();
                      }
  
                  });
  
              }
          });
      }
  }
  </code></pre>
  
  <p>Is there any way to cache the interstitial before that function is called. That delay is really bad....
  Thanks!</p>