guia de aprendizaje Geo

Páginas: 5 (1096 palabras) Publicado: 21 de noviembre de 2015

En este ejercicio crearemos una aplicación que es capaz de leer información de localización del dispositivo y actualizarla cada vez que se produce un cambio.

1. Crea un nuevo proyecto con los siguientes datos:

Project Name: Localizacion
Package Name: org.example.localizacion
Minimun Requiered SDK: API 7: Android 2.3.3
Compile With: API 19: Android 4.4

2. Por razones de privacidadacceder a la información de localización está en principio prohibido a las aplicaciones. Si estas desean hacer uso de este servicio han de solicitar el permiso adecuado. En concreto hay que solicitarACCESS_FINE_LOCATION para acceder a cualquier tipo de sistema de localización o ACCESS_FINE_LOCATION para acceder al sistema de localización basado en redes. Puedes hacerlo a través de los cuadros dediálogos, como se muestra a continuación:









o añadiendo la siguiente línea en el fichero AndroidManifest.xml dentro de la etiqueta :

android:name="android.permission.ACCESS_FINE_LOCATION"/>

Por lo tanto en este ejemplo vamos autilizar, tanto la localización fina, que nos proporciona el GPS, como una menos precisa, que nos proporcionada las torres detelefonía celular y las redes WiFi.

3. Sustituye el fichero res/layout/activity_main.xml por:

xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
android:id="@+id/salida"
android:layout_width="match_parent"
android:layout_height="wrap_content" />

En este ejemplo nos limitaremos a mostrar en modo de texto la información obtenida desde el API de localización. Para ello usaremos un TextView dentro de un ScrollView, tal y como se muestra en la siguiente pantalla:













4. Abre la clase MainActivity y copia el siguiente código:


public class MainActivity extends Activity implements LocationListener {
private static finallong TIEMPO_MIN = 10 * 1000 ; // 10 segundos
private static final long DISTANCIA_MIN = 5 ; // 5 metros
private static final String[] A = { "n/d", "preciso", "impreciso" };
private static final String[] P = { "n/d", "bajo", "medio","alto" };
private static final String[] E = { "fuera de servicio",
"temporalmente no disponible ","disponible" };
privateLocationManager manejador;
private String proveedor;
private TextView salida;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
salida = (TextView) findViewById(R.id.salida);

manejador = (LocationManager) getSystemService(LOCATION_SERVICE);
log("Proveedores de localización: \n");
muestraProveedores();




Criteria criterio = new Criteria();
criterio.setCostAllowed(false);
criterio.setAltitudeRequired(false);
criterio.setAccuracy(Criteria.ACCURACY_FINE);
proveedor = manejador.getBestProvider(criterio, true);
log("Mejor proveedor: " + proveedor + "\n");
log("Comenzamos con la última localización conocida:");
Locationlocalizacion = manejador.getLastKnownLocation(proveedor);
muestraLocaliz(localizacion);
}


La primera línea que nos interesa es la llamada a getSystemService(LOCATION_SERVICE) que crea el objeto manejador de tipo LocationManager. La siguiente llamada a muestraProveedores() también es un método definido por nosotros, que listará todos los proveedores de localización disponibles.

En lastres siguientes líneas vamos a seleccionar uno de estos proveedores de localización. Comenzamos creando un objeto de la clase Criteria, donde se podrá indicar las características que ha de tener el proveedor buscado. En este ejemplo indicamosque no ha de tener coste económico, ha de poder objener la altura y ha de tener precisión fina. Para consultar otras restricciones, consultar documentación...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Guia Geo
  • Guía de geo
  • Guia examen geo
  • Guia Geo economia
  • guia para geo
  • Guia De Aprendizaje
  • guia de aprendizaje
  • Guías de aprendizaje

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS