2009-06-29 14 views
17

Czy istnieje prosty sposób zaprojektowania strony internetowej w celu ułatwienia użytkownikowi współrzędnych iphone?Czy aplikacje internetowe iPhone'a mogą uzyskać pozycję GPS?

Zastanawiam się, czy może istnieć konwencja nazewnictwa dla pól formularzy, na przykład, aby umożliwić użytkownikowi wprowadzanie danych w sposób zautomatyzowany.

Rozważam budowę strony internetowej opartej na lokalizacji i chciałbym ją dostosować do iPhone'a (i innych użytkowników mobilnych). Zdaję sobie sprawę, że aplikacja na iPhone może to zrobić, ale nie jestem w stanie go stworzyć.

+0

Powinieneś dodać mobilne safari jako tag – Maciek

+0

Dodałem ten tag. –

+0

dodałeś tag mobilny-safari działa? i jaka jest dokładna składnia tagu? – Zubair

Odpowiedz

16

Oto fragment opisujący lokalizację z iPhone'a. Wygląda na to, że wymaga 3,0:

navigator.geolocation.getCurrentPosition(foundLocation, noLocation); 

function foundLocation(position) 
{ 
    var lat = position.coords.latitude; 
    var long = position.coords.longitude; 
    alert('Found location: ' + lat + ', ' + long); 
} 
function noLocation() 
{ 
    alert('Could not find location'); 
} 

Patrz: http://mapscripting.com/how-to-use-geolocation-in-mobile-safari

Przy okazji, jeśli chcesz używać kodu web na iPhone, istnieje kilka rozwiązań średnim ziemne można spróbować, że nie zmusić Cię do stworzenia natywnej aplikacji, ale pozwala ci zawinąć twoją stronę w aplikację i uzyskać dostęp do GPS i innych natywnych funkcji.

+1

Tak jak podpowiedź: flickr.com robi to już ze swoją wersją mobilną. Możesz wyświetlać zdjęcia zrobione w pobliżu Twojej bieżącej lokalizacji. – housemaister

+1

Bardzo fajne, dzięki za referencje. – Maciek

+0

Również Firefox zaimplementował ten sam interfejs w wersji 3.5. Zasadniczo możesz używać tego samego kodu w Firefoksie (jeśli to ci zależy). –

1

mam don to bez konieczności programowania. Możesz:

  1. Pobierz aplikację na iPhone "Basic GPS" ze sklepu iPhone.
  2. Załóż konto na Twitterze.com (jeśli jeszcze go nie masz).
  3. Załóż konto e-mail-to-twitter na Twitterzemail.com.
  4. W podstawowych ustawieniach GPS użyj swojego tajnego adresu e-mail z serwisu Twitter.
  5. Na Twitterze.com/widgets kliknij "Inne", aby uzyskać kod HTML do publikowania swoich tweetów w innym miejscu.
  6. Umieść ten kod HTML na swojej stronie głównej.
  7. W Basic GPS wystarczy kliknąć niebieski przycisk "I" (włączony), "E-mail" i "Wyślij", aby wysłać swoją pozycję do serwisu Twittermail, który publikuje go na Twitterze. Twitter będzie automatycznie publikował go na Twojej stronie głównej.

Zobacz działający przykład na http://CharlieBloom.com. Widoczne są tylko 3 najnowsze (zindywidualizowane) tweety, kliknij "Obserwuj mnie na Twitterze", aby wybrać "Moja pozycja ....." i link Google Maps. Pozycje są aktualizowane na mojej stronie internetowej 2-3 minuty po ich wysłaniu.

poważaniem, Charlie Bloom

+0

Próbowałem linku, ale to nie działa – Zubair

4

Sprawdź app SendLocation pod nawigacji przez Jouni Erola.

Jest to po prostu aplikacja, która wyśle ​​telefon iPhone na Twój serwer z numerem &. Po prostu wprowadź adres URL serwera, aby otrzymać lokalizację jako metode HTTP-GET

1

Tak, ale dokładność jest bardzo zła. Właśnie zbudowałem formularz internetowy, który umieszcza ustawienia GPS z funkcji watchPosition() do mojej bazy danych, a następnie mapuje wyniki.Podczas wiosłowania w lokalnej rzece poprawiono tylko dwa z siedmiu stanowisk. Reszta znajdowała się poza rzeką, a dwie z nich znajdowały się około mil! Teraz szukam lepszego rozwiązania.

Oto kod używam do aktualizacji pól formularza:

<script type="text/javascript"> 
function getGPSLocation() 
{ 
    if(navigator.geolocation) 
    { 
    navigator.geolocation.watchPosition(onGeoSuccess); 
    } else { 
    alert("Your browser or device doesn't support Geolocation"); 
    } 
} 

function onGeoSuccess(position) { 
    document.getElementById("Latitude").value = position.coords.latitude; 
    document.getElementById("Longitude").value = position.coords.longitude; 
} 
</script> 

I to jest forma. Zaktualizuj, aby dostosować swoje potrzeby.

<form> 
<img src="spacer.gif" OnLoad="getGPSLocation();"> 
<input type="Text" name="Latitude" id="Latitude" value=""> 
<input type="Text" name="Longitude" id="Longitude" value=""> 
</form> 
+0

Czy uważasz, że to prawdopodobnie zły odbiór? – Alex

Powiązane problemy