Desactiva las llamadas a Log antes de publicar tu app de Android

Todos utilizamos la clase  android.util.Log para volcar a la consola mensajes de error o que nos informen de lo que está haciendo nuestro programa. Pero de acuerdo con Google en su documento “Preparing for release“, es muy importante desactivar el logging antes de publicar una aplicación en versión release:

Turn off logging and debugging

Make sure you deactivate logging and disable the debugging option before you build your application for release. You can deactivate logging by removing calls to Log methods in your source files.

Pero seamos realistas: ¿es práctico eliminar todas las llamadas a los métodos de la clase Log de nuestro código fuente cuando vamos a crear nuestro apk de release? Afortunadamente no hay que llegar a tanto.

Leer más…Desactiva las llamadas a Log antes de publicar tu app de Android

Swipe to Refresh en Android, como implementarlo correctamente

Uno de los patrones de diseño más útiles en Android es el gesto “Swipe to Refresh”. El layout SwipeRefresh es básicamente un viewgroup que puede contener una objeto del tipo view que pueda hacer scroll, lo cual lo reduce básicamente a un scrollview, un gridview o un listview.

Lo que hace el layout SwipeToRefresh es gestionar los eventos que suceden al realizar el gesto de “tirar” de la vista con scroll hacia abajo. La vista se desplaza ligeramente, y rebota hacia arriba. En ese momento se invocan el método que hayamos definido para actualizar la información que mostramos en nuestra interfaz, mientras se visualiza una barra de progreso indeterminada en la parte superior.

Leer más…Swipe to Refresh en Android, como implementarlo correctamente

Comunicar una app de Android con un arduino utilizando la api de Bluetooth (2/2).

En el artículo anterior presentamos un sketch para emitir información desde un arduino leonardo utilizando un transceiver Bluetooth de bajo coste, el HC-06.

A continuación presentamos el código fuente de la app de android que recibirá esa información a través del bluetooth y la presentará en la pantalla.

Leer más…Comunicar una app de Android con un arduino utilizando la api de Bluetooth (2/2).

Comunicar una app de Android con un arduino utilizando la api de Bluetooth (1/2).

En este proyecto voy a presentar una aplicación de Android sencilla que recibirá una temperatura cada pocos segundos de un arduino leonardo que la registra con un sensor DS18B20.

Para emitir la temperatura a nuestro dispositivo Android, usaremos un transceiver Bluetooth, en concreto el conocido por su facilidad de uso y bajo precio, HC-06.

Leer más…Comunicar una app de Android con un arduino utilizando la api de Bluetooth (1/2).

Acceder a un Arduino Yun desde internet con NO-IP

La aplicación Android que controlará al YUN, puede conectarse fácilmente al mismo utilizando su ip si estamos conectados a nuestra red doméstica. Sin embargo cuando no estemos conectados a la misma red que YUN, tendremos que utilizar otro mecanismo para poder acceder a el.

La solución a la que he llegado es una combinación de varios servicios gratuitos disponibles en internet.

  • Primero, configurar nuestro router doméstico para redirigir las peticiones al puerto 80 al YUN.
  • Para no tener que recordar nuestra ip externa utilizaremos el servicio NO_IP para mapear nuestra ip a un nombre de dominio que podamos recordar facilmente. El propio YUN se encargará mediante una tarea de cron, de mantener actualizada la IP externa en NO-IP en caso de nuestro proveedor de servicios la cambie.

Leer más…Acceder a un Arduino Yun desde internet con NO-IP

Controla una bombilla con Android y Arduino Yun

Llevo un par de semanas trasteando con un microcontrolador Arduino YUN. Los microcontroladores Arduino son baratos y muy fáciles de utilizar incluso sin grandes conocimientos de electrónica.

Para familiarizarme con la plataforma, mi “Hola Mundo” con Arduino será encender y apagar una bombilla. No es nada del otro mundo, de hecho ya hay artículos muy buenos Internet que explican como hacerlo.

Por ello me centraré más en la parte informática, y para darle un poco más de profundidad y dejar la puerta abierta a futuras aplicaciones más complejas, desarrollaremos una pequeña aplicación Android para que la bombilla pueda encenderse y apagarse desde nuestro móvil.

Leer más…Controla una bombilla con Android y Arduino Yun

Apex, PL/JSON y web services Restful con el método POST

Hace un par de semanas me quejaba de lo dificil que es crear un webservice del tipo Restful con Apex y utilizar el método post para enviar datos complejos al servidor. La documentación era escasa, los ejemplos casi inexistentes, y encontré una manera de utilizar los webservices pero usando solo e método get.

Finalmente he conseguido encontrar la manera de configurar en Apex un servicio REST que emplea el método post para enviar datos complejos en el header. No era tan dificil como parecía, lo cual me hace pensar que quizás la falta de documentación no es tal, sino que es algo obvio y el despistado era yo. En cualquier caso, aqui teneis como se hace.

Leer más…Apex, PL/JSON y web services Restful con el método POST