Ich hatte Erfolg mit dem folgenden Code:
private LinearLayout mAdContainer;
private NativeExpressAdView mAdmobAdView;
private AdRequest mAdmobAdRequest;
[...]
private void loadAds() {
// find out the width of the device in dp
DisplayMetrics displayMetrics = getResources().getDisplayMetrics();
float deviceWidthInDp = displayMetrics.widthPixels/displayMetrics.density;
int adWidth = (int)(deviceWidthInDp);
if (mAdmobAdView != null) {
// prevents a crash on older devices
mAdmobAdView.clearAnimation();
}
mAdContainer.removeAllViews();
mAdmobAdView = new NativeExpressAdView(this);
mAdmobAdView.setAdSize(new AdSize(adWidth, 250)); // AdSize(width, height), height ranges from 80 to 1200
mAdContainer.addView(mAdmobAdView);
mAdmobAdView.setAdUnitId(getString(R.string.admob_id)); // set your admob id
mAdmobAdRequest = new AdRequest.Builder()
.build();
mAdmobAdView.loadAd(mAdmobAdRequest);
}
EDIT: Dank fattire für den Hinweis auf die Animation zu löschen, bevor die Ansicht Entfernen einen Crash auf ältere Geräte zu verhindern (siehe here)
Bitte Markieren Sie die Antwort als richtig, wenn Sie denken, dass es ist. –