Подтвердить что ты не робот

Android - Каков правильный способ сохранения/восстановления адаптера ListView?

Я хочу сохранить/восстановить при изменении ориентации экземпляр List<Contact> для ListView; Contact - это элемент для отображения в пользовательском адаптере массива.

Я сохраняю Список, лежащий в основе адаптера, в методе onSaveInstanceState(Bundle savingInstanceState):

savingInstanceState.putSerializable(""+R.id.contactList, (Serializable)adapter.contacts());

Затем в onRestoreInstanceState(Bundle savedInstanceState) я восстанавливаю и устанавливаю адаптер:

    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();

Правильно ли это сделать?

У вас есть лучшее/более разумное решение?

Спасибо

4b9b3361