2014-02-12 2 views
0

안녕하세요, 저는 mainView를 가지고 있습니다.나는 안드로이드 게임에 admob을 넣는 방법을 모르겠다.

내 MainActivity.java

package net.canarolab.puzzleroad; 

import android.app.Activity; 
import android.content.Intent; 
import android.media.AudioManager; 
import android.media.MediaPlayer; 
import android.os.Bundle; 
import android.util.Log; 
import android.view.Menu; 
import android.view.MenuItem; 
import android.view.Window; 
import android.view.WindowManager; 
import android.widget.LinearLayout; 
import android.widget.Toast; 

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

public class MainActivity extends Activity { 
    private AdView adView; 
    private MainView mainView; 
    private final int MENU_SELECT_RESET = 1, MENU_SELECT_CONTACT = 2; 

    // MUSICA 
    MediaPlayer mediaPlayer;// para musica de fondo (se declara aqui para que 
          // pueda 

    // utilizarla todos nuestros metodos) 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     // MUSIC 
     mediaPlayer = MediaPlayer.create(this, R.raw.merry); 
     mediaPlayer.setLooping(true); 
     mediaPlayer.setVolume(100, 100); 
     mediaPlayer.start(); 

     // Apago la barra de título 
     requestWindowFeature(Window.FEATURE_NO_TITLE); 
     // Apago la barra de estado 
     getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); 
     Intent i = getIntent(); 
     // Activity Quiero solo tapa 
     i.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP); 
     setVolumeControlStream(AudioManager.STREAM_MUSIC); 
     // View Establezca el 
     mainView = new MainView(this); 
     setContentView(mainView); 

     setContentView(R.layout.activity_main); 
     LinearLayout layout = (LinearLayout) findViewById(R.id.linearLayout); 
     // Create the adView 
     // Please replace MY_BANNER_UNIT_ID with your AdMob Publisher ID 
     AdView adView = new AdView(this, AdSize.BANNER, "a14e2f8fe3af5a6"); 

     // Add the adView to it 
     layout.addView(adView); 

     // Initiate a generic request to load it with an ad 
     AdRequest request = new AdRequest(); 
     request.setTesting(true); 

     adView.loadAd(request); 


    } 

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     // Inflate the menu; this adds items to the action bar if it is present. 
     // getMenuInflater().inflate(R.menu.activity_main, menu); 
     menu.add(0, MENU_SELECT_RESET, 0, "Reset"); 
     menu.add(0, MENU_SELECT_CONTACT, 0, "Contact"); 
     return true; 

    } 

    @Override 
    protected void onResume() { 
     mediaPlayer.start(); 

     // Leí el recuento juego 
     this.mainView.gameCount.read(); 
     Log.d("", "read"); 
     super.onResume(); 

    } 

    @Override 
    protected void onPause() { 
     mediaPlayer.pause(); 

     // Escribo el recuento de juego. 
     this.mainView.gameCount.save(); 
     Log.d("", "save"); 

     super.onPause(); 
     // No voy a desaparecer en esta actitud no hay más. 
     // finish(); 

    } 

    @Override 
    protected void onDestroy() { 
     mediaPlayer.stop(); 

     super.onDestroy(); 
     System.exit(0); 

    } 

    public boolean onOptionsItemSelected(MenuItem item) { 
     switch (item.getItemId()) { 
     case MENU_SELECT_RESET: 
      this.mainView.gameCount.reset(); 
      Toast.makeText(this, "Has been reset.", Toast.LENGTH_SHORT).show(); 
      return true; 
     case MENU_SELECT_CONTACT: 
      Intent intent = new Intent(Intent.ACTION_SEND); 
      intent.setType("text/plain"); 
      intent.putExtra(Intent.EXTRA_SUBJECT, "idea"); 
      intent.putExtra(Intent.EXTRA_TEXT, "text of email"); 
      intent.putExtra(Intent.EXTRA_EMAIL, 
        new String[] { " [email protected]" }); 
      startActivity(intent); 
     } 
     return false; 
    } 

} 

당신은 내가 레이아웃

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:launchMode="singleInstance" 
    tools:context=".MainActivity" > 

    <LinearLayout 
    android:id="@+id/linearLayout" 
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" > 

</LinearLayout> 

</RelativeLayout> 
캔버스를 혼합 할 수있는 것보다 당신이 나에게 또 다른 경우를 말할 수있는하려면이 내 activity_main.xml
입니다

내 문제는 설정되어 있습니다 .ContentView 만이 내 컴퓨터에 admob을 볼 수 없습니다. 고맙습니다.

+0

왜 XML 및 AndroidManifest를 사용하여 AdMob을 추가하지 않습니까? 그렇게 쉬운 방법입니다. – Si8

답변

0

ContextView를 두 번 설정하려고합니다. 하지마. MainView가 절대 삽입되지 않도록 마지막 하나가 이전 것을 대체합니다.

즉 LOE

// View Establezca el 
mainView = new MainView(this); 
setContentView(mainView); 

setContentView(R.layout.activity_main) 

아래이 된 setContentView 호출 한 그리고 XML에로 AdView를 정의하는 것이 좋습니다.

+0

RelativeLayout 레이아웃 = (RelativeLayout) findViewById (R.id.mainView); \t \t mainView = 새 MainView (this); – user2206978

+0

??? 이 말은 내 대답과 관련하여 무엇을 의미합니까? – William

+0

안녕 윌리엄 좋은 생각이지만 작동하지 않습니다, 만약 당신이 내 proyect 당신을 보낼 수 있지만 귀하의 이메일을 참조하십시오. – user2206978

관련 문제