если вы хотите, чтобы действие перезапускалось (вызывая onCreate-> onResume) снова при изменении ориентации, вы не помещаете configChanges = "direction" в манифест. Вы можете проверить ориентацию экрана в методе onCreate своей деятельности, который, вероятно, вам нужен. если вы не хотите, чтобы действие перезапускалось само, а просто переключали ориентацию, тогда вы добавляете флаг configChanges в манифест для действия, и тогда будет вызываться только onConfigurationChanged (), где вы также можете получить ориентацию экрана. Второй способ хорош, когда у вас есть дорогие операции, выполняемые в методах onCreate (запуск потоков, запросы к базам данных и т. д.), и вы хотите повторно использовать эту информацию / данные для портретной и альбомной ориентации. даже если вы хотите, вы можете изменить макет в onConfigurationChanged () так же, как это делается при создании, но вам снова нужно найти ссылки на все представления, потому что в этом случае их идентификаторы не совпадают.
В любом случае, если вы хотите иметь ссылку на что-то, существовавшее до того, как изменилось указание, способ configChanges лучше подходит для обработки изменений, но он требует немного больше работы, если вы меняете макеты или что-то в этом роде.