GPS Abfrage geht in Emulator, aber nicht in Handy

E

Elvis

Neues Mitglied
0
Ich habe ein xperia 10 (Android 1.6) und habe ein kleines Programm geschrieben, das einfach nur die aktuellen GPS Daten auslesen und ausgeben soll. Auf dem Emulator des SDK funktioniert es, auf dem Handy lässt es sich zwar ohne Fehler installieren und starten, aber es macht nichts.

Code:
package com.minigps;

import android.app.Activity;
import android.content.Context;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
import android.widget.TextView;
import android.widget.Toast;

public class miniGPS extends Activity {
    
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        LocationManager mlocManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
        LocationListener mlocListener = new MyLocationListener();
        mlocManager.requestLocationUpdates( LocationManager.GPS_PROVIDER, 0, 0, mlocListener);
    }

    public class MyLocationListener implements LocationListener{
            
        @Override
    
        public void onLocationChanged(Location loc){
            loc.getLatitude();
            loc.getLongitude();
            String Text = "Lat = " + loc.getLatitude() + "|Long = " + loc.getLongitude();
            Toast.makeText( getApplicationContext(), Text, Toast.LENGTH_SHORT).show();
            final TextView tv = (TextView) findViewById(R.id.text);
            tv.setText(tv.getText()+ "||" + Text);
        }
    
        @Override
    
        public void onProviderDisabled(String provider){
            Toast.makeText( getApplicationContext(),"Gps Disabled", Toast.LENGTH_SHORT ).show();
        }
    
        @Override
    
        public void onProviderEnabled(String provider){
            Toast.makeText( getApplicationContext(),"Gps Enabled",Toast.LENGTH_SHORT).show();
        }
    
        @Override
    
        public void onStatusChanged(String provider, int status, Bundle extras){
        }

    }
}
Danke schon mal im Voraus.
 
Willkommen im Forum!

GPS im Gerät eingeschaltet? ;)
 
FelixL schrieb:
Willkommen im Forum!

GPS im Gerät eingeschaltet? ;)

Leider ja *g*

Ich habe das GPS auch mit anderen Tools getestet um zu sehen, ob Sateliten gefunden wurden, oder ob nur eine Lokalisierung über Mobilfunkzellen gemacht wird.
 
Hast du mal getestet ob die onCreate-Methode auch durchlaufen wird? Oder mal im Log nachgesehen was da steht? Und erscheint oben das GPS-Signal?
 
Zuletzt bearbeitet:
FelixL schrieb:
Hast du mal getestet ob die onCreate-Methode auch durchlaufen wird? Oder mal im Log nachgesehen was da steht? Und erscheint oben das GPS-Signal?

1: ja (habe schnell eine ausgabe an den schluss von oncreate eingefügt)
2: wie komme ich an den log ran?
3: ja, das Symbol wird angezeigt und andere Programme (z.B. GPS Status bekommen ein Signal)
 
Zu 2:
Entweder über Logcat oder DDMS

a) die Windows-Eingabeaufforderung öffnen
b) mit cd "Verzeichnis" in das Unterverzeichnis tools des SDK wechseln
In meinem Fall
cd C:\Users\Felix\Setups\android-sdk_r04-windows\android-sdk-windows\tools
c) dort entweder adb logcat oder ddms eingeben, ich bevorzuge ddms.
d) Gerät anschließen, Programm ausführen, Fehler erkennen ;)
Man kann auch im Code einbauen das dort Sachen ausgegeben werden, so werden dort nur Fehler ausgegeben.
 
hmmm, "adb logcat" bricht bei mir mit einem feher ab und "ddms" findet nur den emulator o_O

aber dafür habe ich raus gefunden, was bei meinem programm nicht geklappt hat.
"onLocationChanged" macht natürlich ziemlich wenig, wenn das handy ruhig neben dem rechner liegt und nicht bewegt wird o_O


 
:D
Geht es denn jetzt?

Wegen der Logcat-Sache: wenn du das Gerät im Eclipse benutzen kannst und da die Apps direkt drauf testen kannst, sollte eigentlich alles Funktionieren :/
 
ja, jetzt geht es.
ich hatte das handy halt neben mir liegen und nicht bewegt, also konnte es ja keine NEUEN koordinaten bekommen.

es hat also genau so funktioniert, wie es sollte, ich habe es nur nicht kapiert ^^
 
du kannst auf dem handy irgendwo gefakte koordinaten einstellen. ist das selbe menü wo usb-debugging eingestellt wird. dann werden vom handy koordinaten genereiert, solange du keinen richtigen gps-empfang hast. der punkt heißt "falsche koordinaten zulassen" oder so ähnlich
 

Ähnliche Themen

S
Antworten
4
Aufrufe
956
Sempervivum
S
B
Antworten
3
Aufrufe
1.286
swa00
swa00
D
Antworten
23
Aufrufe
2.383
Data2006
D
Zurück
Oben Unten