Freigeben über


Manuelle Bereitstellung für iOS-Apps

Die manuelle Bereitstellung ist ein Ansatz für die Bereitstellung einer .NET Multiplatform App UI (.NET MAUI) iOS-App auf einem Gerät, bei dem Sie die volle Kontrolle über die erstellten Bereitstellungsdaten haben. Bei diesem Ansatz erstellen und verwalten Sie Signaturidentitäten, App-IDs und Bereitstellungsprofile manuell in Ihrem Apple-Entwicklerkonto und müssen diese Daten dann in Visual Studio herunterladen. Bevor Sie mit dem manuellen Bereitstellungsprozess beginnen, sollten Sie sicherstellen, dass Sie Ihr Apple-Entwicklerkonto zu Visual Studio hinzugefügt haben. Weitere Informationen finden Sie unter Apple-Kontoverwaltung.

Entwicklungsteams, Zertifikate und Profile können über den Bereich Zertifikate, Identifikatoren & Profile in Ihrem Apple Entwicklerkonto verwaltet werden.

Erstellen eines Signaturzertifikats.

Bei der manuellen Bereitstellung besteht der erste Schritt bei der Einrichtung eines Entwicklungsgeräts darin, ein Signaturzertifikat zu erstellen, das aus einem Entwicklungszertifikat und einem privaten Schlüssel besteht.

Entwicklungszertifikate und die dazugehörigen Schlüssel stellen Ihre Identität bei Apple fest und ordnen Sie bestimmten Geräten und Profilen für die Entwicklung zu. Dies ist vergleichbar mit dem Hinzufügen Ihrer digitalen Signatur zu Ihren Apps. Apple verwendet diese Zertifikate, um sicherzustellen, dass Sie Ihre Apps nur auf bestimmten Geräten einsetzen können.

Wichtig

Sie können immer nur zwei iOS-Entwicklungszertifikate gleichzeitig besitzen. Wenn Sie weitere erstellen möchten, müssen Sie ein vorhandenes widerrufen. Alle Computer, die ein gesperrtes Zertifikat verwenden, können ihre App nicht signieren.

Sobald Sie Ihr Apple-Entwicklerkonto zu Visual Studio hinzugefügt haben, müssen Sie ein Signaturzertifikat erstellen.

  1. Gehen Sie in Visual Studio zu Tools > Optionen > Xamarin > Apple Accounts.
  2. Wählen Sie im Dialogfeld Apple-Entwicklerkonten ein Team aus und wählen Sie dann Details anzeigen.
  3. Wählen Sie im Dialog Details die Option Zertifikat erstellen>iOS-Entwicklung aus. Es wird eine neue signierende Identität erstellt, die mit Apple synchronisiert wird, wenn Sie die richtigen Berechtigungen haben.

Wichtig

Der private Schlüssel und das Zertifikat, aus denen Ihre Signaturidentität besteht, werden auch in Keychain Access auf Ihrem Mac-Build-Host exportiert, vorausgesetzt, dass die IDE damit gekoppelt ist. Weitere Informationen finden Sie unter Pair to Mac für die iOS-Entwicklung.

Grundlegendes zu Zertifikatschlüsselpaaren

Ein Entwicklerprofil enthält Zertifikate, ihre zugehörigen Schlüssel und alle Bereitstellungsprofile, die mit dem Apple-Entwicklerkonto verbunden sind. Es gibt zwei Versionen eines Entwicklerprofils – eine befindet sich in Ihrem Apple-Entwicklerkonto, die andere auf einem lokalen Rechner. Der Unterschied zwischen den beiden ist der Schlüsseltyp, den sie enthalten: Das Portalprofil enthält alle öffentlichen Schlüssel, die Ihren Zertifikaten zugeordnet ist, während die Kopie auf Ihrem lokalen Mac alle privaten Schlüssel enthält. Damit die Zertifikate gültig sind, müssen die Schlüsselpaare übereinstimmen.

Warnung

Der Verlust des Zertifikats und der zugehörigen Schlüssel kann sehr störend sein, da bestehende Zertifikate widerrufen und alle zugehörigen Geräte neu bereitgestellt werden müssen. Exportieren Sie nach erfolgreicher Einrichtung eines Entwicklungszertifikats eine Sicherungskopie und bewahren Sie diese an einem sicheren Ort auf. Weitere Informationen dazu finden Sie unter Exportieren von Entwicklerkonten auf help.apple.com.

Bereitstellen eines iOS-Geräts für die Entwicklung

Nachdem Sie ein Signaturzertifikat erstellt haben, müssen Sie ein Entwicklungsbereitstellungsprofil einrichten, damit Sie Ihre App auf einem Gerät bereitstellen können. Auf dem Gerät muss eine iOS-Version laufen, die von Xcode unterstützt wird.

Hinzufügen eines Geräts

Wenn Sie ein Bereitstellungsprofil erstellen, muss das Profil angeben, auf welchen Geräten die App ausgeführt werden kann. Bevor Sie ein Gerät auswählen, das zu einem Bereitstellungsprofil hinzugefügt werden soll, müssen Sie das Gerät zunächst zu Ihrem Apple-Entwicklerkonto hinzufügen. Sie können das Gerät mit den folgenden Schritten hinzufügen:

  1. Schließen Sie das zu provisionierende Gerät mit einem USB-Kabel an Ihren lokalen Mac an.

  2. Öffnen Sie Xcode, und navigieren Sie zu Fenster > Geräte und Simulatoren.

  3. Wählen Sie in Xcode die Registerkarte Geräte aus, und wählen Sie das Gerät aus der Liste der angeschlossenen Geräte aus.

  4. Kopieren Sie in Xcode den Wert Bezeichner in die Zwischenablage:

    Xcode-Fenster mit Geräten und Simulatoren und hervorgehobenem iOS-Bezeichner

  5. Gehen Sie in einem Webbrowser zum Abschnitt Geräte Ihres Apple-Entwicklerkontos und klicken Sie auf die Schaltfläche +.

  6. Stellen Sie auf der Seite Neues Gerät registrieren die richtige Plattform ein und geben Sie einen Namen für das neue Gerät an. Fügen Sie dann den Bezeichner aus der Zwischenablage in das Feld Geräte-ID (UDID) ein und klicken Sie auf Weiter:

    Registrieren Sie ein Gerät, indem Sie es benennen und seinen eindeutigen Gerätebezeichner eingeben.

  7. Überprüfen Sie auf der Seite Neues Gerät registrieren die Informationen und klicken Sie dann auf Registrieren.

Wiederholen Sie die vorherigen Schritte für jedes iOS-Gerät, auf dem Sie eine .NET MAUI iOS-App bereitstellen möchten.

Erstellen einer App-ID

Nachdem Sie ein Gerät zu Ihrem Apple-Entwicklerkonto hinzugefügt haben, sollten Sie eine App ID erstellen. Eine App ID ähnelt einer Reverse-DNS-Zeichenfolge, die eine App eindeutig identifiziert und mit dem Bündelbezeichner für Ihre App identisch sein sollte.

Wichtig

Der Bundle-Bezeichner für eine .NET MAUI-App wird in der Projektdatei als die Eigenschaft Anwendungs-ID gespeichert. Klicken Sie in Visual Studio im Solution Explorer mit der rechten Maustaste auf Ihr .NET MAUI-App-Projekt und wählen Sie Eigenschaften aus. Navigieren Sie dann zur Registerkarte MAUI Shared > General. Das Feld Apps-ID listet den Bundle-Identifikator auf.

Wenn der Wert des Feldes Apps-ID aktualisiert wird, wird der Wert des Bundle-Bezeichners in der Info.plist automatisch aktualisiert.

Es gibt zwei Arten von App ID:

  • Platzhalter Mit einer App-ID mit Platzhalter können Sie eine einzige App-ID verwenden, um mehrere Apps abzugleichen, und sie hat normalerweise die Form com.domainname.*. Eine Platzhalter-App-ID kann für die Installation der meisten Apps auf einem Gerät verwendet werden und sollte für Apps verwendet werden, die keine app-spezifischen Funktionen aktivieren.
  • Explizit. Eine explizite App-ID ist eindeutig für eine einzelne App und hat normalerweise die Form com.domainname.myid. Eine explizite App-ID ermöglicht die Installation einer App mit einem übereinstimmenden Bündelbezeichner auf einem Gerät. Explizite App IDs werden in der Regel für Apps verwendet, die app-spezifische Funktionen wie Apple Pay oder Game Center aktivieren.

Es wird empfohlen, eine Platzhalter-App-ID zu erstellen, es sei denn, Ihre App verwendet app-spezifische Funktionen. Weitere Informationen finden Sie unter Funktionen.

Eine Platzhalter-App-ID kann mit den folgenden Schritten erstellt werden:

  1. Gehen Sie in einem Webbrowser zum Abschnitt Kennungen Ihres Apple-Entwicklerkontos und klicken Sie auf die Schaltfläche +.

  2. Wählen Sie auf der Seite Registrieren Sie einen neuen Bezeichner die Option App IDs aus, und klicken Sie auf die Schaltfläche Weiter.

  3. Wählen Sie auf der Seite Registrieren Sie einen neuen Bezeichner den Typ App aus und klicken Sie auf die Schaltfläche Weiter.

  4. Geben Sie auf der Seite Eine App-ID registrieren eine Beschreibung an und setzen Sie die Bundle ID auf Platzhalter. Geben Sie dann eine App-ID im Format com.domainname.* ein und klicken Sie auf die Schaltfläche Weiter:

    Screenshot der Seite zur Registrierung neuer App-IDs mit ausgefüllten Pflichtfeldern

  5. Überprüfen Sie auf der Seite Bestätigen Sie Ihre App-ID die Informationen und klicken Sie dann auf die Schaltfläche Registrieren.

Erstellen eines Entwicklungsbereitstellungsprofils

Sobald die App-ID erstellt wurde, sollten Sie ein Entwicklungsbereitstellungsprofil erstellen. Ein Bereitstellungsprofil enthält Informationen darüber, auf welche App (oder Apps, wenn es sich um eine Platzhalter-App-ID handelt) sich das Profil bezieht, wer das Profil verwenden kann (abhängig von den hinzugefügten Entwicklerzertifikaten) und welche Geräte die App installieren können.

Ein Entwicklungsbereitstellungsprofil kann mit den folgenden Schritten erstellt werden:

  1. Gehen Sie in einem Webbrowser zum Abschnitt Profile Ihres Apple-Entwicklerkontos und klicken Sie auf die Schaltfläche +.

  2. Wählen Sie auf der Seite Registrieren eines neuen Bereitstellungsprofils im Abschnitt Entwicklung die Option iOS App-Entwicklung aus und klicken Sie auf die Schaltfläche Weiter:

    Screenshot des Erstellens eines Bereitstellungsprofils für die iOS-App-Entwicklung.

  3. Wählen Sie auf der Seite Ein Bereitstellungsprofil erstellen die zu verwendende App-ID aus und klicken Sie dann auf die Schaltfläche Weiter.

    Screenshot des Hinzufügens einer App-ID zu einem Bereitstellungsprofil.

  4. Wählen Sie auf der Seite Ein Bereitstellungsprofil erstellen die Zertifikate aus, die in das Bereitstellungsprofil aufgenommen werden sollen, und klicken Sie dann auf die Schaltfläche Weiter.

    Screenshot des Hinzufügens eines Zertifikats zu einem Bereitstellungsprofil.

  5. Wählen Sie auf der Seite Erstellen eines Bereitstellungsprofils die Geräte aus, auf denen die App installiert werden soll, und klicken Sie dann auf die Schaltfläche Weiter.

    Screenshot des Hinzufügens eines Geräts zu einem Bereitstellungsprofil.

  6. Geben Sie auf der Seite Ein Bereitstellungsprofil erstellen einen Namen für das Bereitstellungsprofil ein und klicken Sie dann auf die Schaltfläche Erstellen.

    Screenshot der Benennung eines Bereitstellungsprofils.

  7. Auf der Seite Ein Bereitstellungsprofil erstellen können Sie optional auf die Schaltfläche Herunterladen klicken, um das Bereitstellungsprofil herunterzuladen.

Herunterladen des Bereitstellungsprofils

Nachdem Sie ein Entwicklungsbereitstellungsprofil in Ihrem Apple-Entwicklerkonto erstellt haben, kann Visual Studio es herunterladen, sodass es für das Signieren Ihrer App verfügbar ist.

  1. Gehen Sie in Visual Studio zu Tools > Optionen > Xamarin > Apple Accounts.
  2. Wählen Sie im Dialog Apple-Entwicklerkonten ein Team aus und klicken Sie auf die Schaltfläche Details anzeigen ….
  3. Überprüfen Sie im Dialog Details, ob das neue Profil in der Liste Bereitstellungsprofile angezeigt wird. Möglicherweise müssen Sie Visual Studio neu starten, um die Liste zu aktualisieren.
  4. Klicken Sie im Dialog Details auf die Schaltfläche Alle Profile herunterladen.

Die Bereitstellungsprofile werden unter Windows heruntergeladen und auf Ihren Mac-Build-Host exportiert, wenn die IDE mit diesem gekoppelt ist. Weitere Informationen finden Sie unter Pair to Mac für die iOS-Entwicklung.

Manuelle Bereitstellung aktivieren

Nachdem Sie das Entwicklungsbereitstellungsprofil manuell erstellt und in Visual Studio installiert haben, sollte Ihr .NET MAUI-App-Projekt für die Verwendung der manuellen Bereitstellung konfiguriert sein:

  1. Im Solution Explorer klicken Sie mit der rechten Maustaste auf Ihr .NET MAUI App Projekt und wählen Eigenschaften. Navigieren Sie dann zur Registerkarte MAUI Shared > Allgemein und stellen Sie sicher, dass der Wert des Feldes Apps-ID dem Format der zuvor erstellten App ID entspricht.

  2. Navigieren Sie in den Projekteigenschaften zur Registerkarte iOS-Bündelsignatur und stellen Sie sicher, dass Manuelle Bereitstellung in der Dropdown-Liste Schema ausgewählt ist:

    Screenshot der Registerkarte

  3. Wählen Sie in den Eigenschaften Bündelsignatur Ihre Signaturidentität und Ihr Bereitstellungsprofil aus oder setzen Sie beide auf Automatisch. Wenn Signaturkennung und Bereitstellungsprofil beide auf Automatisch gesetzt sind, wählt Visual Studio die Signaturkennung und das Bereitstellungsprofil auf der Grundlage des Bundle-Bezeichners in Info.plist aus (der mit dem Wert der Eigenschaft Apps-ID in Ihrer Projektdatei identisch ist).

Auf Gerät bereitstellen

Nach der Konfiguration des Provisioning in Ihrem .NET MAUI-App-Projekt kann die App mit Visual Studio auf einem Gerät bereitgestellt werden:

  1. Stellen Sie in Visual Studio sicher, dass die IDE mit einem Mac Build-Host gekoppelt ist. Weitere Informationen finden Sie unter Pair to Mac für die iOS-Entwicklung.

  2. Stellen Sie sicher, dass Ihr iOS-Gerät über USB oder WiFi mit Ihrem Mac-Build-Host verbunden ist. Weitere Informationen zur drahtlosen Bereitstellung finden Sie unter Wireless deployment for .NET MAUI iOS apps.

  3. Verwenden Sie in der Visual Studio-Symbolleiste das Dropdown-Menü Debug-Ziel, um iOS-Remote-Geräte und dann das Gerät auszuwählen, das mit Ihrem Mac-Build-Host verbunden ist:

    Wählen Sie Ihr Remotegerät in Visual Studio aus.

  4. Drücken Sie in der Visual Studio-Symbolleiste auf die grüne Schaltfläche Start, um die App auf Ihrem Remote-Gerät zu starten:

    Visual Studio iOS-Gerät Debugziel-Wahl.

Hinweis

Ein alternativer Ansatz für die Bereitstellung einer .NET MAUI iOS-App auf einem Gerät ist die Verwendung von Hot Restart. Mit Hot Restart können Sie eine .NET MAUI-App auf einem lokalen 64-Bit-iOS-Gerät von Visual Studio aus bereitstellen, ohne einen Mac-Build-Host zu benötigen. Weitere Informationen finden Sie unter Bereitstellen einer iOS-App mit Hot Restart.

Bereitstellung für Appsdienste

Apple bietet eine Auswahl von Appsdiensten, so genannten Capabilities, an, die für eine .NET MAUI iOS-App aktiviert werden können. Diese Fähigkeiten müssen sowohl in Ihrem Bereitstellungsprofil konfiguriert werden, wenn die App ID erstellt wird, als auch in der Entitlements.plist-Datei, die dem .NET MAUI-App-Projekt hinzugefügt werden sollte. Weitere Informationen über Fähigkeiten finden Sie unter Berechtigungen und Fähigkeiten.