Я работаю над приложением таймера для Windows Phone, и я пытаюсь сделать так, чтобы, если оставшееся время на таймере равно нулю, звук из BackgroundAudioPlayer воспроизводился, независимо от того, активно приложение или нет, или под замком.
В настоящее время моя проблема заключается в том, что события тиков на самом деле ничего не делают, пока приложение не активно. Как только пользователь возвращается в приложение, события тиков запускаются до такой степени, что они были бы в противном случае, но звуковой эффект (или что-либо еще) фактически не будет воспроизводиться, если приложение не будет активным или переключится на активное.
У меня есть в моем Page.xaml.cs
:
PhoneApplicationService.Current.ApplicationIdleDetectionMode = IdleDetectionMode.Disabled;
Соответствующий код:
void dispatcherTimer_Tick(object sender, EventArgs e)
{
var remaining = this.EndTime - DateTime.Now;
int remainingSeconds = (int)remaining.TotalSeconds;
this.timeSpan.Value = TimeSpan.FromSeconds(remainingSeconds);
if (remaining.TotalSeconds <= 0)
{
this.dispatcherTimer.Stop();
button1.Visibility = Visibility.Collapsed;
button6.Visibility = Visibility.Visible;
this.EndTime = DateTime.MinValue;
this.timeSpan.Value = TimeSpan.FromSeconds(0);
BackgroundAudioPlayer.Instance.Play();
}
}
Что я могу сделать, чтобы события галочки запускались, когда приложение находится под экраном блокировки или, другими словами, неактивно?