Android手机刘海屏(附工具类)
- 作者: 五速梦信息网
- 时间: 2026年04月04日 13:51
工具类
根据VIVO、OPPO、华为官方文档,这里整理了一个刘海屏工具类,判断设备是否为刘海屏,其他厂商公布相关方法后也会在此更新。
OPPO:
/**
* OPPO
*
* @param context Context
* @return hasNotch
*/
public static boolean hasNotchInOppo(Context context) {
return context.getPackageManager().hasSystemFeature("com.oppo.feature.screen.heteromorphism");
}
VIVO:
/**
* VIVO
* <p>
* android.util.FtFeature
* public static boolean isFeatureSupport(int mask);
* <p>
* 参数:
* 0x00000020表示是否有凹槽;
* 0x00000008表示是否有圆角。
*
* @param context Context
* @return hasNotch
*/
public static boolean hasNotchInVivo(Context context) {
boolean hasNotch = false;
try {
ClassLoader cl = context.getClassLoader();
Class FtFeature = cl.loadClass("android.util.FtFeature");
Method get = FtFeature.getMethod("isFeatureSupport");
hasNotch = (boolean) get.invoke(FtFeature, new Object[]{0x00000020});
} catch (Exception e) {
e.printStackTrace();
}
return hasNotch;
}
华为:
/**
* HUAWEI
* com.huawei.android.util.HwNotchSizeUtil
* public static boolean hasNotchInScreen()
*
* @param context Context
* @return hasNotch
*/
public static boolean hasNotchInHuawei(Context context) {
boolean hasNotch = false;
try {
ClassLoader cl = context.getClassLoader();
Class HwNotchSizeUtil = cl.loadClass("com.huawei.android.util.HwNotchSizeUtil");
Method get = HwNotchSizeUtil.getMethod("hasNotchInScreen");
hasNotch = (boolean) get.invoke(HwNotchSizeUtil);
} catch (Exception e) {
e.printStackTrace();
}
return hasNotch;
}
除了OPPO的判断简单点外,其他两家厂商都是用反射来获取刘海屏幕信息的。除了VIVO外,另外两家设备都测试过了,有相关设备的开发者可以自行测试一下,欢迎评论私信反馈。
结语
最后,不得不感叹苹果的号召力。跟风也好,抄袭也罢,最为开发者,吐槽之后,还是得做好应用适配。
---小米的方案:
1.如何判断设备为 Notch 机型
系统增加了 property ro.miui.notch,值为1时则是 Notch 屏手机。
SystemProperties.getInt("ro.miui.notch", 0) == 1;
https://blog.csdn.net/djy1992/article/details/80688376
https://blog.csdn.net/DJY1992/article/details/80689632
转载: https://juejin.im/entry/5acf72555188255c9323ad6d
- 上一篇: Android属性动画
- 下一篇: Android事件传递机制详解及最新源码分析——Activity篇
相关文章
-
Android属性动画
Android属性动画
- 互联网
- 2026年04月04日
-
Android属性动画完全解析(上),初识属性动画的基本用法
Android属性动画完全解析(上),初识属性动画的基本用法
- 互联网
- 2026年04月04日
-
Android属性动画完全解析(上)
Android属性动画完全解析(上)
- 互联网
- 2026年04月04日
-
Android事件传递机制详解及最新源码分析——Activity篇
Android事件传递机制详解及最新源码分析——Activity篇
- 互联网
- 2026年04月04日
-
Android使用surface直接显示yuv数据(三)
Android使用surface直接显示yuv数据(三)
- 互联网
- 2026年04月04日
-
android设置光标位置
android设置光标位置
- 互联网
- 2026年04月04日








