3 votos

¿Cómo cambiar la orientación natural por defecto de Android?

Tengo mi dispositivo ejecutando Android Jellybean 4.2.2 con Landscape como orientación por defecto/natural.

¿Cómo puedo cambiar la orientación por defecto/natural de la misma a vertical?

Esto es lo que he probado hasta ahora,

1) Añadido setprop ro.sf.hwrotation 90 a build.prop y no hizo nada.

2) cambiado rotación_del_usuario valor en /data/data/com.Android.providers.settings/databases/settings.db la orientación de la pantalla de inicio y del lanzador sigue siendo horizontal.

3) Modificar PhoneWindowManager.java de forma similar a la indicada en el enlace: cambiar el phonewindowmanager para cambiar la orientación natural

La tercera opción funciona. Pero sigue mostrando la animación de arranque en horizontal y una vez terminada la animación, la pantalla gira (con la animación de rotación) a vertical. ¿Cómo puedo evitar esta rotación y cambiar la orientación por defecto/natural antes de la animación de arranque?

¿Es algo relacionado con SurfaceFlinger? También me gustaría señalar este artículo en el sitio web de Android. pre rotación en hardware composer

1voto

lou Puntos 1

Método de trabajo Android 4.2.1.
La pestaña o el teléfono deben ser root .

1/
Dowloand en playstore : Navegador de root
Dowloand en playstore : Explorador de archivos ES

2/
Abrir Navegador de root y vaya a : sistema carpeta.
A continuación, mostrar el archivo : construir.prop y tocarlo mucho tiempo.

en el menú elija : Copiar y el archivo pasado en su tarjeta sd interna o externa.

3/
En el Navegador de Raíces abra construir.prop archivo copiado con Explorador de archivos ES
A continuación, modifique la entrada : ro.sf.hwrotation=0
Debe ser 90 para configurar el modo apaisado por defecto :

ro.sf.hwrotation=90

En el Explorador de Archivos ES guardar archivo build.prop.

4/
Abrir Navegador de root Ir a sistema carpeta.

Borrar (por menú) construir.prop archivo.
POR SEGURIDAD HAGA UNA COPIA DE SEGURIDAD DE ESTE ARCHIVO O SISTEMA ANTES DE .

Ve a tu tarjeta sd y copia construir.prop archivo modificado.
Pásalo en sistema carpeta.

Toque construir.prop mucho tiempo y se fijan Permisos a rw-r--r-- (0644) :
LEER -> Propietario -> comprobado
LECTURA -> Grupo -> comprobado
LEER -> Otros -> comprobado
WRITE -> Propietario -> comprobado
Y deja todas las demás entradas sin marcar y haz clic en OK.

5/
Rebote. Eso es todo.

0 votos

Gracias. Aunque es mucho tiempo después de la respuesta, la pregunta misma dice que esto se ha intentado en un nivel de código y explica el resultado y los problemas. Por favor, vuelva a comprobarlo.

1voto

sameer Puntos 1707

La animación de arranque no cambiará ya que la animación de arranque donde una serie de imágenes. En /system/media encontrará el bootanimation.zip si abres el zip encontrarás las imágenes reemplaza el zip con tu propia animación de arranque de imágenes de retrato. Hay un montón de tutoriales sobre cómo hacer su propia animación de arranque.

0 votos

Gracias. Ya he hecho ese trabajo alrededor. Como bootanimation una serie de imágenes, he utilizado mis propias imágenes de retrato y anular el bootanimation para que parezca, es pantalla de retrato. Pero el verdadero problema es que después del bootanimation gira de paisaje a retrato. No quiero que se muestre apaisado en absoluto. Lo necesito en formato vertical desde el momento o antes de que la animación de arranque salga.

0 votos

0 votos

Sí, lo hice. La segunda opción que he dado en la pregunta explica lo mismo.

1voto

Tom Puntos 3867

Hay una aplicación llamada "App Settings" para Xposed Framework. repo.xposed/appsettings

Con él puedes cambiar la orientación, los ppp, las notificaciones, etc. de cada app individual. Pero no la animación de arranque como explicó samnaction.

Como alternativa, encontré esto en stackoverflow: cambiar-orientación-del-dispositivo-Android-con-adb
Así que podrías hacer un script como este

#!/system/bin/sh
content insert --uri content://settings/system --bind name:s:accelerometer_rotation --bind value:i:0
content insert --uri content://settings/system --bind name:s:user_rotation --bind value:i:0

y ponerlo en /etc/init.d para que se ejecute en el arranque
(si estás en stock, tienes que modificar tu rom para tener init.d.)

edit:sólo funciona en Android 4.3+

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X