簡體   English   中英

在PhoneGap應用中包含Admob時出錯

[英]Error including Admob in PhoneGap app

我按照此處的說明將admob添加到PhoneGap Android應用程序中,但這給了我編譯時錯誤。 有什么我應該做的嗎?

我得到如下錯誤:

  1. adView = new AdView(this, AdSize.BANNER, AdMob_Ad_Unit); 錯誤:“ 構造函數AdView(CordovaApp,AdSize,String)未定義

  2. AdRequest request = new AdRequest(); 錯誤: 構造函數AdRequest()不可見

  3. adView.loadAd(request); 錯誤: AdView類型的方法loadAd(AdRequest)不適用於參數(AdRequest)

完整代碼如下。 請幫忙。 謝謝

   package com.example.hello;

    import android.os.Bundle;
    import android.os.Handler;

    import org.apache.cordova.*;
    import com.google.ads.*;
    import com.google.ads.AdRequest;
    import com.google.ads.AdSize;
    import com.google.android.gms.ads.*;
    import android.widget.LinearLayout;


    public class CordovaApp extends CordovaActivity
    {
        private static final String AdMob_Ad_Unit = "ca-app-pub-7789543298167063/2036477434";
        private Handler mHandler = new Handler();

        private AdView adView;
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            super.loadUrl("file:///android_asset/www/index.html");

            mHandler.postDelayed(new Runnable() {
                public void run() {
                    doAdMob();
                }
            }, 5000);         
        }

        private void doAdMob() {
            // Create the adView
            adView = new AdView(this, AdSize.BANNER, AdMob_Ad_Unit);
            // Lookup your LinearLayout - get the super.root
            LinearLayout layout = super.root;
            // Add the adView to it
            layout.addView(adView);
            // This centers the ads in landscape mode.        
            layout.setHorizontalGravity(android.view.Gravity.CENTER_HORIZONTAL);
            // Initiate a generic request to load it with an ad
            AdRequest request = new AdRequest();
            // and finally...     
            adView.loadAd(request);                    
        }
    }

基本上,這些以com.google.ads開頭的類來自6.4.1或更早版本的Admob。 您所指的教程是兩年前更新的。

如果您使用的是Google Play服務中最新的AdMob庫,則需要刪除要導入的那些舊類。

替換這些代碼

import com.google.ads.*;
import com.google.ads.AdRequest;
import com.google.ads.AdSize;
import com.google.android.gms.ads.*;

import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.AdView;
import com.google.android.gms.ads.AdSize;

另外,嘗試按以下方式創建AdRequest:

AdRequest adRequest = new AdRequest.Builder().build();
adview.loadAd(adRequest);

更新:

嘗試以下代碼

adView = new AdView(this);
adView.setAdSize(AdSize.BANNER);
adView.setAdUnitId(AdMob_Ad_Unit);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM