google的 targetSdkVersion改成35

- 发布:2025-04-15 10:32
- 更新:2025-04-16 10:28
- 阅读:69
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: windows11
HBuilderX类型: 正式
HBuilderX版本号: 4.29
手机系统: Android
手机系统版本号: Android 15
手机厂商: 小米
手机机型: 小米15
页面类型: vue
vue版本: vue3
打包方式: 云端
项目创建方式: HBuilderX
操作步骤:
预期结果:
正常使用uni.chooseImage的api
正常使用uni.chooseImage的api
实际结果:
如图一样会有状态栏重叠情况
如图一样会有状态栏重叠情况
bug描述:
在使用 uni.chooseImage 方法时,如果 targetSdkVersion 设置为 35,会出现以下两个问题:
图片选择弹窗与状态栏重叠,导致用户无法清晰看清操作区域;
自定义 tabbar 被软键盘遮挡,尤其在表单输入时影响严重。
这些问题在 真机调试(HBuilderX)中不会复现,但在 正式打包后安装的 APK 上会必现,说明是打包后的系统行为差异。
我们验证后发现,将 targetSdkVersion 改回 30 时,上述问题不再出现。但由于 Google Play 要求必须使用 targetSdkVersion 35 及以上,因此目前陷入兼容性冲突的困境。
初步判断可能与以下相关:
Android 13(targetSdkVersion 33+)对窗口、状态栏、软键盘行为的限制更严格;
uni.chooseImage 内部使用了原生弹窗机制,未适配全屏沉浸式布局;
希望官方/社区能提供以下支持:
对 chooseImage 组件在 targetSdkVersion 35 下的 UI 适配支持;
或是否可以通过 manifest 或系统 API 规避系统行为改变。
w***@qq.com (作者)
https://ask.dcloud.net.cn/question/205543 感谢老哥
2025-04-15 11:42