Uso de matrices en firebase
Después de un tiempo, estableciendo una matriz int[][] Matrix = new int[4][4]
No puedo cargarlo a firebase mDatabase.child("room_1").setValue(Matrix);
Porque las matrices no son compatibles. La razón por la que uso int[][]
es ser capaz de agregar números enteros usando Matrix[2][3] += 1
¿Qué tipos de datos son compatibles con firebase y pueden manejar esos tipos de adición? Gracias.
No pude conseguir que funcione de la manera que quería con listas ni Long, por lo que he utilizado int matrix[][]
y actualizado el db con setValue(matrix[index][index2])
en una base por uno.
- SetVolumeControlStream no funciona cuando se muestra una ventana emergente
- Cómo cambiar la versión java utilizada por los subproyectos cordova
- Tener errores de emulador al intentar ejecutar actividad de mapa predeterminada en Android studio
- ¿Cómo obtener tablas columnas arraylist en Android?
- Excepción en el complemento de Android del complemento
Para obtener la base de datos en la matriz he utilizado dos bucles while anidados que comprueba cada valor y lo pone en la matriz La siguiente función obtiene el objeto
public void SyncWDB(Object dbValue) { ArrayList aList = (ArrayList) dbValue; //I hardcoded the matrix dimensions just for testing int e = 0; int i = 0; while (e < 5) { ArrayList temp = (ArrayList) aList.get(e); while (i < 4) { Long temp2 = Long.parseLong(String.valueOf(temp.get(i))); int temp3 = temp2.intValue(); // Matrix is a class variable Matrix[e][i] = temp3; i++; } i = 0; e++; } }
- Coloque un rectángulo alrededor de una cadena en un lienzo de Android
- NullPointerException al configurar la barra de herramientas
- ¿Cómo usar jarsigner para firmar un apk?
- Biblioteca de gráficos 2D para Android
- Error al generar el archivo final: el certificado de depuración expiró el
- El lienzo de Android no dibujó la ruta cuando el punto de la ruta de acceso no estaba visible
- ¿Cuáles son los 37 paquetes de Java API posiblemente gravados por la decisión de Oracle v de mayo de 2014?
- Cómo obtener el objeto Mat desde el byte en openCV android?
De la documentación del firebase .
Operaciones básicas de escritura
Para operaciones básicas de escritura, puede usar
setValue()
para guardar datos en una referencia especificada, reemplazando cualquier dato existente en esa ruta. Puede utilizar este método para:
Los tipos de paso que corresponden a los tipos JSON disponibles son los siguientes:
- Cuerda
- Largo
- Doble
- Booleano
- Mapa
- Lista
Pase un objeto Java personalizado, si la clase que lo define tiene un constructor predeterminado que no toma argumentos y tiene getters públicos para las propiedades que se van a asignar.
Le recomiendo encarecidamente que vaya con la segunda opción y, de nuevo, la documentación firebase le ayudará mucho en la comprensión de cómo hacerlo.
Si todavía desea ir con el "conjunto directamente", puede utilizar una lista de 2 dimensiones.
List<List<Integer>> listOfLists = new ArrayList<List<Integer>>();
- ViewStub debe tener un ViewGroup no nulo viewParent
- Android drawable: Tipo de recurso desconocido @ drawable-nodpi