Los datos no se guardan en Firebase desde la aplicación para Android

Tengo una aplicación existente que estoy intentando convertir para utilizar la base de datos de Firebase. He aquí un código que estoy usando cuando intento guardar un objeto:

... private FirebaseDatabase database; private DatabaseReference waypointRef; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); ... database = FirebaseDatabase.getInstance(); waypointRef = database.getReference(Utils.WAYPOINT_REFERENCE); waypointRef.addChildEventListener(new ChildEventListener() { @Override public void onChildAdded(DataSnapshot dataSnapshot, String previousChildName) { FBWaypoint wp = dataSnapshot.getValue(FBWaypoint.class); wp.setId(dataSnapshot.getKey()); Log.e(TAG, String.format("Child Added: %s, %s, %s, Prev: %s", wp.getName(), wp.getLatitude(), wp.getLongitude(), previousChildName)); } @Override public void onChildChanged(DataSnapshot dataSnapshot, String previousChildName) { FBWaypoint wp = dataSnapshot.getValue(FBWaypoint.class); Log.e(TAG, String.format("Child Changed: %s, %s, %s, Prev: %s", wp.getName(), wp.getLatitude(), wp.getLongitude(), previousChildName)); } @Override public void onChildRemoved(DataSnapshot dataSnapshot) { FBWaypoint wp = dataSnapshot.getValue(FBWaypoint.class); wp.setId(dataSnapshot.getKey()); Log.e(TAG, String.format("Child Removed: %s, %s, %s, Prev: %s", wp.getName(), wp.getLatitude(), wp.getLongitude())); } @Override public void onChildMoved(DataSnapshot dataSnapshot, String previousChildName) { FBWaypoint wp = dataSnapshot.getValue(FBWaypoint.class); Log.e(TAG, String.format("Child Moved: %s, %s, %s, Prev: %s", wp.getName(), wp.getLatitude(), wp.getLongitude(), previousChildName)); } @Override public void onCancelled(DatabaseError databaseError) { Log.e(TAG, "Failed to add Child Listener.", databaseError.toException()); } }); ... } 

Después de crear un objeto, lo guardo así:

 waypointRef.push().setValue(wp); 

Veo las devoluciones de llamada disparando en mis registros en este punto (junto con los valores de los IDs generados por firebase:

 Child Added: Hrbrbe, 44.969846, -89.670527, Prev: null Child Added: Hdbece, 44.956019, -89.666436, Prev: -KInIzqk6m96lwVWF6Pc Child Added: Hebdbr R, 44.970372, -89.673188, Prev: -KInJ17sfsQ4v_fUrAW3 

Sin embargo, no veo nada en la consola firebase para estos registros. También cuando reinicio la aplicación, la devolución de llamada onChildAdded no se dispara.

También he creado otra aplicación, que sólo contiene el código anterior … y que funciona bien. Así que no estoy seguro si algo que estoy haciendo en mi aplicación existente está afectando firebase? Sin embargo, no estoy seguro de lo que podría ser, ya que también tomó todas mis dependencias y ponerlos en el proyecto simple también.

¿Alguna idea sobre lo que puedo comprobar a continuación?

UPDATE: He añadido el onComplete Listener como se recomienda. Nunca se llama. Si agrego un FirebaseDatabase.purgeOutstandingWrites () después del setValue (), entonces el onComplete se llama con el siguiente error:

 DatabaseError: The write was canceled by the user. 

Bueno, solo lo averigüé. Pensando que había una diferencia entre mis dos proyectos era un arenque rojo. La diferencia real fue entre los dos dispositivos que estaba desplegando los dos proyectos. El dispositivo de trabajo estaba en una conexión celular. El dispositivo que no funcionaba estaba en nuestra red wifi corporativa detrás de un proxy.

Tengo el proxy configurado correctamente en el dispositivo, y puedo acceder a sitios externos … sin embargo, parece que firebase no utiliza la fuente de configuración de proxy.

¡Sería genial si Firebase usara la configuración de proxy del dispositivo!

  • No mostrar la prueba Firebase ¿Los anuncios de Native Express, obteniendo sólo anuncios en directo, también cómo hacer que los anuncios expresos nativos encajen en el ancho?
  • Firebase agrega un nuevo hijo con el nombre especificado
  • Mi implementación de la indexación de aplicaciones no funciona
  • Android: la aplicación de indexación de aplicaciones de Firebase no se muestra en las sugerencias de autocompletar de google
  • onDataChange se llama dos veces en Android Firebase
  • Cómo hacer la vista de mensaje roscado con enviar y recibir mensajes en dos lados con la vista de reciclador
  • Error de registro de eventos de Firebase Analytics
  • ¿Puedo hacer que Firebase utilice un proceso de inicio de sesión de nombre de usuario?
  • Firebase onMessageReceived no llamado cuando la aplicación está inactiva
  • Cómo agregar texto personalizado en lugar de URL en mensaje Deeplink
  • FirebaseAuthInvalidCredentialsException al usar "Una cuenta por dirección de correo electrónico"
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.