2011-08-22 77 views
5

我在Android中使用osmdroid来满足我的映射需求。直到前几天,我可以看到地图,每一件事情是好的,但现在每天我的地图活动开始的时候,我得到一个空的地图和下面的跟踪:osmdroid映射不可见

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 

回答

0

基本上,异常说它无法解析在线资源。

您确定您的设备连接到Wifi或3G吗?

+0

好吧,我正在使用模拟器(忘记提及,对不起)我怎么能检查它是否连接?我认为默认连接模拟器 – omri

+0

。除非选择了飞行模式。 –

+0

在模拟器中打开Web浏览器。它能看到http://www.openstreetmap.org/吗? – kurtzmarc