Использование цепочки для ключей не по умолчанию в Xcode
Вопрос
Как я могу использовать связку ключей не по умолчанию в проекте Xcode iPhone.
Я уже пробовал «--keychain mycerts.keychain» в «Другие флаги подписи кода» в настройках сборки «подпись кода».
Решение
После долгих исследований я пришел к выводу, что этого сделать невозможно.
Другие советы
Для инструмента разработки кода требуется абсолютный путь к брелку.
Используйте дополнительную «фазу запуска сценария», чтобы вызвать инструмент разработки кода с помощью пользовательской цепочки для ключей.Встроенный скрипт должен выглядеть так:
codesign -s 'your-identity' --keychain "${SRCROOT}/path/to/keychain" "${TARGET_BUILD_DIR}/${WRAPPER_NAME}"
в настройке «Сборка» в разделе «Подписание кода» -> «Другие флаги подписи кода» создайте флаг «--keychain keychain-name.keychain».
Хотя это неудобно, вы можете временно изменить свою «связку ключей по умолчанию» на ту связку ключей, которая имеет ваш сертификат/ключи.Затем XCode будет искать эту связку ключей во время подписания кода.Вы можете сделать это с помощью Keychain Access.app или утилиты командной строки security(1).Однако вы несете ответственность за разблокировку указанной связки ключей самостоятельно.
Эту проблему можно решить, включив в список поиска связки ключей вашу связку ключей:
security list-keychains -s login.keychain mycerts.keychain etc.keychain
Чтобы просмотреть список поиска активной связки ключей, используйте ту же команду без параметра -s:
security list-keychains
Отличная ссылка для справки здесь: https://ss64.com/osx/security-keychain.html