Die Datei „iTunesMetadata.plist“ in Xamarin.iOS-AppsThe iTunesMetadata.plist File in Xamarin.iOS Apps

In diesem Artikel wird die iTunesMetadata.plist-Datei vorgestellt, die verwendet wird, um iTunes Informationen zu einer iOS-Anwendung zu liefern, die die Ad-hoc-Verteilung entweder zu Testzwecken oder für die Unternehmensbereitstellung verwendet.This article covers the iTunesMetadata.plist file used to provide information to iTunes about an iOS application using Ad Hoc distribution for either testing or Enterprise deployment.

Beim Erstellen einer iOS-Anwendung in iTunes Connect (entweder zum Verkauf oder für die kostenlose Veröffentlichung im iTunes App Store) kann der Entwickler die folgenden Angaben machen: Genre, Subgenre, Urheberrechtshinweis, unterstützte iOS-Geräte und Geräteanforderungen.When an iOS application is created in iTune Connect (either for sale or free release from the iTunes App Store), the developer can specify information such as the application's genre, sub genre, copyright notice, supported iOS devices and required device capabilities. iOS-Anwendungen, die entweder Testbenutzern oder Unternehmensbenutzern über die Ad-hoc-Verteilung bereitgestellt werden, fehlen diese Informationen.For iOS applications that are delivered either to testers or Enterprise user via ad hoc distribution, this information is missing.

Um die fehlenden Informationen einer Ad-hoc-Verteilung bereitzustellen, kann eine optionale iTunesMetadata.plist-Datei erstellt und in die IPA-Datei der Anwendung eingefügt werden.To supply the missing information to an Ad Hoc distribution, an optional iTunesMetadata.plist file can be created and included in the applications IPA file. Diese PLIST-Datei ist eine speziell formatierte XML-Datei, die Schlüssel-Wert-Paare enthält, die Information zu einer angegebenen iOS-Anwendung enthalten (weitere Informationen finden Sie im Property List Programming Guide (Programmierleitfaden zu Eigenschaftenlisten) von Apple).This plist file is a specially formatted XML file (see Apple's Property List Programming Guide for more information) that contains key/value pairs defining information about a given iOS application.

Inhalt der „iTunesMetadata.plist“-DateiThe iTunesMetadata.plist Contents

Hier sehen Sie ein Beispiel für eine typische iTunesMetadata.plist-Datei, die verwendet wird, um die iTunes-Informationen für eine Ad-hoc-Verteilung zu definieren:The following is an example of typical iTunesMetadata.plist file used to define the iTunes information for an Ad Hoc distribution:

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

Die Werte der einzelnen Schlüssel werden weiter unten ausführlich behandelt.The values for the individual keys will be covered in detail below.

UIRequiredDeviceCapabilitiesUIRequiredDeviceCapabilities

Der Schlüssel UIRequiredDeviceCapabilities informiert iTunes darüber, welche gerätespezifischen Funktionen für eine iOS-Anwendung vor der Installation auf einem Gerät erforderlich sind.The UIRequiredDeviceCapabilities key lets iTunes know which device specific features an iOS application requires before it can be installed on a given iOS device. Er wird als Wörterbuch (<dict>...</dict>) aus Funktionen (<key>...</key>) mit jeweils einem booleschen Wert für jede Funktion bereitgestellt.It is provided as a dictionary (<dict>...</dict>) of features (<key>...</key>) and a boolean value for each feature. Wenn der Wert einer Funktion true ist, muss die Funktion vorhanden sein.If the value of a feature is true, then that feature must be present. Wenn er false ist, muss die Funktion auf dem Gerät nicht vorhanden sein.If it is false the feature must not be present on the device. Zum Beispiel:For example:

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

Gibt an, dass das iOS-Gerät den ARM7-Befehlssatz unterstützen und über eine Frontkamera verfügen muss, damit die Anwendung auf dem Gerät installiert werden kann.Specifies that the iOS device must support the ARM7 instruction set and have a front-facing camera before this application can be installed on the device. Eine vollständige Liste der zulässigen Werte finden Sie in der Dokumentation zu UIRequiredDeviceCapabilities von Apple.For a complete list of allowed values, please see Apple's UIRequiredDeviceCapabilities documentation.

artistName und playlistArtistNameartistName and playlistArtistName

Verwenden Sie die Schlüssel artistName und playlistArtistName, um den Namen des Unternehmens anzugeben, das die iOS-Anwendung entwickelt hat, der in iTunes angezeigt werden soll.Use the artistName and playlistArtistName keys to define the name of the company that created the iOS application that will be displayed in iTunes. Beispiel:Example:

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

bundleDisplayName, itemName und playlistNamebundleDisplayName, itemName, and playlistName

Verwenden Sie die Schlüssel bundleDisplayName, itemName und playlistName, um den Namen der iOS-Anwendung anzugeben, der in iTunes angezeigt werden soll.Use the bundleDisplayName, itemName, and playlistName keys to define the name of the iOS application that will be displayed inside of iTunes. Beispiel:Example:

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

bundleShortVersionString und bundleVersionbundleShortVersionString and bundleVersion

Verwenden Sie die Schlüssel bundleShortVersionString und bundleVersion, um die Versionsnummer der iOS-Anwendung anzugeben, die in iTunes angezeigt werden soll.Use the bundleShortVersionString and bundleVersion keys to define the iOS application version number that will be displayed in iTunes. Beispiel:Example:

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

softwareVersionBundleIdsoftwareVersionBundleId

Verwenden Sie den Schlüssel softwareVersionBundleId, um die Bundle-ID der iOS-Anwendung anzugeben.Use the softwareVersionBundleId key to specify the Bundle ID for the iOS application. Beispiel:Example:

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

Verwenden Sie den Schlüssel copyright, um den Urheberrechtshinweis anzugeben, der in iTunes angezeigt werden soll.Use the copyright key to define the copyright notice that is displayed in iTunes. Beispiel:Example:

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

releaseDatereleaseDate

Verwenden Sie den Schlüssel releaseDate, um das Veröffentlichungsdatum der iOS-Anwendung anzugeben, das in iTunes angezeigt werden soll.Use the releaseDate key to provide a release date for the iOS application that will be displayed in iTunes. Beispiel:Example:

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

softwareIconNeedsShinesoftwareIconNeedsShine

Verwenden Sie den Schlüssel softwareIconNeedsShine, um iTunes darüber zu informieren, ob für das Symbol der iOS-Anwendung für iOS 6 (und früher) ein glänzende Kennzeichnung erforderlich ist.Use the softwareIconNeedsShine key to tell iTunes if the iOS Application's icon requires a shine highlight for iOS 6 (and prior). Beispiel:Example:

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

gameCenterEnabled und gameCenterEverEnabledgameCenterEnabled and gameCenterEverEnabled

Verwenden Sie die Schlüssel gameCenterEnabled und gameCenterEverEnabled, um iTunes darüber zu informieren, ob diese iOS-Anwendung das Game Center von Apple unterstützt.Use the gameCenterEnabled and gameCenterEverEnabled keys to tell iTunes is this iOS application supports Apple's Game Center. Beispiel:Example:

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

genre, genreId und subgenresgenre, genreId, and subgenres

Verwenden Sie die Schlüssel genre und genreId, um iTunes darüber zu informieren, welchem Genre die iOS-Anwendung zugeordnet werden kann.Use the genre and genreId keys to tell iTunes what genre the iOS application belongs to. Beispiel:Example:

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

Der Schlüssel subgenres kann optional auch verwendet werden, um zwei Subgenres für die iOS-Anwendung zu definieren.Optionally the subgenres key can be used to further define up to two sub genres for the iOS application. Beispiel:Example:

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

Für iOS-Anwendungen stellt Apple zur Zeit folgende Genres und Genre-IDs zur Verfügung:For iOS applications, Apple currently defines the following genres and genre IDs:

Genre-IDGenre ID Name des GenresGenre Name
60006000 GeschäftlichBusiness
60016001 WetterWeather
60026002 DienstprogrammeUtilities
60036003 ReisenTravel
60046004 SportSports
60056005 Social NetworkingSocial Networking
60066006 ReferenzReference
60076007 ProduktivitätProductivity
60086008 Foto & VideoPhoto & Video
60096009 NeuigkeitenNews
60106010 NavigationNavigation
60116011 MusikMusic
60126012 LifestyleLifestyle
60136013 Gesundheit & FitnessHealth & Fitness
60146014 SpieleGames
60156015 FinanzenFinance
60166016 UnterhaltungEntertainment
60176017 LernenEducation
60186018 BücherBooks
60206020 MedizinischesMedical
60216021 ZeitungskioskNewsstand
60226022 KatalogeCatalogs

Untergeordnete Genres für Spiele (6014):Games (6014) sub-genres:

Genre-IDGenre ID Name des GenresGenre Name
70017001 AktionAction
70027002 AdventureAdventure
70037003 ArcadeArcade
70047004 BoardBoard
70057005 KartenCard
70067006 CasinoCasino
70077007 WürfelDice
70087008 LernenEducational
70097009 ProduktreiheFamily
70107010 KinderKids
70117011 MusikMusic
70127012 PuzzlesPuzzle
70137013 RennspielRacing
70147014 RollenspielRole Playing
70157015 SimulationenSimulation
70167016 SportSports
70177017 StrategieStrategy
70187018 TriviaTrivia
70197019 WordWord

Untergeordnete Genres für Neuigkeiten (6021):Newstand (6021) sub-genres:

Genre-IDGenre ID Name des GenresGenre Name
1300113001 News & PolitikNews & Politics
1300213002 Mode & StilFashion & Style
1300313003 Heim & GartenHome & Garden
1300413004 Outdoor & NaturOutdoors & Nature
1300513005 Sport und FreizeitSports & Leisure
1300613006 AutosAutomotive
1300713007 Kunst & FotografieArts & Photography
1300813008 Braut & HochzeitBrides & Weddings
1300913009 Business & InvestmentBusiness & Investing
1301013010 KinderzeitschriftenChildren’s Magazines
1301113011 Computer und InternetComputers & Internet
1301213012 Kochen, Essen und GetränkeCooking, Food & Drink
1301313013 Handwerk & HobbysCrafts & Hobbies
1301413014 Elektronik und AudioElectronics & Audio
1301513015 UnterhaltungEntertainment
1301713017 Gesundheit, Geist & KörperHealth, Mind & Body
1301813018 VersionsgeschichteHistory
1301913019 Literaturzeitschriften & andere ZeitschriftenLiterary Magazines & Journals
1302013020 Für MännerMen’s Interest
1302113021 Filme & MusikMovies & Music
1302313023 Elternschaft & FamilieParenting & Family
1302413024 HaustierePets
1302513025 FachzeitschriftenProfessional & Trade
1302613026 Regionale NewsRegional News
1302713027 WissenschaftScience
1302813028 TeenagerTeens
1302913029 Reisen & RegionalesTravel & Regional
1303013030 Für FrauenWomen’s Interest

softwareSupportedDeviceIdssoftwareSupportedDeviceIds

Verwenden Sie den Schlüssel softwareSupportedDeviceIds, um iTunes darüber zu informieren, welche iOS-Geräte von dieser iOS-Anwendung unterstützt werden.Use the softwareSupportedDeviceIds key to tell iTunes what iOS devices this iOS application supports. Beispiel:Example:

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

Folgende Werte sind gültig:Where the following values are available:

  • 1: Klassische iPhones1 – Classic iPhones
  • 2: iPod Touch2 – iPod Touch
  • 4: iPad4 – iPad
  • 9: Moderne iPhones9 – Modern iPhones

Standard KeysStandard Keys

Die folgenden Schlüssel werden in allen iTunesMetadata.plist-Dateien für iOS-Anwendungen mit einbezogen, und weisen immer die gleichen Werte auf:The following keys are included in all iTunesMetadata.plist files for iOS applications and always have the same values:

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

Erstellen einer „iTunesMetadata.plist“-DateiCreating an iTunesMetadata.plist File

Wenn Sie in Visual Studio für Mac mit einer iTunesMetadata.plist-Datei arbeiten, haben Sie zwei Optionen:When working with an iTunesMetadata.plist file in Visual Studio for Mac, you have two options:

  • Sie können die Datei mit dem visuellen PLIST-Editor in Visual Studio für Mac erstellen und verwalten.Create and maintain the file using Visual Studio for Mac's visual plist editor.
  • Sie können die Datei in einem Nur-Text-Editor erstellen und verwalten.Create and maintain the file in a plain text editor.

Beide Optionen werden unten ausführlich besprochen.Both options will be covered in detail below.

Verwenden des visuellen PLIST-EditorsUsing the Visual Plist Editor

Führen Sie folgende Schritte aus:Do the following:

  1. Rechtsklicken Sie im Projektmappen-Explorer auf die Xamarin.iOS-Projektdatei, und klicken Sie dann auf Hinzufügen > Neue Datei... .In the Solution Explorer, right-click the Xamarin.iOS project file and select Add > New File...

  2. Klicken Sie im Dialogfeld „Neue Datei“ auf iOS > Eigenschaftenliste:From the New File Dialog, select iOS > Property List:

    Auswählen der iOS-Eigenschaftenliste

  3. Geben Sie für den NameniTunesMetadata ein, und klicken Sie auf Neu.Enter iTunesMetadata for the Name and click the New button.

  4. Doppelklicken Sie im iTunesMetadata.plistProjektmappen-Explorerauf die Datei, um sie zur Bearbeitung zu öffnen:Double-click the iTunesMetadata.plist file in the Solution Explorer to open it for editing:

    Das Fenster „iTunesMetadata.plist“

  5. Klicken Sie auf das grüne + , um einen neuen Eintrag hinzuzufügen, oder geben Sie UIRequiredDeviceCapabilities als Schlüsselnamen ein:Click the green + to create a new entry and enter UIRequiredDeviceCapabilities as the key name:

    Erstellen eines neuen Eintrags und Eingeben des Schlüsselnamens „UIRequiredDeviceCapabilities“

  6. Klicken Sie auf den Werttyp String, und klicken Sie anschließend in der Popupliste auf Wörterbuch:Click on the String value type and select Dictionary from the popup list:

    Auswählen von „Wörterbuch“ aus der Popupliste

  7. Klicken Sie auf den Pfeil links vom Namen der Eigenschaft, um die Einträge des Wörterbuchs anzuzeigen:Click the turndown at the left of the Property's name to reveal the dictionary's entries:

    Anzeigen der Wörterbucheinträge

  8. Klicken Sie auf Neuen Eintrag hinzufügen, und klicken Sie dann auf das grüne + , um einen Eintrag im Wörterbuch hinzuzufügen:Click on the Add new entry text, then click the green + to add an entry to the dictionary:

    Hinzufügen eines Eintrags zum Wörterbuch

  9. Geben Sie armv7 für den Schlüsselnamen ein, wählen Sie einen booleschen Wert aus, und geben Sie YES als Wert ein:Enter armv7 for the key name, select a type of Boolean and enter Yes as the value:

    Eingeben von „armv7“ für den Schlüsselnamen, auswählen eines booleschen Typs und auswählen von YES als Wert

  10. Wiederholen Sie die oben stehenden Schritte, bis Sie die iTunesMetadata.plist-Datei mit allen erforderlichen Schlüssel-Wert-Paaren ausgefüllt haben. Ausführlichere Informationen finden Sie im Abschnitt Inhalt der „iTunesMetadata.plist“-Datei weiter oben.Repeat the steps above until you have filled out the iTunesMetadata.plist file with all of the key/value pairs required (see the The iTunesMetadata.plist Contents section above for more details).

  11. Speichern Sie die Änderungen an der PLIST-Datei.Save the changes to the plist file.

Verwenden eines Nur-Text-EditorsUsing a Plain Text Editor

Führen Sie folgende Schritte aus:Do the following:

  1. Erstellen Sie in einem Nur-Text-Editor eine neue Textdatei mit dem Namen iTunesMetadata.plist.In a plain text editor, create a new text file and name it iTunesMetadata.plist.
  2. Kopieren Sie den Beispielinhalt aus dem oben stehenden Abschnitt Inhalt der „iTunesMetadata.plist“-Datei.Copy the example contents from the The iTunesMetadata.plist Contents section above.
  3. Fügen Sie den Inhalt in die Datei ein, und bearbeiten Sie ihn wo nötig.Paste the contents in the file and edit them as required.
  4. Speichern Sie die Datei, und kehren Sie zu Visual Studio für Mac zurück.Save the file and return to Visual Studio for Mac.
  5. Rechtsklicken Sie im Projektmappen-Explorer auf die Xamarin.iOS-Projektdatei, und klicken Sie dann auf Hinzufügen > Vorhandene Dateien... .In the Solution Explorer, right-click on the Xamarin.iOS project file and select Add > Existing Files....
  6. Klicken Sie im Dialogfeld „Datei öffnen“ auf die iTunesMetadata.plist-Datei, die Sie oben erstellt haben, und dann auf OK.In the Open File Dialog, select the iTunesMetadata.plist file that was created above and click the OK button.
  7. Verändern Sie die Einstellung von Buildaktion nicht von None.Leave the Build Action of this file set to None.

Wählen Sie später diese iTunesMetadata.plist-Datei aus, wenn Sie Ihre IPA-Datei in der IDE erstellen.Later, select this iTunesMetadata.plist file when you prepare to build your IPA in the IDE.

ZusammenfassungSummary

In diesem Artikel wurde die iTunesMetadata.plist-Datei besprochen, die Sie verwenden können, um iTunes über eine iOS-Anwendung zu informieren, die per Ad-hoc-Verteilung bereitgestellt wurde.This article has covered the iTunesMetadata.plist file that can be used to tell iTunes about an ad hoc delivered iOS application. Zudem wurden der Standardschlüssel in der PLIST-Datei sowie das Erstellen und Verwalten der Datei in Visual Studio und Visual Studio für Mac erläutert.It has discussed the standard key in the plist file and how to create and maintain the file in Visual Studio and Visual Studio for Mac.