Curso de Android

De WikiEducator
Saltar a: navegación, buscar


bootloader

  • El bootloader es en casí cualquier entorno de sistemas operativos (no solo Android), el primer código que se ejecuta en la máquina. Su función será cargar y ejecutar el sistema operativo. Al ser un código pequeño, está compuesto de las funciones más básicas.
  • El bootloader tiene dependencia con el hardware lo que explica que cada teléfono o tableta tengan distintos bootloaders.
  • Se asemeja a la BIOS en un PC.
  • Normalmente el bootloader viene bloqueado.
  • El usuario estándar no tendrá nunca necesidad de hacer un unlocking.
  • No es lo mismo que desbloquear el teléfono que desbloquear el bootloader.

Desbloqueo (unlocking) del bootloader

  • Un bootloader bloqueado no permite cambiar la ROM (/system, /boot) o el recovery (/recovery).
  • El desbloqueo normalmente elimina la garantía del terminal.
  • ¿Si Android es un sistema operativo de código libre por qué los bootloader están bloquedos?
-Lo primero de todo, el bootloader no es parte de Android.
-Los fabricantes de dispositivos desean mantener políticas restrictivas de operadoras, bloqueos de características o para evitar un bricking del movil.
  • Android siendo opensource, no restringe de forma inherente el acceso al dispositivo a los usuarios finales.
  • Los dispositivos Google Nexus están preparados para instalar sistemas operativos custom (ROM cocinadas) desbloqueando el bootloader mediante la herramienta fastboot, presente en el Android SDK: fastboot oem unlock
  • Algunos fabricantes también permiten desbloquear el bootloader, por ejemplo htc o Sony
  • Otros no, y en este caso la comunidad intenta averiguar vulnerabilidades de seguridad para desbloquearlo (exploits).
  • Al desbloquear el bootloader se borran los datos del teléfono. Esta es una medida de seguridad para evitar el robo de datos por hackers.

Si el bootloader está bloqueado no se puede flashear una ROM cocinada, no se pueden editar ficheros del sistema, sustituir la imagen por una de recuperación del sistema o instalar aplicaciones especializadas (Titanium Backup, adb wireless, etc.)


Stock Android or Vanilla Android, is the default android OS that comes with cell phones like the Google Nexus One, Nexus S, etc. It's basically running the android kernel that google originally designed and having no UI overlay on top of it. Some examples of UI overlays on top of stock android is HTC Sense, Samsung Touchwiz, etc.

S-OFF (Security OFF) Mode

  • Algunos bootloader incluyen un modo "Security ON" (AKA "S-ON") y se imponen restricciones en el arranque como por ejemplo poner el SO en modo de solo lectura. Cambiar el modo del bootloader a S-OFF será un requisito indispensable para modificar o cambiar el sistema operativo.

Android got a security feature you can turn on or off. Usually this should be enabled for production environment and disabled for development devices. By turning security of, you can gain root access. Edit /default.prop in the root file system and set the property "ro.secure=0". Most noticeably, S-ON (security on) will read-lock your /system and /recovery partition, to name a few. Also, secuflag controls whether zip files being flashed through recovery or fastboot, are signed by HTC.

If you are reading this section, then you are looking to S-OFF you device, but what does S-OFF mean? With our Android phones, this "S" can be in one of two positions, ON or OFF. The ON or OFF refers to the user's ability to change files in the part of your phone, or partition, where the Operating System is located. If a phone is S-ON, then this means that the end user cannot change anything in the Operating System partition, and vice versa, if a phone is S-OFF, then the end user can change files in the Operating System partition or even install a new Operating System, or ROM.

http://www.pocketables.com/2012/08/the-difference-between-root-s-offon-lockedunlocked-bootloader-in-the-htc-evo-series.html

stock ROM

Una stock ROM es una ROM creada y firmada por Google. Todo lo demás son custom ROMs.

AOSP

AOSP spn las siglas de Android Open Source Project,y es un repositorio del código fuente de Adroid.

ROM, firmware, sistema operativo

En la documentación de Android se refiere a la misma cosa. Al sistema operativo que corre en el dispositivo. Se ha denominado habitualmente ROM porque no está concebido en principio para ser modificado por el usuario. Hablaremos por ejemplo de flashear una ROM cuando cojamos un sistema operativo y lo copiemos en la memoria Flash del dispositivo. Cuando hablamos de distintas ROMS, nos referimos a versiones modificadas de Android. ¿Por qué podemos querer instalar una versión modificada?

Las fuentes de Android se liberan una o dos veces al año
Mi dispositivo no recibe actualizaciones
El dispositivo funciona lento o tiene spyware o adware (por ejemplo de los operadores de telefonía).
Al dispositivo le faltan características o se han limitado por los operadores de telefonía.

Imágenes

Cuando hablamos de imágenes hablamos de sistemas operativos autocontenidos (self-contained operating system). Una imagen del sistema es lo parte de Android que se usa cada día. También está la recovery image, que normalmente solo se ve cuando se instala una actualización OTA (over the air). Está recovery image es lo que usan los "power users" para recoverys avanzados, backups y flashear ROMS cocinadas y kernels.

hboot

  • HBOOT es el bootloader. It lives inside NAND's first partition, mtd0 (if partition map is MTD). It is loaded in memory (RAM) when device is switched ON. Its jobs are:
  • Las funciones básicas son:
Comprobar el hardware
Inicializar el hardware
Arrancar el sistema operativo (Android o el recovery)


  • ClockworkMod Recovery (CWM)

Es uno de los custom recoveries para Android más populares. Clockworkmod Recovery es un pequeño sistema operativo guardado en una partición independiente de nuestro teléfono. Dicha partición es arrancada por el "bootloader" (arranque) cuando seleccionamos la entrada "recovery". Ofrece una gran funcionalidad (hacer particiones y dar formato la microsd, hacer backups, instalar roms y actualizaciones, dejar el móvil con los valores de fábrica ...).

El CWM recovery desaparecerá de tu móvil si flasheas.

Team Win Recovery Project 2.x, or twrp2 for short, is a custom recovery built with ease of use and customization in mind. It’s a fully touch driven user interface – no more volume rocker or power buttons to mash. The GUI is also fully XML driven and completely theme-able. You can change just about every aspect of the look and feel.

Comando fastboot oem unlock

El santo grial de los comandos de ADB para Android. Éste hace una cosa y sólo una, desbloquea los Nexus (o HTC mediante su herramienta oficial). Si tenemos un teléfono de un fabricante distinto, tendremos un método distinto en cada caso (Odín para Samsung, por ejemplo). En este último caso, este comando no nos sirve de nada. Se incluye aquí porque, aún sin necesitarlo, es una parte importante del sistema de código abierto de Android.

A Google le da lo mismo lo que hagamos con nuestros dispositivos, y nos provee de esta herramienta para desbloquear el teléfono. Esto es algo que en otras compañías no se ve, y es una de las razones por las que muchos eligen Android.

Usarlo es sencillo. Una vez habiendo usado el fastboot para saber que todo está bien comunicado, sólo debemos escribir “fastboot oem unlock“ y darle a intro. Luego toca mirar el terminal, leer cuidadosamente y elegir las opciones sabiamente.


  • ADB

Comandos con adb

SPL (Second Programa Layout)

Es el segundo sector que se carga después del HBOOT. Si está corrompido haces un brick del teléfono.

Brick (ladrillo). Se refiere a que el teléfono queda en modo inservible. Puede ocurrir al hacer el S-OFF del teléfono o flashear una radio o un HBOOT.

Wipe

Borrado de los datos de usuario para restablecer configuración inicial (no confundir con restablecer opciones de fábrica del teléfono).

Nandroid

Hacer backup de tu rom actual.