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 istNormal
.
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-ios
TFM 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-ios
TFM 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-ios
TFM unterstützt:dotnet build /t:xcsync-sync /p:xcSyncProjectFile=path/to/maui.csproj /p:xcSyncTargetFrameworkMoniker=net9.0-ios