屏幕旋转¶
本章节介绍如何修改 Android 系统的屏幕显示方向。
LOGO 配置¶
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 主板支持)。
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°)。