Android: solución a Resources$NotFoundException: String resource ID

Este es un post rápido en donde voy a explicar cómo se origina el error y cómo arreglar el error que dice algo así:

Resources$NotFoundException: String resource ID at android.content.res.Resources.getText at android.widget.TextView.setText

El error nos está indicando que no encuentra un recurso con determinado ID al llamar al método setText de un TextView. Vamos a ver cómo arreglarlo y sus orígenes, para que a la próxima no ocurra de nuevo.

(más…)

Mostrar código QR en ImageView de Android

Generar códigos QR con Android y QRGen

Haciendo un creador de códigos QR en Android gracias a QRGen

Ya vimos cómo leer códigos QR de manera programada con Android; ahora veamos el proceso “inverso”: programar una aplicación que genera un código QR a partir de una cadena de datos.

Con el generador que haremos será posible mostrar directamente el código QR generado o guardarlo en un lugar de nuestro teléfono.

Todo lo que haremos será usar la librería de QRGen y combinarla con Android; en este tutorial mostraré paso a paso cómo incluirla en Android Studio, algunos ejemplos de uso y una aplicación que ejemplifica todo eso.

(más…)

Diálogo de Android que solicita permisos

Android 6: Ejemplo de solicitud de permisos en tiempo de ejecución

Usar requestPermissions y onRequestPermissionsResult para pedir permisos en Android

A partir de la versión 6 de Android, los permisos “riesgosos” deben ser requeridos en tiempo de ejecución y no poniéndolos simplemente en el manifiesto de nuestra app. Citando a Android Developers:

En aquellas de tus apps que estén orientadas a Android 6.0 (nivel de API 23) o versiones posteriores, asegúrate de comprobar y solicitar los permisos en tiempo de ejecución. Para determinar si se concedió un permiso a tu app, llama al nuevo método checkSelfPermission(). Para solicitar un permiso, llama al nuevo método requestPermissions(). Incluso cuando tu app no tenga como objetivo Android 6.0 (nivel de API 23), debes probarla de acuerdo con el nuevo modelo de permisos.

Para muchas personas esto es un poco complejo y enredado, por ello es que hoy vengo a explicar cómo funcionan los permisos a partir de Android 6 y dar algunos ejemplos.

(más…)

Comprobar registros al encender dispositivo

Ejecutar scripts de Termux en el inicio (al encender dispositivo Android)

Configurar Termux Boot para ejecutar acciones al encender dispositivo

Siguiendo con los buenos artículos sobre Termux y sobre cómo tener una probada de Linux en nuestros terminales Android, vamos a ver cómo ejecutar scripts o acciones al encender el dispositivo.

Esto viene de ayuda cuando queremos que algunos demonios o servicios se inicien cuando el dispositivo enciende, por ejemplo el servicio de MySQL (de hecho hago este post a petición de un lector que quería justamente eso).

Nota: antes de leer esto, te animo a leer el post de los primeros pasos con Termux.

(más…)

Descargar Termux desde F-droid

Instalar Termux desde F-droid

Este post es un complemento de este post en donde explicamos los primeros pasos con Termux para tener Linux en nuestro bolsillo.

La diferencia es que ahora veremos cómo instalar Termux usando la tienda llamada F-Droid en lugar de la play store, esto es porque en un futuro tutorial veremos algo sobre un plugin que es gratuito desde F-droid pero no desde la play store. Ya verás a lo que me refiero.

Después de este tutorial, sigue el que indico al inicio, pues aquí únicamente muestro cómo descargar la APK pero no cómo configurarla.

(más…)

Actividad para insertar nueva mascota

Tutorial de SQLite con Android: CRUD (create, read, update, delete)

Para guardar datos en una base de datos usando Android tenemos que recurrir al maravilloso gestor SQLite3. Pues bien, hoy veremos cómo trabajar con SQLite desde Android usando Java.

Lo que veremos será un CRUD o ABC de Android con SQLite en donde veremos un insert, update, delete y select de SQL con Android.

Al final tendremos una app móvil simple que permitirá interactuar con SQLite para realizar las operaciones básicas que se ve así:

CRUD de SQLite con Android - Mascotas

CRUD de SQLite con Android – Mascotas

Todo esto usando SQLite y una clase que extiende de SQLiteOpenHelper.

(más…)

Color de fondo de icono de app de Android

Establecer imagen PNG como icono de app de Android

Los iconos de las apps de Android son lo primero que el usuario ve al instalar nuestra app en el launcher, por ello debe ser uno que ilustre nuestra app o que al menos se vea interesante.

En ocasiones tenemos una imagen o icono PNG y queremos establecerlo como icono de launcher en nuestra app de Android, es por eso que en este tutorial de Android voy a explicar cómo usar Android Studio para convertir nuestra imagen o icono PNG al icono del launcher.

Nota: este tutorial también funcionará para configurar el logotipo o icono de la app por primera vez.

(más…)

Sistema de ventas en PHP montando en Android

Montar aplicación web de PHP y MySQL sobre Android

Implementar aplicación web con PHP y MySQL en nuestro dispositivo Android

Este post es la continuación de: Instalar XAMPP en Android sin root. Ahí hicimos un Hola mundo, aquí montaremos un sistema; el cual es un ejercicio de un sistema de ventas.

Recomiendo ver cómo instalar MySQL y cómo comenzar a trabajar con Termux.

Esto es mágico. Todas las fuentes, estilos y vistas serán cargadas desde Apache en nuestro Android. Se procesarán los archivos de PHP y finalmente todo se guardará en una base de datos.

(más…)

PHP ejecutándose en Android

Configurar e instalar Apache y PHP 7 en Android con Termux

Instalar servidor web y procesar archivos de PHP: armar una pila LAMPP en Android

Sí, estás leyendo bien. Esto no es un post de esos que usan engaños para atraer visitas, realmente vamos a instalar un servidor apache en Android, configurarlo para que procese archivos de PHP y finalmente probar una aplicación real que se conecta a MySQL: todo corriendo desde nuestro teléfono móvil.

 

PHP ejecutándose en Android

PHP ejecutándose en Android

El sistema que montaremos en Android será el sistema de ventas en PHP con PDO y MySQL. Ya deberías saber que no necesitamos que nuestro teléfono esté rooteado. Dejo el post demostrativo al final (y bueno, si no quieres bajar míralo de una vez).

(más…)

Cambiar nombre de sesión de Termux

Configurar Termux en Android (Linux en nuestro bolsillo)

Instalar Termux en Android

Antes de seguir con más tutoriales de Termux vamos a ver cómo instalarlo y configurarlo, además de ver una pequeña introducción a su uso.

Termux es una aplicación que nos permitirá tener una terminal en nuestro dispositivo, pero aparte de ello nos da la posibilidad de instalar paquetes muy interesantes; que si configuramos bien e instalamos bien, podremos tener un servidor completo y estable en nuestro móvil.

Esta aplicación no requiere acceso root, únicamente necesita que nuestro teléfono Android tenga una versión reciente (creo que funciona desde Android 6).

(más…)

5 - Insertar datos y probar base de datos

Instalar MySQL (MariaDB) en Android con Termux

Instalar MySQL en Android

Los dispositivos móviles de Android no están diseñados para ser servidores (aunque algunos son potentes), sin embargo siempre es interesante ver cómo la tecnología avanza y día con día podemos hacer más cosas con nuestros teléfonos.

Hoy veremos cómo instalar el servidor de MySQL o MariaDB en Android, gracias a la aplicación de Termux. Para ello basta ejecutar unos simples comandos y listo, tendremos un servidor de base de datos de MySQL en nuestro Android; completamente funcional y listo para ejecutar consultas.

Si queremos ponerlo para producción, podemos hacerlo siempre y cuando configuremos la seguridad. En fin, no veremos temas más avanzados; sólo veremos cómo instalar mysql en Android.

Aquí usaremos MariaDB y MySQL como sinónimos; es decir, si ves que digo MariaDB no te confundas, me refiero a MySQL; y viceversa. Sé que realmente hay más diferencias sobre todo con las licencias, pero eso es otro tema y puedes buscarlo en Google si lo deseas.

Nota: haz click aquí si quieres ver cómo instalar MySQL en Windows 10.

(más…)

Agregar scroll a TextView en Android

Introducción

A veces queremos mostrar datos en un TextView en Android, pero no sabemos cuánto medirán. Si queremos que tenga un tamaño fijo pero que aparezca el scroll cuando el texto sea muy grande necesitaremos implementar una característica en este TextView.

Veamos cómo hacerlo, necesitaremos un poco de programación por parte de Java para agregar una barra de scroll o barra de navegación vertical.

(más…)

Escuchar tecla presionada y cambio de texto en EditText de Android

Introducción

Hay una cosa muy simple en Android que al inicio no parece tan fácil de hacer. Se trata de escuchar el evento de una tecla del teclado (valga la redundancia) presionada en un EditText. Algo así como el keyup de JavaScript.

Lo que haremos en este post será ver cómo escuchar el evento de texto cambiado dentro de un EditText en Android. Esto viene de maravilla cuando, por ejemplo, queremos que una acción se realice cada que el usuario introduzca o borre algo de la caja de texto.

Este método se dispara cuando:

  • Pegamos texto
  • Autocompletamos del teclado
  • Escribimos algo con el teclado

Vamos allá.

(más…)

Solución a notificación rara de Poweramp en Android Oreo (8 y 8.1)

Introducción

Poweramp es un reproductor de música bastante bueno. Lo que me gusta de él es que con el simple hecho de conectar los audífonos o auriculares se reproduce la música, tiene un ecualizador y varias cosas buenas.

Con la actualización a Android 8.1 (o incluso a Android 8), las notificaciones comenzaron a comportarse de manera rara. A veces sólo se veían en color blanco, y eso hacía que uno se arrepintiera de haber pagado por la aplicación.

Así que bueno, veamos cómo solucionar este problema para arreglar las notificaciones del reproductor Poweramp en Android 8 también llamado Android Oreo.

(más…)