重要细节
我添加了此处列出的虚拟类 https://realm.io/docs/java/latest/#jackson-databind
一切都在Lollipop上运行良好但是一旦我为4.1 Jelly Bean创建了一个Genymotion模拟器并尝试推送应用程序,我就会得到下面列出的错误,看起来它正在尝试解析rxjava Observable中定义的OnSubscribe接口我是个傻瓜。
我没有在下面的堆栈中使用Proguard,但在设置之后我得到了同样的结果。
这是预期的,应该被忽略吗?我还有一两条其他警告信息,我也想跟踪它。
03-03 16:55:58.510 2017-2017 / com.armssoftware.android I / dalvikvm:
解析Lio / realm / rx / RealmObservableFactory $ 4失败;接口
7525'Lrx / Observable $ OnSubscribe;'03-03 16:55:58.510 2017-2017 / com.armssoftware.android W / dalvikvm: 类'Lio / realm / rx / RealmObservableFactory $ 4的链接;'
失败了03-03 16:55:58.510 2017-2017 / com.armssoftware.android E / dalvikvm: 找不到类'io.realm.rx.RealmObservableFactory $ 4', 参考方法
io.realm.rx.RealmObservableFactory.getObjectObservable03-03 16:55:58.510 2017-2017 / com.armssoftware.android W / dalvikvm: VFY:无法解析新实例6678
(Lio / realm / rx / RealmObservableFactory $ 4;)在 LIO /境界/ RX / RealmObservableFactory;03-03 16:55:58.510 2017-2017 / com.armssoftware.android D / dalvikvm: VFY:将操作码0x22替换为0x0000
03-03 16:55:58.510 2017-2017 / com.armssoftware.android I / dalvikvm: 解析Lio / realm / rx / RealmObservableFactory $ 3失败;接口 7525'Lrx / Observable $ OnSubscribe;'
03-03 16:55:58.510 2017-2017 / com.armssoftware.android W / dalvikvm: 类'Lio / realm / rx / RealmObservableFactory $ 3的链接;'
失败了03-03 16:55:58.510 2017-2017 / com.armssoftware.android E / dalvikvm: 找不到类'io.realm.rx.RealmObservableFactory $ 3', 参考方法
io.realm.rx.RealmObservableFactory.getRealmResultsObservable03-03 16:55:58.510 2017-2017 / com.armssoftware.android W / dalvikvm: VFY:无法解析新实例6675
(Lio / realm / rx / RealmObservableFactory $ 3;)在 LIO /境界/ RX / RealmObservableFactory;03-03 16:55:58.510 2017-2017 / com.armssoftware.android D / dalvikvm: VFY:将操作码0x22替换为0x0000
03-03 16:55:58.510 2017-2017 / com.armssoftware.android I / dalvikvm: 解析Lio / realm / rx / RealmObservableFactory $ 2失败;接口 7525'Lrx / Observable $ OnSubscribe;'
03-03 16:55:58.510 2017-2017 / com.armssoftware.android W / dalvikvm: 类'Lio / realm / rx / RealmObservableFactory $ 2的链接;'
失败了03-03 16:55:58.510 2017-2017 / com.armssoftware.android E / dalvikvm: 找不到类'io.realm.rx.RealmObservableFactory $ 2', 从方法io.realm.rx.RealmObservableFactory.from
引用03-03 16:55:58.510 2017-2017 / com.armssoftware.android W / dalvikvm: VFY:无法解析新实例6672 (Lio / realm / rx / RealmObservableFactory $ 2;)在 LIO /境界/ RX / RealmObservableFactory;
03-03 16:55:58.510 2017-2017 / com.armssoftware.android D / dalvikvm: VFY:将操作码0x22替换为0x0003
03-03 16:55:58.510 2017-2017 / com.armssoftware.android I / dalvikvm: 解析Lio / realm / rx / RealmObservableFactory $ 1失败;接口 7525'Lrx / Observable $ OnSubscribe;'
03-03 16:55:58.510 2017-2017 / com.armssoftware.android W / dalvikvm: 类'Lio / realm / rx / RealmObservableFactory $ 1的链接;'
失败了03-03 16:55:58.510 2017-2017 / com.armssoftware.android E / dalvikvm: 找不到类'io.realm.rx.RealmObservableFactory $ 1', 从方法io.realm.rx.RealmObservableFactory.from
引用03-03 16:55:58.510 2017-2017 / com.armssoftware.android W / dalvikvm: VFY:无法解析新实例6669 (Lio / realm / rx / RealmObservableFactory $ 1;)in LIO /境界/ RX / RealmObservableFactory;
03-03 16:55:58.510 2017-2017 / com.armssoftware.android D / dalvikvm: VFY:将操作码0x22替换为0x0003
答案 0 :(得分:0)
事实证明,这不是导致应用程序崩溃的原因,它只是在dalvik而不是Art上运行时记录的众多错误消息之一。
我遇到的问题是尝试按照此处的说明运行在4.2.2之前的版本上使用Google服务的应用。 https://developers.google.com/android/guides/setup
“带有AVD的Android模拟器,可运行基于Android 4.2.2或更高版本的Google API平台。”
所以我在部署时仍然会看到以下错误,但应用程序似乎运行正常。
03-03 15:51:20.063 16882-16921 / com.armssoftware.android I / dalvikvm: 解析Lio / realm / a / a $ 1失败;界面5529 'LRX /可观察$ OnSubscribe;' 03-03 15:51:20.063 16882-16921 / com.armssoftware.android W / dalvikvm:类的链接 'LIO /境界/ A / A $ 1;' 03-03 15:51:20.063失败 16882-16921 / com.armssoftware.android E / dalvikvm:找不到课程 'io.realm.a.a $ 1',参考方法io.realm.a.a.a 03-03 15:51:20.063 16882-16921 / com.armssoftware.android W / dalvikvm:VFY: 无法解析新实例4885(Lio / realm / a / a $ 1;)in LIO /境界/ A / A; 03-03 15:51:20.063 16882-16921 / com.armssoftware.android D / dalvikvm:VFY:将代码0x22替换为0x0000 03-03 15:51:20.063 16882-16921 / com.armssoftware.android I / dalvikvm:解析失败 LIO /境界/ A / A $ 1;接口5529'Lrx / Observable $ OnSubscribe;' 03-03 15:51:20.063 16882-16921 / com.armssoftware.android W / dalvikvm:Link of 'Lio / realm / a / a $ 1;' 03-03 15:51:20.063失败 16882-16921 / com.armssoftware.android D / dalvikvm:DexOpt:无法选择 在Lio / realm / a / a中直接调用0x8e17在0x02;。03-03 15:51:20.063 16882-16921 / com.armssoftware.android D / dalvikvm:尝试加载lib /data/app-lib/com.armssoftware.android-1/librealm-jni.so 0xa63d1538 03-03 15:51:20.063 16882-16921 / com.armssoftware.android D / dalvikvm: 添加了共享库 /data/app-lib/com.armssoftware.android-1/librealm-jni.so 0xa63d1538
答案 1 :(得分:0)
在Realm文档中,有关Jackson的特定section表示该解决方案正在您的项目中添加RxJAVA依赖项。 在我个人的情况下,它是有效的。