Pytanie Uruchomienie aplikacji Mapy Google z podaną lokalizacją i znacznikiem


Z mojej aplikacji chciałbym uruchomić aplikację Mapy Google z podaną lokalizacją i znacznikiem. Znacznik powinien wskazywać, że coś jest w danej lokalizacji.

Na razie mam następujący kod, który zaczyna się od aplikacji Mapy Google w Mapach z podaną lokalizacją (51.49234, 7.43045).

startActivity(
new Intent(
    android.content.Intent.ACTION_VIEW, 
    Uri.parse("geo:51.49234,7.43045")));

Po uruchomieniu aplikacji Mapy Google wygląda to tak: enter image description here

Brak znacznika. Chciałbym, aby aplikacja Mapy Google pokazywała znacznik na tej pozycji, który jest podawany za pomocą intencji. Czy istnieje jakiś "ukryty" identyfikator URI, którego mogę użyć do pokazania znacznika w aplikacji Mapy Google?

Z góry dziękuję.

Rozwiązanie

@Rajiv M. wskazał mi na pomysł zapytania otoczenia z podaną lokalizacją.

Rozwiązaniem jest: Zapytanie o otoczenie danej lokalizacji z podaną lokalizacją jako parametrem. Identyfikator URI wygląda następująco:

geo:51.49234,7.43045?q=51.49234,7.43045

Mapy Google pokażą wynik zapytania jako nazwę ulicy: enter image description here

Coś w stylu hack, ale wygląda na to, że działa dobrze.

Dlaczego nie powinieneś używać 0,0 jako lokalizacji na mapie

geo:0,0?q=51.49234,7.43045

Gdy uruchomisz aplikację Mapy Google z podanym punktem lokalizacji mapy 0,0, aplikacja Mapy Google rozpocznie wyszukiwanie Twojej aktualnej pozycji urządzenia. A to wymaga czasu. W niektórych przypadkach, gdy sygnał GPS nie jest dostarczony, o wiele za dużo. Do tego czasu aplikacja Mapy Google rozpocznie wyszukiwanie zapytania 51.49234,44.445.


19
2017-08-23 22:58


pochodzenie


Właśnie użyłem geo: lat, lng? Q = lat, lng podstęp, dzięki! - aiham


Odpowiedzi:


Spróbuj uruchomić Mapy Google w tym samym celu, ale z identyfikatorem URI formatu:

geo:34.067214,-118.349332?q=410+Hauser+Boulevard,+Los+Angeles,+CA

tj. geo: 0,0 q q = ulica + adres

Aplikacja powinna wtedy faktycznie wskazać punkt pod tym adresem. Jeśli nie masz adresu, może być konieczne skorzystanie z usługi, aby przetłumaczyć je na adres, aby działało.

-

Inną opcją jest osadzenie MapView w aplikacji i dodanie do tego znacznika. Samouczek dotyczący korzystania z MapViews / Markerów za pomocą aplikacji można znaleźć pod adresem http://mobiforge.com/developing/story/using-google-maps-android.


16
2017-08-24 00:11



Dziękuję Ci! Wskazałeś mi na nieco inne rozwiązanie niż twoje rozwiązanie. To hack, ale działa bardzo dobrze. - AZ13
niesamowite, cieszę się, że działa :) - Rajiv Makhijani


Może możesz spróbować umieścić uri jak poniżej: Uri uri = Uri.parse ("http://maps.google.com/maps?q="+ _lat +", "+ _ lon);

Przynajmniej powyższy kod działa dla mnie. Pomaga mi dodać punkt pin na szczycie szukanej lokalizacji. co więcej, punkt zaczepienia będzie miał małe okno dialogowe do naciśnięcia, zapewni mi funkcję wyszukiwania kierunku do tej lokalizacji. :RE


0
2018-02-23 05:31