Эмулятор Android - поворот экрана

Я хотел бы проверить вращение телефона на эмуляторе, я везде вижу, что мы должны использовать Ctrl+F11, но он только вращается образ эмулятора и не запускает событие изменения конфигурации и не перерисовывает активность.

Вот что у меня получилось с Ctrl+F11 :

вращение эмулятора

Итак, что мне нужно использовать для имитации реального вращения?


person Stephane Mathis    schedule 10.07.2012    source источник
comment
Решение: stackoverflow.com/a/43093208/3621912   -  person Benny    schedule 11.12.2018


Ответы (5)


Как предложил Николя Джафель здесь можно попробовать добавить свойство "Поддержка клавиатуры -->да" в настройках эмулятора. Это помогло мне.

PS: это также позволит вашему эмулятору получать ввод с клавиатуры. Подробнее см. здесь

person Gramotei    schedule 24.07.2012
comment
Почему это помечено как ответ??? Вопрос в том, как получить истинное вращение, как на реальном телефоне, а не в том, как использовать клавиатуру. - person Joel; 26.10.2012
comment
Потому что это ошибка в ADT, и без этого трюка с HW Keyboard он не работает. Даже в ADT 21, который только что вышел. См. это: code.google.com/p/android/issues/detail. ?id=34237 - person Gramotei; 18.11.2012
comment
аналогично приведенному выше решению, вы можете сделать это, добавив hw.keyboard=yes в config.ini нужного эмулятора. - person Amir Uval; 11.01.2013
comment
У меня уже была включена поддержка клавиатуры, она только меняет экран эмулятора, но видео, изображения, родные приложения не получают правильного поворота. - person paul; 17.10.2014

Также вы можете сделать:

отключить акселерометр, управляющий вращением - просто сделайте это один раз

adb shell content insert --uri content://settings/system --bind name:s:accelerometer_rotation --bind value:i:0

повернуть пейзаж:

adb shell content insert --uri content://settings/system --bind name:s:user_rotation --bind value:i:1

повернуть портрет:

adb shell content insert --uri content://settings/system --bind name:s:user_rotation --bind value:i:0

перевернуть пейзаж вверх ногами:

adb shell content insert --uri content://settings/system  --bind name:s:user_rotation --bind value:i:3

перевернуть портрет вверх ногами:

adb shell content insert --uri content://settings/system  --bind name:s:user_rotation --bind value:i:2

Если у вас есть разрешение WRITE_SETTINGS, вы также можете писать через поставщика контента в коде Java.

person Tom    schedule 10.01.2013
comment
Сегодня я пробую команду с последним Android SDK. Команда вставки меняется на update. И полная команда теперь выглядит так: ./adb shell content update --uri content://settings/system --bind name:s:user_rotation --bind value:i:0. Ну, просто напомнить себе. - person Charles Wu; 05.07.2015

http://developer.android.com/tools/help/emulator.html это должно сделать это

Вы также поддерживали портретный и ландшафтный режимы?

person KPath001    schedule 10.07.2012
comment
вы настроили приложение для работы как в альбомной, так и в портретной ориентации? - person KPath001; 10.07.2012
comment
Я не указал это в манифесте, чтобы Android сам управлял ротацией, уничтожая и воссоздавая активность на реальных устройствах. Но на амуляторе не работает. - person Stephane Mathis; 11.07.2012
comment
так вы хотите, чтобы андроид воссоздавал разрушение и воссоздание? Извините, я не уверен в том, что вы спрашиваете - person KPath001; 11.07.2012
comment
Когда телефон поворачивается, текущая активность уничтожается и создается такая же активность. Это поведение по умолчанию. Но в эмуляторе я не знаю, как это сделать. Ctrl+F11 меняет только расположение эмулятора. Вы можете видеть это на изображении моего первого поста, номер калькулятора по умолчанию не повернут должным образом. - person Stephane Mathis; 11.07.2012
comment
Приложение поддерживает как альбомную, так и портретную ориентацию? - person KPath001; 11.07.2012
comment
Вращение работает на моем телефоне. Я не думаю, что мне нужно разрешить вращение в манифесте? - person Stephane Mathis; 12.07.2012
comment
Вы должны, просто чтобы обеспечить тот же эффект, я верю - person KPath001; 12.07.2012
comment
Это не кажется ответом. Не похоже, что он действительно вращается, как настоящий телефон. Он не разрушает/не создает, как сказал KPath001. - person Joel; 26.10.2012
comment
мне тоже не показалось, что он ответил. Я предполагаю, что решение на данный момент состоит в том, чтобы просто не зависеть от эмулятора для этого. или, если необходимо, проверьте, работает ли ваше приложение, выполнив только android:screenOrientation=landscape в манифесте. - person David T.; 11.01.2013

это просто не работает в эмуляторах 2.3, если это то, что вы используете

глянь сюда:

Android — эмулятор в ландшафтном режиме, экран не поворачивается

person David T.    schedule 11.01.2013

Я сделал то же самое, что и вы, и включил опцию «автоповорот экрана» в AVD. Работал как шарм.

person ACLima    schedule 08.09.2014