ユーザーが動画をドロップできるアプリを作成しています。public.movie
ドロップされた NSURL* のリストが与えられた場合、それぞれがUTI タイプに準拠していることを確認するにはどうすればよいですか?
があればNSOpenPanel
、そのまま使用openPanel.allowedFileTypes = @[@"public.movie"];
し、Cocoa が処理してくれます。
前もって感謝します!
ユーザーが動画をドロップできるアプリを作成しています。public.movie
ドロップされた NSURL* のリストが与えられた場合、それぞれがUTI タイプに準拠していることを確認するにはどうすればよいですか?
があればNSOpenPanel
、そのまま使用openPanel.allowedFileTypes = @[@"public.movie"];
し、Cocoa が処理してくれます。
前もって感謝します!
これはうまくいくはずです:
NSWorkspace *workspace = [NSWorkspace sharedWorkspace];
for (NSURL *url in urls) {
NSString *type;
NSError *error;
if ([url getResourceValue:&type forKey:NSURLTypeIdentifierKey error:&error]) {
if ([workspace type:type conformsToType:@"public.movie"]) {
// the URL points to a movie; do stuff here
}
} else {
// handle error
}
}
UTTypeConformsTo()
(メソッドの代わりに使用することもできますNSWorkspace
。)