Windows Phone 7警报不会在预定时间关闭

时间:2013-01-24 04:10:09

标签: c# windows-phone-7 alarm

我正在为Windows Phone OS 7.1创建一个应用程序来了解这个平台。在创建警报应用程序时,我遇到了这个奇怪的错误:当我使用ScheduledActionService.Add(myAlarm)设置警报时,警报永远不会在所选时间关闭。我设置beginTime =现在+ 10秒,然后我等了2分钟,没有运气。但是,当我在运行时添加另一个警报时,在最后一个警报的选定时间之后,最后一个警报将会熄灭。

以下是我的createAlarm函数的代码。我做了一些搜索,但没有找到解决方案。

        private void createAlarm(double time, string message)
    {
        var myAlarm = new Alarm(System.Guid.NewGuid().ToString())
        {
            Content = message,
            BeginTime = DateTime.Now.AddSeconds(time),
            ExpirationTime = DateTime.Now.AddSeconds(time + 10.0)
        };

        myAlarm.Sound = new Uri("/Sounds/02 Ha Trang.mp3", UriKind.Relative);
        myAlarm.RecurrenceType = RecurrenceInterval.None;

        ScheduledActionService.Add(myAlarm);
    }

1 个答案:

答案 0 :(得分:1)

这是一个已知问题。警报以30秒的准确度发出。提醒也是如此。实际上,您可能会获得准确的结果,但总体而言,频繁发出警报或提醒是不可靠的。缺乏准确性可能是为了保持较低的资源消耗。 (请记住,警报在后台运行。)设置第二个警报时会触发第一个警报,因为系统突然“意识到”警报已经过期。将这些人分开至少一分钟是个好习惯。

另一方面,如果你真的需要在很短的间隔内发出哔哔声,你将不得不使用更像“前景”的东西,比如计时器。