2016-01-21 29 views
0

我在玩Osmdroid API,我可以看到基本地圖。但是,當我嘗試設置自定義瓷磚來源 - 我得到了每個瓷磚的404 HTTP錯誤的完整手中。我已經在桌面瀏覽器中檢查了我的網址請求,並且它可以正常工作,返回適當的磁貼。我想,osm庫對http請求建立做錯了。我的問題是 - 我如何記錄http請求,osm爲tile創建?大多數代理解決方案適用於移動瀏覽器,而不適用於應用osm api上是否有一些日誌記錄工具?Osmdroid無法從有效來源加載地圖

下面是代碼:

public class MainActivity extends AppCompatActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     MapView map = (MapView) findViewById(R.id.map); 
     ITileSource tileSource = new XYTileSource("KGKMap", 3, 18, 256, ".png", new String[]{"http://map2.kgk-global.com/tiles/tile.py"}); 
     map.setTileSource(tileSource); 
     map.setBuiltInZoomControls(true); 
    } 
} 

什麼,我得到:

01-21 04:27:40.306 25696-25737/kravtsov.evgeny.openstreetmap W/OsmDroid: Problem downloading MapTile: /3/0/1 HTTP response: Not Found 
01-21 04:27:40.306 25696-25746/kravtsov.evgeny.openstreetmap W/OsmDroid: Problem downloading MapTile: /3/2/2 HTTP response: Not Found 
01-21 04:27:40.321 25696-25737/kravtsov.evgeny.openstreetmap W/OsmDroid: Problem downloading MapTile: /3/5/5 HTTP response: Not Found 
01-21 04:27:40.325 25696-25746/kravtsov.evgeny.openstreetmap W/OsmDroid: Problem downloading MapTile: /3/7/1 HTTP response: Not Found 
01-21 04:27:40.335 25696-25737/kravtsov.evgeny.openstreetmap W/OsmDroid: Problem downloading MapTile: /3/6/1 HTTP response: Not Found 
01-21 04:27:40.338 25696-25746/kravtsov.evgeny.openstreetmap W/OsmDroid: Problem downloading MapTile: /3/4/1 HTTP response: Not Found 
01-21 04:27:40.357 25696-25737/kravtsov.evgeny.openstreetmap W/OsmDroid: Problem downloading MapTile: /3/3/1 HTTP response: Not Found 
01-21 04:27:40.357 25696-25746/kravtsov.evgeny.openstreetmap W/OsmDroid: Problem downloading MapTile: /3/2/1 HTTP response: Not Found 
01-21 04:27:40.369 25696-25737/kravtsov.evgeny.openstreetmap W/OsmDroid: Problem downloading MapTile: /3/6/2 HTTP response: Not Found 
01-21 04:27:40.373 25696-25746/kravtsov.evgeny.openstreetmap W/OsmDroid: Problem downloading MapTile: /3/4/5 HTTP response: Not Found 

回答

0

問題解決了。由OSM生成的Http查詢與我的tile服務器協議不匹配。解決方案很簡單 - 從OSM擴展XYTileSource類。在getTileURLString()方法中,您可以爲http查詢製作任何表單。