我正在尝试获取打开的窗口列表及其 PID。
这是我想出的代码:
CFArrayRef windowList = CGWindowListCreate(kCGWindowListOptionOnScreenOnly, kCGNullWindowID);
if (windowList == nil || NULL)
NSLog(@"The List is null");
for(NSMutableDictionary *entry in (__bridge NSArray *)windowList){
NSString *ownerName = [entry objectForKey:(__bridge id)kCGWindowOwnerName];
NSInteger ownerPID = [[entry objectForKey:( __bridge id)kCGWindowOwnerPID]integerValue];
NSLog(@"%@:%ld",ownerName, ownerPID);
}
在我声明 ownerName 的那一行,我得到一个异常(线程 1:SIGBART)
我不知道出了什么问题.... CFArrayRef 不是 NULL/nil