macos - instalar - descargar adobe flash player gratis
Extraño comportamiento en la detección inactiva del usuario en Adobe Air en Mac (1)
Descubrí cuál es el problema. Cuando se USER_IDLE
evento USER_IDLE
en una cuenta de usuario, hicimos varias cosas, una de las cuales fue matar a la fuerza al Dock para asegurarnos de que estaba oculto en la pantalla. Por el motivo que sea, esto restablece el recuento de idleThreshold
disponible idleThreshold
. Esto no solo estaba sucediendo en AIR, sino que también estaba sucediendo cuando se monitoreaba a través de Terminal y parece que no hay absolutamente nada que se pueda hacer para detenerlo. La solución fue dejar de matar al muelle. Todo funcionó mágicamente después de eso.
Tengo una aplicación de Adobe AIR escrita en AS3 puro que tiene alguna funcionalidad que ocurre cuando el usuario está inactivo y luego vuelve al estado normal cuando el usuario regresa. Estoy detectando esta actividad con el siguiente código:
NativeApplication.nativeApplication.idleThreshold = 180;
NativeApplication.nativeApplication.addEventListener(Event.USER_IDLE, onUserIdle);
NativeApplication.nativeApplication.addEventListener(Event.USER_PRESENT, onUserPresent);
El método onUserIdle
se onUserIdle
después de 3 minutos como debería ser, pero luego el evento onUserPresent
se onUserPresent
casi inmediatamente después. Estoy hablando de milisegundos más tarde. Esto sucede sin ninguna entrada de usuario de ningún tipo. Lo extraño es que esto no ocurre en Windows, solo en OSX. Y sucede en todos los sabores de OSX que se remonta a 10.6.3.
La documentación de Adobe es increíblemente vaga sobre cómo se determinan esos eventos, por lo que no estoy seguro de si hay algo que pueda hacer a nivel del sistema para solucionar el problema. ¿Alguien tiene alguna experiencia con este problema, y si no, alguna otra sugerencia sobre cómo puedo detectar la inactividad del usuario, incluso cuando la aplicación no tiene foco?
Solo para evitar la sugerencia, no puedo usar oyentes de mouse / teclado para simular el mismo comportamiento porque no funcionan si la aplicación pierde el foco, mientras que los eventos NativeApplication
aún se NativeApplication
. También utilicé NativeProcess
para obtener la salida de ioreg para obtener el tiempo de inactividad del hardware según lo informado por el sistema, pero no parece verse afectado por el mouse.
Realmente aprecio cualquier ayuda.
Editar: Acabo de descubrir que esto no ocurre cuando la aplicación se ejecuta en una cuenta de administrador en OSX. Solo sucede en una cuenta de usuario, lo que solo me sirve para confundirme más.