2010-10-25 27 views
6

Duplicar posibles:
Enable GPS programatically like TaskerAndroid activar y desactivar el GPS

Soy un desarrollador de Android principiante.

quiero activar y desactivar el GPS con un clic de un botón, sin correr esta intención:

intente in = new Intent(android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS); 

startActivity(in); 

que me lleva en el menú de configuración.

¿Hay algún método para habilitar o deshabilitar el GPS como en el widget "Control de energía" de Android?

Gracias

EDIT:

El widget que he dicho es en el sistema Android (versión 1.6 en adelante). Hay una aplicación (siriusapplications.com/powercontrolplus) que hace querer lo que quiero hacer, y extiendo el control de potencia de Android ... mi pregunta es: ¿cómo esta persor puede manejar esto? -

Respuesta

3

No creo que haya una manera de hacerlo. Vea esto question. También puede encontrar un buen ejemplo here. Básicamente lo que haces es probar si el GPS está habilitado y luego navegar al usuario a la página de configuración apropiada.

El widget al que se refiere probablemente tenga acceso directo al controlador GPS. Esto significa que solo funcionará en el dispositivo en cuestión (o en una única familia de dispositivos).

+0

El widget que dije está en el sistema android (versión 1.6 en adelante). Hay una aplicación (http://www.siriusapplications.com/powercontrolplus/) que hace querer lo que quiero hacer, y extiendo el control de potencia de Android ... mi pregunta es: ¿cómo esta persor puede manejar esto? – mist3r0

+0

Como el widget está en el sistema Android, puede usar código nativo para controlar el GPS. En cuanto a la aplicación, ¿la has probado? ¿En realidad habilita/deshabilita el GPS o simplemente te da un acceso directo? Esto será muy interesante de saber – kgiannakakis

+1

He visto que este software (http://www.siriusapplications.com/powercontrolplus/) es muy similar en la estructura de control de energía del sistema android. ¡¡Por esta razón hay un modo para hacer esto !! ahora tal vez he resuelto mi problema, escribo este código: booleano gpsStatus = locmanager.isProviderEnabled (LocationManager.GPS_PROVIDER); si (gpsStatus!) { \t \t \t \t Settings.Secure.putString (getContentResolver(), Settings.Secure.LOCATION_PROVIDERS_ALLOWED, "la red, GPS"); } – mist3r0

2

el GPS se puede activar explotando un error en el widget del administrador de energía. ver this question.

+0

+1 sí, ** esto se puede hacer hasta 2.2 (sdk 8) **. Para obtener más información, consulte [Habilitar GPS programáticamente como Tasker] (http://stackoverflow.com/a/5305835/383414) –

Cuestiones relacionadas