2012-06-12 17 views
7

Próbuję wyświetlić Mapy Google warstwy ruchu w mojej aplikacji, z tego co Uczyłem powinien być wyświetlany po ustawieniuDostosowane Warstwa Ruch na Google Maps

 mapView.setTraffic(true); 

do mojego MapActivity jednak ja nie był w stanie sprawić, żeby się pojawił.

Po kilku badaniach okazało się, że interfejs API Map Google nie obsługuje warstwy ruchu dla mojego regionu (São Paulo, Brazylia), co najmniej, nie za pomocą interfejsu API, ponieważ możliwe jest sprawdzenie warstwy ruchu w moim regionie, jeśli Korzystam z samych Map Google.

Moje główne pytanie brzmi: czy możliwe jest utworzenie niestandardowej warstwy ruchu z wykorzystaniem własnej bazy danych dla sytuacji na drodze na mapie mapy Google Maps? Jak malować ulice zgodnie z ich ruchem? Nie sądzę, żeby wystarczyły nakładki na tę pracę.

Jakieś myśli?

Edycja1: Nadal badając to, może jedynym sposobem jest próba zminimalizowania mapy, użycie niestandardowych nakładek i zaoferowanie etykiet do wyjaśnienia każdej nakładki?

+0

Szukałem też tego :( – dccarmo

Odpowiedz

2

Chciałbym zrobić komentarz zamiast odpowiedzi, ale nadal nie mam tej mocy.

Zgaduję, że umowa licencyjna między Google a firmą, która dostarcza dane o ruchu dla Miasta Sao Paulo, nie zezwala na korzystanie z usług stron trzecich (tj. Programistów używających Maps API). To jedyne sensowne wyjaśnienie, które wymyśliłem, mając dane o ruchu drogowym na Google Maps for São Paulo, ale nie we własnym Google example for traffic layer on Maps V3 API

Więc myślę, że jedyną opcją jest ta, o której wspomniałeś. Jeśli masz własną bazę danych z danymi o ruchu, możesz utworzyć własną podklasę Overlay, przesłaniając metodę draw, aby malować na ulicach. Aby uzyskać obiekt Projection, należy użyć obiektu MapView.getProjection(), aby można było odwzorować współrzędne na piksele na MapView, aby narysować wskaźniki ruchu.

Mam nadzieję, że jakoś pomogłem.

+0

Awesome! Z tego, co odkryłem, możesz mieć rację, dowiedzieliśmy się, że istnieje dobrze znana firma w obszarze mapy, która faktycznie dostarcza informacje o ruchu drogowym Google, więc musi być między nimi umowa o wyłączności:/Nie wiedziałem, jak to działa getProjection(), spróbuję tego! Dzięki! PS: Postanowię odpowiedzieć jako poprawną, ponieważ uważam, że jest najbliżej, jeśli chodzi o w tej sprawie @ _ @ – thiagocfb

+0

Ta odpowiedź wydaje mi się rozsądna: zobaczyłem kilka lokalizacji, dla których w serwisie Mapy Google były ** oba dane o ruchu ** ORAZ ** warstwa ruchu w interfejsie API Map 3 w Mapach Google. Zauważyłem to dla Bogoty, Limy i okolic Panamy Kanał, nigdzie indziej w Ameryce Południowej. Może Google ma umowę licencyjną z dostawcami danych o ruchu w tych lokalizacjach, tylko od teraz? –