Android Firebase - Таинственные ключи объектов - PullRequest
0 голосов
/ 24 июня 2018

Я пытался вставить объект, расширенный RealmObject, в мою базу данных Firebase И тогда эти пары ключ-значение появились из ниоткуда: «загружен», «управляем» и «действителен».

Объект пользователя

enter image description here

Перемещение объекта пользователя в Firebase

enter image description here

Образец базы данных Firebase child

Sample Firebase Database child

build.gradle (Модуль: приложение)

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'

У меня вопрос: откуда взялись эти пары ключ-значение?

FYI: Я использовал следующую зависимость, чтобы исправить проблему, с которой я столкнулся при перемещении RealmObjects в Firebase.

 implementation 'io.reactivex.rxjava2:rxjava:2.1.15' 

Ссылаясь на этот пост: Сбой при объединении Firebase и Realm - Неудачное разрешение: Lio / реагирующий / Наблюдаемый;

1 Ответ

0 голосов
/ 24 июня 2018

Мой вопрос: откуда взялись эти пары ключ-значение?

С extends RealmObject, конечно:

логическое значение isLoaded ()

Проверяет, завершен ли запрос, используемый для обнаружения этого RealmObject.

boolean isManaged ()

Проверяет, управляется ли этот объект Realm.

booleanisValid ()

Проверяет, является ли RealmObject допустимым для использования, т. е. RealmObject не был удален или область не закрыта.

Область, однако, предоставляет способ использования@RealmClass public class MyClass implements RealmModel вместо extends RealmObject специально для подобных случаев.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...