Я сталкивался с этой проблемой. По моему требованию некоторые действия будут поддерживать обе ориентации, а останки будут оставаться в портретной ориентации. В этом случае я решил следующие шаги:
Случай 1: - Для блокировки ориентации
Шаг 1:
Добавьте следующую строку тег приложения в AndroidManifest.xml
инструменты: игнорировать = "LockedOrientationActivity"
<application
android:name=".activity.MyApplication"
tools:ignore="LockedOrientationActivity">
Шаг 2: Если вы хотите заблокировать ориентацию экрана в книжной или альбомной ориентации, добавьте следующую строку в тег активности
android: screenOrientation = "портрет" или "пейзаж"
Случай 2: - Предположим, вы хотите разрешить ориентацию в конкретной деятельности и иметь конкретный дизайн для ландшафта
Шаг 1:
Удалите значение Orientation в configchanges и удалите ориентацию экрана, если она существует из тега Activity, и мое личное предложение использовать (LifecycleObserver) в Activity, чтобы не потерять значения при изменении ориентации.
android: configChanges = "direction"
android: screenOrientation = "портрет" или "пейзаж"
Это способ, которым я решаю эту проблему, надеюсь, это поможет, спасибо и счастливого кодирования.