我有一段这样的代码:
AVCaptureScreenInput *input = [[AVCaptureScreenInput alloc] initWithDisplayID:screen.displayID];
input.capturesCursor = NO;
input.capturesMouseClicks = NO;
AVCaptureScreenInput.capturesCursor
仅在10.8以上版本中可用。我的应用程序支持10.7+。如何保持兼容性?我应该完全删除通话吗?在运行时检查操作系统版本?
最佳答案
您应该检查该属性在运行时是否存在。
这段代码可以解决这个问题:
AVCaptureScreenInput *input = [[AVCaptureScreenInput alloc] initWithDisplayID:screen.displayID];
if ([input respondsToSelector:@selector(setCapturesCursor:)]) {
input.capturesCursor = NO;
}
input.capturesMouseClicks = NO;