我需要将特定文件夹与我的应用程序关联,以便通过双击文件夹来启动应用程序,就好像它是一个捆绑文件夹一样。这些文件夹甚至应该有自己的图标。
我已经能够通过为文件夹提供扩展名并设置应用程序Info.plist
文件的文档类型部分来实现这一点。
不幸的是,我不想为文件夹添加扩展名,我想将常规文件夹与我的应用程序相关联。准确地说,我想关联每个包含名为“子文件夹”的子文件夹的文件夹(例如)。
有没有办法做到这一点?
我需要将特定文件夹与我的应用程序关联,以便通过双击文件夹来启动应用程序,就好像它是一个捆绑文件夹一样。这些文件夹甚至应该有自己的图标。
我已经能够通过为文件夹提供扩展名并设置应用程序Info.plist
文件的文档类型部分来实现这一点。
不幸的是,我不想为文件夹添加扩展名,我想将常规文件夹与我的应用程序相关联。准确地说,我想关联每个包含名为“子文件夹”的子文件夹的文件夹(例如)。
有没有办法做到这一点?
您不应该这样做(从用户体验的角度来看)并且您不能这样做(从技术的角度来看,除非您考虑修补 Finder 选项)。
你到底想达到什么目的?创建一个包/包并隐藏路径扩展工作吗?您可以通过以下方式做到这一点NSFileManager
:
NSString *path = …;
NSDictionary *attributes = [NSDictionary dictionaryWithObject:[NSNumber numberWithBool:YES] forKey:NSFileExtensionHidden];
NSError *error = nil;
[[NSFileManager defaultManager] setAttributes:attributes ofItemAtPath:path error:&error];
要将现有文件夹与您的应用程序关联,您可以重命名该文件夹以具有您的包文件类型路径扩展名。