Durchführen einer Kopplung mit einem Mac für die Xamarin.iOS-Entwicklung

In diesem Leitfaden wird erläutert, wie Sie die Option „Mit Mac koppeln“ verwenden, um Visual Studio 2019 mit einem Mac-Buildhost zu verbinden. Diese Anweisungen gelten auch für Visual Studio 2017.

Übersicht

Zum Erstellen nativer iOS-Anwendungen sind die Apple-Buildtools erforderlich, die nur auf einem Mac ausgeführt werden können. Aus diesem Grund muss Visual Studio 2019 eine Verbindung zu einem Mac herstellen, der über ein Netzwerk zugänglich ist, da andernfalls keine Xamarin.iOS-Anwendungen erstellt werden können.

Durch das Visual Studio 2019-Feature „Mit Mac koppeln“ werden zuerst Mac-Buildhosts ermittelt. Anschließend wird eine Verbindung mit diesen hergestellt, die Authentifizierung wird vorgenommen, und die Buildhosts werden gespeichert. Hierdurch können iOS-Entwickler unter Windows produktiv arbeiten.

Das Feature „Mit Mac koppeln“ ermöglicht den folgenden Entwicklungsworkflow:

  • Entwickler können in Visual Studio 2019 Xamarin.iOS-Code schreiben.

  • Visual Studio 2019 stellt eine Netzwerkverbindung mit einem Mac-Buildhost her und verwendet die Buildtools auf diesem Computer, um die iOS-App zu kompilieren und zu signieren.

  • Auf dem Mac muss keine separate Anwendung ausgeführt werden, da Visual Studio 2019 die Mac-Builds über eine sichere SSH-Verbindung aufruft.

  • Visual Studio 2019 wird unmittelbar über Änderungen informiert. Wenn beispielsweise ein iOS-Gerät an den Mac angeschlossen oder ein Gerät im Netzwerk verfügbar wird, wird die iOS-Symbolleiste sofort aktualisiert.

  • Mehrere Instanzen von Visual Studio 2019 können gleichzeitig eine Verbindung mit dem Mac herstellen.

  • Die Windows-Befehlszeile kann zur Erstellung von iOS-Anwendungen verwendet werden.

Hinweis

Führen Sie zunächst die folgenden Schritte aus, bevor Sie die Anweisungen in diesem Leitfaden beachten:

  • Installieren Sie Visual Studio 2019 auf einem Windows-Computer.
  • Installieren Sie auf einem Mac Xcode und Visual Studio für Mac.
    • Nach der Installation müssen Sie Xcode manuell öffnen, damit sie weitere Komponenten hinzufügen können.

Wenn Sie Visual Studio für Mac nicht installieren möchten, kann Visual Studio 2019 automatisch den Mac-Buildhost mit Xamarin.iOS und Mono konfigurieren. Sie müssen noch Xcode installieren und ausführen. Weitere Informationen finden Sie unter Automatische Bereitstellung eines Macs.

Aktivieren der Remoteanmeldung auf dem Mac

Aktivieren Sie zur Einrichtung des Mac-Buildhosts zunächst die Remoteanmeldung:

  1. Rufen Sie auf dem Mac die Systemeinstellungen auf, und navigieren Sie zum Bereich Freigaben.

  2. Aktivieren Sie in der Liste Dienst das Kontrollkästchen Entfernte Anmeldung.

    Aktivieren der Remoteanmeldung

    Stellen Sie sicher, dass sie so konfiguriert ist, dass der Zugriff für Alle Benutzer zugelassen wird, oder dass Ihr Mac-Benutzername oder Ihre Mac-Gruppe in der Liste der zulässigen Benutzer enthalten ist.

  3. Konfigurieren Sie die macOS-Firewall, wenn Sie dazu aufgefordert werden.

    Falls Sie Ihre macOS-Firewall so konfiguriert haben, dass eingehende Verbindungen blockiert werden, sollten Sie für mono-sgen den Empfang eingehender Verbindungen zulassen. In diesem Fall werden Sie durch eine Benachrichtigung dazu aufgefordert.

  4. Ihr Mac sollte nun von Visual Studio 2019 erkannt werden, wenn dieser sich in demselben Netzwerk wie der Windows-Computer befindet. Wenn der Mac immer noch nicht erkannt wird, können Sie versuchen, diesen manuell hinzuzufügen. Alternativ können Sie sich auch den Leitfaden zur Problembehebung ansehen.

Herstellen einer Verbindung mit dem Mac über Visual Studio 2019

Nachdem Sie die Remoteanmeldung aktiviert haben, können Sie Visual Studio 2019 mit dem Mac verbinden.

  1. Öffnen Sie in Visual Studio 2019 ein vorhandenes iOS-Projekt, oder erstellen Sie ein neues Projekt, indem Sie Datei > Neues > Projekt und dann eine iOS-Projektvorlage auswählen.

  2. Öffnen Sie das Dialogfeld Mit Mac koppeln.

    • Klicken Sie dazu auf die Schaltfläche Mit Mac koppeln in der iOS-Symbolleiste:

      Die iOS-Symbolleiste mit hervorgehobener Schaltfläche

    • Oder wählen Sie Extras > iOS > Mit Mac koppeln aus.

    • Im Dialogfeld Mit Mac koppeln wird eine Liste aller zuvor verbundenen und zurzeit verfügbaren Mac-Buildhosts angezeigt:

      Dialogfeld

  3. Wählen Sie einen Mac aus der Liste aus. Klicken Sie auf Verbinden.

  4. Geben Sie Ihren Benutzernamen und Ihr Kennwort ein.

    • Beim erstmaligen Herstellen einer Verbindung mit einem Mac werden Sie aufgefordert, Ihren Benutzernamen und Ihr Kennwort für diesen Computer einzugeben:

      Eingeben eines Benutzernamens und Kennworts für den Mac ein.

      Tipp

      Verwenden Sie bei der Anmeldung Ihren Systembenutzernamen anstelle des vollständigen Namens.

    • Die Anmeldeinformationen werden vom Feature „Mit Mac koppeln“ verwendet, um eine neue SSH-Verbindung mit dem Mac herzustellen. Wenn dieser Vorgang erfolgreich ist, wird der Datei authorized_keys auf dem Mac ein Schlüssel hinzugefügt. Bei allen weiteren Verbindungen mit demselben Mac wird die Anmeldung automatisch vorgenommen.

  5. Das Feature „Mit Mac koppeln“ konfiguriert den Mac automatisch.

    Ab der Version 15.6 von Visual Studio 2019 werden Mono und Xamarin.iOS auf einem verbundenen Mac-Buildhost bei Bedarf installiert oder aktualisiert. Beachten Sie, dass Xcode nach wie vor manuell installiert werden muss. Weitere Informationen finden Sie unter Automatische Bereitstellung eines Macs.

  6. Suchen Sie nach dem Symbol für den Verbindungsstatus.

    • Wenn Visual Studio 2019 mit einem Mac verbunden wird, wird für das Mac-Element im Dialogfeld Mit Mac koppeln ein Symbol angezeigt, das darauf hinweist, dass aktuell eine Verbindung besteht:

      Ein verbundener Mac

      Es kann immer nur ein Mac gleichzeitig verbunden sein.

      Tipp

      Wenn Sie mit der rechten Maustaste auf einen Mac in der Liste Mit Mac koppeln klicken, wird ein Kontextmenü angezeigt, in dem Sie die Aktion Verbinden... , Diesen Mac vergessen oder Verbindung trennen ausführen können.

      Kontextmenüs

      Falls Sie auf Diesen Mac vergessen klicken, werden die Anmeldeinformationen für den ausgewählten Mac verworfen. Wenn Sie erneut eine Verbindung mit diesem Mac herstellen möchten, müssen Sie Ihren Benutzernamen und Ihr Kennwort erneut eingeben.

Sobald Sie eine Kopplung mit dem Mac-Buildhost erfolgreich durchgeführt haben, können Sie Xamarin.iOS-Apps in Visual Studio 2019 erstellen. Informationen hierzu finden Sie im Leitfaden Einführung in Xamarin.iOS für Visual Studio.

Wenn die Kopplung fehlschlägt, können Sie versuchen, den Mac manuell hinzuzufügen. Alternativ können Sie sich auch den Leitfaden zur Problembehebung ansehen.

Manuelles Hinzufügen eines Macs

Wenn ein bestimmter Mac nicht im Dialogfeld Mit Mac koppeln aufgeführt wird, können Sie diesen manuell hinzufügen:

  1. Ermitteln Sie die IP-Adresse Ihres Macs.

    • Öffnen Sie system preferences > Sharing > Remote Login auf Ihrem Mac:

      Die IP-Adresse des Mac in den Systemeinstellungen > Freigeben

    • Alternativ können Sie auch die Befehlszeile verwenden. Führen Sie im Terminal den folgenden Befehl aus:

      $ ipconfig getifaddr en0
      196.168.1.8
      

      Abhängig von Ihrer Netzwerkkonfiguration müssen Sie möglicherweise nicht en0, sondern einen anderen Schnittstellennamen verwenden. Beispiele sind en1 und en2.

  2. Klicken Sie in Visual Studio 2019 im Dialogfeld Mit Mac koppeln auf Mac hinzufügen... :

    Schaltfläche

  3. Geben Sie die IP-Adresse des Macs ein, und klicken Sie anschließend auf Hinzufügen:

    Eingeben der IP-Adresse des Mac

  4. Geben Sie Ihren Benutzernamen und Ihr Kennwort für den Mac ein:

    Geben Sie einen Benutzernamen und ein Kennwort

    Tipp

    Verwenden Sie bei der Anmeldung Ihren Systembenutzernamen anstelle des vollständigen Namens.

  5. Klicken Sie auf Anmelden, um Visual Studio 2019 über SSH mit dem Mac zu verbinden und den Mac der Liste der bekannten Computer hinzuzufügen.

Automatische Bereitstellung eines Macs

Ab Version 15.6 von Visual Studio 2019 wird durch das Feature „Mit Mac koppeln“ automatisch eine Software für ein Mac bereitgestellt, die zum Erstellen von Xamarin.iOS-Anwendungen erforderlich ist: Diese umfasst Mono, Xamarin.iOS (das Softwareframework, nicht die IDE Visual Studio für Mac) und verschiedene Tools im Zusammenhang mit Xcode (nicht jedoch Xcode selbst).

Wichtig

  • Xcode kann nicht durch das Feature „Mit Mac koppeln“ installiert werden. Sie müssen die IDE daher manuell auf dem Mac-Buildhost installieren. Xcode ist für die Entwicklung mit Xamarin.iOS erforderlich.
  • Für die automatische Bereitstellung eines Macs muss die Remoteanmeldung auf dem Mac aktiviert sein. Außerdem muss ein Windows-Computer über ein Netzwerk auf den Mac zugreifen können. Weitere Informationen finden Sie unter Aktivieren der Remoteanmeldung auf dem Mac.
  • Für die automatische Mac-Bereitstellung sind 3 GB freier Speicherplatz auf dem Mac erforderlich, um Xamarin.iOS zu installieren.

Das Feature „Mit Mac koppeln“ installiert die erforderliche Software oder aktualisiert diese, wenn Visual Studio 2019 eine Verbindung mit dem Mac herstellt.

Mono

Das Feature „Mit Mac koppeln“ überprüft, ob Mono installiert ist. Wenn dies nicht der Fall ist, lädt das Feature die neueste stabile Version von Mono auf den Mac herunter.

In mehreren Eingabeaufforderungen wird der Status angezeigt. Dies ist auf den folgenden Screenshots zu sehen (zum Vergrößern klicken):

Mono Überprüfung auf vorhandene Installation Ausgeführter Downloadvorgang Installation
Fehlende Mono-Installation Herunterladen von Mono Installieren von Mono

Xamarin.iOS

Das Feature „Mit Mac koppeln“ führt auf dem Mac für Xamarin.iOS ein Upgrade auf die Version durch, die auf dem Windows-Computer installiert ist.

Wichtig

Auf dem Mac findet keine Herabstufung einer Alpha- oder Betaversion von Xamarin.iOS zu einer stabilen Version statt. Wenn Sie Visual Studio für Mac installiert haben, müssen Sie Ihren Releasekanal wie folgt konfigurieren:

  • Wählen Sie bei Verwendung von Visual Studio 2019 den Updatekanal Stabil in Visual Studio für Mac aus.
  • Wählen Sie bei Verwendung der Vorschauversion von Visual Studio 2019 den Updatekanal Alpha in Visual Studio für Mac aus.

In mehreren Eingabeaufforderungen wird der Status angezeigt. Dies ist auf den folgenden Screenshots zu sehen (zum Vergrößern klicken):

Xamarin.iOS Überprüfung auf vorhandene Installation Ausgeführter Downloadvorgang Installation
Fehlende Xamarin.iOS-Installation Herunterladen von Xamarin.iOS Installieren von Xamarin.iOS

Xcode-Tools und -Lizenz

Das Feature „Mit Mac koppeln“ überprüft auch, ob Xcode installiert wurde und Sie der Lizenz zugestimmt haben. Obwohl das Feature Xcode nicht installiert, werden Sie dazu aufgefordert der Lizenz zuzustimmen. Dies ist auf den folgenden Screenshots zu sehen (zum Vergrößern klicken):

Xcode Überprüfung auf vorhandene Installation Zustimmung zur Lizenz
Fehlende Xcode-Installation Xcode-Lizenz

Zusätzlich installiert oder aktualisiert das Feature „Mit Mac koppeln“ verschiedene Pakete, die mit Xcode verteilt werden. Zum Beispiel:

  • MobileDeviceDevelopment.pkg
  • XcodeExtensionSupport.pkg
  • MobileDevice.pkg
  • XcodeSystemResources.pkg

Die Installation dieser Pakete erfolgt schnell, und es wird keine Eingabeaufforderung angezeigt.

Hinweis

Diese Tools unterscheiden sich von den Xcode-Befehlszeilentools, die ab macOS 10.9 zusammen mit Xcode installiert werden.

Problembehandlung bei der automatischen Bereitstellung eines Macs

Wenn bei der automatischen Bereitstellung eines Macs Probleme auftreten, können Sie sich die Protokolle der Visual Studio 2019-IDE ansehen, die unter %LOCALAPPDATA%\Xamarin\Logs\16.0 gespeichert werden. Diese Protokolle enthalten möglicherweise Fehlermeldungen, die Sie zur effizienteren Diagnose des Fehlers oder für Supportanfragen verwenden können.

Erstellen von iOS-Apps über die Windows-Befehlszeile

Das Feature „Mit Mac koppeln“ unterstützt die Erstellung von Xamarin.iOS-Anwendungen über die Befehlszeile. Zum Beispiel:

C:\samples\App1>msbuild App1.sln /p:ServerAddress=10.211.55.2 /p:ServerUser=xamUser /p:Platform=iPhoneSimulator /p:ServerPassword=mypassword

Die im obigen Beispiel an msbuild übergebenen Parameter sind:

  • ServerAddress: die IP-Adresse des Mac-Buildhosts.
  • ServerUser: der Benutzername, der zur Anmeldung bei dem Mac-Buildhost verwendet wird. Verwenden Sie Ihren Systembenutzernamen anstelle des vollständigen Namens.
  • ServerPassword: das Kennwort, das zur Anmeldung bei dem Mac-Buildhost verwendet wird.

Hinweis

Visual Studio 2019 speichert msbuild im folgenden Verzeichnis: C:\Programme (x86)\Microsoft Visual Studio\2019\<Version>\MSBuild\Current\Bin

Wenn sich das Feature „Mit Mac koppeln“ zum ersten Mal über Visual Studio 2019 oder über die Befehlszeile bei einem Mac-Buildhost anmeldet, werden SSH-Schlüssel eingerichtet. Durch die Verwendung dieser Schlüssel entfällt bei weiteren Anmeldungen die Angabe des Benutzernamens oder des Kennworts. Neu erstellte Schlüssel werden unter %LOCALAPPDATA%\Xamarin\MonoTouch gespeichert.

Wenn der ServerPassword-Parameter bei einem Buildaufruf über die Befehlszeile nicht angegeben wird, versucht das Feature „Mit Mac koppeln“, sich mithilfe der gespeicherten SSH-Schlüssel bei dem Mac-Buildhost anzumelden.

Zusammenfassung

In diesem Artikel wurde erläutert, wie mit dem Feature „Mit Mac koppeln“ Visual Studio 2019 mit einem Mac Buildhost verbunden werden kann. Hierdurch können Visual Studio 2019-Entwickler mit Xamarin.iOS native iOS-Anwendungen erstellen.

Nächste Schritte