[英]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.