高通Android 12 右边导航栏改成底部显示

最近同事说需要修改右边导航栏到底部,问怎么搞?然后看下源码尝试下。

1、Android 12修改代码路径 frameworks/base/services/core/java/com/android/server/wm/DisplayPolicy.java

复制代码
a/frameworks/base/services/core/java/com/android/server/wm/DisplayPolicy.java b/frameworks/base/services/core/java/com/android/server/wm/DisplayPolicy.java
old mode 100644 (file)
new mode 100755 (executable)
index b4227f8..a11be51
--- a/frameworks/base/services/core/java/com/android/server/wm/DisplayPolicy.java
+++ b/frameworks/base/services/core/java/com/android/server/wm/DisplayPolicy.java
@@ -3270,13 +3270,13 @@ public class DisplayPolicy extends AbsDisplayPolicy{
 
     @NavigationBarPosition
     int navigationBarPosition(int displayWidth, int displayHeight, int displayRotation) {
-        if (navigationBarCanMove() && displayWidth > displayHeight) {
+        /*if (navigationBarCanMove() && displayWidth > displayHeight) {
             if (displayRotation == Surface.ROTATION_270) {
                Log.e("DisplayPolicy","ZM NAV_BAR_LEFT displayRotation ="+displayRotation);
                 return NAV_BAR_LEFT;
             } else if (displayRotation == Surface.ROTATION_90) {
                  return NAV_BAR_RIGHT;
                Log.e("DisplayPolicy","ZM NAV_BAR_RIGHT displayRotation ="+displayRotation);
             }
-        }
+        }*/
         return NAV_BAR_BOTTOM;
     }

2、修改之后效果显示如图所示 ,基本跟屏幕密度比density有关。

这里简单记录下,转载请注明出处高通Android 12 右边导航栏改成底部显示-CSDN博客,谢谢!

相关推荐
雨白2 小时前
Java 线程通信基础:interrupt、wait 和 notifyAll 详解
android·java
诺诺Okami6 小时前
Android Framework-Launcher-UI和组件
android
潘潘潘7 小时前
Android线程间通信机制Handler介绍
android
潘潘潘7 小时前
Android动态链接库So的加载
android
潘潘潘8 小时前
Android多线程机制简介
android
CYRUS_STUDIO10 小时前
利用 Linux 信号机制(SIGTRAP)实现 Android 下的反调试
android·安全·逆向
CYRUS_STUDIO10 小时前
Android 反调试攻防实战:多重检测手段解析与内核级绕过方案
android·操作系统·逆向
黄林晴14 小时前
如何判断手机是否是纯血鸿蒙系统
android
火柴就是我14 小时前
flutter 之真手势冲突处理
android·flutter
法的空间14 小时前
Flutter JsonToDart 支持 JsonSchema
android·flutter·ios