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

artistNameplaylistArtistName 키를 사용하여 iTunes에 표시할 iOS 애플리케이션을 만든 회사의 이름을 정의합니다. 예시:

<key>artistName</key>
<string>Company, Inc.</string>
...
<key>playlistArtistName</key>
<string>Company, Inc.</string>

bundleDisplayName, itemName 및 playlistName

bundleDisplayName, itemNameplaylistName 키를 사용하여 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

bundleShortVersionStringbundleVersion 키를 사용하여 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

gameCenterEnabledgameCenterEverEnabled 키를 사용하여 이 iOS 애플리케이션이 Apple의 Game Center를 지원하는지 여부를 iTunes에 알립니다. 예시:

<key>gameCenterEnabled</key>
<false/>
<key>gameCenterEverEnabled</key>
<false/>

genre, genreId 및 subgenres

genregenreId 키를 사용하여 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 편집기 사용

다음을 수행합니다.

  1. 솔루션 탐색기에서 Xamarin.iOS 프로젝트 파일을 마우스 오른쪽 단추로 클릭하고, 추가>새 파일...을 차례로 선택합니다.

  2. [새 파일] 대화 상자에서 iOS>속성 목록을 차례로 선택합니다.

    Select iOS Property List

  3. 이름에 대해 iTunesMetadata를 입력하고 새로 만들기 단추를 클릭합니다.

  4. 편집하기 위해 솔루션 탐색기에서 iTunesMetadata.plist 파일을 두 번 클릭하여 엽니다.

    The iTunesMetadata.plist editor

  5. 녹색 +를 클릭하여 새 항목을 만들고, 키 이름으로 UIRequiredDeviceCapabilities를 입력합니다.

    Create a new entry and enter UIRequiredDeviceCapabilities as the key name

  6. 문자열 값 형식을 클릭하고, 팝업 목록에서 사전을 선택합니다.

    Select Dictionary from the popup list

  7. 속성 이름의 왼쪽에서 접혀 있는 부분을 클릭하여 사전 항목을 표시합니다.

    Reveal the dictionary entries

  8. 새 항목 추가 텍스트를 클릭한 다음, 녹색 +를 클릭하여 사전에 항목을 추가합니다.

    Add an entry to the dictionary

  9. 키 이름으로 armv7을 입력하고, 부울 형식을 선택하고, 값으로 를 입력합니다.

    Enter armv7 for the key name, select a type of Boolean and enter Yes as the value

  10. 필요한 모든 키/값 쌍으로 iTunesMetadata.plist 파일을 채울 때까지 위의 단계를 반복합니다(자세한 내용은 위의 iTunesMetadata.plist 내용 섹션 참조).

  11. 변경 내용을 plist 파일에 저장합니다.

일반 텍스트 편집기 사용

다음을 수행합니다.

  1. 일반 텍스트 편집기에서 새 텍스트 파일을 만들고, 이름을 iTunesMetadata.plist로 지정합니다.
  2. 위의 iTunesMetadata.plist 내용 섹션에 있는 내용 예제를 복사합니다.
  3. 내용을 파일에 붙여넣고 필요에 따라 편집합니다.
  4. 파일을 저장하고 Mac용 Visual Studio로 돌아갑니다.
  5. 솔루션 탐색기에서 Xamarin.iOS 프로젝트 파일을 마우스 오른쪽 단추로 클릭하고, 추가>기존 파일...을 차례로 선택합니다.
  6. [파일 열]기 대화 상자에서 위에서 만든 iTunesMetadata.plist 파일을 선택하고 확인 단추를 클릭합니다.
  7. 이 파일에서 없음으로 설정된 빌드 작업은 그대로 둡니다.

나중에 IDE에서 IPA를 빌드할 준비가 되면 이 iTunesMetadata.plist 파일을 선택합니다.

요약

이 문서에서는 iTunes에 임시로 배달된 iOS 애플리케이션을 알리는 데 사용할 수 있는 iTunesMetadata.plist 파일에 대해 설명했습니다. plist 파일의 표준 키와 Visual Studio 및 Mac용 Visual Studio에서 파일을 만들고 유지 관리하는 방법에 대해 설명했습니다.