【问题标题】:Content displayed in a WebView on 4k screen seems to be very low resoultion在 4k 屏幕上的 WebView 中显示的内容似乎分辨率很低
【发布时间】:2026-02-15 09:55:02
【问题描述】:

我在Android TV 上显示WebView 中的网站。该设备是 4k,但 Android 在 1080p 中运行(这没关系)但 WebView 似乎在 half-HD 540x960 中呈现(由 JavaScript window.screen.availHeight 报告) -图像和字体看起来很模糊。

这似乎与设备metrics.density = 2 的密度设置相匹配。有没有办法在应用程序或 WebView 本身中强制进行全分辨率渲染?

【问题讨论】:

  • 对此有任何修复吗?我有一个 1080p 的应用程序,具有固定的 UI,我不想更改我的 UI 以适应 960x540。有没有办法在 Android TV WebView 中允许 720p 或 1080p?

标签: android android-webview android-tv


【解决方案1】:

基于此documentation,该平台现在允许应用请求仅针对兼容硬件将显示分辨率升级到 4K。

要查询当前物理分辨率,需要使用Display.Mode API。如果 UI 以较低的逻辑分辨率绘制并放大到较大的物理分辨率,请注意getPhysicalWidth() 方法返回的物理分辨率可能与getSize() 报告的逻辑分辨率不同。

因此,您需要做的是通过设置应用窗口的preferredDisplayModeId 属性来更改物理分辨率。

【讨论】:

  • 在旧的 api 级别上有什么可以做的吗? YouTube 和 Google Cast 似乎使用 4k。
最近更新 更多