Worklight 6.2 混合应用程序中的空闲期
Posted
技术标签:
【中文标题】Worklight 6.2 混合应用程序中的空闲期【英文标题】:Idle period in Worklight 6.2 Hybrid app 【发布时间】:2014-11-13 14:05:38 【问题描述】:如何为 Worklight 6.2 混合应用程序配置应用程序空闲设置? 我们正在使用 JQuery 为 android 4.1.x 开发一个混合应用程序,并希望在一段时间不活动后将用户返回到登录页面...... 框架中是否有我们应该为此使用的内置功能?
【问题讨论】:
【参考方案1】:没有内置的空闲功能。您将需要实现一个自定义的。
实现此目的的一种方法是将您的自定义实现基于对 Worklight Server 会话超时进行计数。
会话超时在 your-project\server\conf\worklight.properties 中定义。
你可以做的是:
在成功WL.Client.connect()
后,您将开始计算与会话超时设置相同的数量
对于每个服务器操作(适配器请求...),重置计数
如果计数过期(或达到,比如说,5-10 秒之前),从领域注销并显示登录表单
我认为在应用程序中计算“一般”空闲时间并不好,因为您需要考虑会话超时和您将设置的任何“活动”超时,这将必须低于会话超时。它只是需要处理更多的场景......
编辑:实际上我有另一个想法 - 在 Worklight 中使用heartbeat
的 API 来保持与服务器的连接处于活动状态,并计算您希望应用程序的任何活动超时...如果它过期,请从领域并显示登录表单。
【讨论】:
【参考方案2】:您也可以不用由鼠标和键听众附着到文档或身体ping服务器,与jquery。
像这样的代码:(未测试) P>
var idleTime = 30*1000; //30 seconds
var idleTimer = null;
$(document.body).bind('mousemove,keydown,click',function()
clearTimeout(idleTimer);
idleTimer = setTimeout(isIdle,idleTime);
);
function isIdle()
clearTimeout(idleTimer);
//logout and go to login form
这可能更好的UX(取决于你的具体需要)另一种方法是捕捉屏幕关断/导通本地设备上。
【讨论】:
以上是关于Worklight 6.2 混合应用程序中的空闲期的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Worklight 6.2 中链接来自移动客户端的适配器调用?
Worklight 6.2:成功发送标签推送通知,但在 android 设备上未收到
IBM Worklight 6.2:JMX 配置错误。无法获取 MBean
IBM Worklight 6.2 Development Server 自动停止