I want to save/restore, in changing orientation, a List<Contact> instance for a ListView; Contact is the item to show in a custom array adapter. 
I'm saving the List underlying the adapter in onSaveInstanceState(Bundle savingInstanceState) activity method:
savingInstanceState.putSerializable(""+R.id.contactList, (Serializable)adapter.contacts());
Then in onRestoreInstanceState(Bundle savedInstanceState) I restore and set the adapter:
    List<Contact> contacts =  
        (List<Contact>)savedInstanceState.getSerializable(""+R.id.contactList);
    ContactListAdapter adapter = 
        new ContactListAdapter((Context)this, android.R.layout.simple_list_item_1, contacts);
    contactList.setAdapter(adapter);
    adapter.notifyDataSetChanged();
Is it the right way to do it?
Do you have a better/smarter solution?
Thank you
