domingo, 29 de enero de 2012

[ANDROID] Crear animación de Inicio

He pensado en realizar un manual de creación y edición animaciones de inicio pero e encontrado uno ya realizado y muy bien explicado aquí:
http://mioptimusone.com/foros/viewtopic.php?f=10&t=49

Por lo que os dejo la fuente y añado el manual a mi Blog con algunas aclaraciones y extras añadidos que pienso que faltan en el manual entre otras cosas.

JERARQUÍA DE DIRECTORIOS
El archivo de la animación de inicio se encuentra en:
system/media/bootanimation.zip
                      o
data/local/bootanimation.zip

Esto depende de la ROM o móvil.

SONIDO EN ANIMACIÓN
El archivo que se encarga de el sonido se encuentra en:
system/media/bootaudio.mp3
                     o
data/local/bootaudio.mp3

Solo debe borrarlo si no desea sonido en la animación y si desea algún sonido añadirlo con este nombre y formato mp3.


INTRODUCCIÓN
Las animaciones de booteo o bootanimation son imágenes que se muestran en secuencia al momento que el equipo esta cargando el sistema, esta funcionalidad se activa mediante un script que se puede instalar via la cocina, en este tutorial vamos a armar una animación que se vera mas o menos así:






MANUAL

Lo primero es tener las imágenes que conformaran la animacion de booteo, tal como se indico las bootanimation son imagenes en secuencia:




Las bootanimation.zip son archivos zipeados (sin compresión) donde las secuencias se separan en carpetas y un archivo de texto es el que indica como se ejecutan estas secuencias, para este ejemplo vamos a usar las dos primeras imagenes como una secuencia unica en la que la carita aparece y las tres ultimas imagenes van a ser otra secuencia que se repetira indefinidamente dando la impresion de un movimiento en los tres circulos pequeños. Para esto creamos dos carpetas, part0 y part1, cada una contendra una secuencia



Ponemos las dos primeras imagenes en la carpeta part0 y las otras tres en la carpeta part1



luego creamos el archivo de texto que dara las instruccciones, un archivo de texto simple llamado desc.txt con el siguiente contenido:

CÓDIGO:
320 480 10
p 1 0 part0
p 0 0 part1


- En la primera linea se indica la resolucion (320x480) y velocidad en cuadros por segundo (10 equivale a 10 fps)

- La segunda linea indica que la primera secuencia sera la carpeta "part0" y que se emitira solo una vez (el 1) y con 0 segundos de pausa (el 0)

- La tercera linea indica que la siguiente secuencia sera la carpeta "part1" y que se emitira indefinidamente (el primer 0) con 0 segundos de pausa (el segundo 0) despues de la primera secuencia.

Una vez que tenemos el archivo de texto listo zipeamos sin compresión los tres elementos (las dos carpetas y el desc.txt) y nombramos el zip como bootanimation.zip, lo siguiente es pegar el archivo en la ruta: data/local/ o system/media/ según modelo o ROM de nuestro móvil, se puede hacer con Root Explorer copiando y pegando o via adb hacemos un push:


CÓDIGO:
adb push bootanimation.zip data/local/                   oadb push bootanimation.zip system/media/


Para verla reincien el teléfono o via adb:

CÓDIGO: 
adb shell bootanimation


y cuando quieran deternerla presionan Ctrl+C




TIPS

- El zip debe ser hecho sin compresión
- En el desc txt siempre debe haber una linea en blaco al final, esto es muy importante
- Usen pngs o jpgs con colores RGB de 8 o 16 bits y deben estar nombrados de manera consecutiva (0001, 0002, etc) para que la animación se vea correctamente
- Cuando el zip este hecho revisenlo desde el 7-zip o similar, si encuentran dentro archivos llamados Thumbs.db borrenlos

Descarga el ejemplo mostrado


2 comentarios:

  1. Hola,
    excelente tutorial jesus!!!!

    tengo dos preguntas me gustaria me aclararas:

    en un determinado movil(u8800 por ejemplo), ¿podemos saber de antemano el directorio de la animacion( data/local/ o system/media/ ¿o system/customize/resources/?) o para ello debemos probar todos uno a uno?

    ¿como administrador de ficheros con cual te quedas:Rootexplores o ES File Explorer?¿algo k destacar de uno sobre otro?

    Gracias, saludos jesus:D

    ResponderEliminar
  2. Yo creo que el Es File Explorer es mejor porque puedes desinstalar aplicaciones siendo root y poner un server FTP para pasar archivos desde el oredenador al movil o viceversa sin tener que conectar el cable. También puedes conectar tus cuentas de Dropbox, Google Drive, Sugarsync y unos cuantos más y pasar archivos para allá como si fueran parte del teléfono esas carpetas.

    ResponderEliminar