2015-07-21 4 views
4

Я пишу iOS SDK с использованием Objective-C язык программирования. Я хотел бы знать, если есть поле в Xcode, где я могу установить номер версии для SDKКак установить номер версии для SDK в iOS/Objective C?

Есть ли способ в Objective-C для заданной версии и построить номер так, как мы делаем это для IOS приложений (EX : Версия: 2.5.1 Build: 2.5.1.12)?

необходимо также способ обнаружить этот номер версии, так что я могу выставить АНИ что-то вроде

- (NSString *)getSDKVersion { 
    NSDictionary *infoDictionary = [[NSBundle mainBundle] infoDictionary]; 
    NSString *majorVersion = [infoDictionary objectForKey:@"CFBundleShortVersionString"]; 
    NSString *minorVersion = [infoDictionary objectForKey:@"CFBundleVersion"]; 

    return [NSString stringWithFormat:@"SDK Version %@ (%@)", majorVersion, minorVersion]; 
} 

-(NSString*)getSDKBuildVersion; 

который возвращает версию SDK и номер сборки.

Использование: Xcode - 7,0 (Beta 3 версия)

Спасибо заранее.

+1

Если SDK имеет Info.plist файл, который вы можете поместить свою версию в 'ключ CFBundleShortVersionString' и ваш номер сборки в' CFBundleVersion'. Чтобы получить их: '[[NSBundle mainBundle] objectForInfoDictionaryKey: @" CFBundleShortVersionString "]' или '[[NSBundle mainBundle] objectForInfoDictionaryKey: @" CFBundleShortVersionString "]' – ryancrunchi

+0

@ryancrunchi обновил вопрос с помощью реализации. При выполнении вышеуказанного API я получаю нулевой ответ. –

+1

Возможно, вам придется создать свой собственный пакет (пакет SDK) и получить доступ к нему с помощью [[NSBundle bundleWithIdentifier: @ "id"] ... '. Из документа apple: 'Этот метод обычно используется фреймворками и плагинами для определения их собственного пакета во время выполнения' – ryancrunchi

ответ

2

Вы можете установить версию и номер сборки щелкать в Project (левая сторона) ->Общие вкладку (правая сторона) ->Идентичность раздел. Вы найдете поля: Bundle Identifier, Версия и Построение.

Для получения значений программным способом:

NSDictionary *infoDictionary = [[NSBundle mainBundle]infoDictionary]; 

NSString *version = [infoDictionary objectForKey:@"CFBundleShortVersionString"]; 
NSString *build = [infoDictionary objectForKey:kCFBundleVersionKey]; 
+1

Спасибо, но когда мы создаем вкладку «Общие» SDK, ее там не будет. И я редактировал файл info.Plist, но я не могу получить номер версии, используя ключ «CFBundleShortVersionString». –

+0

@AnkitJain Можете ли вы найти решение для установки пользовательской версии sdk? – vipulk617