У себя генерим хедер с содержимым git describe и отображаем версию где-нибудь в приложении. Подход, описанный в статье имеет право на жизнь, но при условии, что над проектом работает только один человек. Иначе придется убрать Info.plist из под контроля версий (а ему контроль версий все-таки нужен) или исправлять конфликты после каждого слияния.
Скорее всего только косвенно можно определить, что сборка выполняется для архива. При запуске вашего скрипта будут выставленны переменные окружения, так вот по ним и можно определить, что идет архивирование.
Вариант первый
BUILD_DIR, BUILD_ROOT и др. содержат в пути компоненту 'ArchiveIntermediates'. Ненадежно, поскольку подозреваю может меняться от версии к версии XCode.
Вариант второй
Задать для архивирования специальную конфигурацию, тогда переменная окружения CONFIGURATION подскажет скрипту надо ли накинуть номер билда.
мы для себя решили эту проблему используя билдскрипты для упаковки в ipa — в дальнейшем прикрутили к дженкинсу и уже полгода всё работает как часы — если интересно, могу написать статью
Заранее прошу прощения за оффтопик.
Подскажите как опубликовать приложение в App Store. Вроде все делаю правильно, добавил туда описания, потом пытаюсь загрузить, а он выдает ошибку, что у меня сертефикат не тот. Вычитал, что для публикации нужен не сертефикат девелопера, а другой, вроде пошел делать, сделал, но один, говорит, что ему пары не хватает. Где брать второй сертефикат?
Огромное спасибо за любую помощь.
Почитай мануал от Эппла, там всё понятно расписано. Тебе нужен Distribution сертификат, а не девелопера. Для этого нужны права агента. Пиши в ЛС если не разберёшься
Автоматическое увеличение номера сборки в Xcode