Así que ha habido una nueva "función" en el reproductor flash desde la versión 10.1, que reduce la velocidad de fotogramas del reproductor a 2 fps cuando la ventana de la aplicación está fuera de la vista. Esta es una buena noticia para el rendimiento, pero puede romper algunas funcionalidades, como la clase Timer.Aplicación web Flex: evitar la caída de framerate cuando la ventana es invisible
Tengo una aplicación que utiliza un temporizador para mostrar una cuenta regresiva. Dada la naturaleza de la aplicación, es necesario que el temporizador complete su cuenta regresiva, incluso si el usuario no está allí para verla. Imagine que necesita darle al usuario solo 10 segundos para realizar una tarea. Si el usuario minimiza la ventana a la mitad del contador, puede tomar todo el tiempo que quiera y aún le quedan 5 segundos cuando regresa a la ventana. Esto aparentemente no se puede evitar con los reproductores flash más nuevos.
En las aplicaciones Air existe la propiedad backgroundFrameRate que se puede establecer para evitar este comportamiento, pero esto es parte de la clase WindowedApplication, por lo que parece que no está disponible en una aplicación web. ¿Alguien sabe una forma de mantener una velocidad de fotogramas constante incluso cuando la ventana no es visible? Gracias
+1 para agregar el comentario sobre la propiedad en una aplicación de AIR. No sabía que existía. También me sorprendería que haya una forma de hacer esto en un navegador. – JeffryHouser
Hola señor Jay, ¿has probado las posibles soluciones? – Ryan
Aún no, lo siento. He estado muy ocupado pero publicaré lo que he encontrado en cuanto lo pruebo.Hice algunas pruebas rápidas y tuve dificultades para replicar el retraso, lo que me lleva a pensar que tal vez estaba equivocado sobre la caída de framerate que afecta al temporizador. De cualquier manera, intentaré probarlo, aunque no estoy seguro de cómo medir la velocidad de fotogramas con la ventana abierta (en caso de que el temporizador no se vea afectado). Pensé que la recompensa se otorgaría automáticamente a la respuesta con el puntaje más alto, pero si no es el caso, puedo aceptar su respuesta ya que usted fue el primero en responder. – JayPea