android9_box hdmi铺不满的问题

一、问题点

rk3566 android9 box版本,接的主屏是mipi,分辨率为800x1280,接入hdmi显示后,hdmi存在2边黑边,未能铺满的问题。如下图1、3区域:

前面有修改persist.vendor.framebuffer.main=1080x1920@60,这样子hdim可铺满,但是ui的适配这些均是参照800*1280进行的,会造成主屏mipi,显示有拉伸的现象。

所以需求是,在不影响主屏mipi的情况下,对外接显示hdmi进行铺满。

二、补丁

这里可以理解为hdmi为副屏显示,而RK的sdk中并未对hdmi做副显有处理,所以添加以下属性,作铺满处理。

复制代码
//frameworks/base
diff --git a/services/core/java/com/android/server/display/LogicalDisplay.java b/services/core/java/com/android/server/display/LogicalDisplay.java
index 5b7c5205ce3..e66652f2e13 100644
--- a/services/core/java/com/android/server/display/LogicalDisplay.java
+++ b/services/core/java/com/android/server/display/LogicalDisplay.java
@@ -30,6 +30,7 @@ import java.io.PrintWriter;
 import java.util.Arrays;
 import java.util.List;
 import java.util.Objects;
+import android.util.Slog;
 
 /**
  * Describes how a logical display is configured.
@@ -422,6 +423,15 @@ final class LogicalDisplay {
         mTempDisplayRect.right += mDisplayOffsetX;
         mTempDisplayRect.top += mDisplayOffsetY;
         mTempDisplayRect.bottom += mDisplayOffsetY;
+       if(device.getDisplayDeviceInfoLocked().type==Display.TYPE_HDMI) {
+            if(SystemProperties.getBoolean("persist.sys.rotation.efull",false)) {
+                mTempDisplayRect.top=0;
+                mTempDisplayRect.left=0;
+                mTempDisplayRect.right=physWidth;
+                mTempDisplayRect.bottom=physHeight;
+                Slog.d("dzy","physWidth="+physWidth+" physHeight="+physHeight);
+            }
+        }
         device.setProjectionLocked(t, orientation, mTempLayerStackRect, mTempDisplayRect);
     }

//device/rockchip/rk356x
diff --git a/rk356x_box_32/rk356x_box_32.mk b/rk356x_box_32/rk356x_box_32.mk
index af9dcb9..9e73cee 100755
--- a/rk356x_box_32/rk356x_box_32.mk
+++ b/rk356x_box_32/rk356x_box_32.mk
TARGET_RECOVERY_DEFAULT_ROTATION ?= ROTATION_RIGHT
+
+# support extend panel
+PRODUCT_PROPERTY_OVERRIDES += \
+       persist.sys.rotation.efull=true \
+
相关推荐
*小海豚*几秒前
在linux服务器上DNS正常,但是java应用调用第三方解析域名报错
java·linux·服务器
vistaup9 分钟前
OKHTTP 默认构建包含 android 4.4 的TLS 1.2 以及设备时间不对兼容
android·okhttp
常利兵15 分钟前
ButterKnife在Android 35 + Gradle 8.+环境下的适配困境与现代化迁移指南
android
撩得Android一次心动16 分钟前
Android LiveData 全面解析:使用Java构建响应式UI【源码篇】
android·java·android jetpack·livedata
组合缺一20 分钟前
Solon AI (Java) v3.9 正式发布:全能 Skill 爆发,Agent 协作更专业!仍然支持 java8!
java·人工智能·ai·llm·agent·solon·mcp
MSTcheng.24 分钟前
【C++】C++11新特性(二)
java·开发语言·c++·c++11
熊猫钓鱼>_>24 分钟前
移动端开发技术选型报告:三足鼎立时代的开发者指南(2026年2月)
android·人工智能·ios·app·鸿蒙·cpu·移动端
一 乐28 分钟前
校园二手交易|基于springboot + vue校园二手交易系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端
KIKIiiiiiiii28 分钟前
微信个人号API二次开发中的解决经验
java·人工智能·python·微信
80530单词突击赢29 分钟前
SpringBoot整合SpringMVC全解析
java·spring boot·后端