Как получить пользовательский ввод в пакете PackageMaker?

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

Проблема в том, что мне нужен пользовательский ввод. Я не могу понять, как ввести пользовательский ввод в сценарий или как добавить страницу в интерфейсе установки, на которой есть место для пользовательского ввода, а затем передать это сценарию.

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

Есть ли нормальный способ сделать это?

Спасибо


person Brian Postow    schedule 24.05.2010    source источник
comment
Вы когда-нибудь находили ответ на вопрос, как пользовательский ввод, собранный из пользовательского интерфейса, может быть передан в скрипт?   -  person pulkitsinghal    schedule 21.02.2013


Ответы (2)


Вы можете создать подключаемый модуль установщика, который представляет собой загружаемый пакет Cocoa, который может содержать ваш собственный пользовательский интерфейс и код. Когда вы добавляете подключаемый модуль в пакет установщика, приложение установщика отображает пользовательский интерфейс вашего подключаемого модуля в качестве дополнительного шага в процессе установки.

Пример кода Apple и единственная доступная документация находятся здесь. Отличное объяснение процесса здесь.

К сожалению, вставка пакета подключаемых модулей в ваш установочный пакет стала излишне сложной, начиная с PackageMaker 3.0 и его плоского формата пакета.

После того, как вы создали пакет плагинов, вам сначала нужно собрать пакет установщика, как обычно. После сборки вам нужно перейти в меню Редактировать в PackageMaker и открыть редактор плоских пакетов. Откройте пакет установщика и вставьте подключаемый модуль в соответствующее место, как в Finder с пакетом установщика 2.0. То есть вам нужно создать папку Plugins и вставить в нее свой пакет плюс файл InstallerSections.plist (что объясняется в приведенном выше примере).

person Rob Keniger    schedule 25.05.2010

Можете ли вы вообще расширить это? Я скопировал эти два «файла» в каталог плагинов через редактор плоских пакетов, как вы сказали. Однако после сохранения, закрытия и повторного открытия пакета каталог плагинов исчез.

person Gargoyle    schedule 26.04.2013
comment
Я переключился на использование пакетов вместо PackageMaker, и эта проблема исчезла. - person Gargoyle; 14.06.2013