Cómo manejar mapas de bits
Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
Prueba el método de Compose
Jetpack Compose es el kit de herramientas de IU recomendado para Android. Aprende a mostrar gráficos en Compose.
Hay varios motivos por los que cargar mapas de bits en tu app de Android es complejo:
- Los mapas de bits pueden agotar fácilmente el presupuesto de memoria de una app. Por ejemplo, la cámara del teléfono Pixel toma fotos de hasta 4048 x 3036 píxeles (12 megapíxeles).
Si la configuración de mapa de bits utilizada es
ARGB_8888
, la predeterminada para Android 2.3 (nivel de API 9) y versiones posteriores, cargar una sola foto en la memoria requiere aproximadamente 48 MB de memoria (4048*3036*4 bytes). Una demanda de memoria tan grande puede usar de inmediato toda la memoria disponible para la app.
- La carga de mapas de bits en el subproceso de IU puede degradar el rendimiento de la app y causar una respuesta lenta o incluso mensajes de ANR. Por lo tanto, es importante administrar el subprocesamiento correctamente cuando se trabaja con mapas de bits.
- Si la app está cargando varios mapas de bits en la memoria, debes administrar con habilidad la memoria y el almacenamiento en la caché del disco. De lo contrario, la capacidad de respuesta y la fluidez de la IU de tu app pueden verse afectadas.
En la mayoría de los casos, te recomendamos que uses la biblioteca de Glide a fin de recuperar, decodificar y mostrar mapas de bits en tu app. Glide facilita el manejo de estas y otras tareas relacionadas con el trabajo con mapas de bits y otras imágenes en Android.
Si deseas obtener información para descargar y usar Glide, visita el repositorio de Glide en GitHub.
También puedes optar por trabajar de forma directa con las APIs de nivel inferior integradas en el framework de Android.
Si deseas obtener más información para hacerlo, consulta Cómo cargar mapas de bits grandes de manera eficaz, Cómo almacenar mapas de bits en caché y Cómo administrar memoria del mapa de bits.
El contenido y las muestras de código que aparecen en esta página están sujetas a las licencias que se describen en la Licencia de Contenido. Java y OpenJDK son marcas registradas de Oracle o sus afiliados.
Última actualización: 2024-06-28 (UTC)
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"Falta la información que necesito"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"Muy complicado o demasiados pasos"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"Desactualizado"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"Problema de traducción"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"Problema con las muestras o los códigos"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"Otro"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"Fácil de comprender"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"Resolvió mi problema"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"Otro"
}]
{"lastModified": "\u00daltima actualizaci\u00f3n:\u00a02024-06-28 (UTC)"}
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Falta la información que necesito","missingTheInformationINeed","thumb-down"],["Muy complicado o demasiados pasos","tooComplicatedTooManySteps","thumb-down"],["Desactualizado","outOfDate","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Problema con las muestras o los códigos","samplesCodeIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2024-06-28 (UTC)"]]