Android: ¿Están los servicios de localización activados?

Las aplicaciones que utilizan servicios de localización deben comprobar antes que el dispositivo tenga activado estos ajustes para poder obtener correctamente la posición. La siguiente función comprueba esto, y si están desactivados redirige al usuario a ajustes para que los active.

 private void dialogActivarGps(){
    AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this);
    alertDialogBuilder
    .setMessage("Los servicios de localización están desactivados. ¿Deseas activarlos?")
    .setTitle("Servicios de localización")
    .setCancelable(false)
    .setPositiveButton(R.string.positive,
    new DialogInterface.OnClickListener() {
       public void onClick(DialogInterface dialog, int id) {
          Intent callGPSSettingIntent = new Intent(android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS);
          startActivity(callGPSSettingIntent);
       }
    });
    alertDialogBuilder.setNegativeButton(R.string.optCancelar,
    new DialogInterface.OnClickListener() {
       public void onClick(DialogInterface dialog, int id) {
          dialog.cancel();
       }
    });
    AlertDialog alert = alertDialogBuilder.create();
    alert.show();
 }
Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s