Подписание кода приложения Mac OS X для специального бета-распространения (с HockeyApp)

У меня есть приложение для Mac OS X, которое правильно настроено как в режиме отладки, так и в режиме выпуска. То есть я могу собрать и запустить на своем компьютере в режиме отладки или заархивировать его и успешно отправить в AppStore. Однако я бы хотел распространить бета-версии своего приложения среди тестировщиков (через HockeyApp, FWIW).

Первое, что я попробовал, - это создать его для Achiving с помощью моего профиля подготовки AppStore Distribution. Когда я попытался запустить получившееся приложение на другом компьютере, сразу после запуска у меня вылетел Exception Type: EXC_CRASH (Code Signature Invalid) сбой. Это очень похоже на этот вопрос: Приложение Mac OS X сбой с ошибкой недопустимой подписи кода

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

Итак, мой вопрос: как я могу подготовить архив для развертывания бета-версии, чтобы мои тестировщики могли просто загрузить и запустить приложение, не предоставляя UUID своего устройства OS X? В качестве альтернативы, если я должен собирать UUID, есть ли какой-либо оптимизированный способ сделать это (например, через HockeyApp), чтобы минимизировать боль для моих тестеров?


person Zane Claes    schedule 25.01.2014    source источник


Ответы (1)


Поскольку вы также спрашивали об этом на нашем форуме поддержки (HockeyApp), я опубликую здесь свой ответ для полноты (см. http://support.hockeyapp.net/discussions/problems/18233-code-signing-a-mac-os-x-app-for-ad-hoc-beta-distribution):

Есть несколько вариантов:

  1. Используйте подписанное бета-распространение с идентификатором разработчика. Вместо того, чтобы предоставлять приложение, подпишите его только своим идентификатором разработчика и поделитесь им.

  2. Использовать подготовленное бета-распределение. Для этого необходимо собрать все идентификаторы UUID Mac ваших тестеров Mac (ограничено 100 устройствами). Тестировщики должны зарегистрировать свой Mac в HockeyApp, чтобы вы могли собирать UUID и добавлять их в свой профиль подготовки. Затем вам нужно либо предоставить новую сборку с новым профилем, либо только загрузить профиль, и новые тестировщики должны загрузить и установить его перед загрузкой приложения.

person Kerni    schedule 25.01.2014
comment
Второй способ предпочтительнее для приложений с поддержкой iCloud? Или это не имеет значения? - person Z S; 06.09.2014
comment
iCloud нельзя использовать с приложениями, подписанными с помощью идентификатора разработчика. Вам нужно изолировать их и использовать систему подготовки Apple для бета-тестирования и App Store. - person Kerni; 06.09.2014
comment
Спасибо. Я искал и не нашел никаких четких инструкций по распространению AdHoc для Mac App Store. Когда я пытаюсь создать профиль обеспечения распространения на портале разработчика, он предлагает только 2 варианта: разработка и Mac App Store (без распространения). Для Mac App Store, когда я импортирую профиль в Xcode, он отображается как стороннее приложение разработчика Mac ... это правильный путь? Я догадывался, что это относится к чему-то другому, например, когда вы распространяете приложение прямо со своего веб-сайта без MAS? Я планирую использовать хоккей для проведения специального тестирования, если это имеет значение - person Z S; 06.09.2014
comment
Насколько я знаю, вам необходимо использовать профили разработки, поскольку Ad-Hoc профиль распространения для Mac отсутствует. - person Kerni; 06.09.2014
comment
Постоянно возникают com.apple.developer.ubiquity-container-identifiers entitlement is not allowed проблемы. Пробовали профили разработчиков и профили App Store; ни один из них не работает. Часть архивации работает, но не после того, как я экспортирую приложение. - person Z S; 06.09.2014
comment
Возможно, вы захотите создать новый вопрос с просьбой о помощи. Комментарии к другим вопросам не следует использовать для новых выпусков. - person Kerni; 06.09.2014