Меню «Открыть с помощью» для удаленных файлов - PullRequest
0 голосов
/ 15 ноября 2010

У меня проблемы с получением приложений, связанных с удаленным файлом, например URL: "http://servername/folder/file.png".

Код, который я использую:

...
NSURL *url = [NSURL fileURLWithPath:@"http://servername/folder/file.png"];
NSArray *apps = (NSArray *)LSCopyApplicationURLsForURL((CFURLRef) url,kLSRolesAll);
...

Я также пытаюсь использовать URLWithString:, но результат тот же. Каков правильный подход к этому?

Редактировать после воспроизведения Джошуа:

Извините за плохую редакцию. Проблема в том, что вызов LSCopyApplicationURLsForURL возвращает ноль.

1 Ответ

0 голосов
/ 15 ноября 2010

Во-первых, -fileURLWithPath: ожидает путь к файловой системе, такой как @"/Users/me/Desktop/MyFile.png".

Во-вторых, вы не говорите, что такое "одинаковые" результаты и что с ними не так, поэтому трудно сказать,Вы понимаете, в чем проблема.

Документы говорят следующее:

Если схема URL элемента является файловой (обозначая либо файл, либо каталог), выбор подходящих приложений основан нана расширение имени файла, тип файла и подпись создателя, а также роль, указанную параметром inRolesMask;в противном случае он основан на схеме URL (например, http, ftp или mailto).

Итак, что вы получаете и чего ожидаете получить?

...