Plik iTunesMetadata.plist w aplikacjach platformy Xamarin.iOS

W tym artykule opisano plik iTunesMetadata.plist używany do dostarczania informacji do programu iTunes o aplikacji systemu iOS przy użyciu dystrybucji Ad Hoc na potrzeby testowania lub wdrażania w przedsiębiorstwie.

Po utworzeniu aplikacji systemu iOS w usłudze iTune Połączenie (do sprzedaży lub bezpłatnej wersji ze sklepu iTunes App Store), deweloper może określić informacje, takie jak gatunek aplikacji, gatunek podrzędny, powiadomienie o prawach autorskich, obsługiwane urządzenia z systemem iOS i wymagane możliwości urządzenia. W przypadku aplikacji systemu iOS dostarczanych do testerów lub użytkowników enterprise za pośrednictwem dystrybucji ad hoc brakuje tych informacji.

Aby dostarczyć brakujące informacje do dystrybucji ad hoc, można utworzyć opcjonalny iTunesMetadata.plist plik i dołączyć go do pliku IPA aplikacji. Ten plik plist jest specjalnie sformatowanym plikiem XML (zobacz Przewodnik programowania listy właściwości firmy Apple, aby uzyskać więcej informacji), który zawiera pary klucz/wartość definiujące informacje o danej aplikacji systemu iOS.

Zawartość pliku iTunesMetadata.plist

Poniżej przedstawiono przykład typowego iTunesMetadata.plist pliku używanego do definiowania informacji o programie iTunes dla dystrybucji ad hoc:

<?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>

Wartości poszczególnych kluczy zostaną szczegółowo omówione poniżej.

UIRequiredDeviceCapabilities

Klucz UIRequiredDeviceCapabilities informuje program iTunes, które funkcje specyficzne dla urządzenia wymaga aplikacja systemu iOS, zanim będzie można ją zainstalować na danym urządzeniu z systemem iOS. Jest on udostępniany jako słownik (<dict>...</dict>) funkcji (<key>...</key>) i wartość logiczna dla każdej funkcji. Jeśli wartość funkcji to true, ta funkcja musi być obecna. Jeśli jest false to funkcja, nie może być obecna na urządzeniu. Na przykład:

<key>UIRequiredDeviceCapabilities</key>
<dict>
    <key>armv7</key>
    <true/>
    <key>front-facing-camera</key>
    <true/>
</dict>

Określa, że urządzenie z systemem iOS musi obsługiwać zestaw instrukcji ARM7 i mieć aparat przedni, zanim będzie można zainstalować tę aplikację na urządzeniu. Aby uzyskać pełną listę dozwolonych wartości, zobacz dokumentację interfejsu użytkownika firmy AppleRequiredDeviceCapabilities.

artistName i playlistArtistName

Użyj klawiszy artistName i playlistArtistName , aby zdefiniować nazwę firmy, która utworzyła aplikację systemu iOS, która będzie wyświetlana w programie iTunes. Przykład:

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

bundleDisplayName, itemName i playlistName

Użyj klawiszy bundleDisplayName, itemNamei playlistName , aby zdefiniować nazwę aplikacji systemu iOS, która będzie wyświetlana w programie iTunes. Przykład:

<key>bundleDisplayName</key>
<string>App Name</string>
...
<key>itemName</key>
<string>App Name</string>
...
<key>playlistName</key>
<string>App Name</string>

bundleShortVersionString i bundleVersion

Użyj klawiszy bundleShortVersionString i bundleVersion , aby zdefiniować numer wersji aplikacji systemu iOS, który będzie wyświetlany w programie iTunes. Przykład:

<key>bundleShortVersionString</key>
<string>1.5.1</string>
<key>bundleVersion</key>
<string>1.5.1</string>

softwareVersionBundleId

softwareVersionBundleId Użyj klucza, aby określić identyfikator pakietu dla aplikacji systemu iOS. Przykład:

<key>softwareVersionBundleId</key>
<string>com.company.appid</string>

copyright Użyj klucza, aby zdefiniować powiadomienie o prawach autorskich wyświetlane w programie iTunes. Przykład:

<key>copyright</key>
<string>© 2015 Company, Inc.</string>

data wydania

releaseDate Użyj klucza, aby podać datę wydania aplikacji systemu iOS, która będzie wyświetlana w programie iTunes. Przykład:

<key>releaseDate</key>
<string>2015-11-18T03:23:10Z</string>

softwareIconNeedsShine

Użyj klawisza softwareIconNeedsShine , aby poinformować program iTunes, czy ikona aplikacji systemu iOS wymaga wyróżnienia blasku dla systemu iOS 6 (i wcześniejszych). Przykład:

<key>softwareIconNeedsShine</key>
<false/>

gameCenterEnabled i gameCenterEverEnabled

Użyj klawiszy gameCenterEnabled i gameCenterEverEnabled , aby poinformować iTunes, że ta aplikacja systemu iOS obsługuje Centrum gier firmy Apple. Przykład:

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

gatunek, gatunek, identyfikator gatunku i podgenres

Użyj klawiszy genre i , genreId aby poinformować iTunes, do jakiego gatunku należy aplikacja systemu iOS. Przykład:

<key>genre</key>
<string>Games</string>
<key>genreId</key>
<integer>6014</integer>

Opcjonalnie klucz może służyć do dalszego definiowania maksymalnie subgenres dwóch podgatunków dla aplikacji systemu iOS. Przykład:

<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>

W przypadku aplikacji systemu iOS firma Apple obecnie definiuje następujące gatunki i identyfikatory gatunku:

Identyfikator gatunku Nazwa gatunku
6000 Służbowy
6001 Pogoda
6002 Narzędzia
6003 Podróż
6004 Sporty
6005 Społecznościowych
6006 Odwołanie
6007 Produktywność
6008 Zdjęcie i wideo
6009 Wiadomości
6010 Nawigacja
6011 Muzyka
6012 Stylu życia
6013 Zdrowie i kondycja
6014 Gry
6015 Finance
6016 Rozrywka
6017 Education
6018 Księgi
6020 Medyczne
6021 Kiosk
6022 Katalogi

Gry (6014) gatunki podrzędne:

Identyfikator gatunku Nazwa gatunku
7001 Akcja
7002 Przygoda
7003 Arcade
7004 Board (płytka drukowana)
7005 Card
7006 Kasyno
7007 Kości
7008 Wykształcenie
7009 Rodzina
7010 Dzieci
7011 Muzyka
7012 Puzzle
7013 Wyścigi
7014 Rpg
7015 Symulacja
7016 Sporty
7017 Strategia
7018 Trivia
7019 Word

Podgatunki Newstand (6021):

Identyfikator gatunku Nazwa gatunku
13001 Wiadomości i polityka
13002 Moda i styl
13003 Strona główna i ogród
13004 Na świeżym powietrzu i przyrody
13005 Sport i rekreacja
13006 Motoryzacja
13007 Sztuka i fotografia
13008 Panny młode i wesela
13009 Biznes i inwestowanie
13010 Magazyny dla dzieci
13011 Komputery i Internet
13012 Gotowanie, jedzenie i picie
13013 Rzemiosło i hobby
13014 Elektronika i dźwięk
13015 Rozrywka
13017 Zdrowie, umysł i ciało
13018 Historia
13019 Czasopisma literackie i czasopisma
13020 Zainteresowanie mężczyzn
13021 Filmy i muzyka
13023 Rodzicielstwo i rodzina
13024 Zwierzęta
13025 Profesjonalny i handel
13026 Wiadomości regionalne
13027 Nauka
13028 Nastolatki
13029 Podróże i regionalne
13030 Zainteresowanie kobietami

softwareSupportedDeviceIds

softwareSupportedDeviceIds Użyj klucza, aby poinformować program iTunes o tym, jakie urządzenia z systemem iOS obsługuje ta aplikacja systemu iOS. Przykład:

<key>softwareSupportedDeviceIds</key>
<array>
    <integer>9</integer>
</array>

Gdzie są dostępne następujące wartości:

  • 1 — Klasyczne i Telefon s
  • 2 — iPod Touch
  • 4 — tablet iPad
  • 9 — Nowoczesne i Telefon s

Klucze standardowe

Następujące klucze są uwzględniane we wszystkich iTunesMetadata.plist plikach dla aplikacji systemu iOS i zawsze mają te same wartości:

<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>

Tworzenie pliku iTunesMetadata.plist

Podczas pracy z plikiem iTunesMetadata.plist w Visual Studio dla komputerów Mac dostępne są dwie opcje:

  • Utwórz i zachowaj plik przy użyciu edytora plist Visual Studio dla komputerów Mac.
  • Utwórz i zachowaj plik w edytorze zwykłego tekstu.

Obie opcje zostaną szczegółowo omówione poniżej.

Korzystanie z edytora Plist Visual Plist

Należy wykonać następujące czynności:

  1. W Eksplorator rozwiązań kliknij prawym przyciskiem myszy plik projektu Xamarin.iOS i wybierz polecenie Dodaj>nowy plik...

  2. W oknie dialogowym Nowy plik wybierz pozycję Lista właściwości systemu iOS>:

    Select iOS Property List

  3. Wprowadź iTunesMetadata nazwę i kliknij przycisk Nowy.

  4. iTunesMetadata.plist Kliknij dwukrotnie plik w Eksplorator rozwiązań, aby otworzyć go do edycji:

    The iTunesMetadata.plist editor

  5. Kliknij zielony + , aby utworzyć nowy wpis i wprowadź UIRequiredDeviceCapabilities jako nazwę klucza:

    Create a new entry and enter UIRequiredDeviceCapabilities as the key name

  6. Kliknij typ wartości Ciąg i wybierz pozycję Słownik z listy podręcznej:

    Select Dictionary from the popup list

  7. Kliknij turndown po lewej stronie nazwy właściwości, aby wyświetlić wpisy słownika:

    Reveal the dictionary entries

  8. Kliknij tekst Dodaj nowy wpis, a następnie kliknij zielony+, aby dodać wpis do słownika:

    Add an entry to the dictionary

  9. Wprowadź armv7 nazwę klucza, wybierz typ wartości logicznej i wprowadź wartość Tak:

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

  10. Powtórz powyższe kroki, dopóki nie wypełnisz iTunesMetadata.plist pliku wszystkimi wymaganymi parami klucz/wartość (zobacz sekcję Zawartość pliku iTunesMetadata.plist powyżej, aby uzyskać więcej szczegółów).

  11. Zapisz zmiany w pliku plist.

Korzystanie z edytora zwykłego tekstu

Należy wykonać następujące czynności:

  1. W edytorze zwykłego tekstu utwórz nowy plik tekstowy i nadaj mu iTunesMetadata.plistnazwę .
  2. Skopiuj zawartość przykładu z sekcji Zawartość pliku iTunesMetadata.plist powyżej.
  3. Wklej zawartość w pliku i edytuj je zgodnie z potrzebami.
  4. Zapisz plik i wróć do Visual Studio dla komputerów Mac.
  5. W Eksplorator rozwiązań kliknij prawym przyciskiem myszy plik projektu Xamarin.iOS i wybierz polecenie Dodaj>istniejące pliki....
  6. W oknie dialogowym Otwieranie pliku wybierz iTunesMetadata.plist utworzony powyżej plik, a następnie kliknij przycisk OK .
  7. Pozostaw akcję kompilacji tego pliku ustawioną na Wartość Brak.

Później wybierz ten iTunesMetadata.plist plik podczas przygotowywania do skompilowania usługi IPA w środowisku IDE.

Podsumowanie

W tym artykule omówiono iTunesMetadata.plist plik, którego można użyć do przekazania aplikacji dla systemu iOS w programie iTunes. Omówił on klucz standardowy w pliku plist oraz sposób tworzenia i obsługi pliku w programie Visual Studio i Visual Studio dla komputerów Mac.