Как исправить ориентацию экрана на книжную для всего моего приложения PhoneGap

Как настроить приложение Phonegap для фиксации только в портретном режиме, у меня есть возможность сделать это с помощью CSS или JavaScript, чтобы я мог получить согласованное поведение на разных платформах.

Я нашел этот полезный пост подход-n95-i900-iphone-with-javascript/" rel="noreferrer">обнаружение-отображения-изменения-ориентации-на-мобильных-устройствах-с-акселерометром-платформой-независимый-подход

Здесь объясняется, как определить ориентацию, но мне нужно ее настроить

Возможно ли это с помощью запросов CSS3 Media?


person Vinayak Bevinakatti    schedule 20.09.2011    source источник


Ответы (4)


Чтобы исправить ориентацию в портретном режиме, просто добавьте следующую строку в тег активности в файле AndroidManifest.xml:

 android:screenOrientation="portrait"

или это в классе активности:

setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
person Maulik J    schedule 20.09.2011
comment
Я не хочу делать это только для Android, есть ли какой-либо независимый от платформы подход - person Vinayak Bevinakatti; 20.09.2011
comment
тогда вы должны логически установить ориентацию в файле вашего класса. - person Maulik J; 20.09.2011
comment
Не могли бы вы подробнее рассказать о том, как это сделать? Пожалуйста, измените свой ответ соответствующим образом. Спасибо за ответ. - person Vinayak Bevinakatti; 20.09.2011
comment
Спасибо за ответ. У меня была такая же проблема, и я не мог найти ее в документах phonegap. Можете ли вы указать на какие-либо документы по этому поводу? - person hallodom; 12.04.2013
comment
@Maulik J Спасибо, мне было полезно! - person avolquez; 11.04.2014

На самом деле вы можете использовать config.xml, чтобы установить его для всех устройств, если вы используете PhoneGap Build...
Установите свойство: ориентация с возможными значениями по умолчанию, пейзаж или портрет
пример:

‹ предпочтение имя="ориентация" значение="пейзаж" />

*Обратите внимание, что по умолчанию включены как альбомная, так и портретная ориентация.

Источник:
https://build.phonegap.com/docs/config-xml

person Diego    schedule 16.05.2012
comment
Это правда, в документации говорится об этом, но у меня это никогда не работало с Android, только конфигурация манифеста Android. - person Hola Soy Edu Feliz Navidad; 03.03.2013
comment
Я думаю, что если вы используете только сборку Phonegap, которая тоже является отдельной? - person hallodom; 12.04.2013
comment
у меня тоже не работает ... это лучшее решение, потому что, если я изменю манифест, я потеряю его после повторной сборки приложения phonegap. - person pjnovas; 04.11.2013
comment
Использована версия Cordova 4.0.0.., я исправил/поместил эту строку в свой файл cofig.XML. Это работает для Android. Значение запуска приложения = портретный или ландшафтный режим. Метод командной строки работает - person gnganapath; 12.11.2014

используйте этот код в своем манифесте

<activity android:name=".DroidGap" 
android:label="@string/app_name"
android:screenOrientation="landscape" > 
person Neotrixs    schedule 20.06.2013

Мне пришлось обновить <path to phonegap app>/platform/android/AndroidManifest.xml на android:screenOrientation="portrait". Установите по умолчанию, альбомную или портретную.

Ниже приведен полный пример:

     <activity android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale" android:label="@string/app_name" android:name="HelloWorld" android:screenOrientation="portrait" android:theme="@android:style/Theme.Black.NoTitleBar">
        <intent-filter>

            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />

        </intent-filter>

    </activity>
person Fostah    schedule 18.04.2014