2010-02-22 4 views
28

Xcode 빌드 설정에서 제품 이름이 "내 응용 프로그램"(단어 사이에 공백이 있음) 인 iPhone 응용 프로그램이 있다고 가정합니다. 제 의 Info.plist에서, 번들 식별자가 애플리케이션 번들 결과 의 Info.plist에서 com.mycompany.${PRODUCT_NAME:rfc1034identifier}{PRODUCT_NAME}에서 XCode 번들 식별자 형식 지정

로 지정된 번들 식별자 com.mycompany.My-App로 도시된다. com.mycompany.MyApp이 필요합니다. 번들 식별자 설정을 변경하여 원하는 방식으로 제품 이름을 변환하려면 어떻게합니까?

ps. ${PRODUCT_NAME:rfc1034identifier}${PRODUCT_NAME:identifier}으로 변경하면 결과 번들 식별자는 com.mycompany.My_App이됩니다. 결과에서 제품 이름의 공백 문자를 완전히 제거하면됩니다.

답변

43

그냥 입력 해주세요. 당신이 다른 번들 이름을 필요로 둘 이상의 대상, 그것은 자신의 변수를 사용하는 대신를 만드는 것입니다 수행하는 하나 개의 방법이있는 경우

즉 대신 com.mycompany.${PRODUCT_NAME:rfc1034identifier}의는 com.mycompany.MyApp

을 입력합니다.

빌드 메뉴 (프로젝트 선택 및 정보 입수)에서 프로젝트에 고유 한 변수를 추가 할 수 있습니다. MY_BUNDLE_NAME이라는 파일을 MyApp로 설정하면 com.mycompany.${MY_BUNDLE_NAME}을 plist 파일에 넣을 수 있습니다. MY_BUNDLE_NAME을 (를) 다른 대상에 대해 다른 값으로 설정할 수 있어야합니다. $ 앱 ID를의 Info.plist

번들 식별자 (앱 ID 접미사) 입력 고유 식별자를 만지지이 파일 에

:

+2

답변을 주셔서 감사합니다,하지만 내 상황은 간단하지 않습니다! 물론 내 질문을 이해했지만, 내가 말하지 않은 것은 다른 번들 식별자가 필요한 동일한 응용 프로그램의 "대상"이 여러 개 있다는 것입니다. 그래서 나는 각 타겟이 가지고있는 빌드 설정에 따라 번들 식별자를 동적으로 설정해야한다. 예를 들어 하나의 대상에 제품 이름으로 "My App1"이 있고 다른 대상에 제품 이름으로 "My App2"가있을 수 있습니다. 그래서 하드 코딩 대신 동적으로이 작업을 수행해야합니다. – ravinsp

+1

아, 그건 더 의미가 있습니다! 내 대답을 편집했습니다. 더 도움이되기를 바랍니다! – deanWombourne

+0

감사합니다 딘! 저를 위해 그것을 할 것이고 나는이 사용자 정의 빌드 설정이 다른 곳에서도 유용 할 것임을 알 수 있습니다. 팁 고마워! – ravinsp

0

같은 번들 ID는 엑스 코드와 itunnes에 있어야합니다. 권장되는 방법은 앱 ID의 번들 식별자 부분에 역 도메인 이름 스타일 문자열을 사용하는 것입니다.

예 : com.domainname.appname 허용 대답은 제대로 나를 위해 일하지