Je souhaite utiliser Realm migration
pour conserver les données d'une seule table. Comme par exemple ici, je veux maintenir les données pour la table Profile User
et supprimer tout le reste de la table.Conserver la migration de données de domaine pour une table spécifique uniquement
Voici ce que j'ai fait jusqu'à présent. Mais tout dans la base de données est supprimé.
initRealm()
est appelé à partir onCreate()
private void initRealm() {
Realm.init(this);
RealmConfiguration configuration = new RealmConfiguration.Builder()
.schemaVersion(3)
.name("sipradi")
.migration(new RealmMigrationClass())
.deleteRealmIfMigrationNeeded()
.build();
Realm.setDefaultConfiguration(configuration);
}
La classe de configuration
private class RealmMigrationClass implements RealmMigration {
@Override
public void migrate(DynamicRealm realm, long oldVersion, long newVersion) {
RealmSchema schema = realm.getSchema();
if (oldVersion == 2) {
RealmObjectSchema profileUserSchema = schema.get("ProfileUser");
profileUserSchema.addField("test", String.class);
oldVersion++;
}
}
}
Si vous souhaitez migrer, vous avez probablement ne devrait pas spécifier '.deleteRealmIfMigrationNeeded()': P – EpicPandaForce
Oui frère je sais mais comment pourrais-je résoudre ce scénario. – viper
supprimer '.deleteIfMigrationNeeded()'? – EpicPandaForce