收藏
回答

横屏时,wx.getSystemInfo 安全区域和宽高值 不一致;

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小游戏 Bug wx.getSystemInfo 微信安卓客户端 7.0.19 2.13.1

https://developers.weixin.qq.com/minigame/dev/api/base/system/system-info/wx.getSystemInfo.html

(这是我们预期的情况)华为Mate30手机:

刘海屏在 左边 的 横屏:res.safeArea = {left: 刘海屏高度, top: 0, ..., width: right - left, height: bottom - top}

刘海屏在 右边 的 横屏:res.safeArea = {left: 0, top: 0, right: 手机宽度 - 刘海屏高度, ..., width: right - left, height: bottom - top}

小米9 手机:top不管如何都是0,但是width和height是适应了的;

刘海屏在 左边 的 横屏:res.safeArea = {left: 0, top: 刘海屏高度, ..., width: bottom - top, height: right - left}

刘海屏在 右边 的 横屏:res.safeArea = {left: 0, top: 刘海屏高度, ..., width: bottom - top, height: right - left}

iPhoneX:top不管如何都是0,而且width和height都和竖屏结果一样;

刘海屏在 左边 的 横屏:res.safeArea = {left: 0, top: 刘海屏高度, ..., width: right - left, height: bottom - top}

刘海屏在 右边 的 横屏:res.safeArea = {left: 0, top: 刘海屏高度, ... width: right - left, height: bottom - top}



回答关注问题邀请回答
收藏

2 个回答

  • 八千草
    八千草
    2021-03-18

    safeArea是高版本Android【Android 9】才有的接口,如果系统不支持的话那也无法返回有效数据,请问是哪些机型已经是9以上的版本了,但是仍旧不支持safeArea呢?

    2021-03-18
    有用
    回复
  • Cjiang
    Cjiang
    2020-10-12

    你好,安全区域和宽高值 不一致指的是什么呢?麻烦详细描述下信息。

    2020-10-12
    有用
    回复 2
    • WhyNot
      WhyNot
      2020-10-15
      (具体数字见描述)场景是:正 反 横屏,在 不同的手机,描述的模式不一样,我们很难做统一的GUI适配。比如刘海屏在左手边的横屏,我们期望的结果是:所有的手机中,top是0,left是刘海屏区域的高度;如果刘海屏在右边的横屏,我们期望:所有的手机,top是0,left是0,right = 手机宽度 - 刘海屏高度。目前发现:只有华为手机有这个效果,别的手机(我们测试的:小米,iPhoneX)的数据都不是这个。
      2020-10-15
      回复
    • WhyNot
      WhyNot
      2020-10-19
      这个会引起一个问题:就是很难适配一个游戏的左右横屏的时候,如何避免gui绘制到刘海屏上,因为刘海屏在左边还是在右边,上面,都不知道。
      2020-10-19
      回复
登录 后发表内容
问题标签