Android13.0 修改屏幕显示方向

Android13默认显示方向是0, 大屏幕产品是固定方向放置的,由于接口走向差异有些屏幕按照0度方向显示是倒的,需要旋转180 可以修改这些默认显示方向

java 复制代码
diff --git a/services/core/java/com/android/server/wm/DisplayRotation.java b/services/core/java/com/android/server/wm/DisplayRotation.java
index c8137925923f..4f5f2323c761 100644
--- a/services/core/java/com/android/server/wm/DisplayRotation.java
+++ b/services/core/java/com/android/server/wm/DisplayRotation.java
@@ -194,7 +194,7 @@ public class DisplayRotation {
     private int mUserRotationMode = WindowManagerPolicy.USER_ROTATION_FREE;
 
     @Surface.Rotation
-    private int mUserRotation = Surface.ROTATION_0;
+    private int mUserRotation = Surface.ROTATION_180;
     private int mBuiltInUserRotation = SystemProperties.getInt("persist.sys.builtinrotation", -1);
 
     private static final int CAMERA_ROTATION_DISABLED = 0;
@@ -282,7 +282,7 @@ public class DisplayRotation {
     @Surface.Rotation
     private int readDefaultDisplayRotation(DisplayAddress displayAddress) {
         if (!(displayAddress instanceof DisplayAddress.Physical)) {
-            return Surface.ROTATION_0;
+            return Surface.ROTATION_180;
         }
         final DisplayAddress.Physical physicalAddress = (DisplayAddress.Physical) displayAddress;
         String syspropValue = SystemProperties.get(
@@ -295,7 +295,7 @@ public class DisplayRotation {
         } else if (syspropValue.equals("ORIENTATION_270")) {
             return Surface.ROTATION_270;
         }
-        return Surface.ROTATION_0;
+        return Surface.ROTATION_180;
     }
 
     private int readRotation(int resID) {
@@ -825,7 +825,7 @@ public class DisplayRotation {
         if (userRotation < Surface.ROTATION_0 || userRotation > Surface.ROTATION_270) {
             Slog.w(TAG, "Trying to restore an invalid user rotation " + userRotation
                     + " for " + mDisplayContent);
-            userRotation = Surface.ROTATION_0;
+            userRotation = Surface.ROTATION_180;
         }
         mUserRotationMode = userRotationMode;
         mUserRotation = userRotation;
@@ -1304,7 +1304,7 @@ public class DisplayRotation {
                 if (preferredRotation >= 0) {
                     return preferredRotation;
                 }
-                return Surface.ROTATION_0;
+                return Surface.ROTATION_180;
         }
     }
 
@@ -1491,7 +1491,7 @@ public class DisplayRotation {
 
             // Configure rotation lock.
             int userRotation = Settings.System.getIntForUser(resolver,
-                    Settings.System.USER_ROTATION, Surface.ROTATION_0,
+                    Settings.System.USER_ROTATION, Surface.ROTATION_180,
                     UserHandle.USER_CURRENT);
 
                        /*if (mBuiltInUserRotation > -1 && mBuiltInUserRotation < 4) {
相关推荐
你听得到111 小时前
排查 App 问题:别只盯着报错,把前后发生的事情串起来
android·前端·flutter
淡淡的香烟2 小时前
Android智能猫砂盆视频加载慢卡顿问题分析
android·服务器·音视频
Xxtaoaooo2 小时前
从故障诊断到寿命预测:用 DolphinDB 构建工业设备的预测性维护管线
android·故障诊断·dolphindb·工业设备·寿命预测
天空之城--2 小时前
近一周Android Flutter行业动态与实用参考
android·flutter
Everbrilliant892 小时前
Android FFmpeg 实战:从基础到播放器的完整技术解析
android·ffmpeg·ffmepg实战·音视频同步实现·ffmpegpractices·ffmpegpractice·opengl 视频渲染
alexhilton13 小时前
Android XR 开发入门完全指南
android·kotlin·android jetpack
2501_9159090618 小时前
全面解析iOS应用上架到App Store的完整流程与关键注意事项
android·macos·ios·小程序·uni-app·cocoa·iphone
淡淡的香烟20 小时前
AndroidAI使用心得
android
chjif21 小时前
Android 设备管控开发实战:无障碍如何准确识别当前前台 App?
android
chjif21 小时前
Android 设备管控开发实战:企业受控终端的 DNS 域名策略实现
android·华为·harmonyos