Major/Minor/Patch/Build에서 version_string 생성 PLIST에서 사용하기 위해 정의
-
18-09-2019 - |
문제
나는 사전 컴파일 된 헤더 파일로 처리 된 plist가 있고 그것에 cfbundlegetinfostring과 같은 필드에서 몇 번 사용 된 "변수"버전 _string이 있습니다. 즉, 주요 cfbundlegetinfostring은 : myProduct version_string Copyright © 2009 mycorp © myProduct version_string © 2009 Mycorp입니다.
myHeader.h (info.plist prefix 헤더로 세트입니다. version_string을 major.minor.patch.build로 만들 수 있습니다.
#define MAJOR 1
#define MINOR 0
#define PATCH 0
#define BUILD 23
어떤 이유로 나는 이것을 할 수없는 것 같습니다. 나는 그 순간 중 하나를 가질 수 있습니다
해결책
실제로 이것에 대한 Apple Tech 메모와 내가 가진 바로 그 문제에 대한 해결책이 있음이 밝혀졌습니다. 그래서, 이것을 발견하고 같은 문제를 겪고있는 사람은 내가 체크 아웃했습니다. 기술 노트 TN2175 : 전처리 정보. Xcode의 Plist Files C Preprocessor
다른 팁
Plist 파일을 가져 와서 추가 확장자 (아마도 p?)로 이름을 바꿉니다. 추가하다 #include "MyHeader.h"
파일의 시작 부분에 C Preprocessor와 함께 빌드에서 전처리합니다 (일반적으로 cpp
). 추가 여과해야 할 수도 있습니다 #
라인이지만 왜 작동하지 않는지 모르겠습니다.
기본적으로, cpp
stdout에 출력해야하므로 이와 같은 명령을 추가하는 것이 좋습니다.
cpp myplist.plist.P | grep -v '^#' > myplist.plist