使用chrome.idle API重新启动应用程序

问题描述:

我有一个基本上只使用webview的Chrome kiosk应用程序,允许某人浏览目录。使用chrome.idle API重新启动应用程序

我找到了chrome.idle API,并且相信我知道如何设置空闲时间并查询设备是否空闲,但是当状态更改为闲置或至少导航回到设置网址?

最终目标是在一段时间内闲置一段时间后,为下一个用户重置目录。

https://developer.chrome.com/apps/idle

+0

你究竟对API不了解?这个文档相当好。 – Xan 2015-02-24 21:31:01

+0

对不起,文档可能不错,但这对我来说都是比较新的。我一直无法找到一种重新启动应用程序的方法,这是我想要完成的理想工作。 我可以在120秒后重新启动一个监听器吗? 'chrome.idle.queryState(120,功能(状态){ 如果(状态== “空闲”){ \t RESTART \t} });' – TOWEN 2015-02-24 21:57:33

好,文档是很清楚..

首先,您需要在您要使用这个API清单申报,因为它需要一个许可。

"permissions" : ["idle"], 

您可以按照您的建议采用基于轮询的方法,但为什么?有一个事件提供。所以,我们继续使用它。

您需要通知Chrome没有用户输入的间隔多长时间才会被视为空闲状态。

chrome.idle.setDetectionInterval(120); // 120 seconds 

最后,您需要对更改为空闲状态做出反应。

chrome.idle.onStateChanged.addListener(function(newState) { 
    if(newState == "idle") { 
    // Reset the state as you wish 
    } 
}); 
+0

谢谢,这是有道理的过我的方法,我只是找到了chrome.runtime.reload()函数。我在做生意! – TOWEN 2015-02-24 22:14:22

+0

chrome.runtime.reload()是一种非常苛刻的方法,但可能起作用。考虑以某种方式重置窗口的状态(可能会导航webview到一个URL并清除浏览数据) – Xan 2015-02-24 22:16:28