2016-10-18 1 views
1

ma question, je me fais cette erreur: com.google.firebase.database.DatabaseException: Firebase Database error: Invalid token in path, quand je mettre à jour un noeud qui D'UTILISATION à partir de ce code:base de données Firebase: jeton non valide dans le chemin

Map<String, Object> userUpdate = new HashMap<>(); 
     userUpdate.put("/" + Constants.Users + "/" + userEncEmail + "/profile_data/age", age); 
     userUpdate.put("/" + Constants.Users + "/" + userEncEmail + "/profile_data/email", userEmail); 
     userUpdate.put("/" + Constants.Users + "/" + userEncEmail + "/profile_data/gender", gender); 
     userUpdate.put("/" + Constants.Users + "/" + userEncEmail + "/profile_data/name", userName); 
     userUpdate.put("/" + Constants.Users + "/" + userEncEmail + "/profile_data/photo", ""); 
     userUpdate.put("/" + Constants.Users + "/" + userEncEmail + "/profile_data/video", ""); 

     userUpdate.put("/" + Constants.Users + "/" + userEncEmail + "/chat_data/osPlayerID", ""); 
     userUpdate.put("/" + Constants.Users + "/" + userEncEmail + "/chat_data/name", userName); 
     userUpdate.put("/" + Constants.Users + "/" + userEncEmail + "/chat_data/photo", ""); 
     userUpdate.put("/" + Constants.Users + "/" + userEncEmail + "/chat_data/video", ""); 

     userUpdate.put("/" + Constants.Users + "/" + userEncEmail + "/status", false);//Set false by default 

     FirebaseDatabase.getInstance().getReference().updateChildren(userUpdate).addOnCompleteListener(new OnCompleteListener<Void>() { 
      @Override 
      public void onComplete(@NonNull Task<Void> task) { 

Les règles de base de données Firebase à ce nœud spécifique sont: vrai pour écrire et lire.

Le Json attendu est:

{ 
    $UserEMail: { 
    chat_data: { 
     name: "", 
     osPlayerID: "", 
     photo: "", 
     video: "" 
    }, 
    profile_data: { 
     age: (int), 
     email: ""; 
     gender: (int), 
     name: "", 
     photo: "", 
     video: "" 
    }, 
    status: (boolean) 
    } 
} 
+0

lors des essais l'utilisateur est toujours connecté – Andrea

+0

Votre chemin hashMap() semble incorrect. Veuillez partager votre arborescence de base de données ou votre arbre JSON attendu. –

+0

J'ai mis à jour ma question – Andrea

Répondre

2

Le problème était que je tentais d'insérer un e-mail comme si [email protected] quand Firebase accepte des points comme Indifférent Fume partie d'une clé d'un nœud

+0

Alors, comment avez-vous le résoudre? – shalvah

+0

oui, j'utilisais un nom de noeud qui contenait un point dedans, je le remplaçais par une virgule – Andrea