|
||
|
![]() |
![]() |
ROMs y desarrollo HTC One A9 ROMs y desarrollo HTC One A9 |
![]() |
|
Herramientas |
#1
|
||||
|
||||
Downgrade S-On / S-Off
¿Necesito S-OFF?
Si tu teléfono es S-ON, no se puede bajar la version simplemente flasheando una anterior ruu. La combinación de a, bb y dd , de la ruu que desea flashear debe ser igual o más reciente que su versión principal (fastboot getvar version-main) Si su teléfono es S-ON, no puede convertirse a otra región / portador. Los dígitos ccc en a.bb.ccc.dd deben ser los mismos. Si tu teléfono es S-ON, sólo se puede falshear un RUU firmado o Firmware firmado. Si el nombre de archivo RUU que desea flashear finaliza con "decrypted.zip" no esta firmado y necesitará S-OFF. Si su letra final dice "signed.zip" está firmado y puede ser flasheado con S-ON DOWNGRADE Nougat a Marshmallow lo mismo se aplica para downgrade, se necesita la antigua clave de descifrado de marshmallow en el teléfono para que el RUU marshmallow pase la verificación de firma. Se necesita downgrade del firmware a 1.xx.xxx.x antes de flashear un ruu 1.xx.xxx.x. ¿Qué RUU debo usar, puedo flashear este RUU? Se utiliza "fastboot getvar all" para obtener MID, CID o encender en modo download. Tanto el MID y CID debe estar en la lista que admite la RUU que se desea flashear Ej: a.bb.ccc.dd > 1.56.401.70 a: Usualmente sólo 1 dígito. Principales Android actualización desde la liberación del dispositivo. Este dispositivo se envía con Marshmallow por lo que un RUU a partir de 1 es Marshmallow, con 2 es Nougat y así sucesivamente. bb: Usualmente 2 dígitos. Cambios importantes en el firmware / software HTC ccc: Generalmente 3 dígitos, a veces 4. Relacionado con su región / portador. Este número no cambia (a menos que usted convierta su teléfono). E.G: 1.10.617.1 no es más reciente que 1.10.401.1. Ambos son las mismas versiones diseñadas para diferentes operadores / regiones. dd: Generalmente 2 dígitos, a veces 3. Actualización menor / arreglo de seguridad ACTUALIZACIÓN de Marshmallow a Nougat RUU (2.xx.xxx.x) Si aparece esto: bootloader reporting these errors: (bootloader) ERR check AES encrypted magic string failed. FAILED (remote: 12 RU_ZIP_ERROR ) Signature verify fail and ruu will not flash ¿POR QUÉ? HTC ahora está firmando Nougat RUUs con una firma diferente que Marshmallow RUUs. La Clave para leer esa firma está incrustada en el firmware del teléfono, más precisamente en el HOSD (hosd.img). Eso significa que si su teléfono sigue funcionando con un firmware de Marshmallow (versión que comienza con 1.) el firmware del teléfono (y por lo tanto su hosd.img) no se había actualizado todavía con la nueva clave de firma que hará que su teléfono no pueda verificar la firma ruu de Nougat. CÓMO RESOLVER: No puede activar un Nougat RUU si su teléfono no está ejecutando el firmware de Nougat ---> Debe actualizar su firmware a 2.xx.xxx.x antes de falshear la ruu 2.xx.xxx.x No se puede actualizar una ruu desde 1.xx.xxx.x a 2.xx.xxx.x sin actualizar primero el firmware a 2.xx.xxx.x. DOWNGRADE con S-ON: Estas explicaciones son para el One A9 solamente. Este procedimiento puede funcionar en otros dispositivos HTC pero requerirá un comando diferente ya que las particiones son diferentes para cada dispositivo. Si tu tlf esta S-ON y tienes o quieres degradar, hay un método que puedes probar. Por lo general, sólo funcionará si está rebajando a una versión que está utilizando la misma versión del gestor de arranque (así que estaba funcionando de esa manera para dispositivos HTC antiguos utilizando hboot, es decir, M7 / M8, no sé si lo mismo se aplica para A9). Por lo general, si vas a flashear un RUU más antiguo con una versión-principal comenzando con el mismo dígito en la posición "a" debería funcionar. En muchos casos, las únicas cosas que le impiden degradar cuando S-ON es su versión-main: Al flashear un RUU, su versión-main actual se compara con la versión RUU. Si la versión RUU es más reciente o igual a la versión principal (y todos los demás parámetros explicados anteriormente están bien), se hará el flash. De lo contrario el ruu fallará. El número de versión principal se almacena en la partición / misc (mmcblk0p18) empezando en el bloque decimal # 2208. Vea la imagen abajo: ![]() La buena noticia es que mmcblk0p28 no está protegido contra escritura, incluso cuando su teléfono es S-ON. Así que podemos cambiar manualmente el valor de la versión principal en esa partición a una versión inferior, de modo que al falsear un RUU antiguo pasará esa comprobación. Cómo cambiar manualmente su version-main: Advertencia: los comandos "dd" pueden ser peligrosos. Asegúrese de que no hay errores tipográficos en el comando, sino quiere estropear su partición o escribir datos en la partición incorrecta. Método 1: Cuando se arranca en el sistema operativo (se requiere una ROM ROOT) Con el teléfono conectado a su computadora, abra una ventana de comandos de ADB Iniciar un shell de adb Pedir y conceder privilegios de superusuario Edite la versión principal (vea a continuación la explicación "¿Qué comando debo utilizar para editar mi version-main") Salir de shell Reiniciar en bootloader / download y confirmar su versión-main correctamente cambiado Codigo: adb shell su echo -ne "1.56.401.70\x00" | dd of=/dev/block/mmcblk0p28 bs=1 seek=2208 exit exit adb reboot download fastboot getvar version-main Método 2: Desde un custom recovery (no se requiere una ROM ROOT) Con el teléfono conectado a su computadora, abra una ventana de comandos de ADB Iniciar un shell de adb Edite la versión principal (vea a continuación la explicación "¿Qué comando debo utilizar para editar mi version-main") Salir de shell Reiniciar en bootloader / download y confirmar su versión-main correctamente cambiado Codigo: adb shell echo -ne "1.56.401.70\x00" | dd of=/dev/block/mmcblk0p28 bs=1 seek=2208 exit adb reboot download fastboot getvar version-main Método 3: Desde un emulador de terminal (no se requiere PC, ROM ROOT requerido) Inicie la aplicación emulador de terminal Solicitar y otorgar SU a tu aplicación de terminal Edite la versión principal (vea a continuación la explicación "¿Qué comando debo utilizar para editar mi version-main") Salir de la cáscara Reiniciar en bootloader / download y confirmar su versión-main correctamente cambiado Codigo: su echo -ne “1.56.401.70\x00” | dd of=/dev/block/mmcblk0p28 bs=1 seek=2208 exit adb reboot download fastboot getvar version-main Este es el método 4 mas fácil pero requiere también Unlock Bootloader para flashear el TWRP Método 4: Desde el terminal embebido de TWRP (No requiere ordenador, ROOT rom no es necesario) Reinicie su teléfono en recuperación / twrp Desde el menú principal de twrp, seleccione "Avanzado" y luego "Terminal" Edite la versión principal (vea a continuación la explicación "¿Qué comando debo utilizar para editar mi version-main") Reiniciar en bootloader o download y confirmar su versión-principal correctamente cambiado Codigo: echo -ne "1.56.401.70\x00" | dd of=/dev/block/mmcblk0p28 bs=1 seek=2208 ¿Qué comando debo usar para editar mi version-main (una vez más, esto es para el One A9 solamente): Utilice este comando: Codigo: echo -ne "version-main" | dd of=/dev/block/mmcblk0p28 bs=1 seek=2208 Version-main debe ser reemplazado por el número apropiado para su situación. Por ejemplo, si vas de 1.27.401.10 a 1.10.401.1, version-main será 1.10.401.1\x00\x00. No quite las comillas en el comando, deben estar allí: es decir: Código: echo -ne "1.10.401.1\x00\x00" | dd de=/dev/block/mmcblk0p28 bs=1 seek=2208 ¿Por qué agregar \x00 \x00 al final de 1.10.401.1? En teoría, una versión-principal puede tener hasta 12 caracteres (esto incluye puntos). Dado que 1.10.401.1 es sólo 10 caracteres queremos anular los 2 últimos caracteres que no se utilizan. x00 es la expresión hexadecimal para el valor "nulo". Si no lo hace, podría resultar en una versión-main incorrecta, por ejemplo si su versión anterior-main era 1.27.401.222 y sólo ingresa "1.10.401.1" en lugar de "1.10.401.1\x00\x00" el resultado final será 1.10.401.122 ya que los 2 últimos dígitos no se borraron con el valor "nulo". Si va a utilizar una versión-principal que es de 11 caracteres, sólo agregue \ x00 una vez por lo que los caracteres 12 en nulo. Cómo hacer flash (RUU.ZIP): Método de la tarjeta SD: Renombre el archivo zip RUU "2PQ9IMG.zip", guárdelo en la raíz de su tarjeta SD externa (FAT32) (exfat también debería funcionar, para ser confirmado). Reinicia el teléfono en modo de descarga. Uso de comandos de fastboot Método (MS Windows, Linux, MacOS): Guarde el archivo zip ruu en su carpeta adb / fastboot junto con htc_fastboot.exe . Abra una ventana de comandos desde esa carpeta, luego escriba: Código: Fastboot oem rebootRUU Htc_fastboot flash zip .zip Espere a que el "tiempo total terminado: xx seg" antes de hacer nada. Entonces: Código: reboot fastboot Asegúrese de que tiene instalados los controladores HTC más recientes en su equipo y de que está utilizando htc_fastboot.exe para el comando flash zip. ADB Fastboot HTC https://www.androidfilehost.com/?fid=24052804347780554 Cómo flashear RUU.EXE (sólo para MS Windows) Asegúrese de tener instalados los controladores HTC más recientes y el paquete redistribuible de MS Visual C ++ 2008 (si inicia el RUU y no ocurre nada, no tiene instalado MS Visual C ++). Conecte su teléfono al ordenador y ejecute el archivo ruu.exe. Siga las instrucciones del programa RUU. Cómo Flashear firmware.zip Puede hacerse de la misma manera que flashea un RUU.zip, vea los métodos SDcard y fastboot anteriores. Enlaces de Firmware y Ruu Firmware 1.56.401.70 DECRYPTED. No firmado https://www.androidfilehost.com/?fid=817550096634758247 RUU 1.56.401.70 https://www.androidfilehost.com/?fid=24457741883933257 Firmware 2.17.401.2 https://mega.nz/#!ds1WXb4a!oevCHVHpW...X5mFsnrcZX3AgI RUU 2.17.401.2 https://www.androidfilehost.com/?fid=817550096634759503 PD: Si alguien necesita el firmware firmado 1.56.401.70 que me contacte por privado, ya que no lo tengo subido a ningún hosting Última edición por fm4r1n Día 09/07/17 a las 00:23:48. |
Los siguientes 3 usuarios han agradecido a fm4r1n su comentario: | ||
|
![]() |
![]() |
||||||
|