NSUbiquityIdentityDidChangeNotification 的地址比较不等于空指针始终为真
Comparison of addresses of NSUbiquityIdentityDidChangeNotification not equal to a null pointer is always true
我在 Xcode
中收到此警告
comparison of addresses of NSUbiquitycontainerDidChangeNotification not equal to a null pointer is always true
它在
的核心数据集成框架中
CDEICloudFileSystem.m
在
- (void)addUbiquityContainerNotificationObservers {
[self removeUbiquityContainerNotificationObservers];
/// in this line
if (&NSUbiquityIdentityDidChangeNotification != NULL) {
///
__weak typeof(self) weakSelf = self;
ubiquityIdentityObserver = [[NSNotificationCenter defaultCenter] addObserverForName:NSUbiquityIdentityDidChangeNotification object:nil queue:[NSOperationQueue mainQueue] usingBlock:^(NSNotification *note) {
__strong typeof(weakSelf) strongSelf = weakSelf;
[strongSelf stopMonitoring];
[strongSelf willChangeValueForKey:@"identityToken"];
[strongSelf didChangeValueForKey:@"identityToken"];
}];
}
}
谁能告诉我如何解决这个问题?
谢谢
问题是&NSUbiquityIdentityDidChangeNotification
是变量的地址,不能为NULL。
条件 if (&NSUbiquityIdentityDidChangeNotification != NULL)
始终为真,而 Xcode 警告您该行无用。
我写了那个代码。正如一些人指出的那样,在使用它之前确保 NSUbiquityIdentityDidChangeNotification
符号存在。在 iOS 6 之前,该通知不存在。
代码已经有好几年了,框架现在不支持iOS 5,所以我会去掉勾选。
更新
结果无法取消勾选,因为我们仍然支持 OS X 10.7。所以我添加了#pragmas 来消除警告。
我在 Xcode
中收到此警告comparison of addresses of NSUbiquitycontainerDidChangeNotification not equal to a null pointer is always true
它在
的核心数据集成框架中CDEICloudFileSystem.m
在
- (void)addUbiquityContainerNotificationObservers {
[self removeUbiquityContainerNotificationObservers];
/// in this line
if (&NSUbiquityIdentityDidChangeNotification != NULL) {
///
__weak typeof(self) weakSelf = self;
ubiquityIdentityObserver = [[NSNotificationCenter defaultCenter] addObserverForName:NSUbiquityIdentityDidChangeNotification object:nil queue:[NSOperationQueue mainQueue] usingBlock:^(NSNotification *note) {
__strong typeof(weakSelf) strongSelf = weakSelf;
[strongSelf stopMonitoring];
[strongSelf willChangeValueForKey:@"identityToken"];
[strongSelf didChangeValueForKey:@"identityToken"];
}];
}
}
谁能告诉我如何解决这个问题?
谢谢
问题是&NSUbiquityIdentityDidChangeNotification
是变量的地址,不能为NULL。
条件 if (&NSUbiquityIdentityDidChangeNotification != NULL)
始终为真,而 Xcode 警告您该行无用。
我写了那个代码。正如一些人指出的那样,在使用它之前确保 NSUbiquityIdentityDidChangeNotification
符号存在。在 iOS 6 之前,该通知不存在。
代码已经有好几年了,框架现在不支持iOS 5,所以我会去掉勾选。
更新 结果无法取消勾选,因为我们仍然支持 OS X 10.7。所以我添加了#pragmas 来消除警告。