PDA

Ver la Versión Completa : [TUTORIAL] Descompilar y recompilar .apk's


Danidudupoufo
09/07/13, 11:22:13
Bueno este tutorial lo tenía guardado en mi PC desde hace mucho y no recuerdo donde lo encontré pero yo no lo he elaborado. A mi me ha servido cuando lo he utilizado.

Vamos a necesitar:
- Aplicación "APK Manager 5.0.2". La podemos descargar de aquí (http://www.mediafire.com/download/5sq7sam82o81m11/Apk_Manager_5.0.2.zip).
- Editor de texto "Notepad++". Lo obtenemos aqui (http://notepad-plus-plus.org/download/v6.1.5.html).
-instalar java desde aqui (http://java.com/en/download/index.jsp)

extraemos "apkmanager.zip" en una carpeta que creemos en el escritorio
Una vez que se tiene el apkmanager podremos observar lo que contiene.

other -> son dependencias, librerias... el núcleo de la aplicación.
place-apk-here-for-modding -> aqui van los .apk que queremos decompilar para modificarlos.
place-apk-here-for-signing -> aqui van los .apk que queremos firmar, solo en aplicaciones que no sean del sistema, las de sistema no se firman.
projects -> aqui se crea el .apk decompilado que esta en place-apk-here-for-modding
Script.bat -> interfaz visual del programa.


Los pasos a seguir serían los siguientes:

Primero:
Copiamos el archivo .apk correspondiente a la carpeta "place-apk-here-for-moding".

Segundo:
Hacemos doble click en "Script.bat" y se nos abrirá una ventana de símbolo de sistema con el menu principal de la aplicacion.

Tercero:
Escribir 22 y pulsamos enter, ahí nos saldra la lista de .apks de la carpeta place-apk-here-for-modding, elegimos la que queramos con numeros.

Cuarto:
Elegimos la opción 9 (Descompilar).

Quinto:
Cuando se descompile, vamos a la carpeta "projects" y a la carpeta de la .apk descompilada, y vamos abriendo y modificando con Notepad++ los .xml necesarios.

Sexto:
Una vez modificado todo, regresamos al Símbolo del Sistema, elegimos la opcion 11 (Compilar). Si lo que tocamos lo hicimos bien, nos preguntara si es una aplicacion del sistema. Escribimos "y" y pulsamos enter. Luego nos preguntara si queremos hacer una carpeta temporal con los archivos originales. Le decimos que si ("y") y comenzara a descomprimir los archivos originales en la carpeta "keep" que creara solo el programa, llegara un momento que te pedira que pulses un boton para continuar. NO PULSAMOS NADA!

Septimo:
Vamos a la carpeta "keep" y eliminamos todo lo que hemos modificado.

* Si hemos modificado traducciones o la carpeta "values" borramos el resources.arsc.
* Si modificamos imagenes o xml simples pues borramos la carpeta entera donde se encuentre la imagen o el .xml modificado. Por ejemplo si modificamos los porcentajes de la bateria pues borramos la carpeta drawable entera

Octavo:
Volvemos a la interfaz grafica y ahora si pulsamos enter. Ahora esperamos que termine y vamos a la carpeta "place-apk-here-for-modding" hay tendremos la aplicacion recreada con el nombre unsignedaplicacion.apk. Si es aplicacion del sistema simplemente la renombramos (le quitamos el unsigned).

Si no fuera aplicacion del sistema la tendriamos que firmar.


Y esto es todo, si no hemos metido la pata en algún .xml todo habrá salido correctamente. Metemos la apk en un parche y flasheamos desde recovery.

salu2 y espero que os sirva :ok:

PD: En caso de no funcionar como le ocurre a mi querido amigo alejandro 3 comentarios más abajo aquí nuestro compañero Davek nos ha echado una mano como siempre :D

Vale yo te podria haber dicho la solución respecto a Java.
Te comento.
Windows tiene rutas de acceso a equis comandos que dan a funcion a algun programa o comando largo.

Por ejemplo:

Puedo hacer que en una ventana de comandos ponga "htcmania" y me abra automaticamente la pagina web en el navegador que prefiera.

La cosa es que hay veces que automaticamente no se configura.
Y ahora la pregunta del millon..

¿Como se configura los "atajos" de windows?
Te explico como, vas a "Equipo" click derecho "propiedades" ahora le das en la ventana a "opciones avanzadas/configuración avanzada" y el la ventana que se te cargara le das a "Variables de entorno" ahi verifica el comando java, si no, tendras que crearlo.


Saludos y espero que te haya servido mi respuesta.

kirtash124
09/07/13, 13:56:47
Muchas gracias tío, justo lo que necesitaba, estoy empezando a toquetear y traducir cosillas y esto me viene genial.

Danidudupoufo
09/07/13, 14:45:26
Muchas gracias tío, justo lo que necesitaba, estoy empezando a toquetear y traducir cosillas y esto me viene genial.

a mi me vino muy bien en su día ;) y visto que en este subforo vamos a tener que ir aprendiendo todos un poco más, pues comparto lo poquito que sé :risitas:

alelinareees
09/07/13, 15:33:02
vale muy bien daniel pero cuando voy por el 4º paso me salta esto (primera imagen)
cuando y cuando hago la accion 21 me sale esto (segunda imagen)
lo que me falla es algo de java pero no se que...

eloimuns
09/07/13, 15:35:35
vale muy bien daniel pero cuando voy por el 4º paso me salta esto (primera imajen)
cuando y cuando hago la accion 21 me sale esto (segunda imajen)
lo que me falla es algo de java pero no se que...

Instalaste JRE? (Java Runtime Enviroment)

Danidudupoufo
09/07/13, 15:41:41
Instalaste JRE? (Java Runtime Enviroment)

efectivamente, nada más ejecutarlo te dice que tienes que instalar java o no funcionará,
yo simplemente instalé java desde aquí (http://java.com/en/download/index.jsp) y listo, si no te funciona comenta de nuevo :)
y si te funciona también así lo indico en el primer post

y si me lo mandas por aquí no me lo mandes tambien por Whatsapp que me agobias mamon ;-) jajajjaa

PD: Ale tío hermano imagen no "imajen" JAJAJAJJA

alelinareees
09/07/13, 15:57:26
me sigue saliendo exactamente lo mismo.......... -.-

juanfran1984
09/07/13, 16:02:03
no sera porque el comando donde tienes extraido el apk manager es demasiado largo. me refiero a que prueba a descomprimir el zip del apk manager solo en el escritorio del ordenador

Danidudupoufo
09/07/13, 16:02:12
me sigue saliendo exactamente lo mismo.......... -.-

Pues te esperas a que vaya a Rota y me paso por tu casa a ver.. porque otra cosa.. o intenta arreglarlo tu...:lengua: jajajaja

eloygomez
09/07/13, 16:03:57
prueba a bajarte esto amigo: http://www.oracle.com/technetwork/es/java/javase/downloads/index.html

Danidudupoufo
09/07/13, 16:05:35
no sera porque el comando donde tienes extraido el apk manager es demasiado largo. me refiero a que prueba a descomprimir el zip del apk manager solo en el escritorio del ordenador

oye muy buena teoría esa.. prueba a dejarlo en destok dentro de una carpeta jajaja yo lo puse en ...destok/descompilación(cree esta carpeta)

eloygomez
09/07/13, 16:08:44
el problema viene porque no le reconoce JAVA instala lo que te eh comentado reinicias y pruebas, después comenta amigo..

Danidudupoufo
09/07/13, 16:15:18
el problema viene porque no le reconoce JAVA instala lo que te eh comentado reinicias y pruebas, después comenta amigo..

eso digo yo.. Ale has reiniciado? jajajaja esperemos que con eso funcione

alelinareees
09/07/13, 16:18:57
no sera porque el comando donde tienes extraido el apk manager es demasiado largo. me refiero a que prueba a descomprimir el zip del apk manager solo en el escritorio del ordenador

no.. lo he puesto en el escritorio dentro de una carpeta y me sigue sin funcionar



pero le he dado a 1-extract apk y me han salido las carpetas como si fuese descompilado y al compilar se me ha compilado normal

eloygomez
09/07/13, 16:20:20
Enserio instala esto amigo jejejeje

http://www.oracle.com/technetwork/es/java/javase/downloads/index.html

juanfran1984
09/07/13, 16:21:53
estoy pensando para que le das a la opcion 21?? y nose si sera lo mismo descompilar que extraer la apk. yo mira le doy a la opcion 22 si he puesto varias apks sino no. y despues no le doy a la opcion 9 de descompilar le doy a la 1 de extraer apk, la extrae en la carpeta proyectos y luego la modificas y le doy opcion 3 para meterla en el zip y luego al 4 para firmarla, esto del 4 fue lo que mas me costo a mi.

eloygomez
09/07/13, 16:26:45
la opción 21 es pata ver que java tienes instalado jejejeje....

Danidudupoufo
09/07/13, 16:28:27
a ver si solo vas a modificar iconos en .png o cualquier tontería basta con extraer... pero si quieres modificar .xml tienes que descompilarlo porque sino parecerá un "jeroglífico" lleno de signos sin sentido ajjaja

alelinareees
09/07/13, 16:31:28
acabo de reiniciar y sigue sin funcionar


voy a instalar lo que me has dicho eloygomez :ok:

Danidudupoufo
09/07/13, 16:32:32
acabo de reiniciar y sigue sin funcionar


voy a instalar lo que me has dicho eloygomez :ok:

a ver informanos ahora.. a mí nunca me ha fallado.. es raro jaja

alelinareees
09/07/13, 17:16:29
no hay manera... me sigue diciendo lo mismo pero ahora sale como si empezase a descompilar pero se cancela

Danidudupoufo
09/07/13, 17:24:22
dale a opcion 21, continua a listo

Davek_7
09/07/13, 21:00:46
Vale yo te podria haber dicho la solución respecto a Java.
Te comento.
Windows tiene rutas de acceso a equis comandos que dan a funcion a algun programa o comando largo.

Por ejemplo:

Puedo hacer que en una ventana de comandos ponga "htcmania" y me abra automaticamente la pagina web en el navegador que prefiera.

La cosa es que hay veces que automaticamente no se configura.
Y ahora la pregunta del millon..

¿Como se configura los "atajos" de windows?
Te explico como, vas a "Equipo" click derecho "propiedades" ahora le das en la ventana a "opciones avanzadas/configuración avanzada" y el la ventana que se te cargara le das a "Variables de entorno" ahi verifica el comando java, si no, tendras que crearlo.


Saludos y espero que te haya servido mi respuesta.

Danidudupoufo
09/07/13, 21:03:07
Vale yo te podria haber dicho la solución respecto a Java.
Te comento.
Windows tiene rutas de acceso a equis comandos que dan a funcion a algun programa o comando largo.

Por ejemplo:

Puedo hacer que en una ventana de comandos ponga "htcmania" y me abra automaticamente la pagina web en el navegador que prefiera.

La cosa es que hay veces que automaticamente no se configura.
Y ahora la pregunta del millon..

¿Como se configura los "atajos" de windows?
Te explico como, vas a "Equipo" click derecho "propiedades" ahora le das en la ventana a "opciones avanzadas/configuración avanzada" y el la ventana que se te cargara le das a "Variables de entorno" ahi verifica el comando java, si no, tendras que crearlo.


Saludos y espero que te haya servido mi respuesta.

vaya! :) curioso no tenía ni idea, te nombro en el primer post ;) y mil gracias

javierrf1984
10/07/13, 10:28:01
¿Con esto se podría modificar la interfaz de kurio 7 del canal infantil clan para instalarla en otras tablets?

Le compré a mi hijo la tablet del CLAN y es la mejor opción para niños pero la tablet se queda bastante corta, la he rooteado y he copiado el archivo apk de la interfaz, pero esta hecha para que solo funcione en esta tablet, no entiendo mucho del tema, no se si se puede pero quiero hacer esta aportación por que creo que para los que tenemos niños pequeños que cogen tablets seria muy interesante tener esto instalado. Si alguien entiende del tema me gustaría que modificara este gran launcher para niños, y no tener que pagar 180€ que vale esta porquería de tablet. Si llegais a conseguirlo contactad con migo y os mando el codigo de activación de la tablet de mi hijo.

https://mega.co.nz/#!ldtAEYAa!J90cJR...aXhdnRjSaiN7GM

juanfran1984
12/07/13, 19:51:57
Podrías poner alguna foto davek_7. Ando perdido y con miedo de tocar nada en mi windows vista. Gracias de antemano

juanfran1984
12/07/13, 22:28:39
Me sale esto pero no se si tengo activo el java. Porque a mi tambien al descompilar me da error y no termina de descompilar la apk

AlejBarrero
13/07/13, 00:54:26
Soy nuevo en el tema y quiero aprender algo de desarrollo y cocina, para que sirve este tutorial?

Danidudupoufo
17/07/13, 14:33:38
Soy nuevo en el tema y quiero aprender algo de desarrollo y cocina, para que sirve este tutorial?

descompilar un .apk, modificarlo al gusto, y despues volver a compilarlo para instalarla

m80dv
16/08/13, 14:46:59
¿Funciona con las apk´s de Huawei?

No he conseguido ni siquiera instalar el framework-res.apk (de huawei) en el apktools o apkmanager

alfonso1010
16/08/13, 15:16:14
yo si lo he conseguido sin embargo a la hora de modificar algo me salen errores al compilar pero recuerden esto tiene que ver mucho on java como dice el compañero daveck_7 hayque crear las variables de entorno de java en nuestro pc manualmente haciendo eso ya no saldra error al descopilar ni compilar

juanfran1984
16/08/13, 15:20:31
yo si lo he conseguido sin embargo a la hora de modificar algo me salen errores al compilar pero recuerden esto tiene que ver mucho on java como dice el compañero daveck_7 hayque crear las variables de entorno de java en nuestro pc manualmente haciendo eso ya no saldra error al descopilar ni compilar

Haz un tuto tu que eres grande alfonso.

juanfran1984
16/08/13, 15:22:02
Alfonso dale caña que si sigues asi habra que pedirte rango de cocinero

alfonso1010
16/08/13, 15:28:16
amm es complicado y ala vez sensillo es complicado crear las variables bueno almenos ami que solo tengo 16 años me revolvi un poco pero basta con crear las variables una vez creadas reinician el pc y despues ya intalan el apk tool o cualquiera para descompilar y no les dara errores

yo cree las variables siguiendo este tutorial en mi windos 7 http://www.aprenderaprogramar.com/index.php?option=com_content&id=389:configurar-java-en-windows-variables-de-entorno-javahome-y-path-cu00610b&Itemid=188 recuerden instalar java antes de todo

argo7
16/08/13, 15:29:12
yo si lo he conseguido sin embargo a la hora de modificar algo me salen errores al compilar pero recuerden esto tiene que ver mucho on java como dice el compañero daveck_7 hayque crear las variables de entorno de java en nuestro pc manualmente haciendo eso ya no saldra error al descopilar ni compilar

Si saldra error al compilar ya que es por huawei que nose que hace pero es imposible decompilar apps de este movil.
Con cm10 se decompila perfecto. Es problema de emotionUI

alfonso1010
16/08/13, 15:32:41
Si saldra error al compilar ya que es por huawei que nose que hace pero es imposible decompilar apps de este movil.
Con cm10 se decompila perfecto. Es problema de emotionUI

bueno amigo no se yo si logre descompilar el system ui luego le di a compilar y lo compilo ojo si no mueves nada los descompila perfectamente pero le movi hay en settings y me sali error asi que creo que en si si se pueden descompilar pero al modificar algo te salen errores jeje

argo7
16/08/13, 15:33:56
bueno amigo no se yo si logre descompilar el system ui luego le di a compilar y lo compilo ojo si no mueves nada los descompila perfectamente pero le movi hay en settings y me sali error asi que creo que en si si se pueden descompilar pero al modificar algo te salen errores jeje

Hombre ya. Pero si no modificas nada no necesitas decompilar

alfonso1010
16/08/13, 15:40:13
Hombre ya. Pero si no modificas nada no necesitas decompilar

jajaj de hecho sii en eso tienes razon

m80dv
16/08/13, 16:34:36
Si saldra error al compilar ya que es por huawei que nose que hace pero es imposible decompilar apps de este movil.
Con cm10 se decompila perfecto. Es problema de emotionUI

Gracias!

frikiman004
14/04/14, 11:15:08
Hola chicos. Teniendo en cuenta que el ultimo mensaje fue d hace casi un año, tampoco voy a esperar milagros....
Para empezar, decir que he seguido lo que se pone en este tuto. Tambien he seguido lo que ponian en otras tantas haciendo referencia al framework-res.apk con apktool y tampoco.
La cosa esta en que cada vez que intento descompilar me sale esto:

java version "1.7.0_51"
Java(TM) SE Runtime Environment (build 1.7.0_51-b13)
Java HotSpot(TM) Client VM (build 24.51-b03, mixed mode, sharing)
No se pudo encontrar D:\Escritorio\apkmanager\place-apk-here-for-modding\../place-apk-here-for-modding/signedSystemUI.apk
No se pudo encontrar D:\Escritorio\apkmanager\place-apk-here-for-modding\../place-apk-here-for-modding/unsignedSystemUI.apk
I: Baksmaling...
I: Loading resource table...
Exception in thread "main" brut.androlib.AndrolibException: Multiple resources: spec=0x7f0a000e dimen/status_bar_icon_drawing_size, config=-v13
at brut.androlib.res.data.ResConfig.addResource(ResCo nfig.java:65)
at brut.androlib.res.data.ResConfig.addResource(ResCo nfig.java:58)
at brut.androlib.res.decoder.ARSCDecoder.readEntry(AR SCDecoder.java:196)
at brut.androlib.res.decoder.ARSCDecoder.readConfig(A RSCDecoder.java:165)
at brut.androlib.res.decoder.ARSCDecoder.readType(ARS CDecoder.java:130)
at brut.androlib.res.decoder.ARSCDecoder.readPackage( ARSCDecoder.java:105)
at brut.androlib.res.decoder.ARSCDecoder.readTable(AR SCDecoder.java:82)
at brut.androlib.res.decoder.ARSCDecoder.decode(ARSCD ecoder.java:48)
at brut.androlib.res.AndrolibResources.getResPackages FromApk(AndrolibResources.java:315)
at brut.androlib.res.AndrolibResources.loadMainPkg(An drolibResources.java:50)
at brut.androlib.res.AndrolibResources.getResTable(An drolibResources.java:43)
at brut.androlib.Androlib.getResTable(Androlib.java:4 4)
at brut.androlib.ApkDecoder.getResTable(ApkDecoder.ja va:148)
at brut.androlib.ApkDecoder.decode(ApkDecoder.java:98 )
at brut.apktool.Main.cmdDecode(Main.java:120)
at brut.apktool.Main.main(Main.java:57)

En projects me aparece una carpeta, pero todo aparece en formato smali y no aparece nada en xml para poder revisar los codigos (que es lo que intento). Asi que..... No tengo ni idea de que hacer ni que intentar. Solamente decir que tengo el apkmanager 5.0.2 y estoy intentando descompilar el SystemUI.apk
Eternamente agradecido a quien me ayude. X-D

EDITO: Vale, ya esta. Me he bajado el APK-multitool v1.0.1.1 y ahora si lo he conseguido :platano:

Naikkon
14/04/14, 17:32:55
omg No one make tutorials on ENGLISH !!

leyla01
26/08/15, 22:00:44
tengo el mismo error he tratado pero nada

https://copy.com/ylLCXI4hjMT21VnW


https://copy.com/drjUru1IwGT3FlUf


eso es lo que me sale no paso del paso cuarto, espero alguien pueda ayudarme ando ya a la desesperada, probe hasta con este tuto https://www.youtube.com/watch?v=d_imW9jAct0 , y android me saco el mensaje de archivo no instalado. :(:(:(

espero alguien pueda ayudarme gracias de ante mano :dios: