1.1 - Serialização Java
Como a serialização do Java geralmente funciona sem problemas, mesmo programadores experientes podem não conhecer sua complexidade. Saiba+
O Android oferece suporte a serialização Java por meio do tipo Bundle. O tipo Bundle possui dois métodos, putSerializable e getSerializable, que, respectivamente, adicionam e recuperam um Serializable Java em um Bundle.
O código abaixo é um exemplo genérico de uso deste recurso:
}public static final StringAPP_STATE ="br.aiec" ;
private static class AppStateimplements Serializable {}// AQUI DEVE SER REPRESENTADO O ESTADO DO APLICATIVO
private AppStateapplicationState ;
/**
* Esse método é chamado quando a Activity é criada
*/@Override
protected void onCreate(BundlesavedInstanceState ) {}super .onCreate(savedInstanceState );
if (savedInstanceState ==null ){}applicationState =new AppState();else {}applicationState = (AppState).getSerializable( savedInstanceState APP_STATE );
//RESTANTE DO CODIGO.....
/**
* Esse método é chamado pelo Android quando a Activity é pausada.
*/@Override
protected void onSaveInstanceState(BundleoutState ) {}super .onSaveInstanceState(outState );
outState .putSerializable(APP_STATE ,applicationState );
Nesse exemplo genérico, o aplicativo mantém algumas informações globais de estado como um objeto serializable. Quando a Activity do exemplo que está sendo representada pela classe SampleSerialize, é pausada, abrindo espaço na memória para outra Activity, o framework do Android invoca o método de Callback onSaveInstanceState de SampleSerialize para salvar o estado do objeto no Bundle. Quando SampleSerialize é executada novamente, o método onCreate recupera de volta o estado gravado no Bundle.
Esse comportamento se deve ao ciclo de vida de uma Activity que será explicado em todos os seus detalhes na unidade seguinte.
Como uma descrição completa sobre esse assunto está além do escopo desta disciplina, aqueles que quiserem aprofundar o estudo podem estudar pelo livro Effective Java do autor Joshua Bloch. Neste livro, o autor dedica algo em torno de 10% do seu conteúdo a forma correta de como utilizar a serialização em Java.
X