gpt4 book ai didi

ios4 - 在 iOS 模拟器和设备中测试 NSFileProtectionComplete

转载 作者:行者123 更新时间:2023-12-04 12:59:28 24 4
gpt4 key购买 nike

我在 coreData 应用程序中为我的 - (NSPersistentStoreCoordinator *)persistentStoreCoordinator 编写了这段代码。我使用 xCode 的 Master-Detail Application 模板来创建应用程序...

- (NSPersistentStoreCoordinator *)persistentStoreCoordinator
{
if (__persistentStoreCoordinator != nil) {
return __persistentStoreCoordinator;
}

NSURL *storeURL = [[self applicationDocumentsDirectory] URLByAppendingPathComponent:@"Notes2.sqlite"];

NSError *error = nil;
__persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:[self managedObjectModel]];
if (![__persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL options:nil error:&error]) {

NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
abort();
}

NSString *urlString = [storeURL absoluteString];
NSDictionary *fileAttributes = [NSDictionary dictionaryWithObject:NSFileProtectionComplete forKey:NSFileProtectionKey];
if (![[NSFileManager defaultManager] setAttributes:fileAttributes ofItemAtPath:urlString error:&error])
{
// Handle error
}


return __persistentStoreCoordinator;
}

如何测试并知道我的 sqlite 已打开 NSFileProtectionComplete?

我锁定了模拟器,但是当我在 Finder 中双击文件时,文件仍然可读。

最佳答案

iTunes 不会从设备复制文件,除非它有你的密码或设备以前被信任;这就是它能够解密数据的方式。

在 Xcode 8 及更早版本中,模拟器使用主机文件系统,而 macOS 目前不像 iOS 那样支持按文件加密,因此在 macOS 上,您无法在模拟器中进行测试。

关于ios4 - 在 iOS 模拟器和设备中测试 NSFileProtectionComplete,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10515253/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com