2017-07-16 8 views
0

私はimportを使用していました:import com.google.android.gms.ads.InterstitialAd .; とsetADUnitId誤差が行っていたが、輸入は私に、このエラーを与える:、com.google.ads.InterstitialAd:輸入com.google.android.gms.ads.InterstitialAdは、別のimport文がすでにインポートされているあなたのコードでInterstitialAd型のメソッドsetAdUnitId(String)が未定義です

import com.badlogic.gdx.Gdx; 
    import com.badlogic.gdx.backends.android.AndroidApplication; 
    import com.badlogic.gdx.backends.android.AndroidApplicationConfiguration; 
    import com.google.ads.Ad; 
    import com.google.ads.AdListener; 
    import com.google.ads.AdRequest; 
    import com.google.ads.AdRequest.ErrorCode; 
    import com.google.ads.InterstitialAd; 


    import android.annotation.SuppressLint; 
    import android.content.Context; 
    import android.net.ConnectivityManager; 
    import android.net.NetworkInfo; 
    import android.os.Bundle; 
    import android.os.Handler; 
    import android.os.Message; 
    import android.view.View; 
    import android.view.Window; 
    import android.view.WindowManager; 





    public class MainActivity extends AndroidApplication implements 
    AdListener { 

     private ActionResolverAndroid actionResolverAndroid; 
     private InterstitialAd interstitialAdMob; 

     InterstitialAd mInterstitialAd; 




     @SuppressLint("HandlerLeak") 
     @Override 
     public void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      interstitialAdMob = new InterstitialAd(MainActivity.this,"null"); 
      mInterstitialAd.setAdUnitId(getString(R.string.interstitial_full_screen)); //The method setAdUnitId(String) is undefined for the type InterstitialAd 
      interstitialAdMob.setAdListener(this); 
      interstitialAdMob.loadAd(new AdRequest()); 
      requestWindowFeature(Window.FEATURE_NO_TITLE); 
      getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
        WindowManager.LayoutParams.FLAG_FULLSCREEN); 
      getWindow().clearFlags(
        WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN); 

      AndroidApplicationConfiguration cfg = new AndroidApplicationConfiguration(); 
      cfg.useWakelock = true; 
      cfg.useGL20 = false; 

      actionResolverAndroid = new ActionResolverAndroid(this, 
        startAppInterHandler); 
      View v = initializeForView(new JetPig(actionResolverAndroid), cfg); 
      setContentView(v); 
     } 

     private boolean startAppExit; 


      public Handler startAppInterHandler = new Handler() { 

      @Override 
      public void handleMessage(Message msg) { 
       // if (startAppAd.isReady()) 
       // 
       // { 
       switch (msg.what) { 
       case 1: 
        if (interstitialAdMob.isReady()) 
        interstitialAdMob.show(); // show the ad 
        else 
        interstitialAdMob.loadAd(new AdRequest()); // load the next ad 
        break; 
       case 2: 
        if (interstitialAdMob.isReady()) { 
         interstitialAdMob.show(); 
         startAppExit = true; 
        } else 
         finish(); 

       default: 
        break; 
       } 
       Gdx.app.log("Add", "In ShowStartApp Hanlder"); 

       // } 
      } 
     }; 

     public boolean isNetworkAvailable() { 
      ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); 
      NetworkInfo activeNetworkInfo = connectivityManager 
        .getActiveNetworkInfo(); 
      return activeNetworkInfo != null; 
     } 

     public void finishActivity() { 
      finish(); 
     } 

     @Override 
     public void onStart() { 
      super.onStart(); 
     } 

     @Override 
     public void onStop() { 
      super.onStop(); 
     } 


     @Override 
     public void onDismissScreen(Ad arg0) { 
      // TODO Auto-generated method stub 
      if (startAppExit) { 
       Gdx.app.log("Add", "Finsh"); 
       finish(); 
      } 
      else 
      { 
       interstitialAdMob.loadAd(new AdRequest()); 
      } 
     } 

     @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 

     } 
    } 

答えて

0

と衝突今すぐインポートを追加する場合:com.google.android.gms.ads.InterstitialAdあなたのクラスには、名前がInterstitialAdの2クラスがあります>これは衝突を引き起こします。 を次のように使用してコードに進んでください:private InterstitialAd interstitialAdMob; =>どのように使用することをコンパイラは知っていますかInterstitialAd? (2クラスInterstitialAdをインポートしたためです)。したがって、この場合、com.google.ads.InterstitialAdcom.google.android.gms.ads.InterstitialAdの両方を使用する必要がある場合、解決策は、1つをインポートし、もう1つをフルネームで使用することです。例えば

import com.google.ads.InterstitialAd; 
public class MainActivity extends AndroidApplication implements 
    AdListener { 
     //variable for class has imported 
     private InterstitialAd interstitialAdMob; 

     //variable for class has not imported 
     private com.google.android.gms.ads.InterstitialAd interstitialAdMob_noImport; 
     ... 
} 

EDIT:あなたの機能setADUnitIdのためにので、他のものを削除してくださいクラスcom.google.android.gms.ads.InterstitialAdでのみ使用可能です。

関連する問題