Ver Mensaje Individual
  #348  
Viejo 04/09/12, 14:15:25
Array

[xs_avatar]
nachomagic nachomagic no está en línea
Usuario muy activo
 
Fecha de registro: abr 2010
Mensajes: 1,235
Modelo de smartphone: Lg G7 thinQ

 Cita: Originalmente Escrito por intronauta Ver Mensaje
Sube el tema y el Settings.apk original para mirarlo. Nos interesa ver ese archivo.


Piensa que un .apk al final no es más que un formato comprimido, es un contenedor igual que .zip.
Hay ciertos compresores que al manipular la apk y por ejemplo comprimirla al máxima la dejan en un formato no estándar que por ejemplo con Winrar nunca nos percataremos de ese problema ya que los ignora, incluso a veces es por algún error al soltar y pegar archivos dentro.

Pero con UFT usamos 7zip (v9.20 si no recuerdo mal), un binario mucho más serio que Winrar que cuando detecta errores evita manipular esos archivos por seguridad, y todos los problemas para inyectar archivos en ciertas apks que hemos visto han sido siempre por esto. 7zip devuelve un error con las "flags" o devuelve un montón de "Unsupported Method" practicamente en todos archivos que contenga. Y no hace nada más, ni emite ningún mensaje más, así que no podrías obtener más log útil que el actual. Por eso nos limitamos a decir que hay un error, restauramos la apk original y poco más. Es más, el único mensaje de error que hemos implementado en el log cuando se morphea una apk es cuando se produce este error concreto, cuando 7zip falla por problemas compatibilidad con un formato "roto", así que si en las demás lo hace bien pero en esa no, lo más seguro es que esa apk concreta tenga aplicado un mod y haya sido manipulado con un compresor que la ha dejado en un formato "no estándar".

7zip es multiplataforma y está para windows, puedes intentar hacer un test de integridad de la apk a ver si devuelve algún error.

Una solución sencilla es extraer Settings.apk de tu sistema, renombrar a Settings.zip, descomprimirla con 7zip.exe, volverla a comprimir en zip y renombrar como apk. Casi seguro al 99% de que ya te dejará inyectarle sin devolver errores.

Se podría implementar esa operación de recomprimir una apk con un binario "zip" en vez de "7zip" cuando se detecten errores de formato, pero no podríamos garantizar la integridad de archivo, ya que los binarios que utilizamos en android no son tan completos como los del formato escritorio. Lo ideal, si se confirma este error, es reportárselo al cocinero para que lo tenga en cuenta.
Muchísimas gracias por contestar
Te subo los archivos solicitados
Settings.zip
Mi_Neutrino_v1_JB_AOKP.zip

La ROM en concreto por si os interesa es la Neutrino JB 1.1.1
http://forum.xda-developers.com/show...4#post31102054

He probado a hacerlo todo desde el principio con el win7zip y nada de nada, lo mismo
Responder Con Cita