如何在android中通过google play服务使用admob广告
我想通过google play服务添加admob。我的java代码是如何在android中通过google play服务使用admob广告,android,admob,Android,Admob,我想通过google play服务添加admob。我的java代码是 LinearLayout layout = (LinearLayout)findViewById(R.id.LinearLayout1); AdView adView = new AdView(this); adView.setAdSize(com.google.android.gms.ads.AdSize.SMART_BANNER); adView.setAdUnitId("My_unit_id");
LinearLayout layout = (LinearLayout)findViewById(R.id.LinearLayout1);
AdView adView = new AdView(this);
adView.setAdSize(com.google.android.gms.ads.AdSize.SMART_BANNER);
adView.setAdUnitId("My_unit_id");
layout.addView(adView,0);
adView.loadAd(new com.google.android.gms.ads.AdRequest.Builder().build());
这段代码工作正常,并显示在顶部的广告,但问题是,广告推下布局之前加载的广告。我希望广告推后加载的广告布局。请有人帮助??谢谢似乎必须检查是否有加载了方法的侦听器AdView.setAdListener
文档:首先将布局的可见性更改为Gone 然后为AdListner编写以下代码
我添加了以下代码adView.setAdListenernew AdListener{@Override public void onAdLoaded{//TODO自动生成的方法stub super.onAdLoaded;layout.addViewadView,0;};在显示ad一段时间后,它会强制关闭并给出错误java.lang.IllegalStateException:指定的子级已经有父级。必须首先调用子级的父级上的removeView。
layout.setVisibility(View.GONE);
adView.setAdListener(new AdListener() {
@Override
public void onAdClosed() {
// TODO Auto-generated method stub
super.onAdClosed();
}
@Override
public void onAdLoaded() {
// TODO Auto-generated method stub
super.onAdLoaded();
layout.addView(adView);
layout.setVisibility(View.VISIBLE);
}
@Override
public void onAdOpened() {
// TODO Auto-generated method stub
super.onAdOpened();
}
});