AS3 Air app setinterval在未对焦时不会暂停

时间:2013-02-09 04:30:57

标签: actionscript-3 air

我有一个适用于iOS的空中应用程序,可以向用户播放连续的声音,并且有一些设置允许应用程序在播放音频时定期振动(如果音量基本上已经关闭,则通知用户)。该应用程序能够继续在后台播放音频,但只是一个简单的setinterval的计时器事件不会继续或暂停。

因此,例如,用户将开始播放,10秒钟设备将振动,10秒钟后另一个振动等。如果用户将应用程序放入后台(进入他们的主屏幕等),音频继续,这是很棒,但是在30秒后他们会回到我的应用程序,设备将振动3次,因为它似乎存储了已经过的间隔量。

我想我的问题是: - 我可以让应用程序在后台振动吗? - 当应用程序失去焦点时,我可以暂停应用程序的间隔,并在焦点恢复时恢复吗?

如果上述两种情况都不可能,我只需在暂停时退出。

由于

1 个答案:

答案 0 :(得分:0)

您可以在取消激活时暂停setInterval并在ACTIVATE上恢复它,因为您必须添加两个事件侦听器。您可以相应地在该部分中为您的setinterval编码。

事件监听器:

stage.addEventListener(Event.ACTIVATE, appActivateHandler);
stage.addEventListener(Event.DEACTIVATE, appDeactivateHandler);
在停用监听器中

你必须设置:

stage.focus = null;

尝试一下,这可以帮到你。