2012-07-03 1 views
0

В моей игре я использую как эмблемы Millennial Media, так и Admob (Тысячелетний сверху экрана, Admob внизу). Все делается программно в Android/Java с использованием RelativeLayout, во-первых, я добавляю MMAdView, затем поверхность OpenGl и в конце AdmobView. На устройствах с Android < 4.0 все правильно нарисовано, но на Ice Cream Sandwich есть гигантская белая область, а не Millennial banner. Я слишком долго боролся с этой проблемой. Какие-нибудь идеи, что там может быть?
UPDATE: Мой друг сказал мне, что эта белая прямоугольная область видна, когда он не подключен к сети Wi-Fi. В моем коде я не делаю никаких проверок доступности сети. Я просто запускаю метод millennialView.setVisibility (View.VISIBLE) для отображения баннера.Белая прямоугольная область в Millennial Медиа-баннер на Android 4.0

adMobView = new AdView(this, AdSize.BANNER, ADMOB_BANNER_ID); 
    adMobView.setAdListener(getAdMobListener()); 
    AdRequest request = new AdRequest(); 
    adMobView.loadAd(request); 

    RelativeLayout.LayoutParams lay = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT); 
    lay.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);   
    layout.addView(adMobView, lay); 

// ... adding OpenGL surface 

    int bannerWidth = (int)(displayMetrics.widthPixels * displayMetrics.density); 

    Hashtable<String, String> map = new Hashtable<String, String>(); 
    map.put(MMAdView.KEY_WIDTH, String.valueOf(bannerWidth)); 
    map.put(MMAdView.KEY_HEIGHT, "53"); 
    millennialView = new MMAdView(this, MILLENNIAL_BANNER_ID, MMAdView.BANNER_AD_TOP, 30, map); 
    millennialView.setId(MMAdViewSDK.DEFAULT_VIEWID); 
    millennialView.setListener(getMillennialListener()); 
+1

Скриншот помогло бы чрезвычайно ... – Codo

+0

у меня есть только информация от моего друга, который получил 4.0 на борту. На верхней части экрана есть белая прямоугольная область (1/3 экрана). У него нет Wifi, и когда он нажимает на него, игра неожиданно падает. – cplusogl

ответ

0

Похоже, что проблема заключалась в том, что в результате сети сеть была недоступна. Теперь, прежде чем представить знамя я просто проверить, если есть подключение к сети:

ConnectivityManager connectivityMgr = 
     (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE); 
    if(connectivityMgr != null && connectivityMgr.getActiveNetworkInfo() != null) { 
      millennialView.setVisibility(View.VISIBLE);