[objective-c] Info.plist 업로드 오류의 CFBundleVersion

“업로드 한 바이너리가 유효하지 않습니다. Info.plist 파일의 키 CFBundleVersion에는 이전에 업로드 한 버전보다 높은 버전이 포함되어 있어야합니다.”

신청서를 업로드 할 때이 오류가 발생합니다.

iTunes Connect에서 업데이트 된 버전을 1.2로 설정하고 .plist파일도 1.2로 업데이트했습니다 .

이 오류가 발생하는 이유를 이해할 수 없습니다. 어떤 도움을 주시면 감사하겠습니다. 감사.



답변

Apple의 업로드 서버에는 12 개월 이상 수정하지 않은 알려진 버그가 하나 이상 있습니다. 주의해야 할 사항 :

  1. Apple은 버전 번호 내의 모든 선행 0을 삭제합니다. 즉, “전체 문자열”은 숫자로 처리되지 않고 대신 점 사이의 비트는 별도의 숫자로 처리됩니다. 예를 들어 “1.02”는 Apple에서 “1.2”로 취급됩니다. 따라서 Apple의 경우 1.02는 1.1보다 큽니다.
  2. Apple은 때때로 “혼란스러워”하고 업로드 한 앱을 이전에 업로드 한 다른 앱의 버전과 비교하는 것처럼 보입니다. 많은 사람들에게 일어난 일이고 몇 번 직접 봤어요
  3. 애플은 “CFBundleVersion”(즉, “Bundle versions string, short”가 아니라 “Bundle version”)을 비교해야합니다. 혼동하지 마십시오.
  4. 종종 실행 가능한 유일한 해결책은 앞의 숫자를 높이는 것입니다 (예 : “2.4”의 “2”- “3”으로 증가).
  5. 업로드하는 버전 번호는 iTunes에 표시되는 버전 번호와 관련이 없습니다. 원하는 모든 항목을 여기에 넣을 수 있으며 사용자에게 표시됩니다.
  6. … 단, 앱 내에서 “실제”버전 번호를보고하는 경우 사용자는 iTunes 버전 (내 생각에 액세스 할 수없는 앱 내부)

답변

빌드 번호를 업데이트하십시오. 버전 번호가 중요하지만 빌드 번호가 모든 차이를 만듭니다. 예를 들어 앱의 초기 버전은 다음과 같습니다.

version #: 1.0
build #:   1.0

그러나 다음 버전을 업로드하려고 할 때

version #: 1.1
build #:   1.0

업로드를 허용하지 않습니다. 빌드 번호를 1.1로 간단히 증가 시키면 업로드가 승인되었습니다.


답변

Xcode 4는 응용 프로그램을 다시 보관하지 않으면 동일한 버전을 다시 업로드하려고한다고 생각합니다. 번들 버전을 변경하고 다시 빌드하더라도 업로드가 실패합니다. 제품 메뉴에서 ” 보관 ” 을 수행하는 것을 잊지 마십시오 !


답변

여기에있는 많은 답변이 궁극적으로 도움이되었지만 Apple이 비교 한 정확한 “버전”번호를 확인하기 전까지는 그렇지 않았습니다.

  1. iTunes Connect로 이동-> 응용 프로그램 관리
  2. 이전 버전을 확인하려는 응용 프로그램을 선택하십시오.
  3. 자세히보기 라고 표시된 파란색 버튼을 클릭합니다.
  4. Binary Details 라고 표시된 링크를 클릭하십시오.
  5. 번들 버전에 제공된 값 찾기

버전 번호 1.0.1을 제출했다고 생각했지만 Apple이 저장 한 실제 번호는 101이었습니다. 위의 의견 중 일부는 버전을 2.0 (20) 또는 1.5 (15) 또는 1.2 (12)로 변경해야한다고 생각하게했습니다. )-보시다시피 모두 101 개 미만입니다. 내 버전 번호 102 (점 없음)를 업데이트하면 문제가 해결되었습니다.


답변

이 기사에서는 앱 스토어에 표시되는 버전 번호가 번들 버전 번호와 반드시 동일하지는 않다는 점을 지적합니다. iTunes에서 앱의 세부 정보를 볼 때 ‘바이너리 세부 정보’라는 링크가 있습니다. 해당 페이지에는 번들 버전이 표시됩니다. 제가 작업하고있는 앱 중 하나는 버전 1.0 이었지만 번들 버전은 2.0이었습니다. 버전 1.1의 번들 업로드는 실패했지만 2.1은 작동했습니다.

그래서 앱 버전과 번들 버전이 있습니다. 이 문제는 번들 버전과 관련이 있습니다.


답변

숫자 형식으로 인해 혼란스러운 것 같습니다. 번들 버전이 10 진수가 아닙니다. 버전 (또는 빌드)이므로 1.11은 실제로 “원 포인트 11″입니다. 따라서 1.11은 1.2보다 큽니다. 이 경우 1.20을 사용하여 성공했습니다.


답변

일반적으로 버전 번호가 없기 때문에 발생할 수 있습니다. 따라서 ID 아래에 버전 번호를 추가하고 빌드 번호도 확인하십시오.

여기에 이미지 설명 입력

코딩 유지 ……… 🙂