다음을 통해 공유


Xamarin Apple 프로젝트 마이그레이션

iOS용 .NET 앱에 대한 .NET 8 프로젝트는 다음 예제와 유사합니다.

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFramework>net8.0-ios</TargetFramework>
    <OutputType>Exe</OutputType>
    <Nullable>enable</Nullable>
    <ImplicitUsings>true</ImplicitUsings>
    <SupportedOSPlatformVersion>13.0</SupportedOSPlatformVersion>
  </PropertyGroup>
</Project>

라이브러리 프로젝트의 경우 속성을 완전히 생략 $(OutputType) 하거나 속성 값으로 지정 Library 합니다.

MSBuild 속성 변경

다음 표에서는 Xamarin Apple 프로젝트의 속성을 .NET 프로젝트에 매핑하는 방법을 보여줍니다.

속성 설명 .NET 프로젝트 변환
MtouchExtraArgs mtouch에 대한 추가 인수입니다. 일부 인수는 여전히 적용할 수 있으며 일부 인수는 적용되지 않습니다. 복사
MtouchArch 앱 아키텍처. 해당 없음 로 변환합니다 RuntimeIdentifier. 자세한 내용은 RuntimeIdentifier로 변환을 참조 하세요.
XamMacArch 앱 아키텍처. 해당 없음 로 변환합니다 RuntimeIdentifier. 자세한 내용은 RuntimeIdentifier로 변환을 참조 하세요.
HttpClientHandler 기본 HttpClientHandler입니다. UseNativeHttpHandler 로 변환합니다 UseNativeHttpHandler. 자세한 내용은 UseNativeHttpHandler로 변환을 참조 하세요.
MtouchHttpClientHandler 기본값 MtouchHttpClientHandler. UseNativeHttpHandler 로 변환합니다 UseNativeHttpHandler. 자세한 내용은 UseNativeHttpHandler로 변환을 참조 하세요.
EnableCodeSigning 코드 서명을 사용할 수 있는지를 지정합니다. 복사
CodeSigningKey 코드 서명 키를 지정합니다. CodesignKey로 이름 바꾸기
CodesignKey 코드 서명 키를 지정합니다. 복사
CodesignProvision 프로비저닝 프로필을 지정합니다. 복사
CodesignEntitlements 권한 파일의 경로입니다. 복사
CodesignExtraArgs 추가 코드 서명 인수입니다. 복사
PackageSigningKey 패키지에 서명할 코드 서명 키를 지정합니다. 복사
PackagingExtraArgs 패키징 도구에 대한 추가 인수를 지정합니다. 복사
ProductDefinition 패키징할 때 사용할 제품 정의 파일의 경로입니다. 복사
MtouchEnableSGenConc 이름을 .로 EnableSGenConc바꿉니다.
EnableSGenConc 복사

RuntimeIdentifier로 변환

다음 표에서는 Xamarin.iOS 프로젝트를 iOS용 .NET으로 마이그레이션할 RuntimeIdentifier 때 속성 또는 RuntimeIdentifiers 속성으로 및 XamMacArch 속성을 변환 MtouchArch 하는 방법을 보여줍니다.

RuntimeIdentifier RuntimeIdentifiers
ARMv7 ios-arm
ARMv7s ios-arm
ARMv7+ARMv7s ios-arm
ARM64 ios-arm64
ARMv7+ARM64 ios-arm; ios-arm64
ARMv7+ARMv7s+ARM64 ios-arm; ios-arm64
x86_64 iossimulator-x64
i386 iossimulator-x86
x86_64+i386 iossimulator-x86; iossimulator-x64

Important

런타임 식별자가 여러 개 있는 경우 속성 대신 RuntimeIdentifier 속성을 사용합니다RuntimeIdentifiers.

다음 표에서는 xamarin.Mac 프로젝트를 macOS+용 .NET으로 마이그레이션할 RuntimeIdentifier 때 속성과 XamMacArch 속성을 변환 MtouchArch 하는 방법을 보여 있습니다.

속성 RuntimeIdentifier
x86_64 osx-x64

다음 표에서는 tvOS용 .NET으로 Xamarin.tvOS 프로젝트를 마이그레이션할 RuntimeIdentifier 때 속성 및 XamMacArch 속성을 변환 MtouchArch 하는 방법을 보여 있습니다.

속성 RuntimeIdentifier
ARM64 tvos-arm64
x86_64 tvossimulator-x64

속성에 RuntimeIdentifier 대한 자세한 내용은 RuntimeIdentifier를 참조 하세요. 런타임 식별자에 대한 자세한 내용은 .NET RID 카탈로그를 참조 하세요.

UseNativeHttpHandler로 변환

다음 표에서는 Xamarin Apple 프로젝트를 .NET 8로 마이그레이션할 UseNativeHttpHandler 때 속성 및 MtouchHttpClientHandler 속성을 변환 HttpClientHandler 하는 방법을 보여줍니다.

UseNativeHttpHandler
HttpClientHandler false
NSUrlSessionHandler 설정 안 함
CFNetworkHandler 설정 안 함

다른 항목에 대한 변경 내용

다음 표에서는 Xamarin Apple 프로젝트의 다른 항목을 .NET 프로젝트에 매핑하는 방법을 보여줍니다.

항목 설명 .NET 프로젝트 변환
LinkDescription 관리되는 링커에 대한 추가 XML 파일입니다. 동일한 복사

Info.plist의 변경 내용

일부 값은 Info.plist에서 프로젝트 파일로 이동되었습니다.

MinimumOSVersion 및 LSMinimumSystemVersion

LSMinimumSystemVersion 속성은 MinimumOSVersion .NET 8 프로젝트의 속성으로 변환 SupportedOSPlatformVersion 되어야 합니다. 자세한 내용은 MinimumOSVersion이 SupportedOSPlatformVersion과 일치하는지 확인하세요.

참고 항목