Plataformas objetivo
La siguiente tabla muestra qué versiones de .NET puede utilizar con el SDK en sus plataformas de destino:
Plataforma de destino | Versión/es soportada/s |
|---|---|
Debian 8 or later RHEL 7.1 or later Ubuntu 16.04 or later | .NET Core 2.0 o posterior (.NET Framework 5.0 o posterior) |
Windows 8.1 or later | .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. |
Plataforma universal de Windows (UWP) | .NET Standard 2.0 o superior (Fall Creators Update) |
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. |
Nota
Compatibilidad con modelos de objetos SDK
Los modelos de generador de origen en .NET SDK v10.18.0 y versiones posteriores requieren lo siguiente:
.NET Core 2.0 o posterior (.NET Framework 5.0 o posterior)
C# 9.0 o posterior
Si su objetivo es una versión anterior de .NET Framework, sus modelos de objetos deben derivar de la Clases base RealmObject, EmbeddedObject o AsymmetricObject requeridas por el antiguo generador de origen.
The following demonstrates how you can adjust your current object models for compatibility with older .NET Frameworks:
public partial class Person : IRealmObject // Current model public class Person : RealmObject // Adjusted to inherit from RealmObject
For more information, refer to Object Models - .NET SDK.
Development Environments
Puedes utilizar los siguientes entornos de desarrollo para compilar aplicaciones con el .NET SDK:
Visual Studio 2015 Actualización 2 o superior para Windows
Visual Studio para Mac versión 7.0 o superior
Unidad 2020.3.12f1 (LTS)
Nota
El SDK .NET puede ser compatible con otras versiones de Unity, pero 2020.3.12f1 (LTS) Es la versión que el equipo del SDK utiliza para pruebas y desarrollo. Recomendamos usar esta versión para garantizar que su proyecto funcione con el SDK .NET y que los pasos de instalación coincidan con los de la documentación de Integrar Realm con Unity, ya que la interfaz de usuario de Unity suele cambiar entre versiones.
Android Deployment
Debido a algunas limitaciones del conjunto de instrucciones, el SDK no admite la implementación de aplicaciones de Android en la ABI armeabi. Como las plantillas por defecto suelen tener diferentes configuraciones ABI para los modos de depuración y publicación, tu aplicación podría lanzar una excepción System.TypeInitializationException en el modo de publicación, pero no cuando estaba en el modo de depuración.
Para evitar esto, verifica la configuración de ABI tanto para los modos de depuración como de lanzamiento. Para comprobar y cambiar la configuración, sigue los pasos indicados en la página Arquitecturas de CPU de Visual Studio.
Unless you have a good reason to avoid linking other ABIs, we recommend checking all of the settings other than armeabi.
Limitaciones
El SDK tiene límites impuestos para equilibrar la flexibilidad y el rendimiento. El SDK genera una excepción durante la inicialización de la aplicación si se superan los siguientes límites:
Los nombres de clases no pueden exceder de 57 bytes de longitud.
Property names can't exceed 63 bytes in length.
Además, para las apps de iOS, el tamaño total de todos los archivos Realm abiertos no puede ser mayor que la cantidad de memoria que tu aplicación puede asignar en iOS. Esto varía según el dispositivo y depende de la fragmentación de la memoria del dispositivo. Si necesitas almacenar más datos de los permitidos, puedes dividirlos en varios archivos Realm: abrir un archivo Realm solo cuando lo necesites y cerrarlo cuando ya no lo necesites.
Para obtener más información, consulte Open Radar.17119975