d***@whaiw.com
d***@whaiw.com
  • 发布:2022-04-22 09:42
  • 更新:2022-06-18 11:57
  • 阅读:1373

【报Bug】3.4.6无法获取ios底部安全区距离

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: windows 10

HBuilderX类型: 正式

HBuilderX版本号: 3.4.6

手机系统: iOS

手机系统版本号: iOS 15

手机厂商: 苹果

手机机型: iphone 13

页面类型: nvue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

示例代码:
复制代码                success: (res) => {  
                    console.log(res)  
                    this.safeBottom = res.safeAreaInsets.bottom + 'px'  
                }  
            })  

{  
    "errMsg": "getSystemInfo:ok",  
    "brand": "Apple",  
    "model": "iPhone13",  
    "pixelRatio": 3,  
    "screenWidth": 390,  
    "screenHeight": 844,  
    "windowWidth": 390,  
    "windowHeight": 810,  
    "statusBarHeight": 47,  
    "language": "zh-Hans-CN",  
    "system": "iOS 15.4.1",  
    "version": "1.9.9.80820",  
    "fontSizeSetting": "",  
    "platform": "ios",  
    "SDKVersion": "",  
    "windowTop": 0,  
    "windowBottom": 0,  
    "safeArea": {  
        "left": 0,  
        "right": 390,  
        "top": 47,  
        "bottom": 810,  
        "width": 390,  
        "height": 763  
    },  
    "safeAreaInsets": {  
        "top": 47,  
        "right": 0,  
        "bottom": 0,  
        "left": 0  
    }  
}  

操作步骤:

uni.getSystemInfo({
success: (res) => {
console.log(res)
this.safeBottom = res.safeAreaInsets.bottom + 'px'
}
})

预期结果:

获取到安全区距离

实际结果:

安全区距离为0

bug描述:

之前能够获取到ios底部安全区大小的代码现在不生效了

2022-04-22 09:42 负责人:DCloud_iOS_XHY 分享
已邀请:
随便蜗牛

随便蜗牛

同样遇到了该问题,只能切换回上一个版本

  • d***@whaiw.com (作者)

    云打包还是一样的问题,云打包强制用最新的,哎

    2022-04-22 15:36

DCloud_UNI_GSQ

DCloud_UNI_GSQ

问题确认,已加分,后续修复

  • d***@whaiw.com (作者)

    可以看看这个问题不,https://ask.dcloud.net.cn/question/143636

    2022-04-25 14:30

DCloud_iOS_XHY

DCloud_iOS_XHY

HX 3.4.7 已修复

  • d***@whaiw.com (作者)

    可以看看这个问题不,https://ask.dcloud.net.cn/question/143636

    2022-04-25 14:30

南风粽子

南风粽子

已经更新到HX 3.4.7 了 ipone 系列 在nvue下获取的safeAreaInsets.bottom 还是0

青阳_1900

青阳_1900

3.4.7 真机ios还是有问题

plus.navigator.getSafeAreaInsets 在安卓下 top 会取到0,所以只能2个一起结合使用

复制代码function getInsets() {  
  const { top, bottom } = uni.getSystemInfoSync().safeAreaInsets  
  const value = { top, bottom }  
  if (!bottom) {  
    // 规避 苹果,uni.getSystemInfoSync().safeAreaInsets.bottom 可能为0  
    // 相关问题:https://ask.dcloud.net.cn/question/143633  
    value.bottom = plus.navigator.getSafeAreaInsets().bottom  
  }  
  return value  
}
十二112

十二112

3.4.15也是,ios真机下无法获取

该问题目前已经被锁定, 无法添加新回复

  • 标题 / 粗斜体
  • 代码片段
  • 超链接 / 图片 / 视频
  • 列表 / 引用

文章内容较多时,可以用标题分段 :

## 大标题 
### 小标题

斜体 / 粗体 :

**粗体** 
*斜体*
***粗斜体***

代码片段 :

``` javascript
代码片段
```

超链接 :

[链接文字](链接地址) 例: [百度](http://www.baidu.com)

图片 :

![图片说明](图片地址) 例: ![百度logo](http://www.baidu.com/img/bdlogo.gif)

视频 :

!![视频说明](视频地址) 例: !![优酷视频](http://youku.com)

有序列表 :

1. 123
2. 123
3. 123

无序列表 :

- 123
- 123
- 123

引用 : ( 双回车后结束引用 )

> 引用内容
引用内容
引用内容