全面屏适配(小米8,三星s8等)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/nongminkouhao/article/details/84791077

引入问题
用户提出自己的小米8手机运行app时候底部有黑边,因为是内部系统不方便截图,我这里就从miui里找了一个图来代替
问题的图
开始还担心是屏幕适配的问题(dimens适配),但是系统中只适配横向,纵向不做适配;

下次发版前给用户的临时处理方案
设置-全面屏-应用全面屏运行设置-找到自己的app并打开支持全面屏的开关

什么全面屏
全面屏是手机业界对于超高屏占比手机设计的一个比较宽泛的定义。从字面上解释就是手机的正面全部都是屏幕,手机的四个边框位置都是采用无边框设计,追求接近100%的屏占比。

为什么要适配:
系统默认支持的最大的长宽比为16:9,如果大于16:9就会出现上下黑边问题;这里小米8全面屏的分辨率为2248-1080,大于16:9,所以应用界面下方出现了黑边;这里还试了vivo r11 ,2160-1080 也大于 16:9,但是vivo的系统会在应用下方黑边上出现一个强制全屏的按钮(这点很人性给个赞,不像小米还需要进入设置处理);目前全面屏机器的出现,这个问题迟早需要处理
在Android 7.0 targetSdkVersion为24以上默认支持了分屏模式,即Manifest文件中配置Activity的android:resizeableActivity默认属性为true;在这种情况下并不需要配置Maximum Aspect Ratio即可自动适配全面屏。但是自己的app的targetSdkVersion为23,这里直接改成24不切实际;
如何适配
在清单文件中的中添加

<meta-data android:name="android.max_aspect" android:value="2.1" />

这里官方推荐>=2.1,按照市面上的全面屏来看,这个2.1足以;如果再大,想想手里拿个“尚方宝剑”也有点奇葩

参考:
参考1
参考2
参考3
参考4

希望我遇到的这个问题对你有帮助

猜你喜欢

转载自blog.csdn.net/nongminkouhao/article/details/84791077