0.86.0
* BREAKING CHANGE: The Migration API has been replaced with a new API.
* BREAKING CHANGE: RealmResults.SORT_ORDER_ASCENDING and RealmResults.SORT_ORDER_DESCENDING constants have been replaced by Sort.ASCENDING and Sort.DESCENDING enums.
* BREAKING CHANGE: RealmQuery.CASE_SENSITIVE and RealmQuery.CASE_INSENSITIVE constants have been replaced by Case.SENSITIVE and Case.INSENSITIVE enums.
* BREAKING CHANGE: Realm.addChangeListener, RealmObject.addChangeListener and RealmResults.addChangeListener hold a strong reference to the listener, you should unregister the listener to avoid memory leaks.
* BREAKING CHANGE: Removed deprecated methods RealmQuery.minimum{Int,Float,Double}, RealmQuery.maximum{Int,Float,Double}, RealmQuery.sum{Int,Float,Double} and RealmQuery.average{Int,Float,Double}. Use RealmQuery.min(), RealmQuery.max(), RealmQuery.sum() and RealmQuery.average() instead.
* BREAKING CHANGE: Removed RealmConfiguration.getSchemaMediator() which is public by mistake. And RealmConfiguration.getRealmObjectClasses() is added as an alternative in order to obtain the set of model classes (#1797).
* BREAKING CHANGE: Realm.addChangeListener, RealmObject.addChangeListener and RealmResults.addChangeListener will throw an IllegalStateException when invoked on a non-Looper thread. This is to prevent registering listeners that will not be invoked.
* BREAKING CHANGE: trying to access a property on an unloaded RealmObject obtained asynchronously will throw an IllegalStateException
* Added new Dynamic API using DynamicRealm and DynamicRealmObject.
* Added Realm.getSchema() and DynamicRealm.getSchema().
* Realm.createOrUpdateObjectFromJson() now works correctly if the RealmObject class contains a primary key (#1777).
* Realm.compactRealm() doesn't throw an exception if the Realm file is opened. It just returns false instead.
* Updated Realm Core to 0.95.3
- Fixed a bug where RealmQuery.average(String) returned a wrong value for a nullable Long/Integer/Short/Byte field (#1803).
- Fixed a bug where RealmQuery.average(String) wrongly counted the null value for average calculation (#1854).
0.85.1
* Fixed a bug which could corrupt primary key information when updating from a Realm version <= 0.84.1 (#1775).
0.85.0
* BREAKING CHANGE: Removed RealmEncryptionNotSupportedException since the encryption implementation changed in Realm's underlying storage engine. Encryption is now supported on all devices.
* BREAKING CHANGE: Realm.executeTransaction() now directly throws any RuntimeException instead of wrapping it in a RealmException (#1682).
* BREAKING CHANGE: RealmQuery.isNull() and RealmQuery.isNotNull() now throw IllegalArgumentException instead of RealmError if the fieldname is a linked field and the last element is a link (#1693).
* Added Realm.isEmpty().
* Setters in managed object for RealmObject and RealmList now throw IllegalArgumentException if the value contains an invalid (standalone, removed, closed, from different Realm) object (#1749).
* Attempting to refresh a Realm while a transaction is in process will now throw an IllegalStateException (#1712).
* The Realm AAR now also contains the ProGuard configuration (#1767). (Thank you @skyisle)
* Updated Realm Core to 0.95
- Removed reliance on POSIX signals when using encryption.
0.84.2
* Fixed a bug making it impossible to convert a field to become required during a migration (#1695).
* Fixed a bug making it impossible to read Realms created using primary keys and created by iOS (#1703).
* Fixed some memory leaks when an Exception is thrown (#1730).
* Fixed a memory leak when using relationships (#1285).
* Fixed a bug causing cached column indices to be cleared too soon (#1732).
0.84.1
* Updated Realm Core to 0.94.4
- Fixed a bug that could cause a crash when running the same query multiple times.
* Updated ProGuard configuration. See documentation https://realm.io/docs/java/latest/#proguard for more details.
* Updated Kotlin example to use 1.0.0-beta.
* Fixed warnings reported by "lint -Xlint:all" (#1644).
* Fixed a bug where simultaneous opening and closing a Realm from different threads might result in a NullPointerException (#1646).
* Fixed a bug which made it possible to externally modify the encryption key in a RealmConfiguration (#1678).
0.84.0
* Added support for async queries and transactions.
* Added support for parsing JSON Dates with timezone information. (Thank you @LateralKevin)
* Added RealmQuery.isEmpty().
* Added Realm.isClosed() method.
* Added Realm.distinct() method.
* Added RealmQuery.isValid(), RealmResults.isValid() and RealmList.isValid(). Each method checks whether the instance is still valid to use or not(for example, the Realm has been closed or any parent object has been removed).
* Added Realm.isInTransaction() method.
* Updated Realm Core to version 0.94.3
- Fallback for mremap() now work correctly on BlackBerry devices.
* Following methods in managed RealmList now throw IllegalStateException instead of native crash when RealmList.isValid() returns false: add(int,RealmObject), add(RealmObject)
* Following methods in managed RealmList now throw IllegalStateException instead of ArrayIndexOutOfBoundsException when RealmList.isValid() returns false: set(int,RealmObject), move(int,int), remove(int), get(int)
* Following methods in managed RealmList now throw IllegalStateException instead of returning 0/null when RealmList.isValid() returns false: clear(), removeAll(Collection), remove(RealmObject), first(), last(), size(), where()
* RealmPrimaryKeyConstraintException is now thrown instead of RealmException if two objects with same primary key are inserted.
* IllegalStateException is now thrown when calling Realm's clear(), RealmResults's remove(), removeLast(), clear() or RealmObject's removeFromRealm() from an incorrect thread.
* Fixed a bug affecting RealmConfiguration.equals().
* Fixed a bug in RealmQuery.isNotNull() which produced wrong results for binary data.
* Fixed a bug in RealmQuery.isNull() and RealmQuery.isNotNull() which validated the query prematurely.
* Fixed a bug where closed Realms were trying to refresh themselves resulting in a NullPointerException.
* Fixed a bug that made it possible to migrate open Realms, which could cause undefined behavior when querying, reading or writing data.
* Fixed a bug causing column indices to be wrong for some edge cases. See #1611 for details.
0.83.1
* Updated Realm Core to version 0.94.1.
- Fixed a bug when using Realm.compactRealm() which could make it impossible to open the Realm file again.
- Fixed a bug, so isNull link queries now always return true if any part is null.
0.83
* BREAKING CHANGE: Database file format update. The Realm file created by this version cannot be used by previous versions of Realm.
* BREAKING CHANGE: Removed deprecated methods and constructors from the Realm class.
* BREAKING CHANGE: Introduced boxed types Boolean, Byte, Short, Integer, Long, Float and Double. Added null support. Introduced annotation @Required to indicate a field is not nullable. String, Date and byte[] became nullable by default which means a RealmMigrationNeededException will be thrown if an previous version of a Realm file is opened.
* Deprecated methods: RealmQuery.minimum{Int,Float,Double}, RealmQuery.maximum{Int,Float,Double}. Use RealmQuery.min() and RealmQuery.max() instead.
* Added support for x86_64.
* Fixed an issue where opening the same Realm file on two Looper threads could potentially lead to an IllegalStateException being thrown.
* Opening a Realm file from one thread will no longer be blocked by a transaction from another thread.
* Fixed an issue preventing the call of listeners on refresh().
* Range restrictions of Date fields have been removed. Date fields now accepts any value. Milliseconds are still removed.
0.82.2
* Fixed a bug which might cause failure when loading the native library.
* Fixed a bug which might trigger a timeo
- 1
- 2
前往页