Unity 打包APK 適配全面屏、劉海屏、水滴屏、挖孔屏
小程小程,永不消沉作者:
來源: https://blog.csdn.net/qq_43505432/article/details/114369284
目前國內(nèi)流行的手機(jī)廠商主要有:vivo、oppo、華為、小米。各廠商對劉海屏的適配都大不相同,各自有各自對劉海屏的適配API,具體的適配方法可以閱讀相應(yīng)的官網(wǎng):
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
若需要對廠商進(jìn)行判斷可以使用:
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)){
}
根據(jù)四大廠商官網(wǎng)所提供的適配方案,其中需要在AndroidManifest中添加標(biāo)簽(具體說明請瀏覽官網(wǎng)):
<!-- 適配全面屏 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"/>
上述兩種屏幕都可以統(tǒng)稱為劉海屏,不過對于右側(cè)較小的劉海,業(yè)界一般稱為水滴屏。
勾選下方選項(xiàng),即可消除黑條進(jìn)行渲染。
這是由于全面屏手機(jī)的屏幕長寬比增大了很多,屏長寬比超過了16:9,所以在適配時要注意適應(yīng)更長的屏幕。在 Android 7.0(API 級別 24)或更高版本的應(yīng)用,android:resizeableActivity屬性默認(rèn)為true(對應(yīng)適配方式1)。這個屬性是控制多窗口顯示的,決定當(dāng)前的應(yīng)用或者Activity是否支持多窗口。適配方式有兩種:
將targetSdkVersion版本設(shè)置到API 24及以上;這個操作將會為 標(biāo)簽隱式添加一個屬性,android:resizeableActivity=“true”。 在 標(biāo)簽中增加屬性:android:resizeableActivity=“false”,同時在節(jié)點(diǎn)下增加一個meta-data標(biāo)簽:
<!-- 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 --

公眾號后臺回復(fù)「資料」獲取超多學(xué)習(xí)福利
>>> 點(diǎn)擊進(jìn)入技術(shù)討論群 <<< ▽想深入了解么?
長按/掃碼關(guān)注我吧↑↑↑
覺得不錯就點(diǎn)個在看吧!


