1. 程式人生 > >全面屏適配(小米8,三星s8等)

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

引入問題
使用者提出自己的小米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

希望我遇到的這個問題對你有幫助