플랫폼 및 프레임워크 호환성 - .NET SDK
이 페이지의 내용
대상 플랫폼
다음 표는 대상 플랫폼에서 SDK와 함께 사용할 수 있는 .NET 버전을 보여줍니다.
대상 플랫폼 | 지원되는 버전 |
---|---|
Debian 8 or later RHEL 7.1 or later Ubuntu 16.04 or later | .NET Core 2.0 이상(.NET 프레임워크 5.0 이상) |
Windows 8.1 이상 | .NET Core 2.0 or later (.NET 5.0 Framework or later) .NET Framework 4.6.1 or later MAUI requires Windows 11 and Windows 10 version 1809 or higher, using
Windows UI Library (WinUI) 3. |
유니버설 Windows 플랫폼(UWP) | .NET Standard 2.0 이상(가을 크리에이터스 업데이트) |
macOS | .NET Core 2.0 or later (.NET 5.0 Framework or later) Xamarin.Mac for macOS 10.11 or later. MAUI requires macOS 10.15 or later, using Mac Catalyst. |
iOS | Xamarin.iOS for iOS 9 or later. MAUI requires iOS 11 or later. |
Android | Xamarin.Android for Android 4.1 (API level 16) or later. MAUI requires Android 5.0 (API level 21) or later. |
tvOS | Xamarin and Unity for tvOS 9.0 or later. For more information on developing for tvOS, see Build for tvOS. |
참고
SDK 객체 모델과의 호환성
.NET SDK v10.18.0 이상의 소스 생성기 모델에는 다음이 필요합니다.
.NET Core 2.0 이상(.NET 프레임워크 5.0 이상)
C# 9.0 이상
이전 버전의 .NET Framework를 대상으로 하는 경우 객체 모델은 이전 소스 생성기에 필요한 RealmObject, EmbeddedObject 또는 AsymmetricObject 기본 클래스에서 파생되어야 합니다.
다음은 이전 .NET Framework와의 호환성을 위해 현재 객체 모델을 조정하는 방법을 보여줍니다.
public partial class Person : IRealmObject // Current model public class Person : RealmObject // Adjusted to inherit from RealmObject
자세한 내용은 객체 모델 - .NET SDK 를 참조하세요.
개발 환경
다음 개발 환경을 사용하여 .NET SDK 로 앱을 빌드 할 수 있습니다.
Windows용 Visual Studio 2015 업데이트 2 이상
Mac용 Visual Studio 7.0 이상
Unity 2020.3.12f1 (LTS)
참고
.NET SDK 는 다른 버전의 Unity 와 호환될 수 있지만 2020.3.12f1 (LTS)
는 SDK 팀 이 테스트 및 개발에 사용하는 버전입니다. Unity의 UI 는 버전마다 변경되는 경우가 많으므로 이 버전을 사용하여 프로젝트 가 .NET SDK 에서 작동하고 설치 단계가 Realm 과 Unity 문서 단계와 일치하는지 확인하는 것이 좋습니다.
Android 배포
일부 지침 설정하다 제한으로 인해 SDK는 armeabi
ABI에 대한 Android 앱 배포를 지원 하지 않습니다. 기본값 템플릿은 디버그 및 릴리스 모드에 대해 서로 다른 ABI 설정을 갖는 경우가 많으므로 앱 이 릴리스 모드 에서는 System.TypeInitializationException
예외를 발생시킬 수 있지만 디버그 모드 에서 실행 때는 발생하지 않을 수 있습니다.
이를 방지하려면 디버그 및 릴리스 모드 모두에 대한 ABI 설정을 확인합니다. 설정을 확인하고 변경하려면 Visual Studio CPU 아키텍처 의 단계를 따르세요. 페이지.
다른 ABI를 연결하지 않아야 할 정당한 이유가 없다면 armeabi
이외의 모든 설정을 확인하는 것이 좋습니다.
제한 사항
SDK에는 유연성과 성능의 균형을 맞추기 위해 제한이 있습니다. 다음 제한을 초과하면 SDK는 앱 초기화 중에 예외를 발생시킵니다.
클래스 이름은 57바이트를 초과할 수 없습니다.
속성 이름은 63바이트를 초과할 수 없습니다.
또한 iOS 앱의 경우 열려 있는 모든 Realm 파일의 총 크기는 애플리케이션이 iOS에서 매핑할 수 있는 메모리 양보다 클 수 없습니다. 이는 기기마다 다르며 기기의 메모리 공간이 얼마나 조각화되어 있는지에 따라 달라집니다. 허용된 것보다 더 많은 데이터를 저장해야 하는 경우 데이터를 여러 Realm 파일로 분할하고, 필요할 때만 Realm을 열고, 더 이상 필요하지 않을 때 Realm을 닫을 수 있습니다.
자세한 내용은 Open Radar 17119975 를 참조하세요. .