A .dmg
Контейнер доступен только для чтения (как правило, вы можете сделать их доступными для записи). Рекомендуемое поведение с приложением OS X является, чтобы сделать одну из двух вещей:
- положить записку в
.dmg
, чтобы переместить приложение к приложениям (см: Creating nice dmg "installer" for Mac OS X)
- Авто-переместить приложения на первом запуске , однако вам нужно быть невероятно явным для пользователя о том, что происходит, и где им нужно будет загружать приложение в будущем.
Я всегда использую вариант 1, он ясен и краток, и есть множество других программ, которые подходят для него, поэтому это понимают большинство пользователей OS X.
С точки зрения выполнения autoupdate, как только он находится в пользовательской файловой системе, вы можете сделать это несколькими способами. Есть Sparkle Framework, вы можете создать простую службу HTTP-запроса, чтобы захватить новый пакет .app и скопировать его на место, а затем перезапустить. Sparkle хорош, хорошо протестирован и очень популярен для OS X autoupdating, если вы собираетесь использовать кросс-платформу, тогда создайте HTTP-сервис.