[RK3588 Android12]设置屏幕方向、分辨率和密度

这篇具有很好参考价值的文章主要介绍了[RK3588 Android12]设置屏幕方向、分辨率和密度。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.设置屏幕方向为横屏

修改device/rockchip/common/BoardConfig.mk
SF_PRIMARY_DISPLAY_ORIENTATIO参数值

diff --git a/device/rockchip/common/BoardConfig.mk b/device/rockchip/common/BoardConfig.mk
index b930d2b1bb..eafa6b95f3 100755
--- a/device/rockchip/common/BoardConfig.mk
+++ b/device/rockchip/common/BoardConfig.mk
@@ -162,7 +162,7 @@ DEVICE_HAVE_LIBRKVPU ?= true
 # For Recovery Rotation
 TARGET_RECOVERY_DEFAULT_ROTATION ?= ROTATION_NONE
 # For Surface Flinger Rotation
-SF_PRIMARY_DISPLAY_ORIENTATION ?= 0
+SF_PRIMARY_DISPLAY_ORIENTATION :=270

2.设置屏幕分辨率

在控制台输入
wm size 1920x1080

修改device/rockchip/rk3588/rk3588_s/rk3588_s.mk
增加PRODUCT_PROPERTY_OVERRIDES += ro.config.size_override参数值

diff --git a/device/rockchip/rk3588/rk3588_s/rk3588_s.mk b/device/rockchip/rk3588/rk3588_s/rk3588_s.mk
index 27aba9b716..c2cdea4414 100644
--- a/device/rockchip/rk3588/rk3588_s/rk3588_s.mk
+++ b/device/rockchip/rk3588/rk3588_s/rk3588_s.mk
@@ -38,7 +38,8 @@ PRODUCT_AAPT_PREF_CONFIG := mdpi
 #
 ## add Rockchip properties
 #
-PRODUCT_PROPERTY_OVERRIDES += ro.sf.lcd_density=320
+PRODUCT_PROPERTY_OVERRIDES += ro.config.size_override=1920,1080
+PRODUCT_PROPERTY_OVERRIDES += ro.sf.lcd_density=240
 PRODUCT_PROPERTY_OVERRIDES += ro.wifi.sleep.power.down=true
 PRODUCT_PROPERTY_OVERRIDES += persist.wifi.sleep.delay.ms=0

3.设置屏幕密度

在控制台输入
wm density 240

修改device/rockchip/rk3588/rk3588_s/rk3588_s.mk
修改PRODUCT_PROPERTY_OVERRIDES += ro.sf.lcd_density参数值

4.问题

屏幕密度值由320改为240后,底下导航栏会变成显示一个任务栏,现象如下图:
[RK3588 Android12]设置屏幕方向、分辨率和密度,RK3588 Android12定制开发,git,json,github,android
首先屏蔽底下任务栏显示,修改packages/apps/Launcher3/src/com/android/launcher3/config/FeatureFlags.java中的ENABLE_TASKBAR的初始值为false。

diff --git a/packages/apps/Launcher3/src/com/android/launcher3/config/FeatureFlags.java b/packages/apps/Launcher3/src/com/android/launcher3/config/FeatureFlags.java
index 2d31aa4687..15eadff831 100644
--- a/packages/apps/Launcher3/src/com/android/launcher3/config/FeatureFlags.java
+++ b/packages/apps/Launcher3/src/com/android/launcher3/config/FeatureFlags.java
@@ -191,7 +191,7 @@ public final class FeatureFlags {
             + "predictions to be updated while they are visible to the user.");
 
     public static final BooleanFlag ENABLE_TASKBAR = getDebugFlag(
-            "ENABLE_TASKBAR", true, "Allows a system Taskbar to be shown on larger devices.");
+            "ENABLE_TASKBAR", false, "Allows a system Taskbar to be shown on larger devices."); 

此时导航栏也不再显示,原因是frameworks\base\packages\SystemUI\src\com\android\systemui\navigationbar\NavigationBarController.java中的函数initializeTaskbarIfNecessary判断设备为平板以后,会调用removeNavigationBar(mContext.getDisplayId());移除导航栏显示。

    /** @return {@code true} if taskbar is enabled, false otherwise */
    private boolean initializeTaskbarIfNecessary() {
        if (mIsTablet) {
            // Remove navigation bar when taskbar is showing
            removeNavigationBar(mContext.getDisplayId());
            mTaskbarDelegate.init(mContext.getDisplayId());
        } else {
            mTaskbarDelegate.destroy();
        }
        return mIsTablet;
    }

frameworks\base\packages\SystemUI\shared\src\com\android\systemui\shared\recents\utilities\Utilities.java中的public static boolean isTablet(Context context)函数,当屏幕的(最小边长度*160/dpi值)< 600,就会判断为设备是平板设备,将其返回值改为false就可以显示导航栏了。文章来源地址https://www.toymoban.com/news/detail-609717.html

diff --git a/frameworks/base/packages/SystemUI/shared/src/com/android/systemui/shared/recents/utilities/Utilities.java b/frameworks/base/packages/SystemUI/shared/src/com/android/systemui/shared/recents/utilities/Utilities.java
index 8d98a7540a..665098941f 100644
--- a/frameworks/base/packages/SystemUI/shared/src/com/android/systemui/shared/recents/utilities/Utilities.java
+++ b/frameworks/base/packages/SystemUI/shared/src/com/android/systemui/shared/recents/utilities/Utilities.java
@@ -127,7 +127,7 @@ public class Utilities {
 
         float smallestWidth = dpiFromPx(Math.min(bounds.width(), bounds.height()),
                 context.getResources().getConfiguration().densityDpi);
-        return smallestWidth >= TABLET_MIN_DPS;
+        return false;
     }

到了这里,关于[RK3588 Android12]设置屏幕方向、分辨率和密度的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Arch Linux高分辨率屏幕设置分辨率及dpi缩放

    由于笔记本原生屏幕分辨率太渣,于是购入一块2440x1400、14英寸副屏。窗口管理器为dwm,使用 startx 命令进入环境 注 :此文不会改变tty的设置,仅设置xorg下某用户的个人设置 关闭笔记本屏幕,只使用副屏 副屏分辨率设置为最高,且屏幕缩放设置为合适大小 高分辨率小屏幕导致

    2024年02月05日
    浏览(49)
  • RK3588 Android 12 北斗模块调试

    北斗模块用的MTK RS1612M3 , http://www.sragps.com/web/down.html,可以查看相关资料,用串口和系统通讯 Android12中主要包括串口设备树修改,GPS2.0加载,gps.default.so编译和上层应用测试,以下主要记录测试中碰到的难点 板子上用的串口8,因此打开uart8的设备树配置 uart8 { status = “okay”;

    2024年02月15日
    浏览(27)
  • Qt音视频开发43-采集屏幕桌面并推流(支持分辨率/矩形区域/帧率等设置/实时性极高)

    采集电脑屏幕桌面并推流一般是用来做共享桌面、远程协助、投屏之类的应用,最简单入门的做法可能会采用开个定时器或者线程抓图,将整个屏幕截图下来,然后将图片传出去,这种方式很简单但是性能要低不少,一般采用ffmpeg来做桌面推流的居多,毕竟如果不采用代码直

    2024年02月03日
    浏览(32)
  • RK3588平台开发系列讲解(安卓篇)Android12 获取 root 权限

    沉淀、分享、成长,让自己和他人都能有所收获!😄 📢获取 Android 设备的 root 权限是指取得超级用户( root 用户)的权限,使得用户可以对系统进行更广泛的修改和操作。但需要注意,获取 root 权限可能会导致安全风险,包括系统不稳定、数据丢失或设备损坏,因此应该谨

    2024年02月03日
    浏览(50)
  • 屏幕分辨率:PC / 手机 屏幕常见分辨率,前端如何适配分辨率

    一、常见的PC屏幕分辨率 序号 水平像素点数和垂直像素点数 也被称为 常见显示器 1 1366 × 768 720p 或 HD Ready 常见于笔记本电脑和低端桌面显示器 2 1920 × 1080 1080p 或 Full HD / 全高清 高端笔记本电脑和中高档台式机 3 2560 × 1440 2K 分辨率 常见于高端笔记本电脑和高端台式机 4 38

    2024年02月03日
    浏览(55)
  • Android RK3588-12 hdmi-in Camera方式最大支持3个

      hdmi-in Camera最大支持3个     modified:   hardware/interfaces/camera/device/3.4/default/ExternalCameraDevice.cpp     modified:   hardware/interfaces/camera/device/3.4/default/ExternalCameraDeviceSession.cpp     modified:   hardware/interfaces/camera/device/3.4/default/include/ext_device_v3_4_impl/ExternalCameraDeviceSession.h     modified:

    2024年02月08日
    浏览(36)
  • 【Unity3D】Android 打包 ② ( Android 编译选项 | Android 工程设置 | 配置基本信息 | 配置不同分辨率图标 | 配置启动动画 | 其它设置 )

    在上一篇博客 【Unity3D】Android 打包 ① ( Android 编译选项 | 安装 Android Build Support 模块 ) 中 讲解了 Android 打包的最基本配置 , 安装 Android Build Support 模块 ; 本篇博客继续讲解后续工作 ; 在 Unity 编辑器中选择 \\\" 菜单栏 | File | Build Settings \\\" 选项 , 点击 Build Settings 对话框的左下角的

    2023年04月19日
    浏览(34)
  • Flutter如何获取屏幕的分辨率和实际画布的分辨率

    在Flutter中,你可以使用MediaQuery来获取屏幕的分辨率和实际画布的分辨率。 要获取屏幕的分辨率,你可以使用MediaQuery.of(context).size属性,它返回一个Size对象,其中包含屏幕的宽度和高度。下面是一个获取屏幕分辨率的例子: 要获取实际画布的分辨率,你可以使用MediaQuery.of

    2024年02月09日
    浏览(37)
  • 显示器尺寸 和 屏幕分辨率 和 有源信号分辨率 关系

    1、 显示器尺寸尺寸:常用显示器对角线长度表示 。比如,23.8寸显示器指的是显示器的液晶屏对角线长度是23.8英寸。 只靠英寸并不能决定显示屏长宽,通常,我们还要知道其长宽比,比如16:9。通过长宽比例,以及斜边长度就可算得当前屏幕的尺寸。一块显示屏显示屏幕的

    2024年02月09日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包