ROM y desarrollo Motorola Moto G (2013) ROM y desarrollo Motorola Moto G (2013)

Respuesta
 
Herramientas
  #1  
Viejo 26/01/15, 15:15:11
Array

[xs_avatar]
LEPT LEPT no está en línea
Usuario muy activo
· Votos compra/venta: (1)
 
Fecha de registro: abr 2012
Localización: Ahí-donde-eso
Mensajes: 4,574
Modelo de smartphone: Xiaomi Mi A2
Tu operador: Movistar
noticia parchear ficheros de una OTA

Como habréis observado algunos, dentro de las OTAs hay unos ficheros que "son parcheados" a los ya existentes, para añadirles los cambios, en lugar de sobrescribir entero el fichero existente. Estos ficheros que contienen "la información adicional", poseen la extensión '.p'.

Por ejemplo, viene un fichero llamado "boot.img.p", el cual se le parcheará al 'boot.img' original para añadirle la nueva información. Lo mismo pasa con ficheros APK, ODEX, SO, etc...

Para realizar el proceso de obtención de la info a parchear, y el proceso de parchear dicha información, se tiene en cuenta si el fichero es de texto plano o no, ya que emplean utilidades diferentes en función de eso.

En el caso de texto plano, emplean la utilidad "Binary diff". La cual se compone de 2 partes:
  • 'bsdiff' que sirve para generar un fichero con las diferencias entre el fichero antiguo y el nuevo.
  • 'bspatch' que sirve para aplicar al fichero antiguo, el fichero con la información incremental, y así poder generar el fichero nuevo.
En el caso de que no sea texto plano, emplean la utilidad "applypatch". La cual sirve entre lo que contiene está:
  • 'imgdiff' que sirve para generar un fichero con las diferencias entre el fichero antiguo y el nuevo.
  • 'imgpatch' que sirve para aplicar al fichero antiguo, el fichero con la información incremental, y así poder generar el fichero nuevo.

Y tras la teoría, viene la petición.

¿Alguien tiene una versión de "applypatch", o al menos de "imgpatch", ya compilada? Me da igual que sea para Linux o para Windows (Win32), aunque preferiría que fuera para Windows. ¿O alguien sabe compilarlo? Me imagino que el que sea usuario avanzado de Linux sabrá. El link del source estaba ahí arriba, por si lo quiere.
__________________

"Un rincón para compartir conocimientos"

Última edición por LEPT Día 27/01/15 a las 11:42:46.
Responder Con Cita


  #2  
Viejo 26/01/15, 18:08:29
Array

[xs_avatar]
LEPT LEPT no está en línea
Usuario muy activo
· Votos compra/venta: (1)
 
Fecha de registro: abr 2012
Localización: Ahí-donde-eso
Mensajes: 4,574
Modelo de smartphone: Xiaomi Mi A2
Tu operador: Movistar
Bueno, me voy auto-contestando (creo que soy el usuario que hace más eso ).

Dentro del propio Android, ya tenemos un applypatch pre-compilado. Pero no logro hacer que funcione en el Linux de mi PC.

Luego ha resultado que el funcionamiento de applypatch es algo 'tedioso'...
Código:
usage: applypatch [-b <bonus-file>] <src-file> <tgt-file> <tgt-sha1> <tgt-size> [<src-sha1>:<patch> ...]
   or  applypatch -c <file> [<sha1> ...]
   or  applypatch -s <bytes>
   or  applypatch -l

Filenames may be of the form
  MTD:<partition>:<len_1>:<sha1_1>:<len_2>:<sha1_2>:...
to specify reading from or writing to an MTD partition.
Casi ná!

Traducido (al menos un poco) sería algo así:
[PHP]applypatch nombre_viejo nombre_nuevo SHA-1_nuevo tamaño_nuevo_bytes SHA-1_viejo:parche_p[/PHP]

Se puede usar desde la ventana de comandos, pero casi que sale más a cuenta generar un script para un ZIP flasheable y hacerlo desde ahí, lo cuak no me hace mucha gracia

Bueno, misterio solucionado. No obstante si alguien logra hacer funcionar el applypatch en linux o lo compila para windows, que me avise
__________________

"Un rincón para compartir conocimientos"
Responder Con Cita
Respuesta

Estás aquí
Regresar   Portal | Indice > Foros Motorola > Otros smartphones antiguos de Motorola > Motorola Moto G (modelo 2013) > ROM y desarrollo Motorola Moto G (2013)



Hora actual: 22:57:03 (GMT +2)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.

Contactar por correo / Contact by mail / 邮件联系 /