Основываясь на ответе Брэда Ларсона, если у вас есть информация о основной и вспомогательной версиях, хранящаяся в информационном списке (как я это делал в конкретном проекте), это хорошо сработало для меня:
- (NSString *)appNameAndVersionNumberDisplayString {
NSDictionary *infoDictionary = [[NSBundle mainBundle] infoDictionary];
NSString *appDisplayName = [infoDictionary objectForKey:@"CFBundleDisplayName"];
NSString *majorVersion = [infoDictionary objectForKey:@"CFBundleShortVersionString"];
NSString *minorVersion = [infoDictionary objectForKey:@"CFBundleVersion"];
return [NSString stringWithFormat:@"%@, Version %@ (%@)",
appDisplayName, majorVersion, minorVersion];
}
Теперь изменение минорной версии вручную может быть затруднительным, поэтому использование трюка с номером ревизии исходного репозитория является идеальным. Если вы не связали это (как я не сделал), приведенный выше фрагмент может быть полезным. Это также вытаскивает отображаемое имя приложения.