android13修改系统Launcher不跟随重力感应旋转

android13系统中需要修改系统原生Launcher不跟随重力感应旋转。

通过代码查找发现packages/apps/Launcher3/src/com/android/launcher3/states/RotationHelper.java中存在一个函数getAllowRotationDefaultValue,用于获取是否允许旋转的默认值。

java 复制代码
    public static boolean getAllowRotationDefaultValue(DisplayController.Info info) {
        // If the device's pixel density was scaled (usually via settings for A11y), use the
        // original dimensions to determine if rotation is allowed of not.
        float originalSmallestWidth = dpiFromPx(Math.min(info.currentSize.x, info.currentSize.y),
                DENSITY_DEVICE_STABLE);
        return originalSmallestWidth >= MIN_TABLET_WIDTH;
    }

这个函数主要根据屏幕dpi和尺寸来决定是否允许Luancher允许旋转。如果要禁止旋转直接返回false即可。

相关推荐
kerli2 小时前
Android 嵌套滑动设计思想
android·客户端
恣艺3 小时前
LeetCode 854:相似度为 K 的字符串
android·算法·leetcode
阿华的代码王国3 小时前
【Android】相对布局应用-登录界面
android·xml·java
用户207038619494 小时前
StateFlow与SharedFlow如何取舍?
android
QmDeve4 小时前
原生Android Java调用系统指纹识别方法
android
淹没4 小时前
🚀 告别复杂的HTTP模拟!HttpHook让Dart应用测试变得超简单
android·flutter·dart
HX4365 小时前
MP - List (not just list)
android·ios·全栈
安卓开发者6 小时前
Android WorkManager 详解:高效管理后台任务
android