Nota
SDK de Java en modo de mantenimiento
El SDK de Java se encuentra en modo de mantenimiento máximo y ya no recibe nuevos desarrollos ni correcciones de errores menores. Para desarrollar tu aplicación con nuevas funciones, usa el SDK de Kotlin. Puedes usar el SDK de Java con el SDK de Kotlin en el mismo proyecto.
Obtén más información sobre cómo Migrar del SDK de Java al SDK de Kotlin.
Nota
Las nuevas aplicaciones SDK de Java no pueden usar RealmAny
Nuevo Servicios de aplicaciones Las aplicaciones no podrán sincronizar modelos de datos con propiedades de tipo RealmAny.
Overview
Esta página detalla cómo instalar Realm usando el SDK de Java en su proyecto y comenzar.
Puedes usar varios SDK en tu proyecto. Dado que el SDK de Java ya no se está desarrollando, esto resulta útil si quieres usar nuevas funciones en tu aplicación. Por ejemplo, puedes añadir la función de ingesta de datos de Atlas Device Sync a tu aplicación usando el SDK de Kotlin y seguir usando Java para todo lo demás.
Requisitos previos
Estudio Android versión 1.5.1 o superior.
Kit de desarrollo de Java (JDK) 11 o superior.
Un dispositivo Android emulado o de hardware para realizar pruebas.
Nivel de API de Android 16 o superior (Android 4.1 y superior).
Instalación
Realm solo es compatible con el sistema de compilación Gradle. Sigue estos pasos para agregar el SDK de Java de Realm a tu proyecto.
Nota
ProGuard
Dado que Realm proporciona una configuración de ProGuard como parte de la biblioteca de Realm, no es necesario agregar ninguna regla específica de Realm a su configuración de ProGuard.
Configuración del proyecto Gradle
Para agregar Realm solo local a su aplicación, realice los siguientes cambios en el archivo de compilación de Gradle a nivel de proyecto, que generalmente se encuentra en <project>/build.gradle:
Tip
El SDK de Java aún no es compatible con la sintaxis del complemento Gradle. Afortunadamente, aún puedes agregar el SDK a proyectos que la utilicen.
Agrega un bloque
buildscriptque contenga un bloquerepositoriesy un bloquedependencies.Añade el repositorio
mavenCentral()al bloquebuildscript.repositories.Añade la dependencia
io.realm:realm-gradle-pluginal bloquebuildscript.dependencies.
buildscript { repositories { mavenCentral() } dependencies { classpath "io.realm:realm-gradle-plugin:10.18.0" } } plugins { id 'com.android.application' version '7.1.2' apply false id 'com.android.library' version '7.1.2' apply false id 'org.jetbrains.kotlin.android' version '1.6.10' apply false id "org.jetbrains.kotlin.kapt" version "1.6.20" apply false } task clean(type: Delete) { delete rootProject.buildDir }
Añade la dependencia
io.realm:realm-gradle-pluginal bloquebuildscript.dependencies.Añade el repositorio
mavenCentral()al bloqueallprojects.repositories.
buildscript { repositories { google() } dependencies { classpath "com.android.tools.build:gradle:3.5.1" classpath "io.realm:realm-gradle-plugin:10.18.0" } } allprojects { repositories { google() mavenCentral() } dependencies { } } task clean(type: Delete) { delete rootProject.buildDir }
Configuración de Gradle del módulo de aplicación
Luego, realice los siguientes cambios en el archivo de compilación de Gradle de nivel de aplicación, que normalmente se encuentra en <project>/app/build.gradle:
Aplique el complemento
kotlin-kaptsi su aplicación usa KotlinDebajo del bloque
plugins, aplique el complementorealm-android.
plugins { id 'com.android.application' id 'org.jetbrains.kotlin.android' id 'org.jetbrains.kotlin.kapt' } apply plugin: "realm-android" android { compileSdk 31 defaultConfig { applicationId "com.mongodb.example-realm-application" minSdk 28 targetSdk 31 versionCode 1 versionName "1.0" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } compileOptions { sourceCompatibility JavaVersion.VERSION_11 targetCompatibility JavaVersion.VERSION_11 } kotlinOptions { jvmTarget = '11' } } dependencies { implementation 'io.realm:realm-gradle-plugin:10.10.1' implementation 'androidx.core:core-ktx:1.7.0' implementation 'androidx.appcompat:appcompat:1.4.1' implementation 'com.google.android.material:material:1.5.0' implementation 'androidx.constraintlayout:constraintlayout:2.1.3' testImplementation 'junit:junit:4.13.2' androidTestImplementation 'androidx.test.ext:junit:1.1.3' androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0' }
Aplique el complemento
kotlin-kaptsi su aplicación usa KotlinAplicar el complemento
realm-android
apply plugin: 'com.android.application' apply plugin: 'kotlin-android' apply plugin: 'kotlin-kapt' apply plugin: 'realm-android' android { compileSdkVersion 31 buildToolsVersion "29.0.2" defaultConfig { applicationId "com.mongodb.example-realm-application" minSdkVersion 28 targetSdkVersion 31 } compileOptions { sourceCompatibility 1.11 targetCompatibility 1.11 } kotlinOptions { jvmTarget = '11' } } dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" implementation "androidx.appcompat:appcompat:1.1.0" implementation "androidx.core:core-ktx:1.2.0" }
Después de actualizar los archivos build.gradle, resuelva las dependencias haciendo clic en File > Sync Project with Gradle Files.
Habilitar la sincronización del dispositivo Atlas
Para usar Atlas Device Sync en su aplicación, cree un bloque realm en el módulo build.gradle de su aplicación. Dentro de este bloque, configure syncEnabled como true.
realm { syncEnabled = true }
Plataformas compatibles
El SDK Java de Realm le permite crear aplicaciones para las siguientes plataformas:
Android
Wear OS
Android Automotive OS
Televisión Android
Cosas de Android