我正在应用中播放音频文件,因此当手机锁定且屏幕关闭时,它不会关闭。 但是,当我想要检测震动它不起作用。
当应用程序处于打开状态且屏幕被锁定(未关闭)时,它可以正常工作。该应用程序肯定在运行,因为日志工作正常。
有什么想法吗?
我使用以下代码:
-(BOOL)canBecomeFirstResponder {
//make it respond to shake events
return YES;
}
- (void)viewDidAppear:(BOOL)animated {
//make it respond to shake events
[self becomeFirstResponder];
}
- (void)motionEnded:(UIEventSubtype)motion withEvent:(UIEvent *)event {
if (event.type == UIEventSubtypeMotionShake) {
NSLog(@"Shake detected");
}
}
答案 0 :(得分:1)
监控加速度计会导致手机额外耗电,因此在手机锁定时会被禁用。我不相信有办法解决这个问题。
答案 1 :(得分:0)
这会对你有帮助。
[[UIApplication sharedApplication] setIdleTimerDisabled:YES];
这不会让屏幕关闭。
希望这有帮助。
修改强>
但即使我感觉像阿克沙一样。屏幕关闭时无法捕获UIEvent。
答案 2 :(得分:0)
我不认为你可以在屏幕关闭时捕获UIEvents
。