Нужна ли миграция, чтобы изменить тип Int на Long?

В моем классе RealmObject есть поле дня рождения, которое является типом Int?. Мне нужно изменить тип этого поля на Long?. Не знаю, понадобится ли мне миграция.

Из документов области:

The integer types byte, short, int, and long are all mapped to long within Realm.

Я попытался установить версию приложения безdeleteRealmIfMigrationNeeded (это означает, что Realm попытается выполнить миграцию, если это необходимо) на эмуляторе, а затем изменил поле с Int? на Long?. Никаких сбоев или исключений. Кроме того, когда я вытащил свой файл области из эмулятора, тип поля остался прежним и все еще был Int?.

open class Profile : RealmObject() {

    @PrimaryKey
    var id = ""
    var email = ""
    var firstName = ""
    var lastName = ""
    var dateJoined = 0
    var gender: String? = null
    var birthday: Int? = null // I want to change this to Long?
}

Я ожидаю, что в этом сценарии мне не потребуются миграции. Но я не хочу выкладывать обновление, не получив реального ответа.

Вы настроили свой профиль, включая поле birthday, затем изменили его на Long? и попытались открыть приложение? Если он показывает правильную дату и вы можете просматривать / редактировать его без сбоев, то все должно быть в порядке. Между прочим, этот флаг, похоже, подразумевает, что объект будет Удалить, если требуется миграция, а не то, что он сам перенесет его.

TheWanderer 10.01.2019 02:11

Да, профиль был настроен с помощью предыдущей версии приложения (версия с Int?), а затем я изменил его на Long?, и никаких сбоев. Да, deleteRealmIfMigrationNeeded не будет выполнять миграцию, но у меня уже есть код миграции, поэтому моя теория заключается в том, что, если Realm нужно было запустить миграцию, он бы это сделал вместо удаления файла.

Ergin Doğan Yıldız 10.01.2019 02:17
3
2
272
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Подтверждено, что в этом случае миграция не требуется. Нужна ли миграция, чтобы изменить тип Int на Long?

Другие вопросы по теме