我已经成功地在我的Android应用程序和我的项目的清单文件中集成了一个admob横幅,我使用了以下配置
<activity android:name="com.google.android.gms.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/>
但是当我更改设备的屏幕方向时,广告视图会消失吗?
我做错了什么?
答案 0 :(得分:0)
我使用onConfigurationChanged
方法解决了问题,问题是当我回到纵向模式时,广告单元尺寸大于可用尺寸。
这是解决方案
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
LinearLayout parent= (LinearLayout) adView.getParent();
parent.removeView(adView);
/**
* Admob paremetrization
*/
final float density = getResources().getDisplayMetrics().density;
int width = getWindowManager().getDefaultDisplay().getWidth();
width = Math.round(((float)width )/density);
int height;
if( width >= 936 ) // tablet
{
height = Math.round(density*60f);
}
else if( width >= 640 )
{
height = Math.round(density*50f);
}
else height = Math.round(density*32f);
adView = new AdView(this);
switch value of height adView.setAdSize(AdSize.FULL_BANNER or BANNER SMART_BANNER....);
adView.setAdUnitId("ca-app-pub-xxxxxxxxxxxxxxxxxxxxxxxx");
parent.addView(adView);
AdRequest adRequest = new AdRequest.Builder().addTestDevice(AdRequest.DEVICE_ID_EMULATOR)
.addTestDevice("myDeviceId") phone
.build();
adView.loadAd(adRequest);
}