CERCA
PER MODELLO
FullScreen Chatbox! :)

Utente del giorno: pumaro con ben 3 Thanks ricevuti nelle ultime 24 ore
Utente della settimana: 9mm con ben 9 Thanks ricevuti negli ultimi sette giorni
Utente del mese: 9mm con ben 31 Thanks ricevuti nell'ultimo mese

Visualizzazione dei risultati da 1 a 2 su 2
Discussione:

Aiuto per "Location Manager"

Se questa discussione ti è stata utile, ti preghiamo di lasciare un messaggio di feedback in modo che possa essere preziosa in futuro anche per altri utenti come te!
  1. #1
    Baby Droid


    Registrato dal
    Nov 2010
    Messaggi
    8

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    Aiuto per "Location Manager"

    Ciao a tutti, per la mia tesi sto sviluppando una applicazione per Android.
    In questa applicazione faccio largo uso dei provider di locazione GPS e NETWORK, in più parti del codice richiedo la posizione.

    Volevo però svincolare la richiesta della posizione dal codice di ogni classe, quindi creare una classe LocationManager che conterrà tutti i metodi per avere il controllo della posizione geografica, come ad esempio la scelta del provider da utilizzare, un metodo per la richiesta delle coordinate gps, ecc ecc (tutto quanto inerente alla gastione del posizionamento geografico). Secondo voi come può essere realizzato? Una classe che continene vari metodi statici da invocare all'occorrenza oppure una qualche classe da istanziare per poi applicarci i metodi all'occorrenza?

    Ho per ora un problema di crash dell'app se non è attivo almeno un provider per servizio di posizionamento, all'avvio nella schermata di login, l'app esplode se, come sopra, non è attivo nessun provider di posizionamento. Creando qualcosa ad hoc per la gestione del posizionamento gps, potrei fare in modo che il tutto non crashi controllando se almeno un provider è attivo...

    Esistono esempi di qualcosa del genere?

    Grazie a tutti

    Alessio

  2.  
  3. #2
    Senior Droid L'avatar di Azatoth


    Registrato dal
    Apr 2009
    Località
    Misinto (MI)
    Messaggi
    568

    Ringraziamenti
    1
    Ringraziato 38 volte in 28 Posts
    Predefinito

    Quote Originariamente inviato da snieco Visualizza il messaggio
    Ciao a tutti, per la mia tesi sto sviluppando una applicazione per Android.
    In questa applicazione faccio largo uso dei provider di locazione GPS e NETWORK, in più parti del codice richiedo la posizione.

    Volevo però svincolare la richiesta della posizione dal codice di ogni classe, quindi creare una classe LocationManager che conterrà tutti i metodi per avere il controllo della posizione geografica, come ad esempio la scelta del provider da utilizzare, un metodo per la richiesta delle coordinate gps, ecc ecc (tutto quanto inerente alla gastione del posizionamento geografico). Secondo voi come può essere realizzato? Una classe che continene vari metodi statici da invocare all'occorrenza oppure una qualche classe da istanziare per poi applicarci i metodi all'occorrenza?

    Ho per ora un problema di crash dell'app se non è attivo almeno un provider per servizio di posizionamento, all'avvio nella schermata di login, l'app esplode se, come sopra, non è attivo nessun provider di posizionamento. Creando qualcosa ad hoc per la gestione del posizionamento gps, potrei fare in modo che il tutto non crashi controllando se almeno un provider è attivo...

    Esistono esempi di qualcosa del genere?

    Grazie a tutti

    Alessio
    Ciao,

    controllati la documentazione del LocationManager.

    Qui trovi un po' di info che forse ti sono sfuggite:

    Per rilevare i provider attivi c'è il metodo getProviders(boolean enabledOnly).
    In base a questo, puoi eventualmente creare una Dialog che avvisi l'utente di attivare la geolocalizzazione (di rete e/o gps che sia) e magari gli apri (grazie all'intent apposito ) la finestra di configurazione di Android relativa alla geolocalizzazione.

    Per quel che riguarda la Classe con i metodi statici... purtroppo dipende da cosa deve fare la tua applicazione.

    La posizione è una di quelle cose che è completamente asincrona: quindi non è che tu richiedi la posizione e questa ti viene restituita.
    Se ti basta l'ultima posizione conosciuta, allora è così, ma devi mettere in preventivo che non sia aggiornata.

    Se vuoi avere sempre l'ultima posizione aggiornata devi usare uno degli overload di requestLocationUpdates(): ma qui c'è la parte in cui è necessario un PendingIntent o un'istanza di LocationListener che contiene i metodi che vengono richiamati da android (quando android ritiene necessario) e che permettono di gestire gli eventi: onLocationChanged, onProviderDisabled, onProviderEnabled, onStatusChanged.

    Quindi c'è da capire cosa fare e sopratutto come vuoi che venga fatto .


    Google Nexus One USA
    ROM: CyanogenMod 6.1.1 - Android 2.2.1
    Radio: 5.12.00.08
    Recovery: Clockwork

    Sviluppatore di: Swapper per utenti root | Modus Operandi

    Ecco le mie app Android

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire risposte
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Torna su
Privacy Policy