Archivo de la categoría: Android

Android: Sensores, introducción

Dentro de las APIs del sistema operativo Android, existe soporte para las características hardware del dispositivo, tales como la cámara y los sensores. En los siguientes post, detallaré el acceso a los sensores, concretamente a los sensores de orientación del dispositivo (magnetómetro y acelerómetro).

Para controlar los sensores,  existen las  APIs SensorEvent y SensorEventListener:

La clase SensorEvent representa un evento del sensor (cambio en sus valores), proporcionando el tipo del sensor, el tiempo en nanosegundos en el que ocurrió el evento, exactitud de los datos, y por supuesto, los datos del sensor.

SensorEventListener será la encargada de recibir dichos eventos y procesarlos según se indique en el código.

Sigue leyendo

Anuncios

Android: acceso a la base de datos

A continuación explicare la clase DataBaseHelper, que gestiona la base de datos externa, por lo que no consta de  métodos de creación o modificación de datos ni tablas, simplemente lee una base de datos creada externamente, como se explicaba AQUÍ y con un método de lectura completa y otro de lectura selectiva mediante sentencia SQL WHERE con el método “query“.

1º) Han de definirse el nombre de la base de datos, guardada en la carpeta “assets” en DB_NAME. También el nombre de la tabla que contiene la información deseada con DATABASE_TABLE y el campo de la base de datos por el que se ordenarán los resultados extraídos, en este caso POI_ID.

Además hay construir la dirección dónde se guardará la base de datos cargada en la aplicación con DB_PATH, dónde el PACKAGE debe ser el nombre del paquete de la aplicación.

Sigue leyendo

Android: SQL WHERE, consulta selectiva de la base de datos

La lectura de datos de la base de datos puede ser completa (se extraen todos los campos de la base de datos) o selectiva indicando qué tipo de parámetros extraer o estableciendo una serie de condiciones.

En aplicaciones como Find It, por ejemplo, el usuario puede establecer una selección de categorías y calles de los Puntos de interés a mostrar. Esto, a la hora de buscar en la base de datos se traduce en una comparación entre las calles y categorías deseadas y las de los Puntos de Interés de la base de datos y en caso de coincidir, estos serán extraídos.

SQL WHERE

Mediante la sentencia SQL WHERE es posible realizar este tipo de extracción selectiva de datos de la base de datos, pasándola como parámetro en el método “query” (ver post sobre query AQUÍ).

La cadena “where”, contendrá el tipo de comparación que se debe realizar con un formato concreto con comillas simples y dobles. Se debe especificar la columna a comparar y el valor de esta:

where = “columnaN = ‘Valor M’”

Sigue leyendo

Android: “query”, consulta de la base de datos SQLite

Mediante la función query proporcionada por Android es posible extraer la información contenida en la base de datos.

 public Cursor query (String table, String[] columns, String selection,
 String[] selectionArgs, String groupBy, String having,
 String orderBy)

Parámetros de entrada:

  • table: Nombre de la tabla de la base de datos que se quiere consultar.
  • columns: Array de cadenas de caracteres que represente una lista con las columnas que se quieran extraer de cada elemento. Para esta aplicación se extraen todas las columnas, por lo que se pasa el parámetro “null” que indicará que se devuelvan todas.
  • selection: Cadena de caracteres que constituya un filtro de filas a mostrar. Tendrá el formato de la sentencia SQL WHERE, excluyendo la propia palabra where. En caso de querer realizar la búsqueda completa se pasará el parámetro “null” indicando que se devuelvan todas las filas y en el caso de búsqueda selectiva, se pasará la cadena “where”, tal y como se explica más adelante. Sigue leyendo

Android: Base de datos externa

En aplicaciones como Find It, la base de datos sólo se consulta, en ningún caso se modifica, por tanto, se ha optado por elaborar la base de datos externamente y añadirla al paquete de la applicación.

El  archivo que contiene la base de datos debe ser incluido en la carpeta “assets” (ver estructura del proyecto de una aplicación AQUÍ) de la aplicación para que pueda ser leído desde el método adecuado dentro de la clase encargada de la gestión de la base de datos. 

Sigue leyendo