当前位置: 首页 > news >正文

Android12强制所有应用跟随gsensor旋转

前言

 Android12系统中如果机器带gsensor,竖屏应用如果固定了竖屏,当机器旋转为横屏,竖屏应用是不会转到横屏显示的,还是竖屏显示。抖音这种app就是这样的。因为app里面manifest文件中通过android:screenOrientation固定住了竖屏显示。如果要让横屏的时候app也能够横屏显示,这个时候就需要修改系统,将app的属性拦截掉。

通过了解旋转的流程,可以知道,处理app旋转的地方位于frameworks/base/services/core/java/com/android/server/wm/DisplayRotation.java中的rotationForOrientation()函数里面,我们在这个函数进行拦截即可。rotationForOrientation函数第一个参数orientation,就是app的属性值了,我们把这个属性值强制改成所有方向跟随重力感应方向显示。
具体修改方法如下:

--- a/frameworks/base/services/core/java/com/android/server/wm/DisplayRotation.java
+++ b/frameworks/base/services/core/java/com/android/server/wm/DisplayRotation.java
@@ -1176,7 +1176,7 @@ public class DisplayRotation {Surface.rotationToString(mUserRotation), mUserRotation,mUserRotationMode == WindowManagerPolicy.USER_ROTATION_LOCKED
http://www.lryc.cn/news/247450.html

相关文章:

  • C#常用运算符的优先级
  • 鸿蒙4.0开发笔记之ArkTS语法的基础数据类型[DevEco Studio开发](七)
  • 集成学习的两种常见策略:bagging VS. boosting
  • 居家适老化设计第三十四条---卫生间之照明
  • 如何使用Cloudreve将个人电脑打造为私有云盘并实现远程访问
  • [SaaS] 淘宝AI淘淘秀
  • 第二证券:机构密集调研消费电子、半导体产业链
  • app小程序定制的重点|软件定制开发|网站搭建
  • 11-28渗透
  • qt实现一个安卓测试小工具
  • 驾驭未来,智能化管理——汽车ERP系统
  • flutter开发实战-当前界面无操作60s返回主页实现
  • 绩效考核的基础及基本内容
  • 阿坤老师的彩带插花(蓝桥杯)
  • 系列二十四、Spring设计模式之策略模式
  • Linux常用命令——basename命令
  • LeetCode17.电话号码的字母组合
  • 为Oracle链接服务器使用分布式事务
  • 代洋集团,引领绿色能源新潮流
  • LuatOS-SOC接口文档(air780E)--rtos - RTOS底层操作库
  • 一名技术Leader应该是创作者
  • Java多线程总结
  • docker devicemapper: Error running DeleteDevice dm_task_run failed
  • 第二十章总结
  • Linux环境安装Java,Tomcat,Mysql,
  • 前后端分离开发出现的跨域问题
  • 水淼采集器-免费水淼采集器下载
  • [DASCTF 2023 0X401七月暑期挑战赛] web刷题记录
  • Python超级详细的变量命名规则
  • Zabbix 6 详细安装部署教程