Можно ли прочитать «текущую версию проекта» в настройках приложения для iPhone - PullRequest
3 голосов
/ 04 марта 2010

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

Я видел, как несколько приложений обходили это, написав скрипт, чтобы подготовить значение и заполнить его значением в root.plist. Мне было интересно, есть ли более элегантный способ сделать это.

Ответы [ 3 ]

4 голосов
/ 04 марта 2010

Я не знаю ваш agvtool, но способ получения версии моего кода из кода:

[[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleVersion"];

Он получает номер версии из списка info.plist, который вы должны определить перед загрузкой приложения в iTunesConnect, так что все должно быть в порядке: вы полагаетесь на значение, которое в любом случае должны определить.

1 голос
/ 13 августа 2010

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

http://davedelong.tumblr.com/post/110448898058/incrementing-build-numbers-in-xcode

1 голос
/ 08 июня 2010

Вы ищете это . Он включает в себя информацию о том, как настроить и управлять вашей маркетинговой версией и информацией о номере сборки. Затем, когда вам понадобится строка сборки, сделайте что-то похожее на следующее:

NSString *marketingVersion = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleShortVersionString"];
NSString *buildNumber = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleVersion"];

self.appVersionLabel.text = [NSString stringWithFormat:@"%@.%@", marketingVersion, buildNumber];
...