2016年,你如何获得文件的Finder“Kind”?
问题描述:
This answer表示使用LSCopyKindStringForURL(),它在过去很棒,但在OS X v10.11中标记为“已弃用”。2016年,你如何获得文件的Finder“Kind”?
API文档中没有提及它被弃用的原因。我根本没有在OS X 10.11发行说明中看到有关Launch Services API更改的任何提及。
你现在应该如何获得Finder类型的文件?
答
如果你去的LSCopyKindStringForURL()
在头(/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Headers/LSInfoDeprecated.h
)声明,你会发现在注释和弃用的属性,执行以下操作:
使用URL资源属性kCFURLLocalizedTypeDescriptionKey或NSURLLocalizedTypeDescriptionKey代替。
这些是分别与CFURLCopyResourcePropertyForKey()
或-[NSURL getResourceValue:forKey:error:]
一起使用的资源密钥。