iOS共享扩展-如何访问核心数据
我有一个从核心数据获取信息的主机应用程序。现在我需要一个共享扩展,它将显示来自主机应用程序数据的一些信息 我已经为主机和扩展启用了应用程序组并定义了,我可以从扩展访问此路径iOS共享扩展-如何访问核心数据,ios,objective-c,sqlite,core-data,ios-app-extension,Ios,Objective C,Sqlite,Core Data,Ios App Extension,我有一个从核心数据获取信息的主机应用程序。现在我需要一个共享扩展,它将显示来自主机应用程序数据的一些信息 我已经为主机和扩展启用了应用程序组并定义了,我可以从扩展访问此路径 NSURL *storeURL = [[NSFileManager defaultManager] containerURLForSecurityApplicationGroupIdentifier:@"com.application"]; 当我获取目录和文件时,它只有一个/Library路径 NSArray * fil
NSURL *storeURL = [[NSFileManager defaultManager] containerURLForSecurityApplicationGroupIdentifier:@"com.application"];
当我获取目录和文件时,它只有一个/Library路径
NSArray * files = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:url error:nil];
[files enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
NSLog(@"fileName : %@",(NSString *)obj);
}];
我的主机应用程序的sqlite文件位于Documents目录下。如何使此sqlite文件在共享容器下可用?我需要移动整个数据库吗?任何其他解决方案
谢谢如果要直接从db文件访问数据,必须将其放入共享容器中。我不认为有其他选择,你不能创建slink或任何主机应用程序
我正在解决类似的问题,我决定使用组NSUserDefaults来共享共享扩展中所需的内容,因为它只是一对变量。这可能是一个简单的解决方案谢谢您的回复。NSUserDefaults对我来说是不够的,我不想复制数据,因为它会随着时间的推移而改变。我有一个由xcdatamodel创建的sqlite,我想我必须将这个文件移动到共享容器中?正确的?