gpt4 book ai didi

iphone - 如何防止 iPhone 在我的应用程序充电时锁定

转载 作者:行者123 更新时间:2023-11-29 03:43:03 24 4
gpt4 key购买 nike

整个问题都在标题中。
这是我所做的。
我测试了它,我将 iPhone 插入我的 Mac,而不是充电,我不知道这是否重要。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{...
[UIDevice currentDevice].batteryMonitoringEnabled = YES;
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(batteryStateDidChange:)
name:UIDeviceBatteryStateDidChangeNotification object:nil];
...}

- (void)batteryStateDidChange:(NSNotification *)notification
{
[[UIDevice currentDevice] setBatteryMonitoringEnabled:YES];

if ([[UIDevice currentDevice] batteryState] == UIDeviceBatteryStateCharging ||
[[UIDevice currentDevice] batteryState] == UIDeviceBatteryStateFull ){

[UIApplication sharedApplication].idleTimerDisabled = YES;
}
else if ([[UIDevice currentDevice] batteryState] == UIDeviceBatteryStateUnplugged) {

[UIApplication sharedApplication].idleTimerDisabled = NO;
}
}

我错过了什么?

最佳答案

我看到的直接问题是,您正在注册以在将来充电状态发生变化时收到通知,但没有配置在充电器状态实际发生变化之前如何处理空闲计时器。

例如,如果您构 build 备,它已插入并充电(可能已充满),除非您拔下设备,否则 UIDeviceBatteryStateDidChangeNotification 没有理由发布。

考虑这样的事情:

[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(batteryStateDidChange:)
name:UIDeviceBatteryStateDidChangeNotification object:nil];

[self batteryStateDidChange:nil];

关于iphone - 如何防止 iPhone 在我的应用程序充电时锁定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18124236/

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