Grupo de usuarios en firebase
Un User
se define como:
public class User { private String email; private String uid; private List<Group> groups; public User(String email, String uid) { this.email = email; this.uid = uid; this.groups = new ArrayList<>(); } public User() {} public User(String email, String uid, ArrayList<Group> groups) { this.email = email; this.uid = uid; this.groups = groups; } public String getEmail() { return email; } public String getUid() { return uid; } public List<Group> getGroups() { return groups; } public void addGroup(Group group) { if (this.groups == null) { this.groups = new ArrayList<>(); } this.groups.add(group); } }
Group
se define como:
- Fragmentos Tipos incompatibles
- Cómo alinear el texto de ListView a la derecha en Android?
- ¿Cómo comenzar a crear GUIs 3D (Game-) para aplicaciones Android (por ejemplo, con OpenGL)?
- El volumen de Android MediaPlayer es muy bajo (Volumen ya ajustado)
- ¿Cómo poner un Vector en un intento.extra?
public class Group { private List<User> memberList; private Group() { } public Group(List<User> users) { this.memberList = users; } public void addMember(User member) { this.memberList.add(member); } public List<User> getMemberList() { return memberList; } }
Al intentar guardar en firebase, esto da un error de tiempo de ejecución de:
java.lang.NoClassDefFoundError: com/fasterxml/jackson/databind/JsonMappingException at com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:611)
¿El problema tiene que ver con referencias circulares o Firebase no puede almacenar datos de esta manera?
- SQLite es sin tipo?
- FileNotFoundException con Universal Image Loader
- Envía una solicitud JSONArray POST con android volley library
- Cómo y comprensión del evento de arrastre y zoom con GLSurfaceView
- ¿Rollo horizontal en textview en androide?
- setText en fragmento de otra actividad no relacionada con fragmento
- Hacer una matriz para un efecto smuge / wobble (ver imágenes) en Android
- Cómo convertir un objeto Java en un JSONObject?
Sí creo que el problema es con referencia circular. Donde hay referencia circular, siempre hay problema con la serialización.
Como podemos ver, usted tiene una relación bidireccional entre Usuarios y Grupos. Según la documentación oficial se puede mejorar la estructura como:
{ "users": { "user1": { "name": "User 1", "groups": { "group1": true, "group2": true, "group3": true }, "user2": { "name": "User 2", "groups": { "group2": true, "group3": true } }, ... }, "groups": { "group1": { "name": "Group 1", "members": { "user1": true }, "group2": { "name": "Group 2", "members": { "user1": true, "user2": true }, "group3": { "name": "Group 3", "members": { "user1": true, "user2": true } }, ... } }
- Trigger android gestor de descargas Cordova
- No se puede crear F # Android Project – Visual Studio 2015 Comunidad Xamarin