Acceder

Ver la Versión Completa : [ ARTICULO ] Google apps en Mi8 ,TWRP y DM-Verity


Genosystem
17/11/18, 13:51:12
Buenas, os cuento mis pruebas de hoy
.
Estoy con la ROM Developer China y por tanto, tengo que usar el instalador de Google que hay en la App Store (que miedo me da...). Aunque yo tenga la china, creo que merece la pena leerlo para coger conceptos que yo personalmente, no sabía.

El caso es que ya hace un mes me pegue muchísimo para hacer que me funcionaran la sincronización de contactos de google, y aunque no es el motivo del post, dejo aquí el orden correcto por si alguien lo busca:



Hay que tener contacts del playstore instalado
Bajarse Google contacts sync de apk mirror. La versión que sea la más alta que os soporte el sistema operativo, ir probando desde la última hasta la que no os de error.
Quitar la cuenta de google
Borrar la cache de contacts y de google contacts sync
Dar todos los permisos que pidan a ellas más a todas las cosas de google como el framework o los services.
Reiniciar
Añadir la cuenta de google desde contacts
Volver a reiniciar porque no pillara la cuenta.
Activar la sincronización desde contacts


Total he que he ido tirando hasta que una aplicación de pagos llamada Settle Up no me reconocia la cuenta de Google.
Después de hablar con el desarrollador, vimos que era problema problemas de las Google Apps por tanto me puse a tocar.
Tocando tocando, actualice los Google Play Services mediante ApkMirror conseguí que dicha aplicación consiguiera ver la cuenta de google (esto os lo resumo porque toqué de todo).

El problema es que me dejaron de funcionar la sincronización de contactos Google Play Games, lo mismo que me paso al principio. Probé varias combinaciones de Google Play Services, Google Contacts Sync y Google play Framework pero nada.

Al final, el instalador del App Store de MIUI mete cuatro cosas para que medianamente funcione pero está claro que no es suficiente.

De perdidos al río, me decidí a meter las Open Google Apps mediante TWRP, para lo que borre del móvil todos los paquetes antes mencionados.
El TWRP que he usado es del desarrollador wzsx150 del LR.Team ya en versiones anteriores había probado que sabía manejar el tema de la encriptación de MIUI (importantísimo para mi)
http://www.miui.com/forum.php?mod=viewthread&tid=15306132&extra=&highlight=%E3%80%90LR.Team%E3%80%91&page=1 (http://www.miui.com/forum.php?mod=viewthread&tid=15306132&extra=&highlight=%E3%80%90LR.Team%E3%80%91&page=1)
El TWRP aun asi lo he sacado del foro de MIUI, ahora mismo van por la versión 1110
https://xiaomi.eu/community/threads/download-twrp-for-mi8-dipper.46551/ (https://xiaomi.eu/community/threads/download-twrp-for-mi8-dipper.46551/)

Flasheado( Después de flashearlo he tenido que irme a opciones avanzadas para hacer un “Sign boot” porque si no volvía al recovery de stock) y arrancado (hay que tener el bootloader abierto claro), he intentado meterle las Open Google Gapps aun sabiendo que me podria cargar la instalación al tener el DM-Verity activado (eso luego lo explico).

Me he ido a https://opengapps.org/ (https://opengapps.org/) y me he bajado el paquete micro. Al ir a instalarlo me ha dado el error 70, diciendome que no tengo suficiente espacio en la partition /system. Con el terminal que viene en el propio TWRP he hecho un “df -h” para ver cuánto espacio libre quedaba y efectivamente eran 59 MB cuando este paquete son 194.
Buscando información, vi que algunas personas lo habían solucionado cambiando el tamaño de la partición /system . Esto se puede hacer desde el TWRP:


Wipe
Advanced Wipe
Seleccionamos la partición system y pulsamos en “Repair or Change File System”
Por último pulsamos en “Resize File System”


Con esto, he pasado de 59 MB libres a 106 MB. Tengo que indagar mas de donde saca este espacio porque aunque lo vuelvas a hacer, no aumenta.
Quiero dejar claro que aunque esta opción esté en la sección Wipe, no borra nada, ni hay que volver a instalar la ROM.

Bueno, pues gracias a esto pude instalar la versión Nano, de 90 MB.
Pero oooohhh, al intentar arrancar, entraba en Bootloop. Entonces me acordé del DM-Verity
DM-Verity digamos que blinda la partición system para que no se pueda modificar y que si mediante root lo consigues, en el siguiente reinicio la vuelve a dejar como tiene que estar.
Además, hace una verificación al arranque y si ve algo raro, no arranca.
Mirado las opción del TWRP (hay que ponerle un monumento a wzsx150), vi que estaba incluido el script de RM DM-Verity, que básicamente lo que hacen es desactivarlo. Está junto al de RM Force Encrypt, pero eso no lo ejecute ya que a mi me interesaba tener la encriptación activa.

Lo pulse sin mucha confianza y POM! el móvil arrancó. Lo primero que fui a mirar es si seguía encriptado y estaba correcto. Se me abrió un asistente de google para configurar el móvil y la cuenta y sin problemas.
Ahora una curiosidad. En cuanto configure la cuenta de google, las aplicaciones que tiran de ella empezaron a crashear todas (gmail, keep, maps), por que no las habia desinstalado.
La solución es tan fácil como desinstalarlas y volverlas a instalar. Creo que el PlayStore instala otras versiones más correctas para el framework que he instalado (el ultimo, el 9).

Pues nada, ya parece que funciona todo sin problema (bastante mejor que antes de hecho).
Como plus además, al quitar el DM-Verity, puedo modificar la partición /system y /vendor como quiera, con lo que el problema que tenía para modificar el gps.conf está resuelto:
https://www.htcmania.com/showthread.php?t=1451587 (https://www.htcmania.com/showthread.php?t=1451587)

Ahora solo que saber… ¿Que pasará el viernes cuando salga una nueva OTA? ¿Me volverá a activar el DM-Verity? ¿Se me quedara como un solar? El próximo fin de semana os cuento.

Genosystem
26/11/18, 17:44:36
Pues ha llegado el día de la actualización y no salido muy bien que digamos.


Era la 8.11.23 y la marcaba como 2.2 GB en el actualizador de Xiaomi.
Cuando la ha instalado, ha borrado el recovery y las google apps, pero ha arrancado.


Hasta este punto bien pero cuando le he vuelto a meter el TWRP he visto que este TWRP ya no reconocía la partición como encriptada, lo cual es un gran problema. No sé si habrán cambiado la manera en la que el recovery accede o qué, pero me da a mi que hasta que LR Team no actualice, no podré usar esta ROM.


Además, en cuanto le he hecho un Sign Boot para que no borrara el TWRP, me ha dejado de arrancar y después, por mas que he intentado (DM-Verity, probar cosas con el terminal) no lo he podido recuperar.


Total, que, dándolo ya por perdido, he flasheado otra vez desde MiFlash para recuperar el móvil y después TWRP para flashear Xiaomi EU y ver si con ella funcionaba la encriptación ya, pero me están dando problemas de bootloop.
Ahora dentro de un rato le flasheare de nuevo la china para ver si vuelve en si y volveré a empezar.

Genosystem
26/11/18, 23:22:52
Después de llevar toda la tarde trasteando, mis impresiones son las siguientes.
Habiendo vuelto a reinstalar la 8.11.8 mediante Xiaomi Flash (en este momento es la última en ese formato) y después actualizando a la 8.11.23, he vuelto a flashear el TWRP 1110 y no leia el filesystem encriptado (no pide la password y todos los ficheros salen como carpetas de caracteres aleatorios).
Se me ocurrió usar el TWRP 918 ya es el que está en la portada del post chino y !Voila! este si que lo lee, asi que tenia media batalla ganada.
Como creo que el problema que he tenido esta vez que es el Sign Boot para que no borre el recovery, no lo he hecho (si lo necesito lo vuelvo a flashear) y solo le he quitado el DM-Verity. Funcionando sin problemas.

Siguiente paso, las Google Apps. Esta vez ni con el resize dejaba instalar las pico, con lo que dado que ya puedo modificar /system como me da la gana, me puse a borrar apps de /system/data-app como el wps office, el Mifinance, Mi shop, etc… apps que luego voy a borrar de todos modos con el Titanium, y con eso me entró el Open Gapps nano.

Al arrancar salio el asistente de Google pidiéndome que configurara el móvil pero en el momento de meter la cuenta, la pantalla se quedaba en negro.
Se me ocurrió que las Gapps pudieran tener un problema así que flashee una versión más antigua (dia 21) pero nada,el mismo problema.
Entonces caí que las Google apps las he instalado después de iniciar el movil una vez asi que he probado a hacer un wipe de todo menos de system para tener el movil como nuevo y el mismo problema en el asistente inicial.

Cansado de la china, me he puesto a probar con la Xiaomi EU 8.11.23. La he instalado pero no arrancaba, pero después he averiguado que es por la encriptación, ya que no vale solo con hacer un wipe data, tienes que hacer un format data para que la partición esté disponible para la nueva ROM.

Una vez hecho esto y pasando la configuración pero sí configurando la password con la huella, le he dado a encriptar y ha fallado para variar, dejándome el móvil sin particion data, igual que la otra vez.
Después se me ha ocurrido probar con el recovery de xiaomi, pero el resultado ha sido el mismo.

Pero finalmente lo he conseguido, era tan facil como nada mas instalar la ROM, editar el fichero vendor/etc/fstab.qcom y donde pone “encryptable=ice” lo teneis que cambiar por "fileencryption=ice" (Fuente: https://forum.xda-developers.com/mi-8/help/xiaomi-eu-rom-encrytion-t3846726/post77721399#post77721399 (https://forum.xda-developers.com/mi-8/help/xiaomi-eu-rom-encrytion-t3846726/post77721399#post77721399) )

Ya he probado a entrar en el TWRP y me pide la contraseña para desencriptar los ficheros, así que genial, porque me ahorro el tener que borrar la basura china y las google apps vienen integradas.

Rinoo
28/11/18, 16:12:16
Muchas gracias por la valiosa información. Me surgen varias dudas para proceder a encriptar el dispositivo. Parto de la última EU 8.11.23.
1. Antes de encriptar el dispositiu, realizó la modificación que mencionas?
2. Una vez realizada la modificación, puedo proceder a la encriptacion del dispositivo? Este paso me da pánico, pues siempre se me quedó en bootloop y recurrir a miflash para recuperar el dispositivo.

Tengo el último recovery, recomiendas mejor el 918 ? Me imagino que aplicar las actualizaciones será un marrón, no?

Saludos y muchas gracias

Genosystem
28/11/18, 17:12:57
Hola @Rinoo (https://www.htcmania.com/member.php?u=476105)
La modificación es la que hace la encriptacion. No tienes que hacerla y luego dentro dentro de sistema operativo activarla, no. Cuando modificas esto, trata la partición de /data como un filesystem encriptado por lo que no tienes que hacer nada mas, pero se borrara todo lo que haya en esa partición (un factory reset vamos).


Según mis pruebas, la 1110 no leía las particiones encriptadas de la 8.11.23 pero la 918 si.
De hecho, en el foro chino de MIUI solo encuentro la 918, nada de la 1110 (que esta en chino e igual no lo busco bien)


Edito: Sobre las actualizaciones, en principio tendrían que funcionar, pero si quieres esperate a que salga la siguiente versión y lo pruebo.