【问题标题】:Android Firebase - Mysterious object keysAndroid Firebase - 神秘的对象键
【发布时间】:2018-06-24 22:49:58
【问题描述】:

我尝试将一个由 RealmObject 扩展的对象推送到我的 Firebase 数据库。然后这些键值对突然出现:“loaded”、“managed”和“valid”。

用户对象

将用户对象推送到 Firebase

Firebase 子数据库示例

build.gradle(模块:app)

apply plugin: 'com.android.application'
apply plugin: 'realm-android'

android {
    compileSdkVersion 26
    defaultConfig {
        applicationId "sample.project"
        minSdkVersion 16
        targetSdkVersion 26
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    realm {
        syncEnabled = true
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.android.support:appcompat-v7:26.1.0'
    implementation 'com.android.support:support-annotations:27.1.1'
    implementation 'com.android.support.constraint:constraint-layout:1.1.2'
    implementation 'com.android.support:design:26.1.0'
    implementation 'com.google.firebase:firebase-auth:11.0.4'
    implementation 'com.google.firebase:firebase-database:11.0.4'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'

    implementation 'com.android.support:cardview-v7:26.1.0'
    implementation 'com.android.support:recyclerview-v7:26.1.0'
    implementation 'de.hdodenhof:circleimageview:2.2.0'
    implementation 'io.reactivex.rxjava2:rxjava:2.1.15'

    implementation 'com.jakewharton:butterknife:8.8.1'
    annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'
}

apply plugin: 'com.google.gms.google-services'

我的问题是,这些键值对是从哪里来的?

仅供参考: 我使用以下依赖来解决我在将 RealmObjects 推送到 Firebase 时遇到的问题。

 实现 'io.reactivex.rxjava2:rxjava:2.1.15' 

参考此帖:Crash combining Firebase and Realm - Failed resolution of: Lio/reactivex/Observable;

【问题讨论】:

    标签: android firebase realm


    【解决方案1】:

    我的问题是,这些键值对是从哪里来的?

    当然来自extends RealmObject

    boolean isLoaded()

    检查查询是否用于查找此 RealmObject 已完成。

    boolean isManaged()

    检查此对象是否由 Realm 管理。

    boolean isValid()

    检查 RealmObject 是否仍然可以使用 即,RealmObject 没有被删除,Realm 也没有被删除 关闭。

    但是,Realm 提供了使用 @RealmClass public class MyClass implements RealmModel 代替 extends RealmObject 的方法,专门用于此类情况。

    【讨论】:

    • 刚开始使用 Realm + Firebase。谢谢,它有效!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-02-29
    • 1970-01-01
    • 2011-02-24
    • 1970-01-01
    • 2013-02-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多