Autore Topic: Miglior provider  (Letto 519 volte)

Offline smbogdan

  • Nuovo arrivato
  • *
  • Post: 29
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    LG Optimus One
  • Sistema operativo:
    Windows xp home edition
Miglior provider
« il: 19 Agosto 2011, 17:52:32 CEST »
0
Ciao ragazzi, avrei bisogno di un po di aiuto con un codice che rileva se il GPS/WIFI/3G sono accesi e usare il migliore per prendere la posizione, ho trovato una guida in inglese ma non mi funziona :( mi crasha l'app sul cel. Il tutorial si trova qui. Mi date una mano a sistemare il codice in modo che funzioni come dovrebbe per favore?

Offline bradipao

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 4043
  • keep it simple
  • Respect: +567
    • Github
    • Google+
    • bradipao
    • Mostra profilo
  • Dispositivo Android:
    Nexus 5
  • Play Store ID:
    Bradipao
  • Sistema operativo:
    W7
Re:Miglior provider
« Risposta #1 il: 19 Agosto 2011, 18:27:09 CEST »
0
Mi date una mano a sistemare il codice in modo che funzioni come dovrebbe per favore?

Ok. Come prima cosa posta il LogCat del crash.
NON rispondo a domande nei messaggi privati
Bradipao @ Play Store

Offline smbogdan

  • Nuovo arrivato
  • *
  • Post: 29
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    LG Optimus One
  • Sistema operativo:
    Windows xp home edition
Re:Miglior provider
« Risposta #2 il: 22 Agosto 2011, 18:12:24 CEST »
0
Ho risolto, ho rifatto il codice a modo mio ma non è tanto difficile basta usare

Codice: [Seleziona]
@Override
        public void onStart(Intent intent, int startId) {
                super.onStart(intent, startId);
               
                lm = (LocationManager) getSystemService(LOCATION_SERVICE);
               
                        lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0,0, this);
                       
        }
per vedere se il gps è acceso e se non lo è si va qui direttamente:

Codice: [Seleziona]
public void onProviderDisabled(String provider) {
               
                if(lm.getProvider(LocationManager.NETWORK_PROVIDER) != null){
                lm.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0,0, this);
               
                 
                }
                else{
                        //Nessuno dei tre provider è acceso(GPS/3g/Wi-Fi)
                }
               
        }

Il "LocationManager.NETWORK_PROVIDER" restituisce "network" per 3G e anche per Wi-Fi
P.S. grazie per la risposta  ;-)