防止TideSDK中的应用程序退出

时间:2012-10-24 00:48:20

标签: events exit tidesdk

我试图阻止用户在单击关闭按钮时关闭窗口。我想将应用程序停靠在系统托盘上。

我的第一步是识别用户何时尝试关闭窗口并阻止该事件的默认行为。我希望这段代码能够正常运行,但事实并非如此。

var appWindow = Titanium.UI.getCurrentWindow();
appWindow.addEventListener('app.exit', function(event){
  event.preventDefault();
})

我尝试使用exit事件和事件常量本身无济于事。

2 个答案:

答案 0 :(得分:0)

这不会起作用,因为在调用preventDefault时所做的一切都是在WebKit浏览器页面中停止默认行为,而不是本机应用程序包装器本身。

close命令是对底层包装器的本机函数调用,它只是将事件传递给侦听器,它不传递控件。

此外,这听起来有点危险,不允许用户关闭应用程序似乎有问题。也许您应该注册后台服务来运行?

答案 1 :(得分:0)

一个技巧可能是打开应用程序的“隐形”窗口,因此即使用户关闭“应用程序”窗口,该应用程序仍应运行。