Hello,
Since some version (I upgraded a bunch at once so I can't tell which one), RiotX crashes on startup. Here's what seems to be the relevant logcat parts (I'm not used to Android development so please tell me if I should provide other things):
[03-27 17:26:46.685 2426:2426 W/REALM_JNI]
Java exception has been occurred. Terminate JNI by throwing a c++ exception.
(/Users/cm/Realm/realm-java-release/realm/realm-library/src/main/cpp/io_realm_internal_OsRealmConfig.cpp:163)
[03-27 17:26:46.685 2426:2426 W/REALM_JNI]
There is a pending Java exception.
[03-27 17:26:46.692 2426:2426 D/AndroidRuntime]
Shutting down VM
[03-27 17:26:46.694 2426:2426 E/AndroidRuntime]
FATAL EXCEPTION: main
Process: im.vector.riotx, PID: 2426
java.lang.RuntimeException: Unable to create application im.vector.riotx.VectorApplication: java.io.InvalidClassException: im.vector.matrix.android.internal.crypto.model.MXDeviceInfo; local class incompatible: stream classdesc serialVersionUID = -9102964973591845542, local class serialVersionUID = 5399830165027485869
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5925)
at android.app.ActivityThread.access$1100(ActivityThread.java:200)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1656)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:193)
at android.app.ActivityThread.main(ActivityThread.java:6718)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
Caused by: java.io.InvalidClassException: im.vector.matrix.android.internal.crypto.model.MXDeviceInfo; local class incompatible: stream classdesc serialVersionUID = -9102964973591845542, local class serialVersionUID = 5399830165027485869
at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:625)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1625)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1520)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1776)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1353)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:373)
at im.vector.matrix.android.internal.crypto.store.db.HelperKt.deserializeFromRealm(Helper.kt:99)
at im.vector.matrix.android.internal.crypto.store.db.RealmCryptoStoreMigration$migrate$1.apply(RealmCryptoStoreMigration.kt:99)
at io.realm.MutableRealmObjectSchema.transform(MutableRealmObjectSchema.java:299)
at im.vector.matrix.android.internal.crypto.store.db.RealmCryptoStoreMigration.migrate(RealmCryptoStoreMigration.kt:96)
at io.realm.BaseRealm$6.onMigrationNeeded(BaseRealm.java:782)
at io.realm.internal.OsSharedRealm.runMigrationCallback(OsSharedRealm.java:533)
at io.realm.internal.OsSharedRealm.nativeGetSharedRealm(Native Method)
at io.realm.internal.OsSharedRealm.<init>(OsSharedRealm.java:171)
at io.realm.internal.OsSharedRealm.getInstance(OsSharedRealm.java:241)
at io.realm.BaseRealm.<init>(BaseRealm.java:136)
at io.realm.BaseRealm.<init>(BaseRealm.java:103)
at io.realm.Realm.<init>(Realm.java:163)
at io.realm.Realm.createInstance(Realm.java:499)
at io.realm.RealmCache.doCreateRealmOrGetFromCache(RealmCache.java:360)
at io.realm.RealmCache.createRealmOrGetFromCache(RealmCache.java:290)
at io.realm.Realm.getInstance(Realm.java:428)
at im.vector.matrix.android.internal.crypto.store.db.HelperKt.doRealmQueryAndCopy(Helper.kt:43)
at im.vector.matrix.android.internal.crypto.store.db.RealmCryptoStore.getAccount(RealmCryptoStore.kt:204)
at im.vector.matrix.android.internal.crypto.MXOlmDevice.<init>(MXOlmDevice.kt:89)
at im.vector.matrix.android.internal.crypto.MXOlmDevice_Factory.newInstance(MXOlmDevice_Factory.java:29)
at im.vector.matrix.android.internal.crypto.MXOlmDevice_Factory.get(MXOlmDevice_Factory.java:21)
at im.vector.matrix.android.internal.crypto.MXOlmDevice_Factory.get(MXOlmDevice_Factory.java:8)
at dagger.internal.DoubleCheck.get(DoubleCheck.java:47)
at im.vector.matrix.android.internal.crypto.DefaultCryptoService_Factory.get(DefaultCryptoService_Factory.java:164)
at im.vector.matrix.android.internal.crypto.DefaultCryptoService_Factory.get(DefaultCryptoService_Factory.java:32)
at dagger.internal.DoubleCheck.get(DoubleCheck.java:47)
at dagger.internal.DelegateFactory.get(DelegateFactory.java:36)
at im.vector.matrix.android.internal.session.room.DefaultEventRelationsAggregationTask_Factory.get(DefaultEventRelationsAggregationTask_Factory.java:26)
[03-27 17:26:46.694 2426:2426 E/AndroidRuntime]
at im.vector.matrix.android.internal.session.room.DefaultEventRelationsAggregationTask_Factory.get(DefaultEventRelationsAggregationTask_Factory.java:9)
at im.vector.matrix.android.internal.session.room.EventRelationsAggregationUpdater_Factory.get(EventRelationsAggregationUpdater_Factory.java:29)
at im.vector.matrix.android.internal.session.room.EventRelationsAggregationUpdater_Factory.get(EventRelationsAggregationUpdater_Factory.java:8)
at dagger.internal.SetFactory.get(SetFactory.java:126)
at dagger.internal.SetFactory.get(SetFactory.java:37)
at im.vector.matrix.android.internal.session.DefaultSession_Factory.get(DefaultSession_Factory.java:163)
at im.vector.matrix.android.internal.session.DefaultSession_Factory.get(DefaultSession_Factory.java:38)
at dagger.internal.DoubleCheck.get(DoubleCheck.java:47)
at im.vector.matrix.android.internal.session.DaggerSessionComponent.session(DaggerSessionComponent.java:1186)
at im.vector.matrix.android.internal.SessionManager.getOrCreateSession(SessionManager.kt:42)
at im.vector.matrix.android.internal.auth.DefaultAuthenticationService.getLastAuthenticatedSession(DefaultAuthenticationService.kt:77)
at im.vector.riotx.VectorApplication.onCreate(VectorApplication.kt:119)
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1154)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5920)
... 8 more
[03-27 17:26:46.705 3109:5034 W/ActivityManager]
Force finishing activity im.vector.riotx/.features.Alias
[03-27 17:26:46.728 2426:2426 I/Process]
Sending signal. PID: 2426 SIG: 9
[03-27 17:26:46.747 3109:5034 I/ActivityManager]
Process im.vector.riotx (pid 2426) has died: fore TOP
Running RiotX v0.18.1 (from F-Droid), on LineageOS v16.0 (Android 9).
Same issue, latest F-Droid, Android 9 LGv40
Yes, we did a bad database migration at somepoint.
You'll have to unsinstall and re-install. sry for inconvenience
Most helpful comment
Yes, we did a bad database migration at somepoint.
You'll have to unsinstall and re-install. sry for inconvenience