Est-il possible d'utiliser un fournisseur de carte routière ouverte avec la nouvelle version de Google Maps V2 Api sur Android? Si oui, pouvez-vous fournir un exemple ou une documentation? J'ai regardé rapidement les documents et trouvé UrlTileProvider(), donc il semble que c'est possible. Bonus: Utilise-t-il simplement la classe MapFragment avec des tuiles OSM toujours liées par les Google Maps TOS?Ouvrir Street Maps avec Android Google Maps Api v2
Répondre
Vous devez étendre la classe UrlTileProvider de sorte que vous pouvez définir l'URL pour les cartes en mosaïque de l'OSM et ajoutez une superposition de tuiles comme ça:
MyUrlTileProvider mTileProvider = new MyUrlTileProvider(256, 256, mUrl);
mMap.addTileOverlay(new TileOverlayOptions().tileProvider(mTileProvider));
Avec l'URL pour OSM défini comme:
String mUrl = "http://a.tile.openstreetmap.org/{z}/{x}/{y}.png";
La classe MyUrlTileProvider:
public class MyUrlTileProvider extends UrlTileProvider {
private String baseUrl;
public MyUrlTileProvider(int width, int height, String url) {
super(width, height);
this.baseUrl = url;
}
@Override
public URL getTileUrl(int x, int y, int zoom) {
try {
return new URL(baseUrl.replace("{z}", ""+zoom).replace("{x}",""+x).replace("{y}",""+y));
} catch (MalformedURLException e) {
e.printStackTrace();
}
return null;
}
}
J'essaie maintenant d'obtenir ces cartes de tuiles OSM avec un mode hors ligne, donc si quelqu'un obtient une solution rapide, s'il vous plaît faites le moi savoir!
Pourriez-vous développer cela avec une implémentation très basique? –
Quelqu'un at-il réellement utilisé ceci? Je n'ai pas encore essayé – Patrick
J'ai commencé l'exemple avec OSM. Fonctionne très bien. Ceci avec un mode hors ligne serait tueur. Juste besoin de savoir sur les problèmes de licence .... – Patrick
Lorsque vous utilisez cette approche, s'il vous plaît prêter attention à la tuile OSM Politique d'utilisation:
- 1. Problèmes avec android google maps api v2
- 2. setClickable api google maps v2 android
- 3. Google Maps Android API v2 Route Overlay
- 4. google maps v2 android
- 5. google maps routage api V2 android
- 6. Google Maps Android V2 et Direction API
- 7. Google Maps Api v2 erreur
- 8. Google Maps Street View
- 9. Android Studio Google Maps v2
- 10. Google maps api v2 obtenir l'itinéraire
- 11. Afficher plusieurs points avec Google Maps Android API v2
- 12. Erreurs avec Google Maps Android API V2 dans HTC Explorer
- 13. Google Maps API v2 - Erreur du fragment
- 14. mise en cache google maps api v2
- 15. Google maps api v2 | Store Finder/Locator
- 16. Google maps api v2 obtenir coordonnées polygone
- 17. Comment setBounds dans Google Maps API v2?
- 18. Google Maps API Android
- 19. Google maps Street View avec vue personnalisée
- 20. Android: Google Maps API v2 comment nettoyer l'enfant SupportMapFragment
- 21. Google Maps Android API v2 routes json analyse
- 22. Android Google Maps API V2 Zoom sur l'emplacement actuel
- 23. Mémoire fuite pour Android Google Maps API v2
- 24. affichage API Android Google Maps v2 __gVirt_NP_NN_NNPS<__ itinéraire
- 25. API Google Maps Android v2 SupportMapFragment fuite de mémoire
- 26. Google Maps API v2 pour Android "Malheureusement, [l'application] s'est arrêtée."
- 27. Google Maps Android API v2 créant un nouveau LocationSource
- 28. Google Maps Android Api v2 distanceEntre la méthode innacurate
- 29. Obtention d'une clé API Google Maps Android v2
- 30. utiliser plusieurs marqueurs dans google maps api v2 pour android
http://wiki.openstreetmap.org/wiki/Tile_usage_policy
Plus précisément « est interdite sans autorisation préalable utilisation intensive (par exemple la distribution d'une application qui utilise des tuiles de openstreetmap.org) » Juste curieux de savoir pourquoi vous voulez utiliser OSM sur google maps? – tyczj
Je suis juste limité par les Google Maps TOS. Mon application utilise des données privées, et je ne peux pas me permettre $ 10,000/year ... – Patrick