Mostrando entradas con la etiqueta android. Mostrar todas las entradas
Mostrando entradas con la etiqueta android. Mostrar todas las entradas

domingo, 1 de marzo de 2020

Ubuntu en Android 2: ahora con JAVA


En el anterior post (https://www.tecnificados.com/2020/02/ubuntu-en-android.html) os comentaba que acaba de descrubrir el emulador "Termux", y todas las cosas que en teoría se podían hacer con él.

Esta semana he estado probándolo, y en este artículo os quiero comentar todo lo que he hecho y el resultado final de las pruebas.

Mi objetivo como os comenté, era poder lanzar tareas programadas, por lo que vendría fenomenal utilizar "cron". Misteriosamente no venía instalado en la imagen que estamos utilizando, pero nada que no se arregle con los comandos: apt install cron y service cron start (arrancamos el servicio).

Una vez hecho ya tenía preparado el "ejecutor" de mis tareas.

Para probarlo bien, necesitaba lanzar una tarea periódica que actualizara datos continuamente, así se me ocurrió utilizar el IBEX 35, programe un pequeño script sh en Linux que descarga el json, y lo subía al repositorio.

Para esto también me instalé "curl" (apt install curl) y "git" (apt install git).

Después de esto, solo necesitaba programar cron con el comando crontab -e.

Añadí esta línea:


1,30 8-18 * * 1-5       /root/termuxTest/ibex35.sh

Y con esta expresión conseguí que el script se ejecutara en el minuto 1 y 30 desde las 8 hasta las 18 de lunes a viernes.

Las pruebas fueron todo un éxito:


Pensar que todos estos commits los hacía mi móvil mientras yo estaba en otra cosa.

Algunos me habéis preguntado por la batería, la verdad es que sí he notado que me gasta un poco más, pero como mucho un 10%.

Os dejo aquí el código del script que utilicé, por si os pudiera servir de algo:

cd "$(dirname "$0")"
date=$(date '+%Y-%m-%d %H:%M:%S')
echo $date
git pull
curl 'urlDondeConseguirLosDatosEnJSON'  > ibex35.json
git add .
git commit -m "Datos actualizados $date"
git push

Una vez que verifiqué esto funcionaba, me instale JAVAapt install openjdk-11-jre

También me instalé maven: apt install maven

Y después cloné mi repositorio evaluador (https://github.com/tecnificados/evaluador), me generé el jar y con este pequeño script:


rm -f datosgobes.csv
wget http://ondemand2.redes.ondemand.flumotion.com/redes/ondemand2/Datosabiertos/datosgobes.csv
java -jar evaluador.jar

Ya consigo ejecutar mi evaluador de Portales de Datos Abiertos desde el móvil. Podéis verlo en este vídeo:


Como conclusión final: puedo ahorrarme el servidor que tenía pensando contratar. Para tareas que no requieren mucha CPU, mi móvil tiene la potencia necesaria para realizar este tipo de tareas.

martes, 18 de febrero de 2020

Ubuntu en Android


Llevaba unos cuantos días dándole vueltas para contratar un servidor on line. Lo necesito para lanzar procesos puntuales y de manera periódica. No necesito mucha CPU ni RAM, y aunque no lo necesito 24 horas encendido, no he encontrado ningún servicio que tenga estas características y que sea económico.

Pero pensando y pensando, se me ocurrió la idea de cargar los procesos en mi móvil (Android), y lanzarlos desde allí. Pero Android no viene con JAVA...

Me puse a buscar, y encontré un programa en la tienda de Google llamado "Termux" (https://play.google.com/store/apps/details?id=com.termux), que es un emulador de la consola de Linux.

Cuando leí la palabra "emulador" se me encendieron los ojos, y empecé a pensar, pues si es un emulador podré instalar JAVA (si, si se puede), y luego dije, si me instalo GIT y MAVEN no me para nadie (si, también se puede), después fui más allá y se me ocurrió instalar Ubuntu, porque claro, si lo tengo, en mi móvil habría una potencia  muy interesante. Pues sí, amigos también es posible.

Y ahora os voy a contar cómo hacerlo:

  1. Nos instalamos Termux como si fuera una aplicación más desde la tienda de Google (enlace de más arriba).
  2. Utilizando el gestor de paquetes de Termux nos instalamos "wget". Escribimos el comando: pkg install wget -y
  3. Ahora nos instalamos proot, para tener disponibles unas cuantas funcionalidades que necesitaremos más adelante. Comando: pkg install proot -y
  4. Ahora vamos a crear un directorio donde descargar Ubuntu: Comando: mkdir ubuntu
  5. Accedemos al directorio que acabamos de crear: cd ubuntu
  6. Ahora nos descargamos un script para instalar la versión de Ubuntu más reciente (se encuentra en el repositorio de Neo-Oli: https://github.com/Neo-Oli/termux-ubuntuComandowget https://raw.githubusercontent.com/Neo-Oli/termux-ubuntu/master/ubuntu.sh
  7. Ahora descargamos la imagen de Ubuntu a traves del script con Bash. Comandobash ./ubuntu.sh
  8. Y para terminar ejecutamos Ubuntu con el comando: bash ./start-ubuntu.sh
Y ya hemos acabado, todo esto solo hay que hacerlo una vez. En el futuro solo tendremos que iniciar Termux y ejecutar los pasos 5 y 8.



En la imagen podéis ver que la versión de Ubuntu que tengo es la 19.04 (Disco Dingo)

Próximamente probaré a lanzar un proceso "complejo" que requiera funcionalidades de Ubuntu y JAVA.

Os mantendré informados.



sábado, 14 de abril de 2018

Calibrando la bateria en Android


Hace unas semanas hice un "hard reset" a mi teléfono móvil... Después de reinstalar todo, me di cuenta que la batería no estaba bien calibrada, cuando llegaba 32% el teléfono se apagaba de repente.

Estuve buscando alguna guía para re-calibrarla y al cabo de unos días ya la tenía totalmente operativa.
 
Éstos son los pasos que hay que hacer:

  1. Dejamos que el móvil se apague (32% en mi caso).
  2. Lo ponemos a cargar sin encenderlo hasta que marque 100%.
  3. Encendemos el móvil sin retirar el cargador, lo ponemos en "modo avión" 30 minutos más.
  4. Desconectamos el cargador, y lo usamos como siempre hasta que se apague. Éste sería el primer ciclo.
  5. Repetimos los pasos 2,3 y 4. Éste es el segundo ciclo.
  6. Lo ponemos a cargar sin encenderlo hasta que marque 100%, ahora no lo enciendas, y déjalo cargando 30 minutos más.
  7. Desconectamos, encendemos y en teoría ya debería estar calibrada.
Mi móvil es un BQ Aquaris U Plus, no creo que en otras marcas difiera mucho, pero por si acaso os lo comento.

lunes, 29 de febrero de 2016

Aplicaciones móviles con INTEL XDC



Ya llevo dos cursos para realizar aplicaciones móviles: "Desarrollo de aplicaciones en Android", y "Apps en Firefox OS". La gracia que tenía el último, es que desarrollabas en HTML5, empaquetabas tu proyecto en un zip, y ya tenías el instalador.

Por desgracia Firefox OS, no ha triunfado, pero la idea de HTML5 como base para una APP me parecía muy sencillo y potente.

En esta idea se basan las aplicaciones híbridas. Aunque soy más partidario de las nativas, reconozco que es mucho más rápido desarrollar para varias plataformas con este modelo.

Navegando por la web he encontrado Intel XDK, un IDE de desarrollo en HTML5 que utiliza librerías como Apache Cordova para exportar las aplicaciones a distintas plataformas.

Como primera prueba voy a intentar importar una pequeña página web que replica una App muy básica:


Antes de nada tenemos que descargarnos XDK, esto lo podemos hacer desde esta página: https://software.intel.com/es-es/intel-xdk.

Una vez descargado, nos lo instalamos, nos registramos para poder utilizarlo y una vez dentro veremos la siguiente pantalla:



La verdad es que es sorprendente todo lo que podemos llegar a hacer, desde aplicaciones básicas hasta juegos utilizando motores que ya están integrados. La cosa promete.

Nosotros vamos a probar la última opción: "Import Your HTML5 Code Base".

En el primer paso seleccionamos la ruta de nuestro proyecto (la carpeta que contiene el archivo "index.html"), y al cabo de unos pasos básicos más ya tenemos nuestro código importado.


Desde esta pantalla, en el menú de la derecha podemos ejecutar la aplicación en un emulador y ver cómo queda en distintos dispositivos.


En la parte superior hay una serie de pestañas, una de ellas es "BUILD", si la pulsamos nos aparecen todas las opciones para las que podemos construir un instalador para nuestra APP.


Al pulsar el siguiente paso nuestro código se sube a la nube de Intel para un posterior compilado.


Si pulsamos en el botón verde se realizará el paso final y se preparará nuestro instalador.


Último paso, descargar nuestra APP, con un pequeño resumen del estado de la compilación.


Unos minutos después lo he instalado en el móvil, esto es lo que aparecía:


Y así es como se ve cuando se ejecuta:


No me ha quedado muy responsive :(

La verdad es que como primera aproximación estoy muy contento con XDC, tengo que practicar más.