Unity 打包APK 适配全面屏、刘海屏、水滴屏、挖孔屏
小程小程,永不消沉
作者:
来源
: https://blog.csdn.net/qq_43505432/article/details/114369284
目前国内流行的手机厂商主要有:vivo、oppo、华为、小米。各厂商对刘海屏的适配都大不相同,各自有各自对刘海屏的适配API,具体的适配方法可以阅读相应的官网:
VIVO:https://dev.vivo.com.cn/documentCenter/doc/103
OPPO:https://open.oppomobile.com/wiki/doc#id=10159
小米:https://dev.mi.com/console/doc/detail?pId=1293
华为:https://developer.huawei.com/consumer/cn/devservice/doc/50114?from=timeline
若需要对厂商进行判断可以使用:
String brand =android.os.Build.BRAND.toLowerCase();
if("huawei".equals(brand)){
}else if("xiaomi".equals(brand)){
}else if("vivo".equals(brand)){
}else if("oppo".equals(brand)){
}
根据四大厂商官网所提供的适配方案,其中需要在AndroidManifest中添加标签(具体说明请浏览官网):
<!-- 适配全面屏 Android O vivo&oppo-->
<meta-data android:name ="android.max_aspect" android:value ="2.2" />
<!-- 适配刘海屏、水滴屏 Android O 小米 -->
<meta-data android:name="notch.config" android:value="portrait|landscape"/>
<!-- 适配刘海屏、水滴屏 Android O 华为 -->
<meta-data android:name="android.notch_support" android:value="true"/>
上述两种屏幕都可以统称为刘海屏,不过对于右侧较小的刘海,业界一般称为水滴屏。
勾选下方选项,即可消除黑条进行渲染。
这是由于全面屏手机的屏幕长宽比增大了很多,屏长宽比超过了16:9,所以在适配时要注意适应更长的屏幕。在 Android 7.0(API 级别 24)或更高版本的应用,android:resizeableActivity属性默认为true(对应适配方式1)。这个属性是控制多窗口显示的,决定当前的应用或者Activity是否支持多窗口。适配方式有两种:
将targetSdkVersion版本设置到API 24及以上;这个操作将会为 标签隐式添加一个属性,android:resizeableActivity=“true”。 在 标签中增加属性:android:resizeableActivity=“false”,同时在节点下增加一个meta-data标签:
<!-- Render on full screen up to screen aspect ratio of 2.4 -->
<!-- Use a letterbox on screens larger than 2.4 -->
<meta-data android:name="android.max_aspect" android:value="2.4" />
-- END --
公众号后台回复「资料」获取超多学习福利
>>> 点击进入技术讨论群 <<< ▽想深入了解么?
长按/扫码关注我吧↑↑↑
觉得不错就点个在看吧!
评论