При подключении к магазину приложений отображается неправильный номер сборки

#xcode #app-store-connect

Вопрос:

Я загрузил сборку с помощью бета-версии Xcode, забыв, что вы не можете отправлять сборки, скомпилированные с бета-версиями. Поэтому я обновил версию Xcode до версии выпуска через магазин приложений.

С бета-версией Xcode подключение к магазину приложений точно отражало номер сборки (4.8.1). Теперь, когда выпущена версия, Connect показывает номер сборки 5. Я попытался увеличить Xcode до 4.8.2, и теперь Connect показал номер сборки 6.

Случалось ли это с кем-нибудь еще?

Ответ №1:

Это не ошибка, это (новая) функция.

Ваш номер сборки должен увеличиваться с каждой новой сборкой. Многие люди, включая тебя, этого не знают. Итак, теперь, во время отправки сборки, ваш номер сборки проверяется, и при необходимости он автоматически увеличивается.

Так вот что произошло: ваш номер сборки был исправлен до 5; затем вы попытались снизить его, что незаконно, и отправили снова, и он был исправлен до 6, что правильно.

Обратите внимание, что номер сборки должен быть просто числом, а не пунктирной строкой версии.

Кроме того, вы можете сбросить номер сборки до 1, если увеличите строку версии, обращенную к пользователю.

Комментарии:

1. Спасибо, Мэтт! Кстати, не уверен, что вы понизили его или кто-то другой, но я определенно поискал вокруг, прежде чем публиковать, и ничего не нашел. Как вы заметили, многие люди об этом не знают, поэтому я думаю, что было бы полезно оставить это для других!

2. Эта функция очень четко обозначена в единственном месте, которое имеет смысл посмотреть: в примечаниях к выпуску ( developer.apple.com/documentation/xcode-release-notes/… ). «При загрузке приложения в App Store Connect помощник по распространению в Xcode определяет, имеет ли ваше приложение действительный номер сборки…» и т. Д.

3. Это может быть правдой, но исправление номера сборки происходит только в магазине приложений, Подключайтесь не в Xcode, и для того, кто не понимает, что происходит, это похоже на ошибку, а не на функцию. (также примечания к выпуску Xcode содержат 11 000 слов!)

4. Я лично думаю, что в их новой системе есть ошибка. Я загрузил сборку с версией 211019.1, последняя загрузка была 211019.0, она должна была пройти их проверку (согласно документации по CFBundleVersion, от одной до трех точечных обозначений), но вместо этого она «столкнулась» с версией сборки до 211020. Кто-нибудь в такой же ситуации ?

5. Я действительно сообщил об этом.

Ответ №2:

Я столкнулся с той же проблемой с XCode 13 и, наконец, нашел причину: во время загрузки архива вам открывается диалоговое окно, в котором установлен флажок «Управление версией и номером сборки». По умолчанию он помечен галочкой (т. е. отмечен). Снимите этот флажок, чтобы Apple не могла автоматически управлять номером сборки.

Комментарии:

1. И если вы забудете один раз, это может разрушить всю вашу цепочку номеров сборок :'(. Действительно навязчивая функция.

2. Есть ли какой-либо рабочий способ отключить этот флажок по умолчанию? Я привык самостоятельно управлять номерами сборок. И эта новая функция уже несколько раз нарушала мою ожидаемую версию…

Ответ №3:

Это определенно ошибка.

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

Я использовал xcrunchool —upload-app для загрузки своего приложения, и после переключения на Xcode 13 при загрузке моего приложения с версией 4.7.123 оно автоматически «исправило» его до 5.

Теперь я использую xcrun altool —upload-package вместе с —bundle-версией, чтобы установить номер сборки, который работает, за исключением того, что я больше не могу загружать приложения версии 4.7, потому что в настоящее время загружена версия 5.