在app扩展程序中是否有办法从包含应用程序生成图像,该应用程序存储在/ var / mobile / Containers / Data / Application // Documents //文件夹中?
答案 0 :(得分:14)
为了使文件可用于应用扩展程序,您必须使用bootstrap()
,因为App Extension无法访问应用的文档文件夹,因为您已按照这些步骤操作,
Group Path
的群组扩展程序。然后使用以下代码。
group.yourappid
您可以根据要生成的图片扩展名添加或更改路径扩展名。
注意 - 请记住,您需要在组文件夹中而不是在文档文件夹中生成图像,因此它既可用于应用和扩展程序。
干杯。
Swift 3更新
NSString *docPath=[self groupPath];
NSArray *contents=[[NSFileManager defaultManager] contentsOfDirectoryAtPath:docPath error:nil];
NSMutableArray *images=[[NSMutableArray alloc] init];
for(NSString *file in contents){
if([[file pathExtension] isEqualToString:@"png"]){
[images addObject:[docPath stringByAppendingPathComponent:file]];
}
}
-(NSString *)groupPath{
NSString *appGroupDirectoryPath = [[NSFileManager defaultManager] containerURLForSecurityApplicationGroupIdentifier:group.yourappid].path;
return appGroupDirectoryPath;
}