Estoy escribiendo una aplicación para Android que es capaz de exportar el estado actual de un Activity
o Fragment
a un JSON-archivo, que tiene el siguiente formato común:Android/Java JSON común interfaz de importación
{
"data": {
"result": {
<content depends on specific class>
},
"input": {
<content depends on specific class>
}
},
"identifier": <identifier depends on specific class>,
"version": 1
}
Esto significa que Activities
/Fragments
que tienen la capacidad de exportar llenan los contenidos marcados implementando una interfaz que llamé "Exportable" y la función de exportación global llama a los métodos definidos en la interfaz. Esta es una solución avanzada que funciona bastante bien.
Hasta ahora todo bien. Ahora quiero hacer la dirección inversa. Deseo cargar un archivo y llamar al correspondiente Activity
/Fragment
dependiendo del contenido del identificador.
Al leer el contenido de la "entrada" y el "resultado" debe hacerse un método del Activity
/Fragment
.
Desafortunadamente, esto no es obvio para mí la forma de resolver este problema de una manera elegante. ¿Cuál es la mejor manera de hacerlo? La solución debe ser lo más abstracta posible para que pueda extenderse fácilmente.
¿De qué se sirve el uso de ['SharedPreferences'] (http://developer.android.com/guide/topics/data/data-storage.html#pref) para guardar y restaurar el estado de' Activity'? Esto también sobrevive a los reinicios de la aplicación/dispositivo. Si solo desea mantener un estado efímero (rotación del dispositivo, formación de fondo), puede usar el sistema integrado '' savedInstanceState' 'Bundle'] (http://developer.android.com/training/basics/activity- ciclo de vida/recreating.html). –