Esta página proporciona detalles para ejecutar compilaciones en dispositivos específicos. Estos detalles complementan la información en Creación de Android .
Construir fastboot y adb
Si aún no tienes fastboot
y adb
, puedes compilarlos con el sistema de compilación normal. Utilice las instrucciones en Construyendo Android y reemplace el comando make
principal con este:
make fastboot adb
Consulte Android Debug Bridge (adb) para obtener detalles sobre Android Debug Bridge (adb).
Arrancar en modo fastboot
Puede actualizar un dispositivo cuando está en el modo de cargador de arranque fastboot
. Para ingresar al modo fastboot
cuando un dispositivo está realizando un arranque en frío, use las combinaciones de teclas que se enumeran en Combinaciones de teclas Fastboot.
También puedes usar el comando adb reboot bootloader
para reiniciar directamente en el gestor de arranque. Consulte las instrucciones de flasheo para obtener instrucciones completas.
Desbloquear el gestor de arranque
Puede actualizar un sistema personalizado solo si el gestor de arranque lo permite. Sin embargo, tenga en cuenta que el gestor de arranque está bloqueado de forma predeterminada. Puede desbloquear el gestor de arranque, pero al hacerlo se eliminan los datos del usuario por razones de privacidad. Después del desbloqueo, se borran todos los datos del dispositivo, es decir, tanto los datos de aplicaciones privadas como los datos compartidos accesibles a través de USB (incluidas fotos y películas). Antes de intentar desbloquear el gestor de arranque, haga una copia de seguridad de los archivos importantes del dispositivo.
Debe desbloquear el gestor de arranque solo una vez y puede volver a bloquearlo si es necesario.
Desbloquear dispositivos recientes
Todos los dispositivos Nexus y Pixel lanzados desde 2014 (comenzando con Nexus 6 y Nexus 9) tienen protección de restablecimiento de fábrica y requieren un proceso de varios pasos para desbloquear el gestor de arranque.
- Para habilitar el desbloqueo OEM en el dispositivo:
- En Configuración, toque Acerca del teléfono y luego toque Número de compilación siete veces.
- Cuando veas el mensaje ¡Ahora eres desarrollador! , toque el botón Atrás .
- En Configuración, toque Sistema , luego toque Opciones de desarrollador y habilite el desbloqueo OEM y la depuración de USB . (Si el desbloqueo OEM está deshabilitado, conéctese a Internet para que el dispositivo pueda registrarse al menos una vez. Si permanece deshabilitado, es posible que su operador tenga la tarjeta SIM bloqueada y el gestor de arranque no se pueda desbloquear).
- Reinicie en el gestor de arranque y use
fastboot
para desbloquearlo.- Para dispositivos más nuevos (2015 y superiores):
fastboot flashing unlock
- Para dispositivos más antiguos (2014 y anteriores):
fastboot oem unlock
- Para dispositivos más nuevos (2015 y superiores):
- Confirma el desbloqueo en pantalla.
Vuelva a bloquear el gestor de arranque
Para volver a bloquear el gestor de arranque:
- Para dispositivos más nuevos (2015 y superiores):
fastboot flashing lock
- Para dispositivos más antiguos (2014 y anteriores):
fastboot oem lock
Usar estados de bloqueo de flash
La API del sistema getFlashLockState()
transmite el estado del cargador de arranque y la API del sistema PersistentDataBlockManager.getFlashLockState()
devuelve el estado de bloqueo del cargador de arranque en dispositivos compatibles.
Valor de retorno | Condiciones |
---|---|
FLASH_LOCK_UNKNOWN | Devuelto solo por dispositivos que se actualizaron a Android 7.x o superior y que previamente no admitían los cambios del gestor de arranque necesarios para obtener el estado de bloqueo de flash si admitían la capacidad de bloqueo/desbloqueo de flash.
|
FLASH_LOCK_LOCKED | Devuelto por cualquier dispositivo que no admita bloqueo/desbloqueo intermitente (es decir, el dispositivo siempre está bloqueado), o cualquier dispositivo que admita bloqueo/desbloqueo intermitente y esté en estado bloqueado. |
FLASH_LOCK_UNLOCKED | Devuelto por cualquier dispositivo que admita bloqueo/desbloqueo intermitente y esté en estado desbloqueado. |
Los fabricantes deben probar los valores devueltos por los dispositivos con cargadores de arranque bloqueados y desbloqueados. Por ejemplo, el Proyecto de código abierto de Android (AOSP) contiene una implementación de referencia que devuelve un valor basado en la propiedad de arranque ro.boot.flash.locked
. El código de ejemplo se encuentra en los siguientes directorios:
-
frameworks/base/services/core/java/com/android/server/PersistentDataBlockService.java
-
frameworks/base/core/java/android/service/persistentdata/PersistentDataBlockManager.java
Seleccione una compilación de dispositivo
Las compilaciones de dispositivos recomendadas están disponibles en el menú lunch
, al que se accede cuando se ejecuta el comando lunch
sin argumentos. Para obtener información adicional sobre el comando lunch
, consulte Elegir un objetivo . Para obtener una lista de objetivos de compilación, consulte Objetivos de compilación .
Puedes descargar imágenes de fábrica y archivos binarios para dispositivos Pixel y Nexus desdedevelopers.google.com . Consulte Archivos binarios del dispositivo para descargas. Para obtener detalles y recursos adicionales, consulte Obtención de archivos binarios propietarios .
Dispositivo | Nombre clave | Configuración de compilación |
---|---|---|
Píxel 7 Pro | guepardo | aosp_cheetah-userdebug |
Píxel 7 | pantera | aosp_panther-userdebug |
Píxel 6 Pro | cuervo | aosp_raven-userdebug |
Píxel 6 | oriol | aosp_oriole-userdebug |
Píxel 5 | aleta roja | aosp_redfin-userdebug |
Píxel 4a 5G | zarza | aosp_bramble-userdebug |
Píxel 4a | pez luna | aosp_sunfish-userdebug |
Píxel 4XL | coral | aosp_coral-userdebug |
Píxel 4 | fuego | aosp_flame-userdebug |
Píxel 3a XL | bonito | aosp_bonito-userdebug |
Píxel 3a | sargo | aosp_sargo-userdebug |
Píxel 3 XL | rayado | aosp_crosshatch-userdebug |
Píxel 3 | línea azul | aosp_blueline-userdebug |
Píxel 2XL | taimen | aosp_taimen-userdebug |
Píxel 2 | lucioperca | aosp_walleye-userdebug |
Píxel XL | aguja | aosp_marlin-userdebug |
Píxel | pez vela | aosp_sailfish-userdebug |
Hola clave | caminante | hikey-userdebug |
Nexo 6P | pescador de caña | aosp_angler-userdebug |
Nexo 5X | siluro | aosp_bullhead-userdebug |
Nexo 6 | shamu | aosp_shamu-userdebug |
Jugador Nexus | fuga | aosp_fugu-userdebug |
Nexo 9 | volantis (platija) | aosp_flounder-userdebug |
Nexo 5 (GSM/LTE) | tiburón martillo | aosp_hammerhead-userdebug |
Nexus 7 (Wifi) | navaja de afeitar (flo) | aosp_flo-userdebug |
Nexus 7 (móvil) | navaja (deb) | aosp_deb-userdebug |
Nexo 10 | mantarraya (manta) | full_manta-userdebug |
Nexo 4 | occam (mako) | full_mako-userdebug |
Nexus 7 (Wifi) | nakasi (mero) | full_grouper-userdebug |
Nexus 7 (móvil) | nakasig (tilapia) | full_tilapia-userdebug |
Galaxy Nexus (GSM/HSPA+) | yakju (maguro) | full_maguro-userdebug |
Galaxy Nexus (Verizon) | mísid (toro) | √aosp_toro-userdebug |
Galaxy Nexus (experimental) | mysidspr (toroplus) | aosp_toroplus-userdebug |
Motorola Xoom (Wi-Fi de EE. UU.) | raya alada | full_wingray-userdebug |
Nexo S | soju (crespo) | full_crespo-userdebug |
Nexus S 4G | sojus (crespo4g) | full_crespo4g-userdebug |
Flashear un dispositivo
Puede actualizar un sistema Android completo con un solo comando; Al hacerlo, se verifica que el sistema que se está actualizando sea compatible con el cargador de arranque y la radio instalados, escribe las particiones de arranque, recuperación y sistema juntas y luego reinicia el sistema. El flasheo también borra todos los datos del usuario, de manera similar al fastboot oem unlock
.
Para flashear un dispositivo:
- Descomprima el archivo de imagen en su propio directorio.
- Configure la variable de entorno
ANDROID_PRODUCT_OUT
para que apunte al mismo directorio utilizado en el paso 1. - Coloque el dispositivo en modo
fastboot
manteniendo presionada la combinación de teclas adecuada en el arranque o usando el siguiente comando:adb reboot bootloader
- Después de que el dispositivo esté en modo fastboot, ejecute:
fastboot flashall -w
La opción-w
borra la partición/data
del dispositivo; Esto es útil para la primera vez que actualiza un dispositivo en particular, pero por lo demás es innecesario.
Configuraciones flash
Las instrucciones de Fastboot se detallan en un artefacto llamado fastboot-info.txt que se encuentra en $ANDROID_PRODUCT_OUT/*
Este documento .txt enumera las tareas que debe ejecutar fastboot y se puede regenerar a través de m fastboot_info
. Se puede introducir una lógica de flasheo personalizada modificando este archivo
comandos admitidos:
- flash %s : flashea una partición determinada. Los argumentos opcionales incluyen
--slot-other, {filename_path}, --apply-vbmeta
- update-super : actualiza la superpartición
- if-wipe : ejecuta condicionalmente alguna otra funcionalidad si se especifica borrar
- borrar %s : borra una partición determinada (solo se puede usar en conjunto) con if-wipe -> por ejemplo.
if-wipe erase cache
Restaurar dispositivos al estado de fábrica
Las imágenes de fábrica para dispositivos Google están disponibles en Imágenes de fábrica para dispositivos Nexus y Pixel . Las imágenes de fábrica del Motorola Xoom las distribuye directamente Motorola.
Resolver errores de permiso denegado
De forma predeterminada, en la mayoría de los sistemas Linux, los usuarios sin privilegios no pueden acceder a los puertos USB. Si ve un error de permiso denegado, consulte las instrucciones de Android Studio para configurar un dispositivo para desarrollo .
Si adb ya se estaba ejecutando y no puede conectarse al dispositivo, puede detener adb con adb kill-server
. Este comando hace que adb se reinicie con la nueva configuración.