2016-02-22 2 views
1

Я написал короткий быстрый код, чтобы добавить кнопку к finder, которая создает новый пустой файл в текущем каталоге через систему touch call. Расширение получает текущий каталог в порядке (через FIFinderSyncController.defaultController().targetedURL()), но команда touch потерпела неудачу из-за песочницы. Как я могу получить разрешение на доступ для записи? Выбранная пользователем опция файла не запускается для моего кода.предоставить OSX песочницу finder sync extension постоянный доступ на запись

ответ

0

Насколько я знаю, это не должно быть возможным в расширении синхронизации Finder. Однако в качестве обходного пути вы можете перенести эту функциональность в основное приложение - сначала попросите пользователя перетащить диск, где функциональность будет включена, в главное окно приложения, сохранить закладку безопасности и затем отправить команду из расширения Finder в основное приложение.

1

Вы должны иметь возможность использования разрешения на временное исключение, как описано here. Более конкретно, один из двух прав должно быть достаточно:

com.apple.security.temporary-exception.files.home-relative-path.read-write com.apple.security.temporary-exception.files.absolute-path.read-write

Как отмечается в документации, вы должны представить свои причины необходимости временное право исключение, если вы планируете отправку приложение в App Хранить. (Я никогда не проходил эту процедуру, поэтому не знаю, как выглядит этот процесс).

+0

На данный момент Apple отклонит ваше приложение, если вы используете временные исключения. Теперь вы можете только оправдать это, если вы подали отчет об ошибке. Нет отчета об ошибке = нет одобрения. – SevenBits

0

Насколько я знаю, это невозможно, и, кроме того, это не является целью расширений синхронизации Finder. Apple говорит, что here что:

Убедитесь, что точка расширения Finder Sync подходит для функций, которые вы планируете предоставить. Лучшие расширения Finder Sync поддерживают приложения, которые синхронизируют содержимое локальной папки с удаленным источником данных. Finder Sync не предназначен как обычный инструмент для изменения пользовательского интерфейса Finder.

Если вы хотите изменить Finder, чтобы сделать то, что вы цель, вы должны:

  • Используйте временное право исключение, которое будет де-факто вызвать ваше приложение должно быть отклонено; или
  • переосмысления вашего подход

Я бы предложил последний. Apple делает все более сложным изменение системы с каждым выпуском (лучше или хуже). Если вам нужна эта функция, напишите отчет об ошибке, запрашивающий его.

Смежные вопросы