Realm – developer-friendly platform makes it easy to build reactive apps, realtime collaborative features, and offline-first experiences.
Realm Mobile Database is an alternative to SQLite and Core Data.
ProGuard rules for Realm
By default, shrinking is applied; all classes and methods are removed. In the obfuscation step, ProGuard renames classes and class members that are not entry points.
A ProGuard configuration is provided as part of the Realm library. You don’t need to add any specific rules to your ProGuard configuration.
# Realm
-dontnote io.realm.internal.SyncObjectServerFacade
-keep class io.realm.annotations.RealmModule
-keep @io.realm.annotations.RealmModule class *
-keep class io.realm.internal.Keep
-keep @io.realm.internal.Keep class * { *; }
-keep class io.realm.internal.KeepMember
-keep @io.realm.internal.KeepMember class * { @io.realm.internal.KeepMember *; }
-dontwarn javax.**
-dontwarn io.realm.**
-keep class io.realm.RealmCollection
-keep class io.realm.OrderedRealmCollection
-keepclasseswithmembernames class io.realm.** {
native ;
}
-dontnote rx.Observable
-dontnote android.security.KeyStore
-dontwarn okio.Okio
-dontwarn okio.DeflaterSink
-dontnote com.android.org.conscrypt.SSLParametersImpl
-dontnote org.apache.harmony.xnet.provider.jsse.SSLParametersImpl
-dontnote sun.security.ssl.SSLContextImpl
For more information about please see Realm website.