Сборка командной строки ipa - профили не найдены - PullRequest
0 голосов
/ 27 июня 2018

Я уже давно использую шаги командной строки, чтобы создать ipa приложения для iOS. Я боялся обновить ОС моей системы сборки до High Sierra, так как каждый раз в прошлом обновление ОС вместе с более новым xCode ломало все с точки зрения автоматизации сборок через командные строки.

Теперь, когда я нахожусь на High Sierra и использую xCode 9.4.1, я не могу сгенерировать .ipa на основе архива.

Следующая команда используется для генерации архива:

xcodebuild -project Unity-iPhone.xcodeproj -scheme Unity-iPhone -configuration Release clean archive -archivePath ./build/archive DEVELOPMENT_TEAM=<TEAM_ID>

Это вылилось бы в файл archive.xcarchive, для которого я затем выполнил бы следующую команду:

xcodebuild -exportArchive -archivePath ./build/archive.xcarchive -exportOptionsPlist ./iOS_ExportOptions_DEV.plist -exportPath ./build/adhoc -allowProvisioningUpdates

Выполнение этой команды завершится с ошибкой:

2018-06-27 11:19:59.789 xcodebuild[27042:735265] [MT] IDEDistribution: -[IDEDistributionLogging _createLoggingBundleAtPath:]: Created bundle at path '/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/Unity-iPhone_2018-06-27_11-19-59.788.xcdistributionlogs'.
2018-06-27 11:20:21.364 xcodebuild[27042:735265] [MT] IDEDistribution: Step failed: <IDEDistributionSigningAssetsStep: 0x7f9582c35d20>: Error Domain=IDEDistributionSigningAssetStepErrorDomain Code=0 "Locating signing assets failed." UserInfo={NSLocalizedDescription=Locating signing assets failed., IDEDistributionSigningAssetStepUnderlyingErrors=(
    "Error Domain=IDEProvisioningErrorDomain Code=23 \"There are no accounts registered with Xcode.\" UserInfo={NSLocalizedDescription=There are no accounts registered with Xcode., NSLocalizedRecoverySuggestion=Add your developer account to Xcode}",
    "Error Domain=IDEProfileLocatorErrorDomain Code=1 \"No profiles for 'com.MY.BUNDLE' were found\" UserInfo={NSLocalizedDescription=No profiles for 'com.MY.BUNDLE' were found, NSLocalizedRecoverySuggestion=Xcode couldn't find any iOS App Store provisioning profiles matching 'com.MY.BUNDLE'.}"
)}
error: exportArchive: There are no accounts registered with Xcode.

Error Domain=IDEProvisioningErrorDomain Code=23 "There are no accounts registered with Xcode." UserInfo={NSLocalizedDescription=There are no accounts registered with Xcode., NSLocalizedRecoverySuggestion=Add your developer account to Xcode}

error: exportArchive: No profiles for 'com.MY.BUNDLE' were found

Error Domain=IDEProfileLocatorErrorDomain Code=1 "No profiles for 'com.MY.BUNDLE' were found" UserInfo={NSLocalizedDescription=No profiles for 'com.MY.BUNDLE' were found, NSLocalizedRecoverySuggestion=Xcode couldn't find any iOS App Store provisioning profiles matching 'com.MY.BUNDLE'.}

** EXPORT FAILED **

Снова эта команда, чтобы взять архив и экспортировать ipa, работающий в Sierra под управлением xCode 9.1. Все положения на машине, а также необходимые сертификаты разработчика. Кроме того, я вошел в систему с моими учетными записями разработчиков в xCode. Самое большое раздражение во всем этом - то, что я могу вручную архивировать и создавать ipas, которые я могу отправить в itunes connect прямо в xCode, и все это работает.

Наконец, вот мой файл iOS_ExportOptions_DEV.plist:

    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>method</key>
    <string>ad-hoc</string>
    <key>teamID</key>
    <string>TEAM ID</string>
</dict>
</plist>

Если кто-то сталкивался с этим, пожалуйста, дайте мне знать, как вы решили это.

1 Ответ

0 голосов
/ 23 мая 2019

Теперь я использую Mojave с Xcode 10.2.1, и у меня тоже есть та же проблема, и наконец я решил протестировать различные комбинации тегов клавиш внутри файла .plist .

После прочтения тегов файла .plist в документации разработчика я создаю файл .plist с вашими тегами и почти всеми тегами из этого другого ответ https://stackoverflow.com/a/35063904/11135813 (только ключевые теги, которые мне нужны).

Проблема в ключе метод значение. Если вы включите его, оно должно иметь значение <string>development</string> (значение по умолчанию, если вы не включаете эти теги). Если вы включите любое другое допустимое значение {app-store, ad-hoc, enterprise, validation}, вам необходимо убедиться, что вашей учетной записи Apple ID разрешено выполнять операцию экспорта. Проверьте учетные записи Xcode для разработчиков, добавленные в вашу среду, и спросите свою группу администраторов сертификатов о роли администратора для вашей учетной записи. Эта роль также необходима для проверки вашего файла IPA .

...