跳转至

屏幕旋转

本章节介绍如何修改 Android 系统的屏幕显示方向。

LOGO 的显示方向由图片本身决定,根据实际显示方向制作对应旋转角度的 LOGO 图片即可。

命令行配置

系统支持命令行配置屏幕方向。

临时配置

重启后失效,仅影响 Android 系统界面。

# 禁用自动旋转
adb shell settings put system accelerometer_rotation 0

# 设置固定显示方向
adb shell settings put system user_rotation 0    // 0°
adb shell settings put system user_rotation 1    // 90°
adb shell settings put system user_rotation 2    // 180°
adb shell settings put system user_rotation 3    // 270°

永久配置

通过系统属性设置,重启后依然生效(仅部分 RK 主板支持)。

adb shell setprop persist.surface_flinger.primary_display_orientation ORIENTATION_90
adb reboot

Note

支持的值:ORIENTATION_0(0°,默认)、ORIENTATION_90(顺时针 90°)、ORIENTATION_180(180°)、ORIENTATION_270(逆时针 90°)。

SDK 配置

系统支持修改源码配置屏幕方向。

系统界面

通过修改 SDK 配置文件实现开机默认方向,仅影响 Android 系统界面,不影响 Recovery 和 U-Boot。

型号 芯片 SDK 配置文件
K1 / K1B RK3568 rk-android13.0 device/rockchip/rk356x/BoardConfig.mk
K1 MINI RK3568 rk-android13.0 / rk-android14.0 device/rockchip/rk356x/BoardConfig.mk
K2B / K2C H618 h618-android12.0 device/softwinner/apollo/apollo_p2.mk
K3 RK3562 rk-android13.0 device/rockchip/rk3562/BoardConfig.mk
K3B RK3562 rk-android13.0 / rk-android14.0 device/rockchip/rk3562/BoardConfig.mk
K5 / K5C A133 a133-android10.0 android/device/softwinner/ceres-c3/ceres_c3.mk
K7 / K7C / K7S_K7F RK3576 rk3576-android14.0 device/rockchip/rk3576/BoardConfig.mk
K8 RK3588 rk-android13.0 device/rockchip/rk3588/BoardConfig.mk
K8D RK3588S rk-android13.0 / rk-android14.0 device/rockchip/rk3588/BoardConfig.mk
K9 T527 t527-android13.0 device/softwinner/saturn/t527-demo/device-common.mk
K10B A733 a733-android13.0 device/softwinner/jupiter/a733-demo-aiot/device-common.mk
K11C RK3566 rk-android13.0 / rk-android14.0 device/rockchip/rk356x/BoardConfig.mk
TX66 RK3566 rk-android13.0 device/rockchip/rk356x/BoardConfig.mk

Rockchip — 修改 BoardConfig.mk 中的 SF_PRIMARY_DISPLAY_ORIENTATION

--- a/device/rockchip/$(chip)/BoardConfig.mk
+++ b/device/rockchip/$(chip)/BoardConfig.mk
+
+    SF_PRIMARY_DISPLAY_ORIENTATION := 90    // 90°

Note

$(chip) 替换为对应芯片目录名,如 rk356x、rk3562、rk3576、rk3588。
支持的值:0(0°,默认)、90(顺时针 90°)、180(180°)、270(逆时针 90°)。

AllWinner — 修改对应配置文件中的 ro.surface_flinger.primary_display_orientation

--- a/.../device-common.mk
+++ b/.../device-common.mk
@@ -x,x +x,x @@ PRODUCT_PROPERTY_OVERRIDES += \
-    ro.surface_flinger.primary_display_orientation=ORIENTATION_0 \
+    ro.surface_flinger.primary_display_orientation=ORIENTATION_90 \

Note

H618(K2B/K2C)通过 ro.minui.default_rotation 属性配置屏幕方向,与其他平台不同。
支持的值:ORIENTATION_0(0°,默认)、ORIENTATION_90(顺时针 90°)、ORIENTATION_180(180°)、ORIENTATION_270(逆时针 90°)。

Recovery / 充电界面

Recovery 和充电界面共用 minui 显示框架,通过 ro.minui.default_rotation 属性配置,适用于所有平台:

--- a/.../device.mk
+++ b/.../device.mk
+
+PRODUCT_PROPERTY_OVERRIDES += ro.minui.default_rotation=ROTATION_RIGHT

Note

支持的值:ROTATION_NONE(不旋转,默认)、ROTATION_RIGHT(顺时针 90°)、ROTATION_DOWN(180°)、ROTATION_LEFT(逆时针 90°)。