Xamarin.iOS 앱에서 iTunesMetadata.plist 파일
이 문서에서는 테스트 또는 엔터프라이즈 배포를 위해 임시 배포를 사용하여 iOS 애플리케이션에 관한 정보를 iTunes에 제공하는 데 사용되는 iTunesMetadata.plist 파일에 대해 설명합니다.
iOS 애플리케이션(iTunes 앱 스토어의 판매 또는 무료 릴리스용)이 iTunes Connect에 만들어지면, 개발자가 애플리케이션의 장르, 하위 장르, 저작권 표시, 지원되는 iOS 디바이스 및 필요한 디바이스 기능과 같은 정보를 지정할 수 있습니다. 임시 배포를 통해 테스터 또는 엔터프라이즈 사용자에게 배달되는 iOS 애플리케이션의 경우 이 정보가 누락됩니다.
누락된 정보를 임시 배포에 제공하기 위해 선택적인 iTunesMetadata.plist
파일을 만들어 애플리케이션 IPA 파일에 포함할 수 있습니다. 이 plist 파일은 지정된 iOS 애플리케이션에 대한 정보를 정의하는 키/값 쌍이 포함된 특수 형식의 XML 파일입니다(Apple의 속성 목록 프로그래밍 가이드 참조).
iTunesMetadata.plist 내용
다음은 임시 배포에 대한 iTunes 정보를 정의하는 데 사용되는 일반적인 iTunesMetadata.plist
파일의 예제입니다.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>UIRequiredDeviceCapabilities</key>
<dict>
<key>armv7</key>
<true/>
<key>front-facing-camera</key>
<true/>
</dict>
<key>artistName</key>
<string>Company, Inc.</string>
<key>bundleDisplayName</key>
<string>App Name</string>
<key>bundleShortVersionString</key>
<string>1.5.1</string>
<key>bundleVersion</key>
<string>1.5.1</string>
<key>copyright</key>
<string>© 2015 Company, Inc.</string>
<key>drmVersionNumber</key>
<integer>0</integer>
<key>fileExtension</key>
<string>.app</string>
<key>gameCenterEnabled</key>
<false/>
<key>gameCenterEverEnabled</key>
<false/>
<key>genre</key>
<string>Games</string>
<key>genreId</key>
<integer>6014</integer>
<key>itemName</key>
<string>App Name</string>
<key>kind</key>
<string>software</string>
<key>playlistArtistName</key>
<string>Company, Inc.</string>
<key>playlistName</key>
<string>App Name</string>
<key>releaseDate</key>
<string>2015-11-18T03:23:10Z</string>
<key>s</key>
<integer>143441</integer>
<key>softwareIconNeedsShine</key>
<false/>
<key>softwareSupportedDeviceIds</key>
<array>
<integer>9</integer>
</array>
<key>softwareVersionBundleId</key>
<string>com.company.appid</string>
<key>subgenres</key>
<array>
<dict>
<key>genre</key>
<string>Puzzle</string>
<key>genreId</key>
<integer>7012</integer>
</dict>
<dict>
<key>genre</key>
<string>Word</string>
<key>genreId</key>
<integer>7019</integer>
</dict>
</array>
<key>versionRestrictions</key>
<integer>16843008</integer>
</dict>
</plist>
개별 키에 대한 값은 아래에서 자세히 설명합니다.
UIRequiredDeviceCapabilities
UIRequiredDeviceCapabilities
키를 사용하면 iTunes에서 지정된 iOS 디바이스에 설치되기 전에 iOS 애플리케이션에 필요한 디바이스의 특정 기능을 인식할 수 있습니다. 이 키는 기능(<key>...</key>
)의 사전(<dict>...</dict>
) 및 각 기능에 대한 부울 값으로 제공됩니다. 기능의 값이 true
이면 해당 기능이 장치에 있어야 합니다. false
이면 해당 기능이 디바이스에 없어야 합니다. 예시:
<key>UIRequiredDeviceCapabilities</key>
<dict>
<key>armv7</key>
<true/>
<key>front-facing-camera</key>
<true/>
</dict>
이 애플리케이션을 디바이스에 설치하려면 먼저 iOS 디바이스에서 ARM7 명령 집합을 지원하고 전면 카메라가 있어야 한다고 지정합니다. 허용되는 값의 전체 목록은 Apple의 UIRequiredDeviceCapabilities 설명서를 참조하세요.
artistName 및 playlistArtistName
artistName
및 playlistArtistName
키를 사용하여 iTunes에 표시할 iOS 애플리케이션을 만든 회사의 이름을 정의합니다. 예시:
<key>artistName</key>
<string>Company, Inc.</string>
...
<key>playlistArtistName</key>
<string>Company, Inc.</string>
bundleDisplayName, itemName 및 playlistName
bundleDisplayName
, itemName
및 playlistName
키를 사용하여 iTunes 내부에 표시할 iOS 애플리케이션의 이름을 정의합니다. 예시:
<key>bundleDisplayName</key>
<string>App Name</string>
...
<key>itemName</key>
<string>App Name</string>
...
<key>playlistName</key>
<string>App Name</string>
bundleShortVersionString 및 bundleVersion
bundleShortVersionString
및 bundleVersion
키를 사용하여 iTunes에 표시할 iOS 애플리케이션의 버전 번호를 정의합니다. 예시:
<key>bundleShortVersionString</key>
<string>1.5.1</string>
<key>bundleVersion</key>
<string>1.5.1</string>
softwareVersionBundleId
softwareVersionBundleId
키를 사용하여 iOS 애플리케이션에 대한 번들 ID를 지정합니다. 예시:
<key>softwareVersionBundleId</key>
<string>com.company.appid</string>
저작권
copyright
키를 사용하여 iTunes에 표시되는 저작권 표시를 정의합니다. 예시:
<key>copyright</key>
<string>© 2015 Company, Inc.</string>
releaseDate
releaseDate
키를 사용하여 iTunes에 표시할 iOS 애플리케이션의 릴리스 날짜를 제공합니다. 예시:
<key>releaseDate</key>
<string>2015-11-18T03:23:10Z</string>
softwareIconNeedsShine
softwareIconNeedsShine
키를 사용하여 iOS 6(및 이전 버전)에 대해 반짝이는 강조 표시가 iOS 애플리케이션의 아이콘에 필요한지 여부를 iTunes에 알립니다. 예시:
<key>softwareIconNeedsShine</key>
<false/>
gameCenterEnabled 및 gameCenterEverEnabled
gameCenterEnabled
및 gameCenterEverEnabled
키를 사용하여 이 iOS 애플리케이션이 Apple의 Game Center를 지원하는지 여부를 iTunes에 알립니다. 예시:
<key>gameCenterEnabled</key>
<false/>
<key>gameCenterEverEnabled</key>
<false/>
genre, genreId 및 subgenres
genre
및 genreId
키를 사용하여 iOS 애플리케이션이 속한 장르를 iTunes에 알립니다. 예시:
<key>genre</key>
<string>Games</string>
<key>genreId</key>
<integer>6014</integer>
필요에 따라 subgenres
키를 사용하여 iOS 애플리케이션에 대해 최대 두 개의 하위 장르를 추가로 정의할 수 있습니다. 예시:
<key>subgenres</key>
<array>
<dict>
<key>genre</key>
<string>Puzzle</string>
<key>genreId</key>
<integer>7012</integer>
</dict>
<dict>
<key>genre</key>
<string>Word</string>
<key>genreId</key>
<integer>7019</integer>
</dict>
</array>
iOS 애플리케이션의 경우 현재 Apple에서 정의한 장르 및 장르 ID는 다음과 같습니다.
장르 ID | 장르 이름 |
---|---|
6000 | 비즈니스 |
6001 | 날씨 |
6002 | 유틸리티 |
6003 | 여행 |
6004 | 스포츠 |
6005 | 소셜 네트워킹 |
6006 | 참조 |
6007 | 생산성 |
6008 | 사진 및 비디오 |
6009 | 뉴스 |
6010 | 탐색 |
6011 | 음악 |
6012 | 라이프스타일 |
6013 | 상태 및 적합성 |
6014 | 게임 |
6015 | Finance |
6016 | Entertainment |
6017 | Education |
6018 | 책 |
6020 | 의료 |
6021 | Newsstand |
6022 | 카탈로그 |
게임(6014) 하위 장르:
장르 ID | 장르 이름 |
---|---|
7001 | 작업 |
7002 | Adventure |
7003 | 아케이드 |
7004 | 보드 |
7005 | Card |
7006 | 카지노 |
7007 | 주사위 |
7008 | 교육 |
7009 | 가족 |
7010 | 어린이 |
7011 | 음악 |
7012 | 퍼즐 |
7013 | 레이싱 |
7014 | 롤플레잉 |
7015 | 시뮬레이션 |
7016 | 스포츠 |
7017 | 전략 |
7018 | 퀴즈 |
7019 | Word |
Newstand(6021) 하위 장르:
장르 ID | 장르 이름 |
---|---|
13001 | 뉴스 및 정책 |
13002 | 패션 및 스타일 |
13003 | 홈 및 가든 |
13004 | 야외 및 자연 |
13005 | 스포츠 및 레저 |
13006 | 자동차 |
13007 | 예술 및 사진 |
13008 | 신부 및 결혼 |
13009 | 비즈니스 및 투자 |
13010 | 어린이 잡지 |
13011 | 컴퓨터 및 인터넷 |
13012 | 요리, 음식 및 음료 |
13013 | 공예 및 취미 |
13014 | 전자 제품 및 오디오 |
13015 | Entertainment |
13017 | 건강, 정신 및 신체 |
13018 | 기록 |
13019 | 문학 잡지 및 저널 |
13020 | 남성들의 관심사 |
13021 | 영화 및 음악 |
13023 | 부모/자식 관리 및 가족 |
13024 | 애완 동물 |
13025 | 직업 및 거래 |
13026 | 지역 뉴스 |
13027 | 과학 |
13028 | 청소년 |
13029 | 여행 및 지역 |
13030 | 여성들의 관심사 |
softwareSupportedDeviceIds
softwareSupportedDeviceIds
키를 사용하여 이 iOS 애플리케이션이 지원하는 iOS 디바이스를 iTunes에 알립니다. 예시:
<key>softwareSupportedDeviceIds</key>
<array>
<integer>9</integer>
</array>
다음 값을 사용할 수 있는 위치:
- 1 – 클래식 iPhone
- 2 – iPod Touch
- 4 – iPad
- 9 – 최신 iPhone
표준 키
다음 키는 iOS 애플리케이션의 모든 iTunesMetadata.plist
파일에 포함되어 있으며 항상 동일한 값을 갖습니다.
<key>drmVersionNumber</key>
<integer>0</integer>
<key>fileExtension</key>
<string>.app</string>
...
<key>kind</key>
<string>software</string>
...
<key>s</key>
<integer>143441</integer>
...
<key>versionRestrictions</key>
<integer>16843008</integer>
iTunesMetadata.plist 파일 만들기
Mac용 Visual Studio에서 iTunesMetadata.plist
파일을 사용하는 경우 두 가지 옵션이 있습니다.
- Mac용 Visual Studio의 시각적 plist 편집기를 사용하여 파일을 만들고 유지 관리합니다.
- 일반 텍스트 편집기에서 파일을 만들고 유지 관리합니다.
두 가지 옵션에 대해서는 아래에서 자세히 설명합니다.
시각적 Plist 편집기 사용
다음을 수행합니다.
솔루션 탐색기에서 Xamarin.iOS 프로젝트 파일을 마우스 오른쪽 단추로 클릭하고, 추가>새 파일...을 차례로 선택합니다.
[새 파일] 대화 상자에서 iOS>속성 목록을 차례로 선택합니다.
이름에 대해
iTunesMetadata
를 입력하고 새로 만들기 단추를 클릭합니다.편집하기 위해 솔루션 탐색기에서
iTunesMetadata.plist
파일을 두 번 클릭하여 엽니다.녹색 +를 클릭하여 새 항목을 만들고, 키 이름으로
UIRequiredDeviceCapabilities
를 입력합니다.문자열 값 형식을 클릭하고, 팝업 목록에서 사전을 선택합니다.
속성 이름의 왼쪽에서 접혀 있는 부분을 클릭하여 사전 항목을 표시합니다.
새 항목 추가 텍스트를 클릭한 다음, 녹색 +를 클릭하여 사전에 항목을 추가합니다.
키 이름으로
armv7
을 입력하고, 부울 형식을 선택하고, 값으로 예를 입력합니다.필요한 모든 키/값 쌍으로
iTunesMetadata.plist
파일을 채울 때까지 위의 단계를 반복합니다(자세한 내용은 위의 iTunesMetadata.plist 내용 섹션 참조).변경 내용을 plist 파일에 저장합니다.
일반 텍스트 편집기 사용
다음을 수행합니다.
- 일반 텍스트 편집기에서 새 텍스트 파일을 만들고, 이름을
iTunesMetadata.plist
로 지정합니다. - 위의 iTunesMetadata.plist 내용 섹션에 있는 내용 예제를 복사합니다.
- 내용을 파일에 붙여넣고 필요에 따라 편집합니다.
- 파일을 저장하고 Mac용 Visual Studio로 돌아갑니다.
- 솔루션 탐색기에서 Xamarin.iOS 프로젝트 파일을 마우스 오른쪽 단추로 클릭하고, 추가>기존 파일...을 차례로 선택합니다.
- [파일 열]기 대화 상자에서 위에서 만든
iTunesMetadata.plist
파일을 선택하고 확인 단추를 클릭합니다. - 이 파일에서 없음으로 설정된 빌드 작업은 그대로 둡니다.
나중에 IDE에서 IPA를 빌드할 준비가 되면 이 iTunesMetadata.plist
파일을 선택합니다.
요약
이 문서에서는 iTunes에 임시로 배달된 iOS 애플리케이션을 알리는 데 사용할 수 있는 iTunesMetadata.plist
파일에 대해 설명했습니다. plist 파일의 표준 키와 Visual Studio 및 Mac용 Visual Studio에서 파일을 만들고 유지 관리하는 방법에 대해 설명했습니다.