繁体   English   中英

LibGDX Admob | 广告正在加载,但为什么在屏幕上看不到它?

[英]LibGDX Admob | ad is loading but why it is not getting visible on the screen?

我想在我正在开发的游戏中实施横幅广告。 我使用下面的代码。 它没有显示任何错误,但也没有显示广告。 请检查代码并帮助我。

public class AndroidLauncher extends AndroidApplication {

    public static final String TAG = "Android Launcher";
    protected AdView adView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
        AndroidApplicationConfiguration config = new AndroidApplicationConfiguration();
        PowerManager powerManager = (PowerManager) getSystemService(POWER_SERVICE);
        PowerManager.WakeLock wakeLock = powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK,
                "MyWakelockTag");
        wakeLock.acquire();

        RelativeLayout relativeLayout = new RelativeLayout(this);
        View gameView = initializeForView(new core_class(), config);
        relativeLayout.addView(gameView);

        adView = new AdView(this);
        adView.setAdListener(new AdListener() {
            @Override
            public void onAdLoaded() {
                Log.d(TAG, "\n\nAd Loaded...........!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n\n");
            }
        });
        adView.setAdSize(AdSize.BANNER);
        adView.setAdUnitId("ca-app-pub-3940256099942544/6300978111");
        AdRequest builder = new AdRequest.Builder().addTestDevice("7655E37545A982D6CC7006F8088B40AC").build();
        //      builder.addTestDevice("7655E37545A982D6CC7006F8088B40AC");

        RelativeLayout.LayoutParams adPrams = new RelativeLayout.LayoutParams(
                RelativeLayout.LayoutParams.WRAP_CONTENT,
                RelativeLayout.LayoutParams.WRAP_CONTENT
        );

        relativeLayout.addView(adView, adPrams);
        adView.loadAd(builder);
        setContentView(relativeLayout);

        initialize(new core_class(), config);
    }

    @Override
    protected void onPause() {
        adView.pause();
        super.onPause();
    }

    @Override
    protected void onResume() {
        super.onResume();
        if (adView != null) {
            adView.resume();
        }
    }
}

这是日志消息。 广告正在加载,每60秒应刷新一次,但什至看不到。

这是我的项目中的一小段代码。

要创建横幅(从一开始就不可见):

private void createAdView() {
    bannerAd = new AdView(this);
    bannerAd.setAdSize(AdSize.SMART_BANNER);
    bannerAd.setAdUnitId(AD_UNIT_ID_BANNER);
    RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
    params.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM, RelativeLayout.TRUE);
    params.addRule(RelativeLayout.CENTER_HORIZONTAL, RelativeLayout.TRUE);
    bannerAd.setLayoutParams(params);
    bannerAd.setBackgroundColor(Color.TRANSPARENT);
    bannerAd.setVisibility(View.INVISIBLE);
}

每当需要启用\\禁用横幅时,就会从core模块调用这两种方法:

public void showBannerAds() {
    runOnUiThread(new Runnable() {
        @Override
        public void run() {
            bannerAd.setVisibility(View.VISIBLE);
            bannerAd.setEnabled(true);
            AdRequest adRequest = new AdRequest.Builder()
                    .build();
            bannerAd.loadAd(adRequest);
        }
    });
}

public void hideBannerAds() {
    runOnUiThread(new Runnable() {
        @Override
        public void run() {
            bannerAd.setVisibility(View.GONE);
            bannerAd.setEnabled(false);
        }
    });
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM