Xcode 동기화(xcsync)
Xcode 동기화(xcsync)는 개발자가 .NET 프로젝트로 Apple 특정 파일을 관리하기 위해 Xcode를 활용할 수 있는 도구입니다. 이 도구는 .NET 프로젝트에서 임시 Xcode 프로젝트를 생성하고 Xcode 파일의 변경 내용을 다시 .NET 프로젝트로 동기화합니다.
지원되는 파일 형식은 다음과 같습니다.
- 자산 카탈로그
- Plist
- 스토리보드
- Xib
도구에는 두 가지 명령이 있습니다. generate
sync
.NET 프로젝트에서 Xcode 프로젝트를 만들고 Xcode 프로젝트의 sync
변경 내용을 .NET 프로젝트로 다시 가져오는 데 사용합니다generate
.
개요
다음 예제에서는 명령 및 sync
명령에 대한 generate
구문을 보여 줍니다.
xcsync-창조하다
dotnet build /t:xcsync-generate
/p:xcSyncProjectFile=<PROJECT>
/p:xcSyncXcodeFolder=<TARGET_XCODE_DIRECTORY>
/p:xcSyncTargetFrameworkMoniker=<FRAMEWORK>
/p:xcSyncVerbosity=<LEVEL>
xcsync-동기화
dotnet build /t:xcsync-sync
/p:xcSyncProjectFile=<PROJECT>
/p:xcSyncXcodeFolder=<TARGET_XCODE_DIRECTORY>
/p:xcSyncTargetFrameworkMoniker=<FRAMEWORK>
/p:xcSyncVerbosity=<LEVEL>
인수
/p:xcSyncProjectFile=<PROJECT>
빌드할 프로젝트 파일입니다. 지원되는 프로젝트 유형은 .NET MAUI 프로젝트 또는 지원되는 플랫폼(iOS, tvOS, macOS, MacCatalyst)을 대상으로 하는 모든 .NET 프로젝트입니다.
옵션
다음 옵션을 사용하면 도구의 기본 동작을 변경할 수 있습니다.
/p:xcSyncTargetFrameworkMoniker=<FRAMEWORK>
특정 프레임워크에 대한 도구를 호출합니다. 프레임워크는 프로젝트 파일에 정의해야 합니다. 예:
net9.0-ios
,net9.0-maccatalyst
. .NET 프로젝트가 여러 대상 프레임워크(예: 표준 MAUI 프로젝트)를 지원하는 경우 필요합니다 . 단일 플랫폼 프로젝트의 경우 기본값은 프로젝트 파일에 지정된 단일 대상 프레임워크가 됩니다./p:xcSyncXcodeFolder=<TARGET_XCODE_DIRECTORY>
생성된 Xcode 프로젝트를 배치할 디렉터리입니다. 기본 경로는 ./obj/xcode입니다.
/p:xcSyncVerbosity=<LEVEL>
명령의 세부 정보 표시 수준을 설정합니다. 허용되는 값은 ,
Diagnostic
,Minimal
Normal
,Quiet
입니다Detailed
. 기본값은Normal
입니다.
예제
TFM을 지원하는
net9.0-ios
현재 디렉터리의 프로젝트 파일을 사용하는 .NET MAUI 프로젝트에 대한 Xcode 프로젝트를 생성하고 엽니다.dotnet build /t:xcsync-generate /p:xcSyncTargetFrameworkMoniker=net9.0-ios
TFM을 지원하는 .NET MAUI 프로젝트에 대한 Xcode 프로젝트를 생성하고 엽니다.
net9.0-ios
dotnet build /t:xcsync-generate /p:xcSyncProjectFile=path/to/maui.csproj /p:xcSyncTargetFrameworkMoniker=net9.0-ios
기본 위치(./obj/Xcode)에서 생성된 Xcode 프로젝트의 변경 내용을 TFM을 지원하는 .NET MAUI 프로젝트로 다시 동기화합니다
net9.0-ios
.dotnet build /t:xcsync-sync /p:xcSyncProjectFile=path/to/maui.csproj /p:xcSyncTargetFrameworkMoniker=net9.0-ios
.NET MAUI