xray v1: una radiografía de Android antes de portar
xray recopila por adb lo que hay que saber de un teléfono Android antes de portarlo: SoC, particiones, fstab y kernel. Sin root, de Android 2.2 a 4.2.
xray recopila por adb lo que hay que saber de un teléfono Android antes de portarlo: SoC, particiones, fstab y kernel. Sin root, de Android 2.2 a 4.2.
El P659H rechazaba TWRP con “boot certification verify”. Analicé su aboot, añadí un perfil Loki y conseguí un recovery persistente.
El G2 Mini (D625) es un Tegra 4i, no MediaTek con LK: el desbloqueo es otro, con su propio modo de recuperación y su propia herramienta de grabado.
El LG L3 (MSM7225A) traía un kernel 2.6.38. Llevarlo a 3.4 para Android 4.2.2 fue una cadena de reinicios sin log, casi todos por el módem.
adb tcpip permite depurar por Wi-Fi mientras el USB hace de host, pero depende de la red: un error mío muestra cómo se pierde la conexión.
Gingerbread no tiene screencap. Hay que leer /dev/graphics/fb0 y conocer el stride real del panel, que casi nunca coincide con el ancho.
El LG C660 no tiene medidor de batería: el voltaje llega filtrado desde el módem en saltos de 17 mV. Qué se puede concluir así, y qué no.
Nació para confirmar una batería gastada en el LG D625. Hoy corre pruebas automáticas en Android 2.2+ con un informe que sobrevive a reinicios.
input tap, swipe y am force-stop no existen en Gingerbread, pero la aritmética $((...)) de la shell sí. Lo comprobé en un teléfono real.
La partición de recovery del C660 mide 5 MB. Así quedó TWRP 3.1.1 en 4,35 MB, con adb, sideload y almacenamiento USB.
Activé el host USB del kernel 2.6.35, forcé el modo host y medí el PHY: con pendrive o mouse, las líneas D+ y D- nunca se mueven.
El kernel stock del L3 ya traía host USB. Faltaba montar el disco y un interruptor para forzar el modo host: el pin ID no llega al procesador.
El LG L3 con kernel 3.4 se reinicia solo, sin panic, entre los 609 y 616 s de actividad; con el 2.6.38 no. Qué descarté y qué sigue abierto.
El kernel del Y220-U05 (MT6572) salió de un árbol donante. Lo que hubo que arreglar: arranque, Wi-Fi, cámara, carga apagado y hotspot.
Mi regla en los ports: no parchear la plataforma de Android y resolver el hardware en el árbol del dispositivo con HALs y shims. Tres ejemplos.
Un mismo parche al bootloader LK sirvió para tres LG, con ajustes. La primera versión parecía funcionar y dejaba el teléfono en bucle de arranque.
Antes de arrancar Android en el Y220-U05 con kernel propio, probé cada versión como recovery. Así monté el banco de pruebas y qué enseñó.