Leer datos de Firebase tarda mucho incluso con un pequeño conjunto de datos

Actualmente estoy usando Firebase como un backend de almacenamiento y quiero recuperar un conjunto de datos.

Uso de FirebaseUI-Android Estoy recibiendo los datos y adaptándolo como una lista.

Al principio pensé que el problema era con el conjunto de datos, pero después de reducir el conjunto de datos a sólo dos objetos json hechos de unas cuantas cadenas simples el problema persiste.

A continuación se muestra el código utilizado para recuperar los datos.

mDatabase = FirebaseDatabase.getInstance().getReference(); DatabaseReference myRef = mDatabase.child("events/"); Log.d("TST", "Before Firebase"); //ListAdapter eventListAdapter; upcomingEventsList.setAdapter(new FirebaseListAdapter<EventListModel>(getActivity(), EventListModel.class, android.R.layout.two_line_list_item, myRef) { @Override protected void populateView(View v, EventListModel model, int position) { Log.d("TST", "After Firebase"); } }); 

Los siguientes son los mensajes de ejecución dados con el tiempo para los mensajes relevantes.

 **01-10 23:18:25.113** D/TST: Before Firebase I/Adreno-EGL: <qeglDrvAPI_eglInitialize:410>: EGL 1.4 QUALCOMM build: AU_LINUX_ANDROID_LA.AF.1....020_msm8960_LA.AF.1.1_RB1__release_AU () OpenGL ES Shader Compiler Version: E031.25.03.06 Build Date: 05/22/15 Fri Local Branch: mybranch10237523 Remote Branch: quic/LA.AF.1.1_rb1.18 Local Patches: NONE Reconstruct Branch: AU_LINUX_ANDROID_LA.AF.1.1_RB1.05.00.02.006.020.....NOTHING I/OpenGLRenderer: Initialized EGL, version 1.4 D/OpenGLRenderer: Enabling debug mode 0 D/FA: Connected to remote service V/FA: Processing queued up service tasks: 4 I/Timeline: Timeline: Activity_idle id: android.os.BinderProxy@1f008d67 time:914885804 I/Timeline: Timeline: Activity_idle id: android.os.BinderProxy@1b48d3c0 time:914885804 **01-10 23:18:28.283** D/TST: After Firebase **01-10 23:18:28.283** D/TST: After Firebase 

¿Es esta pérdida de aprox. 3.5s normal o estoy haciendo algo mal?

¿Por qué se accede al método populateView dos veces no una vez (se muestra de acuerdo con 2 TST: después de los mensajes de Firebase )?

El conjunto de datos que se recupera en el ejemplo anterior es dos de los siguientes objetos de datos:

 {end_date=1476835200, title=Test, location=Test, content=Test, start_date=1476835200, featured_image=Test, categories=[festivals, music]} 

Editar para responder a la pregunta de Frank

La segunda conexión toma mucho menos, intentada con el mismo conjunto de datos y un nuevo conjunto de datos.

 01-11 01:28:37.248 30667-30667/madebyhangar.valletta2018 D/TST: Before Firebase (before retrieval starts) 01-11 01:28:41.245 30667-30667/madebyhangar.valletta2018 D/TST: After Firebase (first retrieval finished) 01-11 01:28:41.350 30667-30667/madebyhangar.valletta2018 D/TST: SECOND PROCESS: After Firebase (second retrieval finished) 

  • Error al agregar dependencias para firebase-ui-auth
  • Cómo obtener la clave obj de FirebaseListAdapter en el elemento Haga clic en. FirebaseUI
  • Cargando más elementos en el usuario desplazarse con FirebaseIndexRecyclerAdapter
  • Configuración de Proguard para la biblioteca Firebase-UI
  • Inicio de sesión de Google Android con Firebase - statusCode DEVELOPER_ERROR
  • ¿Cómo agregar más elementos a FirebaseRecyclerAdapter?
  • Cómo utilizar el adaptador de lista de Firebase
  • Android Firebase chat RecyclerView desplazamiento automático hacia abajo cuando se agrega un nuevo elemento
  • Cómo hacer la vista de mensaje roscado con enviar y recibir mensajes en dos lados con la vista de reciclador
  • ¿Sólo rellenar viewHolder con mensajes recuperados de la base de datos?
  • Clasificación de la posición de los elementos mediante FirebaseRecyclerAdapter
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.