2009-11-19 4 views

ответ

18

Что касается подхода образа диска (DMG), как правило, это реализовано таким образом, чтобы пользователю было очевидно, что им нужно перетащить приложение в свою папку/Applications. (Иногда это делается с заранее существующим псевдонимом папки/Applications рядом с пиктограммой приложения на DMG, а затем фоновое изображение с стрелкой между ними или наложенными текстовыми инструкциями, что объясняет, что делать.) Слишком часто, хотя пользователи просто дважды кликают приложение и запускают его с образа диска, что вызывает путаницу (что если они извлекают образ диска? Что происходит в следующий раз при попытке запустить приложение?)

Alexander Limi, один из разработчикам Mozilla Firefox, есть две замечательные статьи о том, как заставить ваше приложение OS X обнаруживать, когда оно выполняется с образа диска установщика, а затем предлагает скопировать себя в папку/Applications.

Это подход, который сейчас принято достаточно, чтобы генерироваться по крайней мере один класс кода, M3InstallController, чтобы включить поведение в вашем собственном приложении. Разработчик другого приложения OS X, который использует этот подход, также выпустил his own code example.

Итак, если вы идете по пути образа диска с приложением, которое нужно перетащить в папку/Applications, настоятельно рекомендуем определить, работает ли пользователь приложением с образа диска, и предложить переместить его для них ! Ваши пользователи и ваши сотрудники поддержки будут благодарны вам. :)

1

Образ диска при установке выполняется так же просто, как перетаскивание, установщик пакетов, если вам нужно установить поддерживающие файлы за пределы пакета приложений.

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

7

Я не думаю, что есть фиксированный ответ. Если у вас просто пакет приложений, я думаю, что большинство конечных пользователей ожидают DMG. Но если вы устанавливаете расширение меню или что-то еще, что должно быть в каталоге библиотеки, вам обычно потребуется файл pkg.

Я использовал оба для разных типов установок. Они оба работают. Пока вы используете один из этих двух (а не какой-то тип wacky install script), люди будут счастливы ИМХО.

+1

Реалистично, панели предпочтений не нуждаются ни в каких установщиках; если на образ диска есть префикс, а пользователь дважды щелкает по нему, OS X достаточно умна, чтобы знать, что он должен быть установлен, и даже спрашивает пользователя, должен ли он быть установлен для * всех * пользователей или просто зарегистрированная учетная запись (/ Библиотека/Панели предпочтений/или ~/Библиотека/Панели предпочтений /). – delfuego

+0

Я согласен с вашим комментарием. Но давайте будем реалистами, что многие из них включают инсталляторов. Я отредактирую свой ответ - я пытался думать о вещах, которые нуждаются в PKG. –

2

Тенденция для приложений Mac - это хороший DMG с установленным для него программным обеспечением для перетаскивания. Или, может быть, даже просто ZIP-приложение, которое знает, как копировать себя в каталог приложений пользователя при запуске.

Не пользуйтесь установщиком, если не требуется.

3

Преимущества молниями:

  • Safari автоматически расстегивает
  • Легко создать
  • Легче использовать с Sparkle Updater

Преимущества dmgs:

  • Может использовать для отображения лицензии agg rement
  • Может отображать инструкцию по установке (DMG Canvas)

Не используйте .pkgs, если вам не нужно поместить пакет в определенном месте. (Пакеты WebKit, расширения ядра ...)

+0

Я надеюсь интегрировать Sparkle в приложение Mac, которое я пишу. Но мне также нравится идти по маршруту dmg. Есть ли недостатки в использовании dmgs, когда дело доходит до интеграции Sparkle? – Isuru