Я приступил к созданию приложения OS X и зарегистрировал сервис (т. Е. Пункт меню правой кнопки мыши на файлах в Finder), и все работает, за исключением того, что ОС, похоже, не отправляет читаемый файл в мое приложение, когда я прав -включить файл в Finder и выбрать опцию «Открыть с помощью MyProgram».Как получить путь к файлу в моем приложении, который вызывается как служба в os x?
Мой приемный обработчик:
- (void)doSomething:(NSPasteboard *)pboard userData:(NSString *)userData error:(NSString **)error {
NSString *pboardString = [pboard stringForType:NSStringPboardType];
NSLog(@"I hope the file path is: %@", pboardString);
}
С выше коде pboardString будет на самом деле содержат нечетное такие вещи, как: "файл: ///.file/id=6562758.3327676"
, который может быть нежелательной, или может быть переведена на что-то полезное; Я не знаю. Я получаю шестнадцатеричные результаты, такие как < NSPasteboardItem: 0x103b37d90 >, если я попытаюсь напечатать картонный объект в виде массива.
Я не уверен, если это проблема с эксплуатационными свойствами (https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/SysServices/Articles/properties.html), но если кто-нибудь знает, что я пропускаю я оценил бы руководство ..
Отлично. Я начал работать с Obj-C около недели назад .. даже не был уверен, как найти все остальные вещи, скрывающиеся в картоне. Не было уверенности, что в нем скрываются другие вещи! – Eric
Вот видео, показывающее один способ узнать это. Я признаю, что видео - небольшой эксперимент, чтобы посмотреть, как я могу опубликовать его в своем блоге. Но это должно быть полезно, если вы еще не знаете наконечник. http://www.markosx.com/thecocoaquest/videos-2/videos/ – markhunte