平行视界无法获取设备真实旋转状态
MatePad在开启平行视界后,横屏状态下,ActivityA, ActivityB都是锁定了Portrait,但是这个时候想要获取设备是是否是在Portrait模式,根据开发者文档
- context.getResources().getConfiguration().orientation
这里的orientaion只会获得Portrait。但是想获取的是设备本身的状态,不单单是这个activity的orientation。
在前台时还可以通过WindowManager.getDefaultDisplay.getSize来获取窗口的宽高来判断。在横屏状态下进入后台后, getSize返回了width=1697 height=1600(和前台时获取的大小一致,是ActivityB Window的正确尺寸),在旋转屏幕后变成竖屏返回了width=1600 height=2560(也没有问题),再次旋转为横屏时,返回了width=1275 height=1600(这是什么原因?)。在后台时,有Service需要能够获取当前的旋转状态,这个时候应该用什么方式去判断是横屏和还是竖屏?
1
浏览560 发布于2022-01-19 11:55未知归属地
全部评论
最多点赞
最新发布
最早发布
写回答
所见即所得编辑器, editor1
工具栏
0/50000
新增插入模板功能
一键使用模板,快速填写内容,轻松发帖~
知道了
- 为了保障您的信息安全,请勿上传您的敏感个人信息(如您的密码等信息)和您的敏感资产信息(如关键源代码、签名私钥、调试安装包、业务日志等信息),且您需自行承担由此产生的信息泄露等安全风险。
- 如您发布的内容为转载内容,请注明内容来源。
我要发帖子
了解社区公约,与您携手共创和谐专业的开发者社区。






































苏公安网备 32011402010933号