1. Nimm jetzt an unserem Uhans - 3. ADVENT - Gewinnspiel teil - Alle Informationen findest Du hier!

GPS Data Flow problem

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von Artwork, 29.07.2010.

  1. Artwork, 29.07.2010 #1
    Artwork

    Artwork Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    84
    Erhaltene Danke:
    8
    Registriert seit:
    29.07.2010
    Phone:
    T-Mobile G1
    Hi,

    ich habe ein grundlegendes problem mit dem/meinem gps konzept. Und zwar frage ich mich, wie kann ich GPS Daten in meine Anwendung programmiertechnisch nutzen.

    Um GPS daten zu bekommen benötigt man eine Art Update Handler der den LocationListener(Interface) mit seinen methoden implementiert. Unter anderem onLocationChanged(Location loc)

    innerhalb dieser methode kann man über die variable loc dann "lat" und "lng" unter anderem abfragen.

    Wenn ich zum Beispiel eine Google Map haben möchte dann schreibe ich eine klasse "MapsView" die MapActivity erbt...ich erzeuge in einer Instanz von MapsView eine Instanz des Update Handlers, dieser bekommt dann auch die MapsView Instanz gleich mit und über diese kann der Update handler zb auf der map die aktuelle position setzen.

    Was ich jedoch versuche und woran ich verzweifle ist diese GPS daten aus der Update handler instanz heraus zubekommen und in einer anderen klasse zu nutzen.

    Zb möchte ich die stadt in der sich das handy befindet als string für weitere operationen unabhängig vom update händler. nach obigem ansatz müsste ich diese operationen ja im update handler selbst machen.

    ganz vllt ZU bequem...aber so in pseudo code

    start MapsView
    start GPS
    solange das läuft zeige WARTEN bild
    request current city from location
    return city as string
    ende gps

    ..und mit city weiter sachen anstellen

    so ähnlich habe ich es bereits probiert, beim testen ist die anwendung aber abgestürzt und zwar immer dann wenn es darum ging gps daten von update handler anzuvordern

    ich hoffe ihr könnt mir helfen:confused:
     
  2. Artwork, 30.07.2010 #2
    Artwork

    Artwork Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    84
    Erhaltene Danke:
    8
    Registriert seit:
    29.07.2010
    Phone:
    T-Mobile G1
    so hallo, ich mein problem gelöst soweit

    ich definiere einen Message/Update handler

    PHP:
    Handler updateHandler = new Handler() {
            
    /** Gets called on every message that is received */
            // @Override
            
    public void handleMessage(Message msg) {
                switch (
    msg.what) {
                case 
    UPDATE_LOCATION: {
                    
    Toast.makeText(getBaseContext(),"Your Location:" g.mLongitude "," g.mLatitudeToast.LENGTH_SHORT).show();
                    break;
                }
                    }
                
    super.handleMessage(msg);
            }
         };
    im GeoDataGateway muss die message gesendet werden

    PHP:
    Message msg Message.obtain();
    msg.what UPDATE_LOCATION;
    this.SystemService.updateHandler.sendMessage(msg);
    jedes mal wenn sich die "location" ändert wird eine nachricht an den update handler geschickt und ich kann dann auf die gps daten zugreifen^^
     

Diese Seite empfehlen