ITunes Connect и Xcode 8: ваше приложение изменилось на недействительный двоичный файл

На прошлой неделе, с Xcode 7, я смог загрузить без каких-либо проблем. Но сегодня я получаю сообщение, которое ваше приложение изменило на недействительный двоичный файл.

Я видел, что теперь с Xcode 8 добавлен новый значок 20x20 2x и 3x. Я добавил один, но все еще получаю ошибку.

У кого-то была схожая проблема?

Ответ 1

Подтвердите свой адрес электронной почты!

В моем случае я потратил много времени, потому что не проверял электронную почту. Когда вы получите такую ​​ошибку, Apple отправит вам электронное письмо с описанием.

Например, это то, что Apple прислал мне:

"Это приложение пытается получить доступ к конфиденциальным данным без использования описание. Приложение Info.plist должно содержать Ключ NSCameraUsageDescription со строковым значением, объясняющим как приложение использует эти данные."

Ответ 2

После нескольких дней борьбы с такой же проблемой я, наконец, получил свое приложение, успешно представленное, но только после того, как я был на связи с поддержкой Apple Developer.

Несколько вещей, о которых нужно помнить:

  • Убедитесь, что вы установили ключи описания Info.plist для любых прав. Это необходимо для приложений iOS. Mine была приложением macOS, поэтому это не применимо.

  • Перейдите к iTunes Connect и заново создайте все профили обеспечения и сертификаты подписи кода, если вы не на 100% уверены, что они действительны. Вы можете сделать это как для разработчиков, так и для распространения.

  • В Xcode отключите автоматическую подписание кода для вашего приложения и любые цели сборки (вы можете попробовать автоматическую подпись кода в Xcode после выполнения шагов № 2 и № 4, но это не помогло мне).

  • Перейдите к настройкам Xcode и щелкните команду разработчиков, а в появившемся листе вы увидите некоторые кнопки "Загрузить" рядом с недавно созданными (в iTunes Connect) сертификатами подписи кода и профилями подготовки. Нажмите на них все. И поэтому вы не смущаетесь в шаге №5, удалите все остальные устаревшие профили обеспечения и идентификаторы подписи кода для этого приложения.

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

  • Добавьте номер сборки.

  • Глубоко очистите проект (Option-Shift-Command-K).

  • Архивируйте свое приложение.

  • В появившемся организаторе выберите вновь заархивированное приложение и подтвердите его (он всегда проверяется, но я все равно получаю Invalid Binary позже).

  • Экспортируйте сборку и выберите вариант "Сохранить для развертывания магазина Mac App Store" или аналогичный.

  • При появлении запроса используйте те же профили Provisioning Profiles, которые вы использовали ранее, и сохраните.

  • Откройте .pkg в Application Loader, который вы можете запустить из приложения Xcode > Open Developer Tool > Application Loader.

Я не получал никаких писем по проблеме с недействительными двоичными файлами. Вместо этого мне посчастливилось настроить свой iPad с iTunes Connect, и поэтому, как часы, я получал уведомления в течение нескольких минут после загрузки приложения: "Ваше приложение... изменилось на Invalid Binary".

Если вы не получили одно из этих недопустимых двоичных уведомлений, это хороший знак. Еще через 10-15 минут я проверил портал iTunes Connect, и я смог, наконец, добавить загруженную сборку и отправить ее на рассмотрение.