将admob整合到libgdx中

时间:2014-05-15 06:48:57

标签: java android libgdx admob

我按照google和libgdx wiki上的说明整合了admob。但我无法看到我的设备有任何变化。

你能否告诉我,我是否有任何明显的错误。以下代码是我的android项目的mainActivity。

package com.chandings.pigswillfly;

import android.os.Bundle;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import android.widget.RelativeLayout;

import com.badlogic.gdx.backends.android.AndroidApplication;
import com.badlogic.gdx.backends.android.AndroidApplicationConfiguration;
import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.AdSize;
import com.google.android.gms.ads.AdView;

public class MainActivity extends AndroidApplication {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        /*AndroidApplicationConfiguration cfg = new AndroidApplicationConfiguration();
        cfg.useGL20 = false;

        initialize(new MyGame(), cfg);*/

        String AD_UNIT_ID = "pub-4445095092775025";

        RelativeLayout layout = new RelativeLayout(this);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
        getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);

        View gameView = initializeForView(new MyGame(), false);

        // Create and setup the AdMob view
        AdView adView = new AdView(this);//(this, AdSize.BANNER, "xxxxxxxx"); // Put in your secret key here

        adView.setAdSize(AdSize.BANNER);
        adView.setAdUnitId(AD_UNIT_ID);

        AdRequest adRequest = new AdRequest.Builder()
        .addTestDevice(AdRequest.DEVICE_ID_EMULATOR)
        .addTestDevice("4D24C3467C244C5886FD0B1DA543A074")
        .build();

        // Add the libgdx view

        // Add the AdMob view
        RelativeLayout.LayoutParams adParams = 
                new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, 
                                RelativeLayout.LayoutParams.WRAP_CONTENT);
        adParams.addRule(RelativeLayout.ALIGN_PARENT_TOP);
        adParams.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);

        adView.loadAd(adRequest);
        layout.addView(adView, adParams);
        layout.addView(gameView);

        // Hook it all up
        setContentView(layout);


    }
}

1 个答案:

答案 0 :(得分:0)

我正在做的两个错误。 一个非常明显,另一个则没有。

  1. String AD_UNIT_ID = "pub-4445095092775025"; 实际上,这是发布商ID,而不是广告单元ID。
  2. 2。         layout.addView(adView,adParams);         layout.addView(gameView);

    这实际上会将我的游戏视图保留在广告视图上,因此adview将永远不会显示。添加广告的正确方法是。

        layout.addView(gameView);
        layout.addView(adView, adParams);