![]() |
|
| ROMs y desarrollo Samsung Galaxy SIII mini ROMs y desarrollo Samsung Galaxy SIII mini |
«
Tema Anterior
|
Siguiente tema
»
|
|
Herramientas |
|
#1
|
|
Decompilar-Compilar correctamente un .apk
Nome daba cuenta pero resulta que al decompilar por ejemplo (framwork-res o SystemUI) con ayuda de linea de comandos en windows, me aparecian varios de mensajes de que a la hora de decompilar no lograba encontrar archivos con extención "png" y al parecer cuando volvía a compilar para cerrar el archivo apk, ya no estaban allí.
Es decir, que el archivo una vez decompilado y compilado nuevamente carecerá de archivos de los que antes tenía. Hay alguna solución a eso?, tambien he intentado probar APK Manager (ultima version) y en éste ni siquiera puedo empezar la decompilación, no sé que estoy haciendo mal en éste. A continuación unas capturas de la decompilacion del archivo SystemUI.apk: |
|
|
|
#2
|
|
Aqui he encontrado algo de info acer del tema:
http://forum.xda-developers.com/showthread.php?t=816412 Podrían ayudarme...? |
|
#3
|
||||
|
||||
|
Cita:
|
|
#4
|
|
Si, estoy contigo. Es verdad...
Que tonto fuí al no fijarme en estos errores, voy a ver si encuentro la forma de hacerlo ahora mismo para luego solucionarlo y os comento a la brevedad. |
|
#5
|
|
Exacto lo que pasa es que los archivos que contiene
tu apk que requieres descompilar están mal, es decir son simplemente png renombradas a 9.png y pero sólo de nombre, el verdadero archivo debe ser patcheado con el draw9patch.bat ubicado en C:\Program Files (x86)\Android\sdk\tools para fijar los márgenes de los pixeles. Una imagen de con extensión .9.png es una imagen que de acuerdo a los márgenes marcados con la herramienta mencionada puede "estirarse", por ejemplo si mide de 1x1 y esta patcheado se puede hacer la imagen de 10x10 por así decirlo. Un ejemplo que les puedo compartir es la barrita del brillo esa es de 1x1 y cuando suben el brillo se expande. Y el error que les marca es que en la descompilación el que anteriormente modificó el apk únicamente pasó las png's sin patchearlas simplemente arrastrando con 7zip que es el que comúnmente se usa. y como no encuentra que verdaderamente tienen la propiedad (la de expandirse/estirarse) de una imagen .9.png las "renombra" a sólo png. Que es el error que les marca: Cant find 9patch chunk in file:"Nombre de la imagen". Renaming it do *png. Las patcheadas deben ser por lo mínimo 2px más grande por cada lado. Les comparto unas capturas para que logren comprenderme mejor. (Capturas propias y redacción propia) 1 2 3 Saludos
Última edición por pesp2020 Día 21/05/13 a las 15:44:52 |
|
#6
|
|
Espero haberme explicado.
|
|
#7
|
|
Ya he encontrado (creo, he???), la solución en cuanto a la re-compilación corrupa de los archivos que nos da error de busqueda al decompilar.
A continuación los pasos que he seguido (personalmente), hasta resolver el problema --Decompilación-- Básicamente seguir los pasos del post (http://www.htcmania.com/showthread.php?t=566969). Y aquí, cuando recien escribamos el comando (apktool d xxxxxxx.apk), es cuando veremos el momento en el que pueden o no aparecer los errores (es decir, aqui es donde los errores aparecerán, salvo que tengas suerte y el archivo que comiences a decompilar no produzca errores de lectura durante la decompilacion). Entonces mi solución al rudimentaria, pero parece que efectiva al 100%100% es hacer lo siguiente: Tomes como ejemplo la decompilacion del "SystemUI.apk", previamente con los archivos framwork-res/twframework-res cargados para poder leer los demás directorios y archivos. Por lo menos a mí, cuando decompilo dicho archivo me aparecen los errores de busqueda de los archivos: tw_quick_panel_off tw_quick_panel_on tw_quick_panel_list_bg_f tw_quick_panel_list_bg_n tw_quick_panel_list_bg tw_quick_panel_notification_panel_divider_1 tw_quick_panel_notification_panel_bg tw_quick_panel_quick_setting_button_bg_normal El resto lo decompila sin problemas. Pues bien, para solucionar esto lo que hice fue (bueno, despues de modificar lo que desee dentro del archivo, por ejemplo los .xml), pues volví a compilar (sin hacer cambios en los png erroneos, solo los .xml), y listo. Luego abrir con ayuda del WinRAR u otro descompresor el SystemUI.apk original y por otra parte abrir en otra ventana el SystemUI.apk recien decompilado y compilado con las modificaciones .xml y los errores de busqueda y que por lo tanto se guardaron corruptos los PNGs. Me situé en la ventana de SystemUI.apk (WinRAR) recien compilado y empezé a buscar y eliminar los archivos que hacía referencia en los resultados que me arrojó MS-DOS durante la decompilación. Después, una vez he borrado todos los archivos que no logró encontrar según linea de comandos y que se guardaron erroneamente (esto puedes comprobarlo con tan solo verificar el peso de los PNGs originales con los del SystemUI re-compilado), y seleccioné los mismos pero esta vez en el SystemUI.apk original y los arrastre de esta ventana del WinRAR a la otra del SystemUI compilado y los añadi y volvi a comprimir en modo normal el paquete SystemUI compilado. Y listo. Con esto, quedó el archivo reparado. Espero que se me haya entendido, ya que lo espliqué muy rápido y sin tener orden jajaja. Última edición por CrashOverride93 Día 21/05/13 a las 15:46:53 |
|
#8
|
|
Había leido hace un rato sobre tu tema parecido en otro sitio y había visto nombrar tambien las herramientas que mencionas para parchear las imagenes.
Pero desearía que me confirmaras si mi método es igual de efectivo, ya que lo he probado y me va perfectamente. |
| Gracias de parte de: | ||
|
#9
|
|
|
Cita:
Pues no se aqué le llames efectividad. Yo prefiero hacer las cosas bien, por eso les expliqué a grandes rasgos el proceso que se debe seguir. Pero cada quién. Eso no cabe duda. |
|
#10
|
|
A ok, pues no sé entonces...
Parece que con mi método tambien se arregla, asique cada quien (como dices tú), será quien decida como hacerlo. Pero muchas gracias por compartirnos tus conocimientos acerca del tema!!! Y podrias decirme donde conseguir esas herramientas que mencionas para parchear dichos archivos? |
|
#11
|
|
Un poco de luz en el tema, por si os ayuda.
http://forum.xda-developers.com/show....php?p=9526315 https://sites.google.com/site/androi...ate-your-9-png http://www.droidforums.net/forum/dro...t-9-png-s.html http://code.google.com/p/android-cus...tion-autotool Saludos. |
|
#12
|
||||
|
||||
|
Cita:
|
|
#13
|
||||
|
||||
|
Para compilar y descompilar apks hay que tener cuidado con la versión del apktool y aapt.exe que se utilicen, lo mejor es utilizar siempre las últimas versiones. Hay buenos tutoriales para descompilar, compilar y tratar los archivos 9.png en la página de miui.es (aunque sean tutoriales para miui, también valen para el resto). Al principio puede parecer un poco complicado, pero hay que practicar...
|
|
#14
|
|
Si bueno, tw has esplicado pero te has saltado todo proceso de realizar la edicion!!!
|
|
#15
|
||
|
Cita:
![]() Por cierto, ¿no que tu método era igual de efectivo? ¿Qué salió mal? Cita:
Última edición por pesp2020 Día 24/05/13 a las 20:49:30 |
|
#16
|
|
|
Se te olvidó mencionar que hay que renombrar los iconos a modificar, eliminandoles el ".9" de su extención final para que te queden esos espacios exteriores libres.
Cita:
|
|
#17
|
|
Si esto era para explicarles por que pasaba el error ya tengo todo para un tutorial de esto y otro de compilar y descompilar lo hare por vídeo
|
|
#18
|
|
Ok, muy bien.
![]() |
| Respuesta |
Estás aquí
|
||||||
|
||||||
«
Tema Anterior
|
Siguiente tema
»
|
|
Hora actual: 17:28:36 (GMT +1)
HTCMania: líderes desde el 2007









