gpt4 book ai didi

iOS:idleTimerDisabled = YES 仅在使用 ImagePicker 之前有效

转载 作者:技术小花猫 更新时间:2023-10-29 10:49:16 29 4
gpt4 key购买 nike

我有一个 iPad 调查工具作为内部企业应用程序。我通过在应用程序委托(delegate)的 didFinishLaunchingWithOptions 设置 [[UIApplication sharedApplication] setIdleTimerDisabled: YES]; 来防止屏幕锁定。

在我使用 imagePicker 拍摄图像之前,一切正常。之后,idleTimer 再次被激活。我试图在拍摄图像后禁用它,但那不起作用。

Here我发现在 info.plist 中设置所需设备功能的提示可能会有所帮助。但到目前为止还没有。我刚刚添加了所有特定于相机的标志。

有什么想法吗?

非常感谢!

马库斯

最佳答案

我能够像这样重置 UIApplication idleTimerDisabled:

- (void)resetIdleTimerDisabled
{
[[UIApplication sharedApplication] setIdleTimerDisabled:YES];
}

#pragma mark - UIImagePickerControllerDelegate

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
[self dismissViewControllerAnimated:YES completion:^{
[self performSelector:@selector(resetIdleTimerDisabled) withObject:nil afterDelay:1.0];
}];
}

- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker
{
[self dismissViewControllerAnimated:YES completion:^{
[self performSelector:@selector(resetIdleTimerDisabled) withObject:nil afterDelay:1.0];
}];
}

我怀疑正在发生的事情是内部 UIImagePickerControllerUIApplication.idleTimerDisabled 设置为 YES 以防止相机休眠。完成后(在调用委托(delegate)方法之后,显然甚至在执行动画完成 block 之后),UIImagePickerControllerUIApplication.idleTimerDisabled 设置回 NO。相反,只有当该值之前为 NO 时,它才应该这样做。

我向 Apple 提交了错误报告。参见 UIImageViewControllerBug示例项目。

关于iOS:idleTimerDisabled = YES 仅在使用 ImagePicker 之前有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23391564/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com