2015-10-01 3 views
-1

Я пытался запрограммировать простое приложение TODO для Yosemite с песочницей. У Apple есть свои учебные пособия для тех же, но они не очень сложны. Я хотел знать API-интерфейсы sandbox, такие как sandbox_init() и API для консольных журналов (в песочницах приложениях используются некоторые специальные API-интерфейсы). Может кто-нибудь, пожалуйста, укажите мне какое-то приложение с открытым исходным кодом с песочницей на Yosemite, чтобы я мог видеть API, который он использует.Как запрограммировать изолированное приложение в Yosemite

ответ

1

Вам не нужно использовать sandbox_init() и т. Д., Чтобы создать изолированное приложение.

Грубо говоря, вы должны понять:

  1. Используйте API, чтобы найти хорошо известные каталоги и не предполагают, что /Users/username/Documents является папку Документы, например.
  2. Приложение не имеет доступа к файлам пользователей и должно получить доступ через NSOpenPanel.
  3. Если приложение хочет сохранить доступ, который уже получил, ему необходимо создать и сохранить URL-адреса закладок, которые могут быть перезагружены во время последующего вызова.
  4. Если изолированное приложение создает дочерний процесс, то для этого дочернего процесса требуется собственный набор прав.

После того, как вы понимаете, что это нормально просто случай установки Используйте Песочница в возможностях приложения, и вы прочь.