карта osmdroid не видна

Я использую osmdroid для своих картографических потребностей в Android. Еще несколько дней назад я мог видеть карту, и все было в порядке, но теперь каждый раз, когда начинается моя активность с картой, я получаю пустую карту и следующую трассировку:

 08-22 07:47:01.113: WARN/org.osmdroid.tileprovider.modules.MapTileDownloader(470): UnknownHostException downloading MapTile: /10/520/387 : java.net.UnknownHostException: Unable to resolve host "tile.openstreetmap.org": No address associated with hostname
08-22 07:47:01.133: WARN/org.osmdroid.tileprovider.modules.MapTileDownloader(470): UnknownHostException downloading MapTile: /10/516/387 : java.net.UnknownHostException: Unable to resolve host "tile.openstreetmap.org": No address associated with hostname
08-22 07:47:01.284: INFO/org.osmdroid.tileprovider.modules.MapTileModuleProviderBase(470): Tile loader can't continue
08-22 07:47:01.284: INFO/org.osmdroid.tileprovider.modules.MapTileModuleProviderBase(470): org.osmdroid.tileprovider.modules.MapTileModuleProviderBase$CantContinueException: java.net.UnknownHostException: Unable to resolve host "tile.openstreetmap.org": No address associated with hostname
08-22 07:47:01.284: INFO/org.osmdroid.tileprovider.modules.MapTileModuleProviderBase(470):     at org.osmdroid.tileprovider.modules.MapTileDownloader$TileLoader.loadTile(MapTileDownloader.java:197)
08-22 07:47:01.284: INFO/org.osmdroid.tileprovider.modules.MapTileModuleProviderBase(470):     at org.osmdroid.tileprovider.modules.MapTileModuleProviderBase$TileLoader.run(MapTileModuleProviderBase.java:239)
08-22 07:47:01.284: INFO/org.osmdroid.tileprovider.modules.MapTileModuleProviderBase(470):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1081)
08-22 07:47:01.284: INFO/org.osmdroid.tileprovider.modules.MapTileModuleProviderBase(470):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:574)
08-22 07:47:01.284: INFO/org.osmdroid.tileprovider.modules.MapTileModuleProviderBase(470):     at java.lang.Thread.run(Thread.java:1020)
08-22 07:47:01.284: INFO/org.osmdroid.tileprovider.modules.MapTileModuleProviderBase(470): Caused by: java.net.UnknownHostException: Unable to resolve host "tile.openstreetmap.org": No address associated with hostname
08-22 07:47:01.284: INFO/org.osmdroid.tileprovider.modules.MapTileModuleProviderBase(470):     at java.net.InetAddress.lookupHostByName(InetAddress.java:496)
08-22 07:47:01.284: INFO/org.osmdroid.tileprovider.modules.MapTileModuleProviderBase(470):     at java.net.InetAddress.getAllByNameImpl(InetAddress.java:277)
08-22 07:47:01.284: INFO/org.osmdroid.tileprovider.modules.MapTileModuleProviderBase(470):     at java.net.InetAddress.getAllByName(InetAddress.java:249)
08-22 07:47:01.284: INFO/org.osmdroid.tileprovider.modules.MapTileModuleProviderBase(470):     at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:136)
08-22 07:47:01.284: INFO/org.osmdroid.tileprovider.modules.MapTileModuleProviderBase(470):     at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
08-22 07:47:01.284: INFO/org.osmdroid.tileprovider.modules.MapTileModuleProviderBase(470):     at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
08-22 07:47:01.284: INFO/org.osmdroid.tileprovider.modules.MapTileModuleProviderBase(470):     at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:360)
08-22 07:47:01.284: INFO/org.osmdroid.tileprovider.modules.MapTileModuleProviderBase(470):     at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
08-22 07:47:01.284: INFO/org.osmdroid.tileprovider.modules.MapTileModuleProviderBase(470):     at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
08-22 07:47:01.284: INFO/org.osmdroid.tileprovider.modules.MapTileModuleProviderBase(470):     at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
08-22 07:47:01.284: INFO/org.osmdroid.tileprovider.modules.MapTileModuleProviderBase(470):     at org.osmdroid.tileprovider.modules.MapTileDownloader$TileLoader.loadTile(MapTileDownloader.java:171)
08-22 07:47:01.284: INFO/org.osmdroid.tileprovider.modules.MapTileModuleProviderBase(470):     ... 4 more

вот как выглядит мой код onCreate:

    super.onCreate(savedInstanceState);
    this.me = this;
    this.mMapView = new MapView(this, 256);
    //this.mMapView = (MapView) findViewById(R.id.map);

    this.mMapView.setTileSource(TileSourceFactory.MAPNIK);
    this.mMapView.setClickable(true);
    this.mMapView.setBuiltInZoomControls(true);

    this.mMapView.getController().setZoom(10);
    this.mMapView.getController().setCenter(new GeoPoint(39.461078, 2.856445));

    //register BrodCastListener! - remember to unregister!
    IntentFilter filter = new IntentFilter();
    filter.addAction(UpdateRequester.ACTION);
    this.registerReceiver(this.mUpdateReciever, filter);

    //make map seen
    setContentView(this.mMapView);

}

и мой файл манифеста имеет следующие разрешения:

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />

<uses-feature android:name="android.hardware.location.network" />
<uses-feature android:name="android.hardware.location.gps"
           android:required="true"/>
<uses-feature android:name="android.hardware.wifi" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION"></uses-permission>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>

Кто-нибудь сталкивался с этим или вы знаете, в чем проблема?
Странно то, что все работало нормально и ничего не изменилось.

Эта проблема возникает при использовании эмулятора.

Решение:
Все, что мне нужно было сделать, это перейти к конфигурациям запуска проекта (щелкните правой кнопкой мыши проект->запустить от имени->запустить конфигурацию), затем к приложению Android, затем перейти на вкладку "цель" и ниже в разделе «Дополнительные параметры командной строки эмулятора» добавьте:

-dns-server 8.8.8.8

person omri    schedule 22.08.2011    source источник


Ответы (1)


В основном исключение говорит о том, что он не может разрешить онлайн-ресурс.

Вы уверены, что ваше устройство подключено к Wi-Fi или 3G?

person Ilya Saunkin    schedule 22.08.2011
comment
ну, я использую эмулятор (забыл упомянуть, извините), как я могу проверить, подключен ли он? - person omri; 22.08.2011
comment
эмулятор подключен по умолчанию, я думаю. если не выбран режим полета. - person Ilya Saunkin; 22.08.2011
comment
нет, не видно (режим полета не выбран). плюс, когда я захожу в настройки беспроводной сети и сети и нажимаю Wi-Fi, он говорит об ошибке (без каких-либо объяснений) .. и спасибо вам обоим! - person omri; 23.08.2011
comment
на самом деле, если курцмарк не может помочь вам, то никто не может. - person Ilya Saunkin; 23.08.2011
comment
:). кстати, просто чтобы было ясно, что никакой другой сайт не загружается в браузере - person omri; 23.08.2011
comment
Хорошо, проблема, с которой вы столкнулись, связана не с osmdroid, а с подключением к Android в целом. Следующий вопрос дает блестящее предложение включить Wi-Fi, и это сработало для меня, как ПРЯМО СЕЙЧАС. stackoverflow.com/ вопросы/2039964/ - person Ilya Saunkin; 23.08.2011
comment
Большой! большое спасибо! мне просто нужно было добавить -dns-server 8.8.8.8 - person omri; 24.08.2011
comment
Потрясающие! вы можете опубликовать ответ на свою проблему, просто чтобы уточнить, как вы ее решили. - person Ilya Saunkin; 24.08.2011