Wie lese ich bei einem Smartphone die GPS-Daten aus?
it-girl
- javascript
0 it-girl
Hallo zusammen,
ich habe ein kleines Problem...
Ich möchte gerne die GPS-Daten meines Smartphones über eine WebApplikation (die ich selber schreibe) auslesen lassen.
Habe auch schon einiges gefunden, sowohl im Internet, als auch in Büchern. Leider funktioniert das bei mir alles nicht.
So sieht bis jetzt mein Code aus:
HTML:
<!DOCTYPE html>
<html>
<head>
<title>Blume</title>
<!-- CSS und JavaScript (u.a. jQuery) -->
</head>
<body>
<div id="wrapper">
<div id="inhalt">
<form id="formular">
<p>Um die 8 nächstgelegenen schönsten Blumen via GPS zu ermitteln, klicken Sie auf den Button:</p>
<input id="submitGPS" onclick="getGPS()" type="button" value="GPS-Suche" />
</form>
<br/>
<div id="location"></div>
<div id="liste">
<p>Die 8 nächstgelegenen schönsten Blumen:</p>
<hr/>
<div id="infos"></div>
</div>
<br/>
<br/>
</div>
</div>
</body>
</html>
JavaScript:
function getGPS() {
if(typeof navigator.geolocation.getCurrentPosition == "function") {
navigator.geolocation.getCurrentPosition(
//onSuccess
function(position) {
var msg = 'Zeit: ' + position.timestamp
+ '<br>' +
'Geographische Breite: ' + position.coords.latitude
+ '<br>' +
'Geographische Länge: ' + position.coords.longitude
+ '<br>' +
'Höhe: ' + position.coords.altitude
+ '<br>' +
'Präzision: ' + position.coords.accuracy
+ '<br>' +
'Präzision der Höhenmessung: ' + position.coords.altitudeAccuracy
+ '<br>' +
'Richtung: ' + position.coords.heading
+ '<br>';
document.getElementById('location').innerHTML = msg;
},
//onFail
function(){
alert("Ihre aktuelle Position konnte leider nicht ermittelt werden. Stellen Sie sicher, dass Ihr GPS aktiviert ist und versuchen Sie es erneut.");
}
);
ladeInhalt();
}
else{
alert("Befehl konnte nicht ausgef%FChrt werden. Versuchen Sie es sp%E4ter erneut.");
}
}
Außerdem habe ich eine Seite im Internet gefunden, die einfach den Längen- und Breitengrad ausliest und auf einer HTML-Seite ausgibt.
Von dieser Seite habe ich mir dann den Quellcode kopiert und auf meinen Server hochgeladen. Doch leider werde ich nicht mal gefragt, ob ich den GPS-Zugriff erlauben möchte. Es passiert einfach gar nichts :-(
Kann mir bitte jemand sagen, woran das liegt? Was mache ich denn nur falsch?
LG und vielen Dank schon mal!
it-girl
Ok, hab es selber hinbekommen :-)
function getGPS() {
function handler(location){
var message = document.getElementById("location");
message.innerHTML += "<p>Longitude: " + location.coords.longitude + "</p>";
message.innerHTML += "<p>Latitude: " + location.coords.latitude + "</p>";
message.innerHTML += "<p>Accuracy: " + location.coords.accuracy + "</p>";
}
navigator.geolocation.getCurrentPosition(handler);
}
LG it-girl