2015-09-09 34 views
1

我將InMobi集成到了我的Android應用中,並且在應用第一次運行時(橫幅廣告或插頁式廣告)它不會獲取任何廣告。InMobi在第一次運行時沒有獲取橫幅廣告或插頁式廣告

如果我退出應用程序,然後再次運行它,一切正常 - 加載橫幅和插頁式廣告並顯示橫幅。

如果我那麼無論卸載和重新安裝應用程序或簡單地清除應用的緩存(從設置),然後再次運行應用程序,我又回到了起點,我什麼也沒得到。請注意,這遵循此模式剛好,它不是隨機的。永遠在第一次運行 - 沒有廣告,總是在後續運行,廣告。

我要指出的(如果這很重要),我在測試模式(設置在儀表板的InMobi)。

下面是我在onCreate中的代碼 - 我做錯了什麼?

回調中返回的錯誤只是提取廣告時發生錯誤(對於橫幅廣告和非頁內廣告)。

沒有進一步的信息,並沒有任何的的InMobi網站上(我可以看到)。任何幫助,將不勝感激。

//Initialise Interstitials 
    InMobi.initialize(this, myInterstitialID); 

    //Initialise Banners 
    InMobi.initialize(this, myBannerID); 

    //Create the banner 
    imbanner = new IMBanner(this, myBannerID, IMBanner.INMOBI_AD_UNIT_320X50); 
    //60 second interval refresh 
    imbanner.setRefreshInterval(60); 
    //Load the banner 
    imbanner.loadBanner(); 

    //Callbacks for the banner ads 
    imbanner.setIMBannerListener(new IMBannerListener() { 
     @Override 
     public void onShowBannerScreen(IMBanner arg0) {    
      Log.v("Inmobi","OnShowBannerScreen");    
       } 
      @Override 
     public void onLeaveApplication(IMBanner arg0) { 
       Log.v("Inmobi","Leave Application"); 
     } 
     @Override 
     public void onDismissBannerScreen(IMBanner arg0) { 
      Log.v("Inmobi","OnDismissBannerScreen"); 
     } 
       @Override 
     public void onBannerRequestFailed(IMBanner banner, IMErrorCode errorCode) { 
      Log.v("Inmobi","onBannerRequestFailed: "+errorCode); 
     } 
     @Override 
     public void onBannerRequestSucceeded(IMBanner arg0) { 
       Log.v("Inmobi","onBannerRequestSucceeded"); 
       } 
       @Override 
     public void onBannerInteraction(IMBanner arg0, Map<String, String> arg1) { Log.v("Inmobi","onBannerInteraction"); 
     } 
    }); 

     //Interstitials 
     inInterstitial = new IMInterstitial(this, myInterstitialID); 
     inInterstitial.loadInterstitial(); 

     inInterstitial.setIMInterstitialListener(new IMInterstitialListener() { 
      public void onShowInterstitialScreen(IMInterstitial arg0) { 
       Log.v("Inmobi", "Interstitial showing"); 
      } 
      @Override 
      public void onLeaveApplication(IMInterstitial arg0) { 
       Log.v("Inmobi", "Interstitial leaving Application"); 
      } 
      @Override 
      public void onDismissInterstitialScreen(IMInterstitial arg0) { 
       Log.v("Inmobi", "Dismissing Interstitial"); 
       inInterstitial.loadInterstitial(); 
      } 
      @Override 
      public void onInterstitialLoaded(IMInterstitial arg0) { 
       Log.v("Inmobi", "Interstitial loaded"); 
      } 
      @Override 
      public void onInterstitialInteraction(IMInterstitial interstitial, Map<String, String> params) {     
       Log.v("Inmobi", "Interstitial interaction"); 
      } 
      @Override 
      public void onInterstitialFailed(IMInterstitial arg0, IMErrorCode arg1) { 
       Log.v("Inmobi", "Interstitial failed: "+arg1); 
      } 
     }); 
+0

也許在第一次運行時調用InMobi.initialize(...),他們創造一些象徵性的,它使一個廣告請求時,發送到他們的服務器。如果令牌沒有在那裏註冊(首次運行它不能),那麼他們不會返回一個廣告。但在第二次嘗試時,他們再次發送令牌並且沒關係。這只是一個猜測。但總的來說,如果只是第一次發生,你不應該太擔心。更好的是,用戶使用應用程序看到的第一次體驗不會是廣告,而是應用程序本身:) – middlehut

+2

剛剛談到InMobi支持,這是目前SDK版本中的一個已知錯誤,它們有一個修復程序,現在正在測試它,所以下一個版本應該解決問題:-) – Zippy

回答

2

@zippy是對的。這是我們在即將發佈的SDK版本中已確定的已知行爲(暫定在未來10天內)。

聲明:我從車隊的InMobi我和管理SDK產品進行的InMobi

0

我對genymotion測試的InMobi的橫幅廣告。我面臨同樣的問題。它沒有顯示任何東西。一旦我關閉了應用程序並再次打開,它就會顯示帶有消息的橫幅,橫幅集成在廣告本身上成功。但是,當我在某個時候再次嘗試時,它不再顯示。我使用的是inmobi 5.0.0 sdk。

我不知道,但它似乎是在做對於一個旗幟/位置ID特定的設備ID一次測試,我想。

相關問題