Изменение ориентации Android принудительно при использовании намерения ACTION_VIEW - PullRequest
1 голос
/ 27 марта 2012

У меня есть приложение в ландшафтном режиме.

Я поместил атрибут "android: screenOrientation =" landscape "" в файл манифеста.

Мое приложение имеет следующий код.

Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("tstore://someAppsId"));
activity.startActivity(intent);

В Корее обычно используется приложение T-store для android. URL-схема сделки приложения T-store "tstore: //".

Мой код только открывает приложение T-store.

К сожалению, приложение T-store поддерживает только портрет.

Есть проблема.

Непосредственно перед открытием активности t-store операционная система Android мгновенно меняет ориентацию своей деятельности на портретный режим (0,2 с?), А затем открывает активность t-store.

Этого не происходит Android Market App, который поддерживает ландшафтный режим.

Есть ли способ строго предотвратить изменение ориентации в этом случае?

Ответы [ 3 ]

0 голосов
/ 27 марта 2012

Просто установите ориентацию своей деятельности из кода, таким образом будет намного легче контролировать ориентацию в соответствии с вашими требованиями. Код для установки ориентации, для портретной ориентации

     setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT );

и для альбомной ориентации

     setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE );
0 голосов
/ 08 августа 2016

в вашей активности добавьте ниже код.

для портрета

@override
protected void onResume(){
 setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT );
}

для ландшафта

@override
protected void onResume(){
 setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE );
}
0 голосов
/ 27 марта 2012

Попробуйте добавить атрибут android:configChanges="orientation" в файл манифеста.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...