2012-12-01 80 views
0

我一直在試圖在我的應用程序中實現Leadbolt廣告,但我無法在控制器上設置Adlistener。我可以添加的方法與pdf中描述的方法完全不同。 我可以在我的應用中展示廣告,但無法使用偵聽器。Leadbolt執行錯誤

這是我的代碼:

final Activity act = this; 
        myController = new AdController(act, MY_LB_SECTION_ID, new AdListener() { 

        @Override 
        public void onDismissScreen(Ad arg0) { 
         // TODO Auto-generated method stub 

        } 

        @Override 
        public void onFailedToReceiveAd(Ad arg0, ErrorCode arg1) { 
         // TODO Auto-generated method stub 

        } 

        @Override 
        public void onLeaveApplication(Ad arg0) { 
         // TODO Auto-generated method stub 

        } 

        @Override 
        public void onPresentScreen(Ad arg0) { 
         // TODO Auto-generated method stub 

        } 

        @Override 
        public void onReceiveAd(Ad arg0) { 
         // TODO Auto-generated method stub 

        } 

        }); 

        myController.loadAd(); 

我得到的錯誤是:構造AdController(活動,絃樂,新AdListener的(){})是未定義

這是從代碼在pdf文件,但這些方法似乎對日食是未知的:

final Activity act = this; 
AdController myController = new AdController(act, 
"MY_LB_SECTION_ID", new AdListener() { 
public void onAdLoaded() { 
} 
public void onAdClicked() { 
} 
public void onAdClosed() { 
act.finish(); 
} 
public void onAdCompleted() { 
act.finish(); 
} 
public void onAdFailed() { 
act.finish(); 
} 
public void onAdProgress() { 
} 
public void onAdAlreadyCompleted() { 
act.finish(); 
} 
public void onAdHidden() {} // function is deprecated 
public void onAdPaused() { 
act.finish(); 
} 
public void onAdResumed() { 
} 
}); 
myController.loadAd(); 

任何想法,我究竟做錯了什麼? 我沒有添加任何內容到清單。

回答

0

要Leadbolt:

原來com.pad.android.listener.AdListener;或com.Leadbolt.AdListener;與導入com.google.ads.AdListener相沖突;這是AdMob AdListener。這就是爲什麼我不能添加導入語句。

您應該擴展您的文檔,這樣如果您的聽衆與任何其他廣告網絡發生衝突,應該如何使用它,因爲它不明顯。 MobFox也使用com.adsdk.sdk.AdListener。

要在使用其他廣告網絡AdListeners使用AdListener的,這是我的第一行看起來像:

public class MainActivity extends Activity implements AdListener, com.google.ads.AdListener { 

第一個是的MobFox,第二個是的AdMob。我並沒有實現leadbolt的 AdListener的,因爲我在代碼中使用它:

AdController myController = new AdController(act, MY_LB_SECTION_ID_BANNER_ALL, new com.pad.android.listener.AdListener() { 

這樣,它的工作。

0

從你所引用的PDF:

一旦代碼被包括在內,存取發佈門戶網站並添加 「應用內廣告(SDK)」部分,使用get代碼圖標檢索值 爲「MY_LB_SECTION_ID」。

MY_LB_SECTION_ID是整數ID,而不是字符串。

+0

你是什麼意思?我將它聲明爲'String MY_LB_SECTION_ID =「885300128」;'並且我將它用作'myController = new AdController(act,MY_LB_SECTION_ID,new AdListener()'。 – erdomester

+0

我在你的問題中看不到那個,錯誤是清除構造函數AdController(Activity,String,new AdListener()'。您正在向構造函數傳遞一個活動引用,一個String引用和一個AdListener實例。第二個參數是MY_LB_SECTION_ID,編譯器說它是一個String。此行上的斷點myController = new AdController(act,MY_LB_SECTION_ID,new AdListener(){'並檢查MY_LB_SECTION_ID – Simon

0

我遇到同樣的問題,因爲我也在同時使用AdMob,但我發現了一個更簡單的方法來解決此問題。

而不是使用:

AdController ad = new AdController(act, "MY_LB_SECTION_ID", new AdListener() { 
    ... 
} 

我用:

AdController ad = new AdController(act, "MY_LB_SECTION_ID", new com.<leadbolt_package_name>.AdListener() { 
    ... 
} 

保持考慮,我用這個進口:

import com.<leadbolt_package_name>.AdController; // in my case, it was something like 'fgadcbgxysr' 

這將直接讀LeadBol t庫方法而不是碰撞的方法。 希望它可以幫助其他用戶,儘管我的迴應來得遲。