Нужно ли нотариально заверять приложение и изображение dmg?
У меня есть приложение, которое подписано, нотариально заверено и сшито, а затем заархивировано в zip-файл, который используется как объект для моего средства обновления Sparkle.
Я также распространяю его по образу DMG для новых пользователей (и это основная загрузка с моего сайта). Могу ли я просто поместить нотариально заверенное приложение в DMG или мне нужно пройти отдельную процедуру нотариального заверения и сшивания для файла DMG?
0 ответов
Вам нужно всего лишь один раз заверить приложение:
- Создайте файл DMG с подписанным приложением.
- Подпишите, нотариально заверьте и скрепите файл DMG.
- Откройте файл DMG и скопируйте приложение снаружи. Сшиваем его и создаем архив для Sparkle [1].
Чтобы подтвердить, что приложение нотариально заверено, выполните эту команду:
spctl -a -t exec -vv MyApp.app
И вы увидите что-то вроде:
MyApp.app: accepted
source=Notarized Developer ID
origin=Developer ID Application: Name (ID)
(Обратите внимание, что источником является "Нотариально заверенный идентификатор разработчика")
Вы также можете подтвердить, что билет сшит, выполнив эту команду:
xcrun stapler validate MyApp.app
И вы увидите это сообщение:
Processing: /path/to/MyApp.app
The validate action worked!
Достаточно нотариально заверить файл DMG, потому что служба нотариального заверения нотариально заверяет любое приложение внутри образа диска. Из документации Apple:
Кроме того, вы можете поместить приложения, расширения ядра и другое программное обеспечение в контейнер, например, образ диска, и нотариально заверить контейнер. Нотариальная служба принимает образы дисков (формат UDIF), подписанные плоские установочные пакеты и ZIP-архивы. Он также обрабатывает вложенные контейнеры, например пакеты внутри образа диска.
[1] Вы также можете использовать файл DMG для Sparkle. Нет необходимости во втором архиве. Из документации Sparkle:
Sparkle поддерживает обновление из DMG, ZIP-архивов, архивов и установочных пакетов, поэтому вы можете повторно использовать один и тот же архив для распространения вашего приложения на своем веб-сайте, а также для обновлений Sparkle.
Из того, что я прочитал в документации Apple (см. Цитату ниже), и из моего опыта работы с моим и другими приложениями, достаточно просто нотариально заверить DMG. Вам не нужно сначала нотариально заверить приложение...
"Например, если вы отправляете образ диска, который содержит подписанный пакет установщика с пакетом приложений внутри, служба нотариального заверения генерирует билеты для образа диска, пакета установщика и пакета приложений".
Вы должны заархивировать приложение, отправить его на нотариальное заверение, а затем скрепить оригинальное приложение. Затем создайте dmg с помощью скрепленного приложения, заархивируйте dmg, отправьте его на нотариальное заверение, скрепите dmg и распространите.