Windows phone 7 如何保持应用程序在屏幕锁定下工作?
我正在编写一个WP7应用程序,它需要播放音乐,即使屏幕锁定被激活。我已经做了以下工作:Windows phone 7 如何保持应用程序在屏幕锁定下工作?,windows-phone-7,detection,python-idle,Windows Phone 7,Detection,Python Idle,我正在编写一个WP7应用程序,它需要播放音乐,即使屏幕锁定被激活。我已经做了以下工作: PhoneApplicationService.Current.ApplicationIdleDetectionMode = IdleDetectionMode.Disabled; 我还将实施以下活动: void RootFrame_Obscured(Object sender, ObscuredEventAr
PhoneApplicationService.Current.ApplicationIdleDetectionMode =
IdleDetectionMode.Disabled;
我还将实施以下活动:
void RootFrame_Obscured(Object sender, ObscuredEventArgs e)
{
_playunderLock = true;
}
void RootFrame_Unobscured(object sender, EventArgs e)
{
_playunderLock = false;
}
但我的音乐仍然停止时,锁定按钮被明确按下
我错过了什么吗??
而且,当播放音乐时,默认的锁屏现在不会被激活,即使我没有打电话
PhoneApplicationService.Current.UserIdleDetectionMode =
IdleDetectionMode.Disabled;
此博客文章可能有帮助:。如果您需要应用程序在用户不与它交互时保持运行(如收听backgorund音乐),则需要禁用用户空闲检测:PhoneApplicationService.Current.UserIdleDetectionMode=IdleDetectionMode.Disabled代码>但根据您的描述,当用户锁定屏幕时,您似乎遇到了问题,这就是应用程序空闲检测。所以,我唯一能想到的是你设置得太早了(我知道这听起来很奇怪!)。在RunKeeper中,我们在App.xaml.cs中的InitializePhoneApplication方法中禁用应用程序空闲检测(*)
(*)注意:禁用任何类型的空闲检测都是需要用户许可的任何操作,因此您也需要将其添加到应用程序中。您在何处/何时设置ApplicationIdleDetectionMode?一旦它被禁用,它将无法重新启用,直到下一次应用程序启动。是的,我知道。我在我的App()类构造函数中设置了它(只是为了测试一下)…我的问题是,即使我禁用ApplicationIdleDetection,我的应用程序也会被禁用,音乐也会消失;我在玩;当我明确按下锁定按钮时,正在停止。嗨,维奇特拉,你能不能也写下你在晦涩和不引人注意的事件中写的代码。谢谢你的时间。但是我已经在微软关于空闲检测的文档中读了很多。我的问题是,它并没有像文档记录的那样发生。是因为Wp7中的任何更改,还是我自己在事件编程中的错误。。。。此外,我希望了解除PhoneApplicationService.Current.ApplicationIdleDetectionMode=IdleDetectionMode.Disabled以外的其他信息;我应该做些什么来防止我的应用程序在屏幕锁定时停用?在这些被掩盖和未被掩盖的事件中有什么需要做的吗?谢谢你的帮助!我把我的答案扩大了一点。希望对你有帮助,谢谢你。。。我现在已经将我的代码稍微更改为PhoneApplicationFrame rootframe=App.Current.RootVisual作为PhoneApplicationFrame;如果(rootframe!=null){rootframe.Obscured+=new EventHandler(rootframe\u Obscured);rootframe.Unobscured+=new EventHandler(rootframe\u Unobscured);}它正在工作,但不可靠。也许我会提前调用它…在默认的InitializePhoneApplication()之后调用jst;再次感谢。