0

我是 Objective-c 的初学者,非常感谢您的帮助...我需要检查某个 PID 是否是活动应用程序的 PID。我想通过将pid转换为NSRunningApplication然后使用接口isActive来做到这一点。我的问题是如何将 PID 转换为 NSRunningApplication?或者也许还有其他方法可以检查 PID 是否处于活动状态?

PS 我看到了一个实现,您可以在其中获取所有应用程序的列表,并为每个应用程序检查它是否处于活动状态。然后从活动中检索pid。似乎效率不高。

4

1 回答 1

0
bool isApplicationActive(CFNumberRef applicationPID)
{
    NSRunningApplication* app = [NSRunningApplication runningApplicationWithProcessIdentifier:pid_t(applicationPID)];
    if(app != nil)
    {
        return [app isActive];
    }
    return false;
}
于 2015-06-24T07:48:03.223 回答