2011-04-12 6 views
12

Xcode에 Bundle VersionBundle Version string, short이 있습니다. iTunes Connect에도 버전이 있습니다. 각 애플리케이션에 대해 사용해야 할 것이 무엇인지, iOS가 앱의 버전을 결정할 때 사용하는 최신 버전이 적절히 대체되고 이전 버전으로 바뀌는 지 확인하려고합니다.iOS 앱의 버전을 이해하는 데 도움이 필요합니다.

답변

19

짧은 이야기 : 번들 버전과 번들 버전 문자열을 모두 같은 값으로 설정할 수 있습니다. 당신은 제출 사이에 그들을 증가해야합니다. iTunes Connect의 버전은 App Store에서 사용자에게 표시되는 버전이며 Info.plist의 버전 문자열과 일치 할 필요가 없습니다.

+5

정보를 제공해 주셔서 감사합니다. 두 개의 다른 값 뒤에있는 의도 된 목적에 대해 좀 더 자세하게 알아볼 수 있습니까? 아니면 최소한 내가 그 정보를 스스로 찾을 수 있는지. 빠른 답변 감사합니다. – Brian

+0

여러 버전 번호가 사용자에게 표시됩니다. Apple은 그들이 일치하는 것을 요구하지 않습니다. 'Bundle Short Version String'은 설정> 일반> 저장 용량>에서 사용자의 기기에서 볼 수있는 버전입니다. 앱 스토어에 표시되는 버전과 일치하도록 설정하려고 할 것입니다. – user984003

13

쉬운 방법으로 버전을 지정하는 방법은 excellent post입니다. 제 일반적인 접근 방식은 x.y.z를 사용하는 것입니다. 여기서 주요 릴리즈에서 'x'가 증가하고 새로운 기능을 도입 한 버전에서는 'y'가 증가하며 버그 수정 릴리즈에는 'z'가 사용됩니다. 예 : 1.0.0, 1.0.4, 3.2.1 등 ... 번들 버전과 iTunes 연결 간의 관계는 간단합니다. Xcode에서 사용하는 버전에 관계없이 iTunes에서도 사용되므로 사용자 응용 프로그램은 쉽게 응용 프로그램 버전을 식별 할 수 있습니다 - 당신은 단지 일관성이 있어야합니다. 나중에 세분화를 도입 할 수 있습니다. 빌드 번호.

편집 : 중요 또한 : 당신은 번호와 일치 인 경우 앱을 거부 할 수 있습니다. 더 자세한 내용 here. 죽은 링크, 그러나 일관성없는 버전 관리 응용 프로그램이 거부 될 수 있기 때문에 여전히 사실입니다.

+0

@RaffiKhatchadourian : 네, 그렇습니다. – rdurand

+0

두 번째 링크가 끊어졌습니다. – rdurand

0
NSString *version = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"]; 
NSLog(@"version is%@",version); 
+10

스택 오버플로에 오신 것을 환영합니다. 답변을 수락 한 지 1 년이 넘었던 질문에 이와 같은 대답을 게시하면 답변에 새로운 자료 (귀하의 의견)가 포함되어 있어야하며 설명이 필요하므로 답변이 왜 명확한 지 알 수 있습니다. 다른 것보다 낫다. 한 줄의 코드만으로는 충분하지 않습니다. 설명을 해줄 수 있습니까? –

+1

이 질문에 전혀 대답하지 않습니다 .. – rdurand

관련 문제