uni-app Android 15 以上 wgt 小程序底部被系统导航栏遮盖 部分机型选择图片界面顶部被状态栏遮盖 猜测是 Android 15 Google 强制启用 edge-to-edge 有关
uni-app Android 15 以上 wgt 小程序底部被系统导航栏遮盖 部分机型选择图片界面顶部被状态栏遮盖 猜测是 Android 15 Google 强制启用 edge-to-edge 有关
操作步骤:
- 小程序SDK / HBuild 版本号:4.65,使用 nvue 开发,采用系统 Tabbar
- 运行在三星、Pixel、小米国际版的 Android 15 / Android 16 上
预期结果:
Uni 系统 Tabbar、图片选择器 正常显示和操作,不会被系统导航栏、状态栏遮挡
实际结果:
Uni 系统 Tabbar、图片选择器 被系统导航栏、状态栏遮挡
bug描述:
wgt 小程序,在部分国际机型的 Android 15、Android 16 上,界面会被系统导航栏、状态栏遮挡,导致用户无法操作。 目前收到的反馈机型有 三星 S23 Ultra、Pixel 6、小米15 Ultra 国际版 等。 搜索发现可能跟 Google 在 Android 15 强制启用 edge-to-edge 有关。 Android 小程序 SDK / HBuild 版本号:4.65。
| 开发环境 | 版本号 | 项目创建方式 |
|---|---|---|
| nvue | 4.65 | 系统 Tabbar |
更多关于uni-app Android 15 以上 wgt 小程序底部被系统导航栏遮盖 部分机型选择图片界面顶部被状态栏遮盖 猜测是 Android 15 Google 强制启用 edge-to-edge 有关的实战教程也可以访问 https://www.itying.com/category-93-b0.html
升级到最新的 4.75版本已适配这个问题
更多关于uni-app Android 15 以上 wgt 小程序底部被系统导航栏遮盖 部分机型选择图片界面顶部被状态栏遮盖 猜测是 Android 15 Google 强制启用 edge-to-edge 有关的实战教程也可以访问 https://www.itying.com/category-93-b0.html
升级到最新版本也不行呢,targetSdkVersion 35
回复 0***@tmp.dcloud.io: 我这边测试最新的demo 可以。 你这个问题是所有设备都会出现,还是只有部分设备才出现。
这个问题确实与 Android 15 强制启用 edge-to-edge 模式有关。在 Android 15+ 系统中,系统默认启用全屏布局,导致应用内容延伸到状态栏和导航栏下方。
针对 uni-app 的解决方案:
- 配置沉浸式状态栏:
在
pages.json中配置:
{
"globalStyle": {
"navigationBarTextStyle": "black",
"navigationBarTitleText": "uni-app",
"navigationStyle": "custom",
"app-plus": {
"statusbar": {
"immersive": true
}
}
}
}
- 调整安全区域:
使用
safe-area-inset-bottom确保内容不被遮挡:
.page {
padding-bottom: constant(safe-area-inset-bottom);
padding-bottom: env(safe-area-inset-bottom);
}
-
对于图片选择器: 建议使用 uni.chooseImage API,它会自动处理安全区域问题。
-
手动处理导航栏高度: 在 onLoad 中动态计算状态栏高度:
const { statusBarHeight } = uni.getSystemInfoSync()

