Analizamos a fondo la beta de HarmonyOS: el plan B de Huawei es Android disfrazado
Sistema operativo

Analizamos a fondo la beta de HarmonyOS: el plan B de Huawei es Android disfrazado

HOY SE HABLA DE

Después de que el gobierno estadounidense añadiera a Huawei a la Lista de Entidades en mayo de 2019, las empresas del país, Google incluida, no podían comerciar con la compañía. Como resultado, los móviles que ha lanzado Huawei desde entonces, como el Huawei P40, no incluyen los servicios de Google. A cambio, Huawei lleva tiempo preparando su plan B: crear su propio sistema operativo.

Conocimos a este sistema operativo finalmente unos meses más tarde bajo el nombre de HarmonyOS, aunque no llegaba a móviles hasta finales del año pasado. Desde entonces, sólo unos pocos han podido probar HarmonyOS, pues por el momento no ha salido de China. Nosotros hemos conseguido probar HarmonyOS y te contamos cómo es e intentaremos responder a la eterna pregunta: ¿es realmente Android con una máscara?

Probar HarmonyOS, no apto para todos los públicos

Desde que Huawei anunció la beta pública de HarmonyOS para móviles en diciembre del año pasado, mi mayor empeño ha sido conseguir probarlo lo antes posible. Es una tarea algo más difícil que cuando hablamos de nuevas versiones de Android, pues Huawei lanzaba HarmonyOS para móviles de dos formas: como OTA para terminales Huawei lanzados en China o a través del emulador de su IDE de programación, DevEco Studio.

Oficialmente, HarmonyOS está abierto sólo para desarrolladores de China

Sin un Huawei P40 o Huawei Mate 30 chino a mano, la única alternativa posible era usar el emulador, lo cual entraña dificultades extra. Para empezar, Huawei no te deja descargar el DevEco Studio no ser que visites la versión China de su página web. Si inicias sesión con una cuenta "internacional" de Huawei, la descarga tampoco está disponible, mostrando un aviso de que los usuarios "internacionales" podrán descargar el IDE más adelante. La única opción es crear una nueva cuenta de Huawei, basada en China.

Devecostudio
Sólo se puede descargar DevEco Studio si visitas la web China

Una vez superados estos escollos, podemos finalmente descargar e instalar DevEco Studio, que al estar basado también en InteliJ, es muy parecido a Android Studio, aunque con menos botones y algunos cambios. La instalación no es muy distinta a la de Android Studio, con la diferencia de que es necesario instalar también Node.js.

Si estás familiarizado con Android Studio, DevEco Studio viene a ser lo mismo, pero con unos pequeños cambios aquí y allí. Principalmente, tiene menos botones al no incluir una personalización tan intensiva como la que ha hecho Google, además de los muchos añadidos que ha incorporado en las últimas actualizaciones. DevEco Studio es algo más parco.

Deveco1
DevEco Studio es muy similar a Android Studio

Pero aquí no hemos venido a crear aplicaciones para HarmonyOS, sino a probar HarmonyOS, así que el primer paso es localizar el emulador. Éste funciona también algo distinto al de Android Studio, y es que no es un emulador local, sino remoto. Es decir, no te descargas la imagen de HarmonyOS para ejecutarla en una máquina virtual, sino que te conectas a una máquina virtual a través de Internet.

Esto supone un escollo adicional, pues HarmonyOS no ha sido lanzado todavía de forma internacional de modo que, al intentar acceder al gestor de dispositivos virtuales, el sistema pide la descarga de unos archivos que nunca se completan. No importa si usas VPN o servidores proxy, DevEco Studio da error. Este fue mi némesis durante varias semanas.

Para emular HarmonyOS necesitas una cuenta de desarrollador verificada, enviando una foto del pasaporte y una tarjeta de crédito

Sin entrar en detalles, finalmente tuve la inspiración de que si DevEco Studio fallaba al descargar los archivos, quizá yo podía hacer algo para hacerlo por mi cuenta. Unas pocas horas de pelea más tarde, finalmente DevEco tenía los recursos para el emulador. Faltaba el jefe final: necesita una cuenta de desarrollador verificada.

Realname

Para acceder a los servicios remotos de Huawei, es necesario acreditar tu identidad. Para ello, se te pide que subas una foto de un documento de identidad como un pasaporte y una tarjeta de crédito. El proceso de revisión es manual, de modo que pueden pasar unos días antes de que pases el trámite.

Este habría sido el final del camino si Huawei te obligara a tener una cuenta verificada china, pero por suerte me dejó entrar con una cuenta verificada internacional. Muchas semanas más tarde desde la primera vez que instale DevEco Studio, por fin había pasado las siete pruebas y, al fin, pude ver la lista de dispositivos remotos, listos para ser emulados.

Harmonyosdevices
HarmonyOS te deja emular cinco dispositivos en total: móvil, tablet, tele, coche y smartwatch

Esta vista es algo ya más parecida al emulador de Android Studio aunque, como comentábamos antes, el emulador funciona en streaming, mostrándose dentro de DevEco Studio. No es tan práctico como el emulador de Android Studio, pero se defiende bastante bien, siempre y cuando tengas paciencia.

Así es HarmonyOS

El emulador remoto de HarmonyOS es gratuito, aunque tiene fecha de caducidad: Huawei te da una hora para probarlo. Trascurrida la hora, se cierra la sesión y el dispositivo se libera para otro usuario, borrándose por el camino todo lo que hubieras hecho con él. Eso sí, nada te impide empezar una sesión nueva después de que se acabe tu hora de fama con HarmonyOS, aunque partirás del principio.

El emulador de HarmonyOS es remoto y con sesiones de una hora como máximo. Pasada la hora, se borra todo.

Generalmente, sesiones de una hora son más que suficientes para poder toquetear el sistema operativo y hacerte una idea de qué es qué, pero el problema del emulador remoto es que los servidores remotos están en China. Hay mucha latencia y quizá algo de sobrecarga en el sistema, pues el emulador va lento y le cuesta responder. Además, está en chino.

P40

Esto supone que cada nueva sesión empieza con cierta aclimatación que empieza por cambiar la configuración del sistema entrando a pseudo-ciegas a los ajustes de Android para cambiar el idioma (o por ADB) e instalando aplicaciones como buenamente se pueda. Se puede conectar al emulador mediante ADB, lo cual facilita muchas tareas que serían casi imposibles con la latencia y otras limitaciones del emulador.

Ya con el emulador en español y situado, lo primero que hice en HarmonyOS era cerciorarme de que es, en efecto, HarmonyOS. Esto es necesario pues es visualmente idéntico a EMUI 11, hasta tal punto que es imposible distinguirlos. Efectivamente, la información del sistema lo confirmaba: HarmonyOS 2.0.0 Developer Beta 2.

Harmonyosmenus

HarmonyOS luce y se comporta igual a EMU 10 sobre Android 10 y, aunque el emulador viene un poco parco en aplicaciones preinstaladas, es previsible que la versión final para móviles tenga exactamente lo mismo que el sistema equivalente bajo EMUI. Vienen unas pocas aplicaciones instaladas: AppGallery, Wallet, Salud, MeeTime, Huawei AI Life y las básicas para el sistema como la cámara, el marcador de teléfono o el navegador.

Estas aplicaciones preinstaladas son, de nuevo, idénticas a las versiones para Android, por no decir que son literalmente las mismas. Las versiones de las aplicaciones preinstaladas se corresponden con las últimas versiones disponibles en los móviles Huawei con EMUI.

Navegador
Algunas de las aplicaciones preinstaladas

No es por tanto necesario entrar en detalle sobre cómo funcionan los permisos, notificaciones o ajustes rápidos de HarmonyOS, pues la respuesta será en todos los casos: igual que en EMUI. Con tanto parentesco, resulta difícil entender la diferencia entre el EMUI sobre AOSP que ha estado usando Huawei desde 2019 del nuevo HarmonyOS.

HarmonyOS es compatible la gran mayoría de aplicaciones de Android, que se instalan sin problemas siempre y cuando sean para Android 10 o anterior y no necesiten de los servicios de Google para funcionar. Esto quiere decir que sí, en la práctica puedes usar WhatsApp.

Whatsapp
Sí, le hemos instalado WhatsApp

WhatsApp se instala sin problemas en HarmonyOS, aunque nunca llega a enviar el mensaje de verificación, posiblemente al quedarse por el camino al ser un dispositivo emulado. En la práctica, debería funcionar sin problemas en HarmonyOS en un móvil real, aunque sin poder hacer una copia de seguridad en Google Drive.

¿Android, eres tú?

Harmonyos3
¿EMUI? No, HarmonyOS

Según Huawei, HarmonyOS es un sistema "totalmente distinto de Android", que lleva varios años en desarrollo. Incluso en la última aclaración oficial de la compañía sobre si HarmonyOS es básicamente AOSP, la postura oficial reitera que es un "sistema operativo completamente nuevo" que "aprovecha un gran número de recursos de código abierto de terceros, incluido Linux". No hay mención a Android.

En HarmonyOS hay mucho Android, a pesar de que Huawei parece haber desterrado la palabra de su diccionario

Por algún motivo, Android es una palabra prohibida en HarmonyOS, a pesar de que el sistema indudablemente bebe, y mucho, de AOSP. Una búsqueda de "Android" en la documentación oficial de HarmonyOS arroja literalmente cero resultados.

Androide
Cero resultados al buscar "Android" en la documentación de HarmonyOS

Sin embargo, hay Android en HarmonyOS, y mucho. Crear un sistema operativo totalmente nuevo y que tenga compatibilidad completa con otro es una tarea titánica, por lo que es un secreto a voces que la versión para móviles de HarmonyOS está basada en AOSP. Con bucear un poco en el sistema, las referencias a Android comienzan a florecer.

El mero hecho de tener que usar ADB (Android Device Bridge) para conectarte con el emulador (y la versión de Android Studio, pues no viene con DevEco) es ya una buena pista, pero gracias a él podemos obtener las propiedades del sistema. En ellas podemos ver que este HarmonyOS 2.0.0 Beta 2 se corresponde con la API 4 de Huawei, pero también con la API 29 de Android, que es Android 10. En las propiedades se menciona además que la versión de EMUI es 11.0.1.

Cmd
"ADB shell getprop" no miente, como las caderas de Shakira

Si necesidad de rebuscar tanto, dentro de HarmonyOS hay una buena cantidad de referencias a Android, aunque no sean visibles a plena vista. Muchas de las aplicaciones del sistema mantienen el nombre del paquete que tienen en Android y que, por tanto, incluyen el prefijo "android".

Con la ayuda de Activity Launcher, es fácil encontrar estos resquicios de Android. Los ajustes del sistema siguen siendo com.android.settings, el selector de documentos sigue siendo com.android.documentsui, la interfaz del sistema sigue siendo com.android.systemui y así un largo etcétera. Quizá lo más curioso es que hasta AI Lens, que es parte de la cámara de Huawei, también mantiene su nombre de Android, com.alipay.android.

Android
En ocasiones veo "androids"

Lo cierto es que a Huawei probablemente le hubiera gustado renombrar estas aplicaciones, pero hacerlo habría roto la compatibilidad con aplicaciones de Android que interactúan con estos elementos del sistema. Sea como fuera, las referencias a Android son omnipresentes en la versión actual de HarmonyOS para móviles.

No son sólo nombres, también es el resto. Con DiskInfo podemos ver que las particiones del sistema son las mismas que en Android y, con la ayuda de un explorador de archivos como MiXplorer, podemos ver la clásica estructura de carpetas para alarmas, notificaciones y, sí, también está la carpeta Android.

Diskinfo

Las pruebas se apilan unas sobre otras para llegar a una misma conclusión: no hay diferencias reseñables entre un móvil con HarmonyOS y con EMUI. Ambos son sistemas operativos basados en el proyecto de código abierto de Android, o AOSP. Sólo así se explica la gran herencia que tiene HarmonyOS y la total compatibilidad con aplicaciones Android, aunque estén basadas en versiones arcaicas del sistema operativo del robot verde.

HarmonyOS en todas partes

Hasta ahora hemos hablado de HarmonyOS en un móvil, pero el emulador nos permite echar un vistazo a cómo es HarmonyOS en coches, televisores y relojes inteligentes. No es de extrañar, pues HarmonyOS llegó mucho antes a estos dispositivos antes de dar el salto al móvil.

HarmonyOS en un smartwatch

Hos

Si HarmonyOS en el móvil es como EMUI, ¿cómo es HarmonyOS en un smartwatch? La respuesta es en cierto modo previsible: HarmonyOS para smartwatch parece Wear OS. No tanto el aspecto y el comportamiento, que también, sino el hecho de que se pueda de nuevo conectar a él mediante ADB nos da ya la pista.

HarmonyOS para smartwatch es sospechosamente parecido a Wear OS

De nuevo, podemos usar ADB para obtener las propiedades del sistema, donde vemos de nuevo menciones a emui y tanto a la API 27 (Android Oreo 8.1) como a la API 29 (Android 10). Incluso hay una mención a Google en la propiedad [ro.feature.launcher.limit_google_feed]. Realmente, los valores de las propiedades son irrelevantes: lo relevante es que estamos de nuevo ante un dispositivo basado en Android.

HarmonyOS en la tele

Harmonyostv
HarmonyOS en la tele

Uno de los primeros lugares donde HarmonyOS estuvo disponible fue en televisores. Esto resulta en cierto modo evidente al probarlo, pues la interfaz parece bastante pulida y hasta se nos muestra contenido listo para reproducir. Estamos ante una interfaz propia un poco al estilo de la de Google TV, aunque no idéntica.

Lo más probable es que HarmonyOS en la tele sea un fork de Android TV

Una buena parte de la interfaz de HarmonyOS en la tele se mantiene en chino aunque se cambie el idioma y al trastear por los menús el parentesco con Android TV es evidente. Al fin y al cabo, tiene Huawei App Gallery para instalar apps desde la propia tele. De nuevo, ADB nos permite obtener todas las propiedades del dispositivo, incluyendo menciones como [ro.kernel.androidboot.selinux].

HarmonyOS en el coche

Car
HarmonyOS en el coche no tiene mucho para probar por ahora

De todos los dispositivos soportados por HarmonyOS, la integración en el coche parece ser la que está más verde. El emulador no tiene nada salvo un fondo de pantalla y una aplicación que está presente en todas las versiones y probablemente está relacionada con la propia emulación.

Casi con total seguridad, HarmonyOS para coches es básicamente Android Auto

No hay mucho para probar en la propia interfaz, aunque el comando adb shell pm list packages -f nos deja claro de nuevo que estamos ante Android, es decir, un fork de Android Auto. Entre las aplicaciones instaladas tenemos com.android.permissioncontroller, com.android.systemui, com.android.inputdevices y un largo etcétera.

Apps
La lista de aplicaciones en HarmonyOS para el coche

Parecido, pero no igual al 100%

¿Significa esto que Huawei ha cogido el código de AOSP, lo ha pegado en un editor de texto y ha hecho un reemplazar todo de "android" a "harmonyOS". No. HarmonyOS está basado en Android, aunque no es exactamente igual.

Bucear en la documentación y la terminología de HarmonyOS supone jugar a las siete diferencias con Android. Hay muchos conceptos similares pero que cambian de nombre. En terreno técnico, en vez activities tenemos abilities, en vez de widgets tenemos components, en vez de LinearLayout tenemos DirectionalLayout, en vez de TextView tenemos Text, los Android App Bundle son HAPS y así un largo etcétera.

Los cambios de AOSP a HarmonyOS van más allá de cambiar nombres

Aunque sean cosas parecidas, el código de AOSP es distinto al de HarmonyOS en muchas ocasiones. Parecido, sí, pero con cambios que van más allá de cambiar el nombre. Podría ser que Huawei haya aprovechado la ocasión para hacer algo de limpieza en el código de AOSP eliminando todo lo que le sobra, pero lo que está claro es que los cambios son en algunos casos profundos y, en un sistema operativo complejo, cambiar cualquier pequeña cosa es enormemente complicado.

Boton
El código para un botón en Android (izquierda) y en HarmonyOS (derecha). Parecido, pero distinto

No obstante, la mayor diferencia entre AOSP y HarmonyOS posiblemente no sea en algo que cambia, sino en algo que se ha añadido encima y lo que Huawei lleva repitiendo desde el primer día: que será un sistema operativo para dominarlos a todos.

No sabemos si HarmonyOS acabará dominando a todos o no, pero al parecer buena parte de los planes de Huawei para su sistema operativo pasan por poder reusar partes del mismo en distintos dispositivos. Esto resulta evidente al empezar un nuevo proyecto en DevEco, momento en el que se nos ofrece entre siete dispositivos y varios lenguajes de programación: Java, C++ y Javascript.

Hosproyect

A cambio, en Android Studio se nos presentan cinco dispositivos, incluyendo Android Things (que en paz descanse). En los lenguajes de programación tienes el preferido por Google, Kotlin, así como Java y C++. Es decir, las apps Javascript se las ha sacado HarmonyOS de la manga, y son un buen indicativo de que hay algo más en la mezcla y de las intenciones de Huawei de llevar estas apps no sólo a móviles, sino también a otros dispositivos como relojes con versiones "ligeras" de HarmonyOS, bajo el nombre Lite.

A día de hoy, HarmonyOS es básicamente Android con cosas encima. Por el momento, no muchas, aunque veremos cómo acaba el asunto.

Todas las versiones de HarmonyOS para los distintos dispositivos eran equivalentes a versiones de Android para móviles, Wear OS, Android Auto y Android TV, aunque la visión final que tiene Huawei de HarmonyOS parece ser más que eso. O, al menos, aspira a serlo. No es completamente exacto decir que HarmonyOS es exactamente Android, aunque la asociación es comprensible.

Hosss
La documentación de HarmonyOS casi confunde más que aclarar, con frases como "HarmonyOS aprovecha los diseños orientados a miniaturización y basados en componentes para permitir la implementación bajo demanda de dispositivos diversificados"

Posiblemente el mayor problema de HarmonyOS sea la inquina que le ha cogido Huawei a la palabra Android y el uso de lenguaje técnico, difuso y confuso para describir a su sistema operativo y que parece buscar más añadir un velo de misteriosa complicación que en aclarar realmente qué es y qué no es HarmonyOS.

Crear un fork de Android no es algo de lo que avergonzarse, aunque la retórica entre "coger algo y cambiarlo" y "crearlo de la nada en tiempo récord" es bien distinta. Los esfuerzos de Huawei parecen más centrados en resaltar esto último, y es que aunque no es la primera compañía que crea un fork de Android y posiblemente no sea la última, sí una de las que más se está esforzando en ocultar la condición de fork del sistema.

Temas
Inicio