Es posible que los nuevos dispositivos Android 11 no admitan A/B virtual para actualizaciones integradas

click fraud protection

Google dio marcha atrás en exigir a los OEM que admitan A/B virtual en los nuevos dispositivos con Android 11, lo que habría allanado el camino para actualizaciones perfectas.

Actualización 1 (25/01/2021 a las 2:06 p.m. ET): Antes del lanzamiento de Android 11, Google parece haber dado marcha atrás en exigir que los dispositivos de lanzamiento admitan A/B virtual. Haga clic aquí para más información. El artículo publicado el 7 de abril de 2021 se conserva a continuación.

Con Android 7.0 Nougat, Google introdujo un esquema de partición diseñado para acelerar las actualizaciones de software. En Nougat, Google agregó soporte para duplicar ciertas particiones para que las particiones inactivas puedan actualizarse en segundo plano y luego cambiarse a activas con un reinicio rápido. Este La configuración de "partición A/B" permite "actualizaciones sin interrupciones" para tener lugar en dispositivos Android compatibles, muy parecido al sistema operativo Chrome de Google. Sin embargo, Google nunca ha exigido el uso de particiones A/B, por lo que hay muchos dispositivos que no admiten actualizaciones perfectas. Sin embargo, eso podría cambiar con Android 11, ya que Google hace obligatorio que los dispositivos recién lanzados admitan particiones virtuales A/B.

Para un poco de historia, las particiones A/B se refieren al conjunto de particiones de solo lectura que están duplicadas. Las particiones duplicadas suelen incluir las particiones del sistema, del proveedor, del arranque y del producto. Cuando el teléfono descarga una actualización, el actualizador parchea el conjunto de particiones inactivas (una "ranura") en segundo plano. Una vez que la actualización haya terminado de aplicarse a la ranura inactiva, se le solicitará al usuario que reinicie su dispositivo. Cuando el usuario reinicia su dispositivo, la ranura inactiva cambia de lugar con la ranura activa, finalizando el proceso de actualización. La ranura previamente activa se deja intacta si hay un problema al iniciar la ranura recién actualizada. Cuando llegue la próxima actualización, este proceso se repite. Si está interesado en una explicación más técnica, consulte la documentación para desarrolladores de Google en particiones A/B.

Por el contrario, los dispositivos sin particiones A/B, como el Samsung Galaxy S20, OPPO Find X2 y muchos otros, aplican actualizaciones a través de un actualizador dedicado en un proceso de recuperación. Esto expulsa al usuario de Android y le impide usar su dispositivo durante varios minutos, lo que podría perder notificaciones, llamadas o mensajes de texto importantes. Google cree que simplificar el proceso de actualización hará que más personas realicen una actualización una vez que se implemente; de hecho, en mayo de 2017, Google descubrió que un porcentaje mayor de usuarios de Pixel que de usuarios de Nexus estaban ejecutando la última actualización de seguridad. Por supuesto, el usuario puede programar actualizaciones para que se realicen cuando no esté usando activamente su dispositivo, pero muchos usuarios simplemente no actualizan su dispositivo incluso cuando se les solicita. Además, al no tener particiones A/B, el usuario se pierde uno de sus beneficios inherentes: protegerlo de actualizaciones fallidas del sistema.

Por ejemplo, cuando Xiaomi lanzó por primera vez la actualización de Android 10 Para Mi A2 Lite, muchos usuarios descubrieron que sus dispositivos no arrancaban. Afortunadamente para ellos, el Mi A2 Lite tiene particiones A/B para actualizaciones perfectas, así que usuarios en nuestros foros encontraron que podrían usar un comando fastboot para configurar el gestor de arranque para que inicie el conjunto de particiones intactas y previamente activas. Por lo tanto, las particiones A/B no sólo brindan a los usuarios un proceso de actualización mucho más rápido, sino que también actúan como un mecanismo de seguridad para actualizaciones fallidas. Los OEM que no han implementado particiones A/B aún pueden diseñar su propia forma de protegerse contra OTA. fallas, aunque ¿por qué pasar por ese problema cuando esta protección es parte del diseño de A/B? particiones? Para su referencia, aquí hay una versión parcial (y ciertamente desactualizada) lista de dispositivos que admiten particiones A/B para actualizaciones perfectas, y aquí hay un tutorial sobre cómo comprobar si su propio dispositivo admite la función.

Puede parecer desconcertante por qué a ciertos fabricantes de equipos originales les gusta Samsung cobra 1.400 dólares por un teléfono inteligente pero no ofrece una característica tan ingeniosa. La razón generalmente se reduce al almacenamiento: los OEM no quieren sacrificar unos pocos gigabytes de espacio de almacenamiento para admitir actualizaciones perfectas. Teléfonos como el Samsung Galaxy S20 tienen un tonelada de software preinstalado, por lo que duplicar particiones como /system y /product dará lugar a la duplicación de muchos archivos y aplicaciones enormes. Google logró implementar particiones A/B sin sacrificar demasiado el espacio de almacenamiento gracias a un truco inteligente para solucionar el problema de la duplicación de archivos .odex masivos. Otra razón por la que los OEM pueden haber optado por no implementar particiones A/B es el costo: mantenerse al día con las Los cambios constantes en los esquemas de partición de Android requieren mucho esfuerzo, como afirma XDA Recognized Developer topjohnwu Te contaré. A menos que los OEM se vean obligados a hacerlo, muchos no se molestarán en cambiar lo que ya les funciona.

Sin embargo, finalmente Google parece estar imponiendo la ley en Android 11. Al forzar la adopción de particiones virtuales A/B en dispositivos recién lanzados, casi han asegurado que los OEM tendrán que admitir actualizaciones perfectas para sus dispositivos de finales de 2020 y 2021. Según lo descubierto por el desarrollador reconocido de XDA lucas020400, Yifan Hong, ingeniero de software de Google en el equipo de Project Treble, envió un compromiso a AOSP Gerrit titulado "Requerir Virtual A/B en los lanzamientos de R." La confirmación actualiza Vendor Test Suite, o VTS, que es una prueba automatizada que todos los dispositivos deben pasar para ser considerados compatibles con Project Treble. La nueva prueba comprueba si la propiedad del sistema "ro.virtual_ab.enabled"se establece en verdadero y si "ro.virtual_ab.retrofit" se establece en falso en dispositivos con un nivel de API de envío de 30 o superior. En otras palabras, esta prueba verifica si un dispositivo que se inicia con Android 11 o superior admite particiones virtuales A/B. Las particiones A/B "virtuales" se introdujeron con Android 10 junto con las "particiones dinámicas", que son particiones de tamaño variable dinámicamente. Son el mismo concepto que las particiones A/B normales, excepto que se puede cambiar su tamaño libremente.

Si un dispositivo que se inicia con Android 11 no admite particiones virtuales A/B, fallará el VTS. Si el dispositivo falla en VTS, no podrá enviarse con los servicios móviles de Google. En otras palabras, Google ha exigido efectivamente que los OEM admitan particiones virtuales A/B y, por extensión, actualizaciones perfectas.


Actualización: Virtual A/B no es necesario para Android 11

Cuando informamos por primera vez en abril que Google exige que todos los dispositivos de lanzamiento de Android 11 sean compatibles con mecanismo de actualización virtual A/B, hubo mucho entusiasmo porque finalmente habría hecho que los teléfonos Samsung tuvieran actualizaciones perfectas. Desafortunadamente, resulta que Google decidió no hacer que el soporte virtual A/B sea un requisito. Android 11 Documento de definición de compatibilidad (CDD) actualmente dice "las implementaciones de dispositivos DEBEN admitir actualizaciones del sistema A/B" en lugar de "DEBEN" ser compatibles. Parece que en algún momento antes del lanzamiento de Android 11, Google decidió dar marcha atrás en su decisión de requerir soporte virtual A/B, probablemente en a instancias de varios OEM. Esto sucede con bastante frecuencia pero nunca se comunica al público ya que sólo se publica el borrador final del CDD. en línea.