Usuario:ManuelRomero/Android/recursos/Teoria

De WikiEducator
< Usuario:ManuelRomero‎ | Android
Revisión a fecha de 04:11 13 dic 2013; ManuelRomero (Discusión | contribuciones)

(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
Saltar a: navegación, buscar
Road Works.svg Trabajo en proceso, espera cambios frecuentes. Tu ayuda y retroalimentación son bienvenidos.
Ver página de charlas.
Road Works.svg



Qué es un recurso

Tipos de recursos

Recursos de la aplicación

Assets: recursos directos o no compilados

En un proyecto android existe una carpeta llamada /assets que en principio está vacía. Su objetivo es almacenar ficheros externos a la aplicación que serán distribuidos junto con nuestro .apk (formará parte de la compilacón).

Posteriormente en el programa se puede recuperar los ficheros ahí depositados y navegar por esa carpeta (directorios, ficheros) como si fuera un sistema de ficheros normla de un SO. En general tengo diferentes sitios para ubicar ficheros (res, targeta SD, asset).

Los ficheros que ubiquemos en /res son accesibles como un recurso identificado en la clase R (clase generado de forma autmática para darme una referencia a cada recurso de mi aplicación).  Los ficheros colocados  en el directorio /asset podrán ser accedidos como si fuera en un sistema de ficheros, sin ningún tipo de restricción  Útil por ejemplo para guardar datos de un juego, o la configuración de una aplicación, …)

Otra opción para guardar información es usar una base de datos, por ejemplo  SQLLite, sobre todo indicado cuando la información esté estruturada (pensemos en una tabla).

Para gestionar los recursos ubicado en la carpeta /asset procederemos

Físicamente ubicamos los ficheros en la carpeta

En el código necesitamos un objeto que permita gestionar este recurso (objeto de la clase AssetManager)

Estos recursos no generan un ID en la clase R, por lo que debemos especificar el nombre y la ruta para acceder a ellos (usando la clase AssetManager, como ya hemos indicado).

Conclusion

Nosotros podemos almacenar ficheros en recursos y también en asset permite establecer jerarquía de ficheros, cosas que res no permite, en esta línea los ficheros ubicados en la carpeta res son más restrictivos y su acceso es menos libre (hay que acceder a través del Id que se general en la clase R). MRM Hacer algo que se puede hacer tanto en res como en asset para ver diferencia.