Autore Topic: Problema nel ricavare coordinate GPS da Emulatore  (Letto 909 volte)

Offline fabio2902

  • Nuovo arrivato
  • *
  • Post: 3
  • Respect: 0
    • Mostra profilo
Problema nel ricavare coordinate GPS da Emulatore
« il: 08 Settembre 2012, 11:25:10 CEST »
0
Ciao a tutti,
con questo Topic chiedo il vostro supporto per risolvere un problema che si è presentato durante la realizzazione di una activity che legge coordinate GPS dall'emulatore.
Il mio obiettivo è quello di ricavare latitudine, longitudine, altitudine e accuratezza.

Di seguito il codice java:
Codice (Java): [Seleziona]
 class MioTask extends TimerTask {
       
        public void run() {
               
                // Get the location manager
                LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
                Location location = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
               
                String gps = null;
                if (location != null)
                {
                        System.out.println("Provider " + location.getProvider() + " has been selected.");
                        double lat = location.getLatitude();
                        double lng = location.getLongitude();
                        double alt = location.getLongitude();
                        float acc = location.getAccuracy();
                        gps = Double.toString(lat) + "#" + Double.toString(lng) + "#" + Double.toString(alt) + "#" + Float.toString(acc);
                }
                else
                        System.out.println("Provider nullo\n");
               
                // Initialize the location fields
                System.out.println(gps);
        }
    }
l'activity si preoccupa di leggere i dati stampare con un timer ogni n secondi le coordinate GPS.
per evitare di postare un quantitativo eccessivo di codice ho postato solo la classe che deve leggere le coordinate GPS.

durante l'esecuzione riscontravo il problema che l'avd andava in crash sospendendo l'app, mentre successivamente ho implementato l'istruzione if che vedete nel codice in quanto sospettavo che la location fosse nulla e in effetti è così.
nel ramo else dell'if ho impostato che se la location è nulla ricevo una stampa di riscontro nel LogCat e ciò accade.

premetto che le ho provate tutte ma non riesco a venirne a capo in quanto la location rimane sempre nulla.

aggiungo inolter che nel manifest ho impostato i permessi
Codice (XML): [Seleziona]
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
    <uses-permission android:name="android.permission.ACCESS_GPS"/>

C'è qualche anima pia disposta ad aiutarmi.
mi sono rivolto a voi perchè su questo forum ho riscontrato molta professionalità.

Grazie a tutti

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +507
    • Github
    • Google+
    • rciovati
    • Mostra profilo
R: Problema nel ricavare coordinate GPS da Emulatore
« Risposta #1 il: 08 Settembre 2012, 15:03:40 CEST »
0
Come imposti la posizione? Se apri l'applicazione Maps vedi la posizione corretta?

Inviato dal mio Galaxy Nexus con Tapatalk 2

Offline fabio2902

  • Nuovo arrivato
  • *
  • Post: 3
  • Respect: 0
    • Mostra profilo
Re:Problema nel ricavare coordinate GPS da Emulatore
« Risposta #2 il: 08 Settembre 2012, 15:14:49 CEST »
0
la locazione la imposto tramite il DDMS con il comando SEND ma nell'emulatore l'applicazione Maps non è presente.

Offline fabio2902

  • Nuovo arrivato
  • *
  • Post: 3
  • Respect: 0
    • Mostra profilo
Re:Problema nel ricavare coordinate GPS da Emulatore
« Risposta #3 il: 09 Settembre 2012, 14:03:57 CEST »
0
Ciao a tutti,
volevo informare gli eventuali lettori che ho risolto.
il problema è legato all'emulatore.
collegando uno smartphone funziona tutto a meraviglia.
per dovere di cronaca informo chiunque dovesse avere questo tipo di problema che la medesima situazione si presenta se si tenta di leggere i dati anche dall'accelerometro.
Grazie