4 votos

¿Cómo puedo mostrar un mensaje desde `adb shell` (o un script de shell)?

Espero que sea algo como

adb shell am start SomethingArcane ... "Hello, world"

y aparece en pantalla el cuadro de mensaje "Hola, mundo".

0 votos

2voto

Vi0 Puntos 656

Solución provisional: DirectFB

Con DirectFB y acceso Root, puedes mostrar el texto en pantalla directamente, sin Android en absoluto.

He implementado un programa para esto: directfbtext .

( echo "Hello, world"; echo "FLIP"; sleep 2; echo "QUIT" ) |  /h/bin/directfbtext --dfb:fbdev=/dev/graphics/fb0  --dfb:no-vt  /system/fonts/DroidSans-Bold.ttf 30 120 200 255

Ten en cuenta que probablemente no sea tan fácil conseguir que DirectFB funcione en Android, pero resulta que yo ya lo tengo configurado.


Actualización A petición de un usuario, he creado y probado una versión "portable" de directfbtext. Configuración y funcionamiento:

  1. Desembale directfbtext_deps.tar.gz en /data/local/tmp/ ;

  2. Inicio adb shell , go Root ( su );

  3. cd /data/local/tmp/directfbtext ;

  4. Crear enlace simbólico desde /usr/lib/arm-linux-gnueabi/ a /data/local/tmp/directfbtext :

    # mount -o remount,rw / /
    # mkdir /usr
    # mkdir /usr/lib
    # ln -s /data/local/tmp/directfbtext /usr/lib/arm-linux-gnueabi
  5. Asegúrese de que la pantalla está encendida

  6. LD_LIBRARY_PATH=. ./ld-linux.so.3 ./directfbtext --dfb:fbdev=/dev/graphics/fb0 --dfb:no-vt /system/fonts/DroidSans-Bold.ttf --dfb:system=fbdev 30 120 200 255

  7. Escribe un texto, seguido de una línea que diga "FLIP";

  8. Observe el texto visible en la pantalla;

  9. Escribe "QUIT" para salir de directfbtext;

  10. Interactúa con el dispositivo para que actualice la pantalla y elimine los fallos restantes causados por DirectFB.

0 votos

¿Tal vez pueda decirme qué es lo que hay que configurar?

0 votos

Lo principal es probablemente un Debian en chroot.

0 votos

¿Podría proporcionar un binario? (¿O instrucciones sobre cómo compilar con el NDK?)

2voto

Anonymous Puntos 17

FBTrueType-Android

He escrito un programa nativo de Android FBTrueType-Android para imprimir texto de fuentes TrueType directamente en la pantalla del dispositivo mediante ADB.

Tiene muchas funciones, como borrar el framebuffer (pantalla) y cambiar la fuente *.ttf utilizada, el color de la fuente, el tamaño de la fuente y las posiciones x e y.

También se puede ejecutar con Zygote (interfaz de Android) y puede capturar el framebuffer de Zygote en pantalla completa.

He creado un repositorio en github al que puedes acceder aquí Alternativamente, puede clonar el repositorio de esta manera:

$ git clone https://github.com/mikelinux/fbtruetype-android.git

Usted tendrá que estar configurado para la compilación cruzada para ARM, el archivo README tiene instrucciones completas sobre cómo hacerlo.

Disfrútelo y envíe sus comentarios.

Mike

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X