Estoy tratando de crear un método auxiliar que iteraría a través de todos los objetos Bundle, de una manera generic.Cómo iterar a través de todos los objetos Bundle
Por "genérico" que quiero decir:
- no necesita saber los nombres (claves) de los objetos en el paquete se pasa como parámetro.
- No necesita cambiar si se agregó otro miembro (clave) al paquete en el futuro.
Hasta ahora, averiguar el siguiente esquema para lograrlo:
private void bundleToSharedPreferences(Bundle bundle) {
Set<String> keys = bundle.keySet();
for (String key : keys) {
Object o = bundle.get(key);
if (o.getClass().getName().contentEquals("int")) {
// save ints
}
else if (o.getClass().getName().contentEquals("boolean")) {
// save booleans
}
else if (o.getClass().getName().contentEquals("String")) {
// save Strings
}
else {
// etc.
}
}
}
hace esto enfoque tiene sentido en absoluto?
¿Hay una mejor manera de lograr esto?
No creo que este diseño tenga sentido.Sus preferencias y lo que viene en un paquete no necesariamente deben incluirse necesariamente en el paquete ya que tiene claves específicas que deben asignarse a la preferencia. Estos se identifican a través de claves, que debería haber codificado. – JoxTraex
Creo que tienes razón. Pero, ¿hay alguna forma ** sensata ** de guardar un paquete en almacenamiento persistente (local)? – ateiob
Intentando usar una base de datos SQLite. – JoxTraex