Android Google Maps взаимодействует с корпоративными данными Google Maps?

Можно ли переключить код Android Google Maps для использования пользовательских данных, предоставленных Google Enterprise?

Подробности: Google предоставляет корпоративную версию своего картографического сервиса, в которой вы можете размещать свои собственные данные. См. здесь: http://www.google.com/enterprise/earthmaps/earth_technical.html< /а>

Но Android Maps API не может использовать какие-либо альтернативные источники данных, кроме тех, которые находятся в свободном доступе в Интернете. http://code.google.com/android/add-ons/google-apis/index.html

Есть и другие инструменты, такие как Open Street Maps или AndNav, но здесь мне нужно использовать Google.


person gregm    schedule 28.03.2011    source источник


Ответы (2)


Не существует API для переключения источника данных MapView, а поскольку он не является открытым исходным кодом, нет очевидного способа изменить его.

Однако вы можете использовать WebView для встраивания стандартных веб-карт Google Maps, которые, предположительно, могут быть взяты из вашей "корпоративной" версии.

person CommonsWare    schedule 28.03.2011

С новым API V2 на Android вы можете установить источник плитки, предоставив собственный TileProvider. Я не знаком с корпоративными предложениями, но это должно быть возможно, если плитки доступны по URL-адресу. Точная реализация будет зависеть от того, как осуществляется доступ к плиткам, но вот код для начала:

map.setMapType(GoogleMap.MAP_TYPE_NONE);

TileOverlayOptions options = new TileOverlayOptions();

options.tileProvider(new UrlTileProvider(256, 256) {
@Override
public URL getTileUrl(int x, int y, int z) {
    try {
        String f = "http://yourURL/%d/%d/%d.png";
        return new URL(String.format(f, z, x, y));
    }
    catch (MalformedURLException e) {
        return null;
    }
}

});

map.addTileProvider(параметры);

person Patrick    schedule 05.02.2013