Cómo utilizar el emulador de Android fuera de Android studio

Los entornos de desarrollo para dispositivos móviles como Xcode o Android studio incluyen alguna herramienta para poder probar los proyectos en desarrollo sin necesidad de tener un dispositivo físico. Esta herramienta simula el comportamiento de un dispositivo físico. En el caso de Android studio esta herramienta se conoce como emulador de Android y viene incluido en el Android SDK que se instala junto a Android studio.

Este emulador, en las últimas versiones de Android studio, se ejecuta por defecto dentro del entorno de Android studio. Pero podemos necesitar ejecutar el emulador de Android fuera del entorno de Android studio. Las razones pueden ser muy variadas: el acceso al emulador no es muy accesible dentro de Android studio, el consumo de recursos de Android studio y el emulador pueden superar los recursos disponibles en la máquina que estemos utilizando, puede que queramos ejecutar una aplicación Android en nuestra máquina para realizar alguna tarea, etc. En cualquier caso es de agradecer que podamos acceder al emulador desde fuera de android studio.

Accediendo al emulador

El emulador de Android está dentro de las herramientas del SDK de Android. Es un comando de la Terminal por lo que podemos acceder a él desde la terminal de Mac o Linux o el CMD de Windows.

El SDK de Android se puede instalar de forma individual junto a las Platform-tools de Android. Al instalar Android studio también se instalará el SDK de Android. Dentro de ese SDK encontraremos una carpeta llamada emulador.

El emulador simula un dispositivo virtual que ejecuta una versión de Android. La creación y administración de dispositivos virtuales se realiza dentro de Android studio pero una vez creado el dispositivo virtual no tenemos por qué seguir utilizando el emulador dentro de Android studio.

Para abrir el emulador debemos conocer qué dispositivos virtuales están disponibles y conocer el nombre exacto con el que el sistema identifica a cada dispositivo virtual. 

Ejecutando el siguiente comando se listarán los dispositivos virtuales disponibles.

emulator -list-avds

A la hora de escribir este artículo en mi máquina se encuentran los siguientes dispositivos:

pixel3a-api31
pixel6a-api33

Conociendo el nombre exacto de los dispositivos virtuales podemos, por ejemplo arrancar el Pixel6A ejecutando el siguiente comando en la terminal:

emulator -avd pixel6a-api33

Tras introducir el comando se abrirá el entorno de emulación de Android y se cargará la imagen de Android correspondiente a la API 33 que es Android 13.

Accediendo a la gestión del dispositivo

Una vez esté funcionando el emulador de Android podemos utilizar la herramienta ADB para gestionar varios elementos del dispositivo virtual al igual que haríamos si conectásemos un dispositivo Android físico a nuestra máquina.

El ADB, también conocido como Android Debug Bridge, también se instala con las platform-tools de Android.

 Con el ADB podemos enviar órdenes o enviar archivos a nuestro dispositivo Android.

Veamos algunos comandos sencillos que se pueden realizar con ADB.

Lista de dispositivos conectados

Con el comando adb devices se mostrará una lista de dispositivos conectados a nuestra máquina incluyendo los dispositivos virtuales que están siendo ejecutados en el emulador.

Enviar un fichero al dispositivo

Para enviar un fichero al dispositivo debemos ejecutar el siguiente comando:

adb push rutaDelFicheroAEnviar rutaDeDestinoEnElDispositivo

Enviar un fichero desde el dispositivo a nuestra máquina

Con el siguiente comando el dispositivo enviará un fichero a nuestra máquina:

adb pull nombreDelFicheroARecuperar rutaDeNuestraMaquinaParaElFichero

Instalar un APK

Con el siguiente comando instalaremos un paquete de aplicación (APK) en nuestro dispositivo:

adb install nombreCompletoDelFicheroAPK

Desinstalar una aplicación

Con el siguiente comando desinstalaremos un APK del dispositivo:

adb uninstall nombreCompletoDelAPK

Acceder a la terminal del dispositivo

Con el siguiente comando accederemos a la Shell o terminal del dispositivo para poder realizar ciertas operaciones de gestión:

adb shell

Reiniciar el dispositivo

Con ADB también podemos realizar varios tipos de reinicio en el dispositivo.

Para hacer un reinicio normal el comando es:

adb reboot

Y para hacer un reinicio con bootloader el comando es:

adb reboot bootloader

También podemos activar el modo recovery:

adb reboot recovery

Problemas para ejecutar los comandos

Si al intentar ejecutar el comando adb o emulator la terminal o el CMD nos da un mensaje de error indicando que no se encuentra el fichero o comando esto indica que las carpetas de las platform-tools de android no están incluidas en el path de nuestra máquina. Para poder ejecutar estos comandos bien podemos incluir todo el path hasta la carpeta concreta donde está el comando adb o emulator o bien incluir estas rutas en la variable path de nuestra máquina.

Encuesta para un estudio sobre la accesibilidad en los sistemas operativos

Natanael Rojo, estudiante de la carrera de ingeniería de sistemas en la universidad de los Andes, está realizando su trabajo de grado mediante un estudio sobre la accesibilidad en los sistemas operativos.

Las razones para este estudio se describen en las propias palabras de Natanael:

Bueno, cuando inicié mi camino universitario, no tuve alguna guía que me ayudara a elegir un sistema operativo o herramienta accesible que me permitiera hacer las cosas de manera cómoda y eficaz, más que todo en el ámbito de la ingeniería, que fue mi área de estudio. Por eso quiero desarrollar este trabajo que tiene la finalidad de estudiar qué tan accesibles son los sistemas operativos para las personas con discapacidad visual, evaluarlos, así como recopilar las opiniones de los usuarios con respecto a posibles mejoras que crean que les ayuden en sus actividades del día a día.

También dice que busca ayudar a los usuarios con discapacidad visual en el ámbito educativo, laboral y personal. Además busca concienciar a las empresas desarrolladoras de software sobre la importancia de la accesibilidad en aplicaciones, documentos, páginas web y sistemas operativos.

¿Cómo participar en el estudio?

Natanael busca que personas con discapacidad completen una encuesta sobre la accesibilidad en los sistemas operativos para personas con discapacidad visual.

Además necesita entrevistar a personas con discapacidad visual para estudiar y recoger experiencias y necesidades concretas. Si deseas participar en las entrevistas y tienes discapacidad visual puedes ponerte en contacto con Natanael a través de su correo electrónico: rojonatanael99@gmail.com.

ProgramarACiegasRSS ahora también disponible para MacOS

La semana pasada publicamos la noticia de la disponibilidad de la app ProgramarACiegasRSS para iOS y iPadOS.

Gracias a que ahora MacOS e iOS soportan SwiftUI la migración de una app de iOS a MacOS es mucho más sencilla. Por esta razón ya está disponible, en tan poco tiempo, la versión de ProgramarACiegasRSS para MacOS en la MacAppStore.

Podéis conocer más sobre esta app en la página de ProgramarACiegasRSS.

Programar a ciegas RSS vuelve a estar disponible para iOS

La app Programar a ciegas RSS vuelve a estar disponible en la AppStore para poder leer con más comodidad los artículos de este sitio web.

Podéis encontrar más información en la página de ProgramarACiegas RSS en Tyflos Accessible Software.

Dentro de las novedades de esta versión se incluyen las siguientes:

  • Toda la app se ha rehecho utilizando SwiftUI y las últimas librerías de Apple para proporcionar la experiencia más accesible posible.
  • La aplicación ahora incluye persistencia de la información utilizando Realm para poder leer los artículos en cualquier momento.
  • Con esta nueva reconstrucción de la app es posible la publicación en otras plataformas como MacOS, TvOS, WatchOS o VisionOS si el feedback de los usuarios así lo piden.

Cómo descargar extensiones de Chrome

El navegador web Chrome, al igual que hace Firefox, utiliza extensiones para ampliar la funcionalidad que nos ofrece este navegador web a los usuarios.

Estas extensiones están programadas con tecnologías propias de aplicaciones Web como son HTML, CSS y Javascript.

Dentro de las distintas posibilidades que nos ofrecen las extensiones de Chrome son las de utilizar Chat GPT, gestionar mejor las descargas, realizar evaluaciones automáticas de accesibilidad o descargar elementos que no se pueden descargar de forma sencilla.

La extensión CRX Extractor

Una de estas tareas de descargar que no se pueden hacer de forma sencilla es la de descargar extensiones de Chrome desde su tienda de extensiones y la solución pasa por utilizar una utilidad en forma de extensión para poder descargarla.

Lo primero que debemos hacer es desde Chrome instalar la extensión CRX Extractor desde la Store de extensiones de Chrome.

Una vez instalada la utilidad y tras haberla activado podemos utilizarla mientras examinamos otra extensión en la Store de Chrome.

Esta utilidad nos permite descargar una extensión en formato CRX (propio de Chrome) o en formato ZIP para poder examinar cómo está construida la extensión.

Disponible remapeador de teclas para MacOS

Los teclados físicos disponibles en los equipos Macbook y Macbook pro no incluyen ciertas teclas que si posee un teclado expandido. En algunas ocasiones, como por ejemplo al acceder a una máquina virtual o utilizar un software técnico, puede que necesitemos la tecla control derecha o que la tecla comando izquierda se comporte de otra manera. La solución pasa por cambiar el mapa de valores de teclado de nuestro Mac.

En el artículo Cambia la tecla BlockMayus por otra en MacOS de forma rápida compartí una solución de un AppleScript para realizar un cambio específico para la tecla BlockMayus.

Ahora en el mismo repositorio de ChangeKeyboardForVM está disponible un segundo script llamado KeyboardRemapper que permite seleccionar la tecla a cambiar y por qué tecla se quiere cambiar ampliando las posibilidades de personalización de nuestro Macbook.