xcsync — это средство .NET, позволяющее разработчикам использовать Xcode для управления конкретными файлами Apple с помощью проектов .NET. Средство создает временный проект Xcode из проекта .NET и синхронизирует изменения файлов Xcode обратно в проект .NET.
Поддерживаемые типы файлов включают:
Каталог активов
Plist
Раскадровка
Xib
Средство имеет две команды: generate и sync. Используется generate для создания проекта Xcode из проекта .NET и sync внесения изменений в проект Xcode обратно в проект .NET.
Примечание.
Это средство доступно только для macOS из-за взаимодействия с Xcode.
Установите .NET xcsync глобально с помощью следующей команды:
dotnet tool install -g dotnet-xcsync
Использование
Расширение .NET MAUI обеспечивает поддержкуxcsync. Убедитесь, что у вас установлена последняя версия. Команды xcsync в расширении MAUI для .NET доступны только при использовании Visual Studio Code в macOS.
Откройте палитру команд (Cmd + SHIFT+P) и найдите .NET MAUI: xcsync - Generate an Xcode project команды и .NET MAUI: xcsync - Sync from an Xcode project выполните поиск.
Устранение неполадок
Чтобы просмотреть сведения об ошибках, связанных с xcsync, перейдите в окно вывода (CMD + SHIFT+ u ) и выберите .NET MAUI в xcsync раскрывающемся списке. Если у вас возникли проблемы, сообщите о проблеме.
Предоставление отзыва
Перед отправкой нового вопроса или предложения проверьте существующие известные проблемы .
Установка
Установите .NET xcsync глобально с помощью следующей команды:
Файл проекта для сборки. Поддерживаемые типы проектов — это проекты .NET MAUI или любой проект .NET, предназначенный для поддерживаемой платформы (iOS, tvOS, macOS, MacCatalyst).
-tfm|--target-framework-moniker <FRAMEWORK>
Вызов средства для определенной платформы. Платформа должна быть определена в файле проекта. Примеры: net9.0-ios, net9.0-maccatalyst. Требуется, если проект .NET поддерживает несколько целевых платформ (например, проект .NET MAUI с несколькими целевыми объектами). Если проект одной платформы, значение по умолчанию будет одной целевой платформой, указанной в файле проекта.
-t|--target <TARGET_XCODE_DIRECTORY>
Каталог, в котором будет размещен созданный проект Xcode. Значение по умолчанию: (*_$(IntermediateOutputPath)_/xcsync*).
-f|--force
Принудительно перезаписывает существующий проект Xcode. Значение по умолчанию: False.
-o|--open
Открывает созданный проект в Xcode. Значение по умолчанию: False.
-v|--verbosity <LEVEL>
Задает уровень детализации команды. Допустимые значения: Detailed, Diagnostic, NormalMinimal, Quiet. Значение по умолчанию: Normal.
-d|--dotnet-path <PATH>
Путь к пакету SDK для .NET. Значение по умолчанию — путь из родительского процесса, если он есть dotnet, в противном случае возвращается к dotnet PATH.
-h|--help
Отображает справку и сведения об использовании.
Примеры
Создайте и откройте проект Xcode для проекта .NET MAUI, использующего файл проекта в текущем каталоге, который поддерживает net9.0-iosTFM:
xcsync generate -tfm net9.0-ios
Создайте и откройте проект Xcode для проекта .NET MAUI, поддерживающего net9.0-iosTFM:
Синхронизация изменений из созданного проекта Xcode в расположении по умолчанию ($(IntermediateOutputPath)/xcsync) обратно в проект .NET MAUI, поддерживающий net9.0-iosTFM:
Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.