Android Google Maps говори с Google Maps Enterprise Data?

Възможно ли е да превключите кода на Android Google Maps, за да използвате персонализирани данни, предоставени от Google Enterprise?

Подробности: Google предоставя "корпоративна" версия на своята услуга за карти, където можете да хоствате вашите собствени данни. Вижте тук: http://www.google.com/enterprise/earthmaps/earth_technical.html

Но API на Карти на Android няма начин да използва алтернативни източници на данни, различни от тези, които са свободно достъпни в мрежата. 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 Карти, които вероятно биха могли да идват от вашето „корпоративно“ издание.

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