在Swift中使用NSNumber numberWithBool

Arm*_*uer 3 nsurl nsnumber ios swift ios8

我提交了我的应用程序第2版以供审核,但由于对iCloud的高备份而被拒绝-当时我不知道这一点,因为我只需要在应用程序中拍照即可。现在我尝试转换该代码

NSError *error = nil;
    NSURL *databaseUrl = [NSURL fileURLWithPath:databasePath];
    BOOL success = [databaseUrl setResourceValue:[NSNumber numberWithBool:YES] forKey:NSURLIsExcludedFromBackupKey error:&error];
    if(!success){
    NSLog(@"Error excluding %@ from backup %@", [databaseUrl lastPathComponent], error);
    }
Run Code Online (Sandbox Code Playgroud)

很快我就无法工作...这就是我到目前为止...

func excludeFromBackup() {
    var error:NSError?
    var fileToExclude = NSURL.fileURLWithPath("path")
    var success:Bool = fileToExclude?.setResourceValue(NSNumber.numberWithBool(true), forKey: NSURLIsExcludedFromBackupKey, error: &error)
    if success {
        println("worked")
    } else {
        println("didn't work")
    }
}
Run Code Online (Sandbox Code Playgroud)

如您所见,我的numberWithBool值失败。

谁能帮我?有人转换过吗?

提前致谢...

Mar*_*n R 5

有些斯威夫特类型(IntBoolString,...)被自动桥接到相应的Objective-C型,所以你可以简单地写:

let success = fileToExclude.setResourceValue(true, forKey: NSURLIsExcludedFromBackupKey, error: &error)
Run Code Online (Sandbox Code Playgroud)

(有关使用可可数据类型的更多详细信息。)