Ver Mensaje Individual
  #1  
Viejo 26/11/11, 22:50:19
Array

[xs_avatar]
titoodj titoodj no está en línea
Cocinero veterano
 
Fecha de registro: ago 2010
Localización: Alcorcón
Mensajes: 1,084
Modelo de smartphone: Samsung Galaxy S3
Tu operador: Orange
Guia rapida sobre uso de apktool (Descompilar, Modificar y Compilar apk)

Visto que hay personas que intentan hacer sus MODs, aqui os dejo una pequeña guia rapida de como poder utilizar la herramienta apktool para descompilar y compilar .apk

Lo primero que tenemos que hacer, es descargarnos el apktool de aqui: apktool

Una vez descargado esto, descomprimimos el .rar en una carpeta, que en este caso yo voy a llamar apktool (puede tener el nombre que quieras y lo podemos descomprimir en el lugar que quieras)

Vamos a empezar a trastear con las aplicaciones. Podemos hacer dos distinciones:

ROMS Sense

-Descomprimimos el apktool.rar donde nosotros queramos, en este caso yo lo voy a descomprimir en el Escritorio.
-Copiamos el framework-res.apk, com.htc.resources.apk y la .apk de la Rom que queramos modificar, por ejemplo SystemUI.apk
-Desde la linea de comandos de windows o tambien llamado CMD (podemos encontrarlo haciendo click en el boton de inicio de windows y tecleando CMD) nos situamos en la carpeta apktool del escritorio. Para moverse por distintas carpetas desde el CMD utilizaremos el comando:

Código:
cd (nombre de la carpeta)
y para retroceder a la carpeta anterior a la que estamos utilizaremos el siguiente (al decir anterior no me refiero en la que tu hallas estado antes, si no la que lleva a la carpeta en la que estas)

Código:
cd..
Con esto si por ejemplo queremos ir a la carpeta apktool del Escritorio tendre que escribir

Código:
cd Desktop/apktool
Una vez situados en la carpeta que queremos desde el CMD, introducimos en la linea de comandos lo siguiente y pulsamos enter

Código:
apktool if framework-res.apk
Ahora introducimos esto y pulsamos enter

Código:
apktool if com.htc.resources.apk
Si por ahora esto ha salido bien, nos saldran los siguientes mensajes

Código:
I: Framework installed to: C:\Users\TitooDJ\apktool\framework\1.apk
I: Framework installed to: C:\Users\TitooDJ\apktool\framework\2.apk
Una vez hallamos echo esto, ahora vamos a descompilar la aplicacion que queremos con el comando

Código:
apktool d (nombre de la aplicacion).apk
en mi caso seria

Código:
apktool d Systemui.apk
En el caso de que nos dijera que la aplicacion ya esta descomprimida y que si quieremos sobreescribirla, tendriamos que escribir lo siguiente

Código:
apktool d -f (nombre de la aplicacion).apk
Una vez hecho esto, en la carpeta apktool veremos que se a creado una carpeta con el nombre de la aplicacion que hemos descompilado, en mi caso se crearia una carpeta con el nombre SystemUI.

Aqui es cuando llega el momento de modificar todo lo que queramos.

Una vez hecho ya todas las modificaciones, procederemos a compilar lo que hemos modificado con el siguiente comando

Código:
apktool b (nombre de la carpeta de la aplicacion)
en mi caso seria

Código:
apktool b Systemui
ES IMPORTANTISIMO QUE A LA HORA DE COMPILAR NO PONGAIS .APK, YA QUE SI NO OS VA A DAR ERROR.

Una vez compilado, abrimos la carpeta de la aplicacion, en mi caso SystemUI, y ahi veremos que se han creado dos carpetas nuevas, una con el nombre build y otra con el nombre dist. En la carpeta Build, estan los archivos de la aplicacion pero ya compilados, mientras que en la carpeta Dist, ya esta creado el .apk.

En el caso de que sea un .apk del sistema no hace falta firmarlo, pero si no lo es, hay que firmarlo. Para ello yo utilizo la herramienta apkmanager. Es muy intiutiva, pero de todas maneras si necesitais una ayuda, decirmelo y modifico el tuto explicando como firmar .apk

ROM No Sense (CM7, Miui,...)

-Descomprimimos el apktool.rar donde nosotros queramos, en este caso yo lo voy a descomprimir en el Escritorio.
-Copiamos el framework-res.apk, com.htc.resources.apk y la .apk de la Rom que queramos modificar, por ejemplo SystemUI.apk
-Desde la linea de comandos de windows o tambien llamado CMD (podemos encontrarlo haciendo click en el boton de inicio de windows y tecleando CMD) nos situamos en la carpeta apktool del escritorio. Para moverse por distintas carpetas desde el CMD utilizaremos el comando:

Código:
cd (nombre de la carpeta)
y para retroceder a la carpeta anterior a la que estamos utilizaremos el siguiente (al decir anterior no me refiero en la que tu hallas estado antes, si no la que lleva a la carpeta en la que estas)

Código:
cd..
Con esto si por ejemplo queremos ir a la carpeta apktool del Escritorio tendre que escribir

Código:
cd Desktop/apktool
Una vez situados en la carpeta que queremos desde el CMD, introducimos en la linea de comandos lo siguiente y pulsamos enter

Código:
apktool if framework-res.apk
Si por ahora esto ha salido bien, nos saldra el siguiente mensaje

Código:
I: Framework installed to: C:\Users\TitooDJ\apktool\framework\1.apk
Una vez hallamos echo esto, ahora vamos a descompilar la aplicacion que queremos con el comando

Código:
apktool d (nombre de la aplicacion).apk
en mi caso seria

Código:
apktool d Systemui.apk
En el caso de que nos dijera que la aplicacion ya esta descomprimida y que si quieremos sobreescribirla, tendriamos que escribir lo siguiente

Código:
apktool d -f (nombre de la aplicacion).apk
Una vez hecho esto, en la carpeta apktool veremos que se a creado una carpeta con el nombre de la aplicacion que hemos descompilado, en mi caso se crearia una carpeta con el nombre SystemUI.

Aqui es cuando llega el momento de modificar todo lo que queramos.

Una vez hecho ya todas las modificaciones, procederemos a compilar lo que hemos modificado con el siguiente comando

Código:
apktool b (nombre de la carpeta de la aplicacion)
en mi caso seria

Código:
apktool b Systemui
ES IMPORTANTISIMO QUE A LA HORA DE COMPILAR NO PONGAIS .APK, YA QUE SI NO OS VA A DAR ERROR.

Una vez compilado, abrimos la carpeta de la aplicacion, en mi caso SystemUI, y ahi veremos que se han creado dos carpetas nuevas, una con el nombre build y otra con el nombre dist. En la carpeta Build, estan los archivos de la aplicacion pero ya compilados, mientras que en la carpeta Dist, ya esta creado el .apk.

En el caso de que sea un .apk del sistema no hace falta firmarlo, pero si no lo es, hay que firmarlo. Para ello yo utilizo la herramienta apkmanager. Es muy intiutiva, pero de todas maneras si necesitais una ayuda, decirmelo y modifico el tuto explicando como firmar .apk

Espero que os halla ayudado y que os animeis a crear vuestros mods y luego los compartais con todos nosotros.
Responder Con Cita
Los siguientes 24 usuarios han agradecido a titoodj su comentario:
[ Mostrar/Ocultar listado de agradecimientos ]