Window dimensions doesn't change for android split screen
还没有人认领这个 Issue。
- 主要语言
- C++
- 星标
- 127k
- 派生
- 25.3k
- 平均合并
- 1 天 23 小时
- 30 天内合并 PR
- 4
描述
Description
After upgrading react-native from 0.62.2 to 0.63.3 I've met an issue that when I use split screen on my physical android device the dimensions for window doesn't change. It remains the same if I open the app in fullscreen, or split it with other app so it takes 1/2 or 2/3 or 1/3 of the screen space. I cannot tell exactly what react-native version got this broken, but I did test it both on 0.62.2 and 0.63.3 versions once again, so I am confident about this being an issue on latest react-native version
React Native version:
System:
OS: Windows 10 10.0.19041
CPU: (4) x64 Intel(R) Core(TM) i5-2400 CPU @ 3.10GHz
Memory: 2.51 GB / 9.98 GB
Binaries:
Node: 14.5.0 - C:\Program Files\nodejs\node.EXE
Yarn: 1.22.0 - C:\Program Files (x86)\Yarn\bin\yarn.CMD
npm: 6.14.5 - C:\Program Files\nodejs\npm.CMD
Watchman: Not Found
SDKs:
Android SDK:
API Levels: 28, 29
Build Tools: 28.0.3, 29.0.2, 29.0.3
System Images: android-21 | Google APIs ARM EABI v7a, android-21 | Google APIs Intel x86 Atom_64, android-27 | Google APIs Intel x86 Atom, android-28 | Intel x86 Atom_64
Android NDK: Not Found
Windows SDK: Not Found
IDEs:
Android Studio: Not Found
Visual Studio: Not Found
Languages:
Java: Not Found
Python: Not Found
npmPackages:
@react-native-community/cli: Not Found
react: 16.13.1 => 16.13.1
react-native: 0.63.3 => 0.63.3
react-native-windows: Not Found
Steps To Reproduce
I've left the code example down here, copy it and paste in App component of newly initializated react-native project on 0.63.3 version and try to open the app in fullscreen and split-screen, see the window height being the same(vertical split-screen).
Expected Results
Dimensions.get('window').height AND useWindowDimensions hook must return different results for app being resized by using split-screen, but it returns the same value on & on, but it works as expected in 0.62.2
Snack, code example, screenshot, or link to a repository:
console.log('manual get height:', Dimensions.get('window').height);
const {height} = useWindowDimensions();
console.log('useWindowDimensions hook height:', height);
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
使用提供的 Dimensions.get('window') 和 useWindowDimensions 示例在 Android 设备上重现该问题,并比较 React Native 0.63.3 与 0.62.2 中分屏行为的差异。跟踪 Dimensions 和 useWindowDimensions 的入口点,以确定窗口大小更新存在差异的位置;当两个 API 都报告调整后的分屏高度时,即表示完成。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- android, react-native
- 领域
- mobile
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100