Сделайте так, чтобы ваше представление запрашивало пакет, а затем напрямую запрашивает файл Info.plist
и извлекает CFBundleVersion
(или соответствующий ключ, который вы хотите извлечь). Никогда не нужно сохранять версию в .strings
файл. Далее все, что вам нужно сделать, это иметь строку формата, чтобы подготовить ее к отображению. Одна полезная вещь, если вы заботитесь о локализации, это вместо этого иметь локализованную строку в вашем .strings
, помеченную как-то вроде "%@<CFBundleVersion format string>" = "Version: %@";
Тогда вы получите быстрый визуальный индикатор, если ваши локализаторы выполнили свою работу на всех языках.
MyInfoView *infoView = /*...*/;
NSString *version = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleVersion"];
infoView.versionLabel.text = [NSString stringWithFormat:NSLocalizedString(@"%@<CFBundleVersion format string>",nil), version];