2016-06-25 8 views
4

Ich bin Admob Native Express-Anzeige in meiner Anwendung zu integrieren. Ich möchte, dass es in allen Geräten angezeigt wird. Bei kleinen Geräten wird dies aufgrund der Anzeigengröße nicht angezeigt. Mein Add ist in ListView und GridView. Bitte schlagen Sie mir vor, wie es in jeder Gerätegröße geladen wird. Auch ich habe versucht, die Größe dynamisch festzulegen, hat aber nicht für mich gearbeitet.Making Admob Native Express-Anzeige dynamisch

Vielen Dank im Voraus.

+0

Bitte Markieren Sie die Antwort als richtig, wenn Sie denken, dass es ist. –

Antwort

6

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)

+0

Bei der Implementierung haben Sie einen Fehlercode 1 .. mit dem gleichen Ansatz, aber kein Glück –

+0

Ich habe keinen Fehler gefunden. Ich denke nicht, dass Fehlercode 1 überhaupt damit zusammenhängt. Hast du die richtige AdUnitId hinzugefügt? –

+0

Vielen Dank für Ihre Antwort .. in der Tat, es war ein dummer Copy/Paste-Fehler für die Anzeigenblock-ID .. Danke nochmal –