将闲置应用程序弹出会话超时

在我的Flex应用程序中,我正在使用事件侦听器来处理闲置状态的会话。 这不适合我。

这是我的代码:

我在一个方法中放置了下面的代码

this.systemManager.addEventListener(FlexEvent.IDLE,onUserIDLE);

并调用函数onUserIDLE

private function onUserIDLE(e:FlexEvent):void
{           
    if(e.currentTarget.mx_internal::idleCounter == 60000)
    {
        this.systemManager.removeEventListener(FlexEvent.IDLE,onUserIDLE);
        Alert.show("Session time Out");
        menuRO.logoutUser();
        signOutBtn_clickHandler();          
    }
}

上面的代码不适用于我的应用程序,它不会输入 if(e.currentTarget.mx_internal :: idleCounter == 60000)语句。 请给我建议。

提前致谢!

0
额外 编辑
意见: 1
请参阅自定义用户闲置链接
额外 作者 Samajdar,

2 答案

根据帖子,看起来idleCounter已经发生了变化(这总是会发生在mx_internal组件中),所以我想你必须推出自己的计时器。

2
额外

由于Flex SDK是开放源代码,您可以随时潜入SystemManager(以及WindowedSystemManager)类源,看看空闲逻辑仍然存在(我检查了SDK v.4.6.0)并且工作正常。 根据你的条件声明,你真的在​​等待100分钟,看看它是否在IF块内?无论如何,您始终可以使用跟踪来跟踪idleCounter值。 但是,如果您确定在代码中,那么了解哪个版本的Flex SDK以及您正在使用哪个版本的FlashPlayer会很有帮助。

0
额外