Do simple....
@Override
protected void onPause()
{
index = listView.getFirstVisiblePosition();
// store index using shared preferences
}
and..
@Override
public void onResume() {
super.onResume();
// get index from shared preferences
if(listView != null){
if(listView.getCount() > index)
listView.setSelectionFromTop(index, 0);
else
listView.setSelectionFromTop(0, 0);
}