Carpeta de activos en Android Studio

Se puede notar que a diferencia de Eclipse ADT (Herramientas de desarrollo de aplicaciones), Android Studio no contiene una carpeta de Activos en la que generalmente usamos para guardar los archivos web como HTML . Los activos proporcionan una forma de agregar archivos arbitrarios como texto, XML, HTML, fuentes, música y video en la aplicación. Si uno intenta agregar estos archivos como » recursos «, Android los tratará en su sistema de recursos y no podrá obtener los datos sin procesar. Si uno quiere acceder a los datos intactos, los Activos son una forma de hacerlo. Pero surge la pregunta: ¿por qué en la carpeta de activos? Podemos hacer lo mismo creando una Carpeta sin procesar de recursos. Entonces, analicemos cómo la carpeta de activos es diferente de la carpeta Resource Raw. 

¿En qué se diferencia la carpeta de activos de la carpeta Resource Raw? 

En Android, se puede almacenar el archivo de activos sin procesar como JSON, texto, mp3, HTML, pdf, etc. en dos ubicaciones posibles:

  1. activos
  2. carpeta res/sin procesar

assets and raw folder

Ambos parecen ser iguales, ya que pueden leer el archivo y generar InputStream como se muestra a continuación

// De activos

activos.open(rutaActivoNombreArchivo)

// Desde res/sin procesar

recursos.openRawResource(resourceRawFilename)

Pero, ¿cuándo usar qué carpeta?

A continuación se ofrece una guía que puede ser útil para elegir

1. Nombre de archivo flexible: (activos es mejor)

  • activos: el desarrollador puede nombrar el nombre del archivo de cualquier forma, como letras mayúsculas (nombre del archivo) o espacio (nombre del archivo).
  • res/raw: En este caso, el nombre del archivo está restringido. Los nombres de recursos basados ​​en archivos deben contener solo az minúsculas, 0-9 o guión bajo.

2. Almacenar en subdirectorio: (posible en activos)

  • activos: si el desarrollador desea clasificar los archivos en subcarpetas, puede hacerlo en activos como se muestra a continuación.

assets folder

  • res/raw: en este caso, los archivos solo pueden estar en la carpeta raíz.

3. Comprobación en tiempo de compilación: (posible en res/raw)

  • assets: Aquí, la forma de leerlo en InputStream se muestra a continuación. Si el nombre del archivo no existe, entonces debemos capturarlo.

activos.open(“nombre de archivo”)

  • carpeta res/raw: aquí, la forma de leerlo en InputStream es:

recursos.openRawResource(R.raw.filename)

Por lo tanto, colocar un archivo en la carpeta res/raw garantizará el nombre de archivo correcto durante la verificación del tiempo de compilación.

4. Lista de nombres de archivo en tiempo de ejecución: (posible en activos)

  • activos: si el desarrollador desea enumerar todos los archivos en la carpeta de activos, ha utilizado la función list() y proporciona el nombre de la carpeta o » « en la carpeta raíz como se indica a continuación.

activos.list(FOLDER_NAME)?.forEach {  

   imprimir (es)

}

  • res/raw: Esto no es posible en esta carpeta. El desarrollador debe conocer el nombre del archivo durante el desarrollo y no durante el tiempo de ejecución.

Entonces, en los activos, uno puede leer el nombre del archivo durante el tiempo de ejecución, enumerarlos y usarlos dinámicamente. En res/raw, uno necesita codificarlos listos, tal vez en el archivo de recursos de string.

5. Nombre de archivo accesible desde XML: (posible en res/raw) 

  • activos: No existe una forma sencilla en que el desarrollador pueda organizar un archivo XML (p. ej., AndroidManifest.xml) para señalar el archivo en la carpeta de activos.
  • res/raw: en cualquier archivo XML como en Java, el desarrollador puede acceder fácilmente al archivo en res/raw usando @raw/filename .

Entonces, si necesita acceder a su archivo en cualquier XML, colóquelo en la carpeta res/raw. Hagamos una tabla para recordar todo el escenario fácilmente.

Guión

Carpeta de activos

Carpeta Res/Raw
Nombre de archivo flexible

NO

Almacenar en subdirectorio

NO

Comprobación en tiempo de compilación

NO

Listar nombres de archivos en tiempo de ejecución

NO

Nombre de archivo accesible desde XML

NO

¿Cómo crear una carpeta de activos en Android Studio?

Ahora analicemos cómo crear una carpeta de activos en el estudio de Android. A continuación se muestra el proceso paso a paso para crear una carpeta de activos en el estudio de Android.

createan studio abre tu proyecto en modo Android primero como se muestra en la imagen de abajo.

Add Local HTML File

Paso 2: Vaya a la aplicación > haga clic con el botón derecho en > Nuevo > Carpeta > Carpeta de activos y cree la carpeta de activos .

Add Local HTML File

Paso 3: el principal el

Add Local HTML File

Paso 4: Ahora abra la carpeta de la aplicación y encontrará la carpeta de activos con el nombre de » activos » como se muestra en la imagen a continuación.

assets folder

Publicación traducida automáticamente

Artículo escrito por AmiyaRanjanRout y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *