Se si utilizza la raccolta di Google Play Services, è possibile utilizzare semplicemente:
int widthPixels = AdSize.SMART_BANNER.getWidthInPixels(this);
int heightPixels = AdSize.SMART_BANNER.getHeightInPixels(this);
Nel vecchio standalone Android SDK di AdMob, bisogna farlo nel modo hacky:
Disclaimer: questo è il modo sbagliato di creare un AdSize. NON passare questo AdSize nel costruttore AdView!
Speriamo che l'implementazione dello smart banner venga corretta nelle versioni future, quindi non è necessario eseguire questa soluzione alternativa. Ma ecco come può essere fatto:
// This testSize should not be passed to the AdView constructor.
// Always pass AdSize.SMART_BANNER instead.
AdSize testSize = AdSize.createAdSize(AdSize.SMART_BANNER, this);
int widthPixels = testSize.getWidthInPixels(this);
int heightPixels = testSize.getHeightInPixels(this);
// testSize should not be referenced past this point.
fonte
2013-01-07 22:11:23