Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Como crear un update.zip
#1
Saludooos...

En medio de la compilacion de la rom que estoy preparando me he encontrado con este tema, que es util y siempre he tenido ganas de entenderlo.
Lo voy documentando aqui y asi me lo empollo compartiendolo.

El tema es que he encontrado este fichero para hacer root en RK3066 y va de maravilla via CWM... pero quiero hacerlo todo a la vez instalar CWM via zip y despues Root.
A ver si podemos...

Guias en ingles
http://marakana.com/s/post/1065/updating...os_via_ota
http://fokke.org/site/content/howto-crea...ip-package
http://forum.xda-developers.com/showthre...?t=1931585

--------

Update.zip es un sistema de actualizacíon de ficheros de sistema automatico que en los SOC RK3066 se detecta y ejecuta de forma automatica en el sistema.

Estructura

Desde la version android Donut (1.6), el fichero script pasa de llamarse update-script (lenguaje "Amend") a updateR-script (lenguaje "Edify") quizas se encuentre documentación con esa antigua referencia.
updater-script aun se usa para asegurar compatibilidades, pero esta en deshuso.

Dentro del zip los elementos clave son updater-script y su update-binary.
El binario analiza el nuevo scritp.

El update script y el binary se guardan en la carpeta "META-INF/com/google/android/", en la raiz del zip. Estructura tipica:

META-INF/
+- com/
+- google/
+- android/
+- update-script (opcional)
+- update-binary
+- updater-script

system/ (añadidos personales)
+- etc/
+- sysctl.conf
+- security/
+- cacerts.bks

META-INF es siempre igual, el resto es variable segun necesidad.

Codigo ejemplo update-script RK3066_root

Código:
ui_print("***************************");
ui_print("Pipo U2 SuperSU installer");
ui_print("***************************");

ui_print("- Mounting /system and rootfs");
run_program("/sbin/busybox", "mount", "/system");
run_program("/sbin/busybox", "mount", "-o", "rw,remount", "/system", "/system");
run_program("/sbin/busybox", "mount", "-o", "rw,remount", "/", "/");

ui_print("- Removing old files");
delete("/system/bin/su");
delete("/system/xbin/su");
delete("/system/app/Superuser.apk");
delete("/system/app/SuperUser.apk");

ui_print("- Creating space");
run_program("/sbin/busybox", "cp", "/system/app/Maps.apk", "/Maps.apk");
run_program("/sbin/busybox", "cp", "/system/app/GMS_Maps.apk", "/GMS_Maps.apk");
run_program("/sbin/busybox", "cp", "/system/app/YouTube.apk", "/YouTube.apk");
run_program("/sbin/busybox", "rm", "/system/app/Maps.apk");
run_program("/sbin/busybox", "rm", "/system/app/GMS_Maps.apk");
run_program("/sbin/busybox", "rm", "/system/app/YouTube.apk");

ui_print("- Extracting SU files");
package_extract_dir("system", "/system");

ui_print("- Restoring U2 files");
run_program("/sbin/busybox", "cp", "/Maps.apk", "/system/app/Maps.apk");
run_program("/sbin/busybox", "cp", "/GMS_Maps.apk", "/system/app/GMS_Maps.apk");
run_program("/sbin/busybox", "cp", "/YouTube.apk", "/system/app/YouTube.apk");
run_program("/sbin/busybox", "rm", "/Maps.apk");
run_program("/sbin/busybox", "rm", "/GMS_Maps.apk");
run_program("/sbin/busybox", "rm", "/YouTube.apk");

ui_print("- Setting U2 permissions");
set_perm(0, 0, 06755, "/system/xbin/su");
set_perm(0, 0, 0644, "/system/app/Superuser.apk");
set_perm(0, 0, 0644, "/system/app/Maps.apk");
set_perm(0, 0, 0644, "/system/app/GMS_Maps.apk");
set_perm(0, 0, 0644, "/system/app/YouTube.apk");

ui_print("- Unmounting /system");
unmount("/system");

ui_print("Your Pipo U2 is rooted!");

Podemos firmar el ZIP con la KITCHEN del otro tutorial.

Se crearan los ficheros dentro del zip.
+- MANIFEST.MF
+- CERT.SF
+- CERT.RSA

http://forum.xda-developers.com/showthre...?t=1931585
Responder
#2
Muy pero que muy interesante y ese método de hacerse root va a estar ,muy bien para los miedosos a ver si sale todo.
Apadrina una ROM, invítame a una birra! :D

No se contestan dudas por privado, usad el foro para ello :)
Responder


Salto de foro:


Usuarios navegando en este tema:
1 invitado(s)

Powered by MyBB.