Комментарии 15
У себя генерим хедер с содержимым git describe и отображаем версию где-нибудь в приложении. Подход, описанный в статье имеет право на жизнь, но при условии, что над проектом работает только один человек. Иначе придется убрать Info.plist из под контроля версий (а ему контроль версий все-таки нужен) или исправлять конфликты после каждого слияния.
+8
А есть способ увеличивать версию только в момент Build->Archive когда создается *.ipa?
0
Скорее всего только косвенно можно определить, что сборка выполняется для архива. При запуске вашего скрипта будут выставленны переменные окружения, так вот по ним и можно определить, что идет архивирование.
Вариант первый
BUILD_DIR, BUILD_ROOT и др. содержат в пути компоненту 'ArchiveIntermediates'. Ненадежно, поскольку подозреваю может меняться от версии к версии XCode.
Вариант второй
Задать для архивирования специальную конфигурацию, тогда переменная окружения CONFIGURATION подскажет скрипту надо ли накинуть номер билда.
Вариант первый
BUILD_DIR, BUILD_ROOT и др. содержат в пути компоненту 'ArchiveIntermediates'. Ненадежно, поскольку подозреваю может меняться от версии к версии XCode.
Вариант второй
Задать для архивирования специальную конфигурацию, тогда переменная окружения CONFIGURATION подскажет скрипту надо ли накинуть номер билда.
+2
мы для себя решили эту проблему используя билдскрипты для упаковки в ipa — в дальнейшем прикрутили к дженкинсу и уже полгода всё работает как часы — если интересно, могу написать статью
+2
зачем изобретать велосипед?
agvtool bump -all
agvtool bump -all
0
Я записываю во время сборки номер ревизии SVN в Info.plist.
Это имеет большее отношение к процессу разработки, чем номер сборки.
Это имеет большее отношение к процессу разработки, чем номер сборки.
0
Поделитесь методом, если не сложно.
0
Пожалуйста:
REV=`/usr/bin/svnversion -nc ${PROJECT_DIR} | /usr/bin/sed -e 's/^[^:]*://;s/[A-Za-z]//'`
/usr/libexec/PlistBuddy -c «Set :CFBundleVersion $REV» "${TARGET_BUILD_DIR}"/${INFOPLIST_PATH}
Добавляется в виде скрипта в «Build Phases» таргета. Использую в своих проектах, за универсальность не ручаюсь.
REV=`/usr/bin/svnversion -nc ${PROJECT_DIR} | /usr/bin/sed -e 's/^[^:]*://;s/[A-Za-z]//'`
/usr/libexec/PlistBuddy -c «Set :CFBundleVersion $REV» "${TARGET_BUILD_DIR}"/${INFOPLIST_PATH}
Добавляется в виде скрипта в «Build Phases» таргета. Использую в своих проектах, за универсальность не ручаюсь.
0
Вот я недавно у себя в блоге описывал как я это делаю с применением GIT
www.prudnikov.com/2011/10/blog-post.html
www.prudnikov.com/2011/10/blog-post.html
0
Заранее прошу прощения за оффтопик.
Подскажите как опубликовать приложение в App Store. Вроде все делаю правильно, добавил туда описания, потом пытаюсь загрузить, а он выдает ошибку, что у меня сертефикат не тот. Вычитал, что для публикации нужен не сертефикат девелопера, а другой, вроде пошел делать, сделал, но один, говорит, что ему пары не хватает. Где брать второй сертефикат?
Огромное спасибо за любую помощь.
Подскажите как опубликовать приложение в App Store. Вроде все делаю правильно, добавил туда описания, потом пытаюсь загрузить, а он выдает ошибку, что у меня сертефикат не тот. Вычитал, что для публикации нужен не сертефикат девелопера, а другой, вроде пошел делать, сделал, но один, говорит, что ему пары не хватает. Где брать второй сертефикат?
Огромное спасибо за любую помощь.
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Автоматическое увеличение номера сборки в Xcode