Freigeben über


Xcode sync (xcsync)

Xcode sync (xcsync) ist ein Tool, mit dem Entwicklende Xcode für die Verwaltung von Apple-spezifischen Dateien mit .NET-Projekten nutzen können. Das Tool generiert ein temporäres Xcode-Projekt aus einem .NET-Projekt und synchronisiert Änderungen an den Xcode-Dateien mit dem .NET-Projekt.

Unterstützte Dateitypen sind unter anderem:

  • Ressourcenkatalog
  • Plist
  • Storyboard
  • Xib

Das Tool hat zwei Befehle: generate und sync. Verwenden Sie generate, um aus einem .NET-Projekt ein Xcode-Projekt zu erstellen, und sync, um Änderungen im Xcode-Projekt wieder in das .NET-Projekt zu übernehmen.

Übersicht

Die folgenden Beispiele zeigen die Syntax für die Befehle generate und sync.

xcsync-generieren

dotnet build /t:xcsync-generate
    /p:xcSyncProjectFile=<PROJECT>
    /p:xcSyncXcodeFolder=<TARGET_XCODE_DIRECTORY>
    /p:xcSyncTargetFrameworkMoniker=<FRAMEWORK>
    /p:xcSyncVerbosity=<LEVEL>

xcsync-sync

dotnet build /t:xcsync-sync
    /p:xcSyncProjectFile=<PROJECT>
    /p:xcSyncXcodeFolder=<TARGET_XCODE_DIRECTORY>
    /p:xcSyncTargetFrameworkMoniker=<FRAMEWORK>
    /p:xcSyncVerbosity=<LEVEL>

Argumente

  • /p:xcSyncProjectFile=<PROJECT>

    Die zu erstellende Projektdatei. Unterstützte Projekttypen sind .NET-MAUI-Projekte oder beliebige .NET-Projekte, die auf eine unterstützte Plattform (iOS, tvOS, macOS, MacCatalyst) abzielen.

Optionen

Mit den folgenden Optionen können Sie das Standardverhalten des Tools ändern:

  • /p:xcSyncTargetFrameworkMoniker=<FRAMEWORK>

    Rufen Sie das Tool für ein bestimmtes Framework auf. Das Framework muss in der Projektdatei definiert werden. Beispiele: net9.0-ios, net9.0-maccatalyst. Erforderlich, wenn das .NET-Projekt mehrere Ziel-Frameworks unterstützt (z. B. ein Standard-MAUI-Projekt). Wenn es sich um ein einzelnes Plattformprojekt handelt, ist der Standardwert das in der Projektdatei angegebene einzelne Ziel-Framework.

  • /p:xcSyncXcodeFolder=<TARGET_XCODE_DIRECTORY>

    Das Verzeichnis, in dem das generierte Xcode-Projekt abgelegt werden soll. Der Standardpfad ist ./obj/xcode.

  • /p:xcSyncVerbosity=<LEVEL>

    Legt den Ausführlichkeitsgrad für den Befehl fest. Zulässige Werte sind Detailed, Diagnostic, Minimal, Normal, Quiet. Der Standardwert ist Normal.

Beispiele

  • Erstellen und öffnen Sie ein Xcode-Projekt für ein .NET MAUI-Projekt, das die Projektdatei im aktuellen Verzeichnis verwendet und den net9.0-iosTFM unterstützt:

    dotnet build /t:xcsync-generate /p:xcSyncTargetFrameworkMoniker=net9.0-ios
    
  • Erstellen und öffnen Sie ein Xcode-Projekt für ein .NET MAUI-Projekt, das net9.0-iosTFM unterstützt:

    dotnet build /t:xcsync-generate /p:xcSyncProjectFile=path/to/maui.csproj /p:xcSyncTargetFrameworkMoniker=net9.0-ios
    
  • Synchronisieren Sie Änderungen aus einem generierten Xcode-Projekt am Standardspeicherort (./obj/Xcode) zurück in ein .NET MAUI-Projekt, das den net9.0-iosTFM unterstützt:

    dotnet build /t:xcsync-sync /p:xcSyncProjectFile=path/to/maui.csproj /p:xcSyncTargetFrameworkMoniker=net9.0-ios