Esta es una pregunta bastante amplia que también supone algunas cosas bastante amplias. Es como preguntar, ¿por qué mis aplicaciones de escritorio se congelan? Podría ser un millón de cosas.
Tengo un Nexus 5, y los juegos ciertamente no se congelan allí. ¿Quizás los juegos que juegas requieren más hardware? Quizás tenga muchos servicios en segundo plano en ejecución que están utilizando recursos valiosos. Quizás tengas un virus extraño e improbable. ¿Se congelan todos los juegos para ti? ¿Se congelan los juegos de un desarrollador en particular? Quizás sea una mala codificación. ¿Quién sabe?
En general, los desarrolladores de Android intentan llegar a una gran cantidad de dispositivos y personas, que varían increíblemente en características cuando se compara con la línea de Apple (esto no es bueno ni malo, solo un hecho). Esto dificulta la optimización para cada hardware diferente, y como desarrollador de juegos puedes limitar el mercado del juego limitándolo a dispositivos de mayor nivel, ajustar las características del juego de acuerdo con las capacidades del hardware, o hacerlo más disponible a riesgo de tener corre lento para algunas personas.
- ¿Cómo puedo configurar pantallas de bienvenida separadas para el modo horizontal y vertical en Android?
- ¿Alguno rapero ha rapeado alguna vez sobre el uso de un teléfono Android?
- ¿Cuáles son algunos de los mayores riesgos de seguridad asociados con el uso de aplicaciones en tabletas Android?
- Cómo actualizar mi Android de Jelly Bean a KitKat
- Android (OS): ¿Ahorra más batería para abrir / cerrar aplicaciones o las deja continuamente abiertas?
La tercera opción es, por supuesto, la paralización más fácil y con menos dinero, ya que solo hay mucho que puede hacer para disminuir la calidad de los gráficos.
También es importante considerar cuándo y cómo se congelan, y qué constituye exactamente un “congelamiento”. ¿La aplicación se cuelga por completo? ¿Es simplemente lento y se detiene momentáneamente? ¿Sucede todo el tiempo o con cargas más altas?
Android, por defecto y antes de la nueva versión Lollipop 5.0 (que acaba de salir ahora), utiliza algo llamado tiempo de ejecución Dalvik. Sin entrar en muchos detalles, con Dalvik habilitado, las aplicaciones (principalmente escritas en Java) se compilan en bytecode (algo que no es Java ni código de máquina). Esto se procesa utilizando un compilador justo a tiempo sobre el código de la aplicación.
En contraste, con el nuevo tiempo de ejecución (ART), todo el proceso de compilación se realiza tan pronto como se instala una aplicación, lo que ocupa un poco más de espacio y tiempo de instalación, pero acelera el lanzamiento de aplicaciones, entre otras cosas. Esto podría explicar algunos “retrasos” que ocurren al iniciar aplicaciones, incluidos los juegos, con los que ART debería ayudar.
Sin embargo, lo más probable es que solo necesite un mejor hardware.