我想用我的应用程序重置系统空闲时间。在 Windows 上,我可以使用SendInput做到这一点。问题是我如何在 OSX 上做到这一点?
谢谢您的帮助!
编辑 1:
我也尝试了 UpdateSystemActivity,但没有成功,其中 IdleTime idleSeconds 会返回 HIDIdleTime。
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
while (true) {
NSLog(@"Idle seconds: %lu", (unsigned long)[[IdleTime sharedIdleTime] idleSeconds]);
[NSThread sleepForTimeInterval:1];
}
});
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
while (true) {
dispatch_async(dispatch_get_main_queue(), ^{
UpdateSystemActivity(OverallAct);
});
[NSThread sleepForTimeInterval:5];
}
});
编辑 2:
我还尝试通过本文(清单 2)使用 kIOPMAssertionType 的每个可能参数重置空闲时间。不幸的是没有成功..
再次:我想要一个 c# 中的解决方案,但我只是想看看是否可以使用另一种语言。