You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android 14模拟器Dialog灰色Scrim消失但截图可见问题求助

Android 14模拟器(API 34)Dialog Scrim遮罩界面不显示但adb截图可见的问题排查

问题现象

  • 在Android 14(API Level 34)模拟器中,Dialog的深灰色半透明Scrim遮罩在模拟器可视化界面中完全消失,但执行adb shell screencap -p filename命令截图时,遮罩会正常出现在截图文件内;其余API等级的模拟器均无此异常。

可能的排查方向与解决尝试

  1. 调整模拟器渲染模式
    Android 14对UI渲染管线做了优化,模拟器可能针对本地显示做了层合并处理,导致实时界面未渲染Scrim,但底层渲染数据完整。可尝试:

    • 打开模拟器右上角的「...」菜单进入设置,切换Emulated Performance下的渲染模式(如从Automatic改为Software或Hardware),重启模拟器后验证遮罩显示情况。
  2. 强制设置Dialog的Scrim属性
    Android 14可能变更了Dialog Scrim的默认绘制逻辑,可通过代码强制指定遮罩参数,验证是否为系统默认行为变更:

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.UPSIDE_DOWN_CAKE) {
        Dialog dialog = new Dialog(context);
        Window window = dialog.getWindow();
        if (window != null) {
            window.setDimAmount(0.5f); // 自定义遮罩透明度
            window.addFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);
        }
        dialog.show();
    }
    
  3. 更新模拟器至最新版本
    该异常大概率是Android 14模拟器的版本bug,建议:

    • 打开Android Studio的SDK Manager,检查Android Emulator组件是否有更新,安装后重新创建API 34的模拟器实例测试。

内容的提问来源于stack exchange,提问作者Lino

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 15:07:05