20 de abril de 2012

[Tutorial] Reemplazar Icono del Launcher de Android



Buenas, pues un nuevo tutorial que espero que os llame la atención y os guste. En este caso para reemplazar el icono que nos aparece en la parte inferior central, el que da acceso al menú en el que tenemos todas las aplicaciones que tenemos instaladas en nuestro dispositivo. Os aviso de que es un tutorial largo porque me gusta explicar en detalle las cosas, por si hay alguien por ahí tan perdido como yo, pero en realidad son unos pocos pasos los que hay que llevar a cabo y una vez lo hagáis una vez seguro que os animáis a cambiar el icono de vez en cuando.

Yo tengo un Nexus S, y me aparecía una imagen bastante sosa, y la verdad es que me daba envidia de algún vídeo que he visto en el que aparecía el símbolo de Nexus en lugar del que tengo yo. Empezamos:

Lo primero decir que no he conseguido hacerlo con Mac, porque he necesitado un programa que aunque tiene versión para Mac no he sabido utilizar (no soy nada experto), dentro de lo malo yo tengo Parallels instalado, por lo que ningún problema, si tenéis Windows mejor y si os animáis a probar alguna otra manera de hacerlo 100% con Mac y me lo decís pues modifico el tutorial.

Bueno, lo primero es descargarse el SDK de Android desde la página oficial, elegiremos el sistema operativo que nos venga mejor, en mi caso Mac OS X.



Descomprimimos y yo, por comodidad, recomiendo cambiar el nombre de la carpeta a, por ejemplo, "sdk".

Entramos en la carpeta "tools" y abrimos el archivo "Android", lo que nos abrirá una ventana del terminal y la ventana propiamente dicha del Android SDK Manager en la que veremos lo que tenemos y no tenemos instalado, si hay alguna actualización. Yo en este caso he actualizado, dentro de la carpeta Tools que vemos, los dos componentes que aparecen:


Una vez hecho esto nos toca trastear el móvil, en principio no hace falta ser ROOT, aunque puede que eso haga algunas cosas más sencillas. Vamos por pasos:

Lo primero es tener el móvil en modo de Depuración o Debugging, para ello vamos al menú de Ajustes  > Desarrollador > Depuración



Conectamos el móvil al ordenador y lo que vamos a hacer es extraer de él el llamado "Laucher" o mal llamado en español "Lanzador" de aplicaciones, ya que es el que contiene la información del icono que queremos cambiar (entre otras muchas cosas).

Para extraer este archivo, si eres root, basta tener instalado un explorador de archivos como Root Browser o similar, buscar el archivo "Launcher2.apk" dentro del directorio system/app/ copiarlo y pegarlo en el escritorio y pasar al siguiente paso, pero aquí lo vamos a explicar para los no roots.

Para ello, con el SDK abierto, abrimos una nueva ventana del Terminal. Para los no entendidos (como yo), lo que vamos a hacer es acceder a la herramienta llamada ADB, que se encuentra dentro de la carpeta sdk que descargamos antes y, para ello tendremos que ir accediendo a las diferentes carpetas:

En la ventana del terminal escribiremos los siguientes comandos:

cd desktop (pulsamos intro)
cd sdk (pulsamos intro)
cd platform-tools (pulsamos intro)


Os dejo una captura (los datos tachados son datos personales, a vosotros os debería salir vuestro nombre y el nombre de usuario correspondiente):



Lo siguiente es utilizar la herramienta adb, y empezaremos viendo si hemos conectado correctamente el dispositivo y si éste ha sido reconocido, para ello tecleamos el comando ./adb devices lo que nos devolverá una lista de números de serie de los dispositivos conectados, en este caso solo uno.
IMPORTANTE: si estáis en Mac es imprescindible colocar el punto y la barra delante del comando, si estáis en Windows no hace falta]

En mi caso dice, el comando me devuelve este resultado:

List of devices attached
3035XXXXX31F00EC device

Si os dice que no hay dispositivos es que habéis hecho mal algún paso previo.

Ahora lo que queremos es sacar el "Launcher" a nuestro ordenador, para lo que ejecutamos el siguiente comando:

./adb pull ./system/app/Launcher2.apk Launcher2.apk (Pulsamos intro)

Si lo hemos escrito bien, nos aparecerán los datos de la transmisión del archivo, y este se habrá copiado dentro de la carpeta 'Platform-tools', dentro de la carpeta sdk. Esta es una captura del terminal en este momento y dónde queda alojado el archivo que hemos descargado del terminal:




Por comodidad, no cerréis la ventana del terminal, aunque si ya lo habéis hecho no pasaría nada.

Ahora lo que tenemos que hacer es ver el contenido de este apk, para ello seguro que hay varios programas para Mac, si descubrís alguno que funcione avisadme y modifico el tutorial. Yo he llegado hasta uno llamado 7-Zip, en su página de descargas vemos que hay 3 enlaces para Mac: uno de ellos está caído, otro dirige a un Torrent que no abre los archivos APK, y el que está en medio es el que yo he probado con nulo resultado.

Por ello yo recomiendo que os descarguéis el archivo .exe que hay en primer lugar. Si estáis desde un ordenador con Windows no tenéis problema, y si estáis desde un Mac como yo tenéis dos opciones, instalar o emplear una máquina virtual que ya tengáis instalada o utilizar un segundo ordenador con Windows para seguir con el proceso. Sé que es un fastidio, pero de momento yo no he sabido buscar otra alternativa. Si la descubrís agradecería que dejarais un comentario al respecto.


Seguimos. Una vez descargado e instalado el explorador 7-Zip localizamos en él nuestro archivo Launcher2.apk y entramos en el directorio res>drawable-hdpi (el nombre de esta carpeta podría diferir ligeramente según el dispositivo). Dentro de esta carpeta vemos que hay muchas imágenes de diferentes iconos, fondos de pantalla, etc. Todos ellos los podemos modificar (con cuidado), pero los que nos interesan en este caso son los archivos que se llaman "ic_allapps.png" y "ic_allapps_pressed.png", que corresponden a la imagen en sí y la que aparecerá cuando presionemos el botón.

En este momento podemos o bien extraer las imágenes para usarlas como plantilla o usarlas como referencia, etc, o eliminarlas directamente. Yo voy a optar por descargarlas por si en un futuro quisiera revertir el cambio.

Seleccionamos ambas imágenes y en la barra superior pulsamos el botón azul que dice Extract, tras lo que aparecerá una nueva ventana que nos permitirá elegir el destino:



Obtenemos, en mi caso, estas dos imágenes:

Hay que reseñar que usaré estas imágenes tan solo para respetar las dimensiones y no subir una imagen demasiado grande o pequeña. En mi caso, un Nexus S, estas imágenes son de 72x72 pixeles, por lo que cualquier imagen que ponga para sustituir no deberá superar estas medidas. Yo he optado por descargar el símbolo de Nexus, pero aquí podéis poner cualquier imagen que se os ocurra, si lo lleváis a cabo poned capturas en los comentarios.

Estos son mis iconos, veréis que son iguales porque el fondo es blanco, pero al igual que los iconos de arriba, uno de ellos está resaltado. También podría quedar bien poner imágenes totalmente distintas, o un botón que cambiara de color.... las posibilidades son infinitas.




Una vez tengamos los iconos listos es importante renombrarlos del mismo modo que los originales, teniendo siempre en cuenta cual es el icono que aparecerá en reposo y cual el que se mostrará cuando presionemos el botón.

Cuando lo tengamos, tan solo es cuestión de eliminar los iconos originales dentro de la carpeta "res>drawable-hdpi" (si no lo hicimos antes) y arrastrar dentro los nuevos, confirmamos que queremos copiarlos y listo, ya tenemos un archivo Launcher2.apk modificado con nuestro icono.

Ahora hay que meterlo en el terminal nuevamente, aviso que esta es la parte más "complicada", aunque como el archivo Launcher2.apk que tenemos en nuestro ordenador es una copia del que hay en el teléfono, no tiene gran riesgo.

En este paso vamos a curarnos en salud, ya que hay varios métodos y en algunos depende de si se es root o no, pero como este tutorial es para los no root vamos a dar algún paso más de lo normal, que nos debería llevar hasta el final sin complicaciones. Estos pasos extra se deben a que el archivo Launcher2.apk que se encuentra en nuestro terminal no se puede reemplazar (si no se es root), por lo que hemos de modificar los permisos de la carpeta que lo contiene para poder realizar el cambio. No os preocupéis porque luego volvemos a dejarlo todo como estaba y tan solo son un par de comandos.  Al lío:

Si no conserváis abierta la ventana del terminal de antes, introducimos los comandos que explicaba al principio del tutorial:


cd desktop (Pulsamos intro)
cd sdk (Pulsamos intro)
cd platform-tools (Pulsamos intro)


Y a continuación los siguientes comandos (recordad lo del punto y la barra si no estáis en Mac):

./adb shell (Pulsamos intro y nos sale una nueva línea con un símbolo del dolar $)
su (Pulsamos intro y nos sale una nueva línea con una almohadilla #)
mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system  (Pulsamos intro y nos sale una nueva línea con una almohadilla #)
chmod 777 /system/app/ (Pulsamos intro y nos sale una nueva línea con una almohadilla #)
exit (Pulsamos intro y nos sale una nueva línea con un símbolo del dolar $)
exit (Pulsamos intro y volveremos a tener una línea con nuestro nombre y nombre de usuario)


Hasta aquí hemos cambiado los permisos de la carpeta en la que se encuentra el archivo APK, ahora vamos a introducirlo, una vez más, si se es root este paso es tan sencillo como meter el archivo apk en la tarjeta del teléfono y CON un explorador de archivos como Root Browser o similar meterlo dentro del directorio system/app/

Los no root introduciremos estos comandos:
./adb push Launcher2.apk ./system/app/ (Pulsamos intro)


Si lo hemos hecho bien, nos aparecerán de nuevo los datos de la transmisión del archivo:



En teoría ya hemos terminado, pero en un breve paso vamos a restaurar los permisos que modificamos anteriormente, por dejarlo todo como estaba:

./adb shell (Pulsamos intro y nos sale una nueva línea con un símbolo del dolar $)
su (Pulsamos intro y nos sale una nueva línea con una almohadilla #)
chmod 755 /system/app/ (Pulsamos intro y nos sale una nueva línea con una almohadilla #)
exit (Pulsamos intro y nos sale una nueva línea con un símbolo del dolar $)
exit (Pulsamos intro y volveremos a tener una línea con nuestro nombre y nombre de usuario)



Y aquí termina el tutorial, os dejo un par de capturas de cómo ha quedado mi Nexus S para que os hagáis una idea. Si tenéis alguna duda o alguna sugerencia para mejorar el tutorial, dejad un comentario, y si os ha parecido interesante, ¡compartidlo!





Un saludo, gracias por leer.

No hay comentarios:

Publicar un comentario

TODAS LAS ENTRADAS

Post Widget by Hoctro

Datos personales