會影響客戶使用,並且效果不好,而我們期望的結果是這樣的
具體是因為:普通屏:縱橫比為16:9,如1080x1920、1440x2560等,其比值為1.78,全面屏手機出現之前,android中預設的最大螢幕縱橫比(maximum aspect ratio)為1.86,即能夠相容16:9的螢幕。超過了1.86的縱寬比,系統展示就會有問題。
華為官方給的方案如下:
方案1:
androidmanifest.xml 檔案新增屬性:
應用適配建議採用meta-data的方式,具體可以參考:
方案2:
新增 android:resizeableactivity =「true」
此設定只針對activity生效,且增加了此屬性該activity也會支援分屏顯示。
方案3:
修改androidmanifest.xml檔案,設定targetsdkversion>=26,就是應用公升級到o版本,不需要設定其他任何屬性,預設在任何縱橫比的螢幕都能全屏顯示。(備註:有一種例外情況需要注意,應用如果已經適配到o版本,並且通過meta-data屬性android.max_aspect或者是android:maxaspectratio屬性設定了頁面支援的最大縱橫比,同時又通過android:resizeableactivity=「false」設定了頁面不支援分屏,這個時候系統會按照應用自己設定的最大縱橫比決定該頁面是否能全屏顯示,如果應用設定的最大縱橫比比手機螢幕比例小,那應用還是無法全屏顯示。)
華為建議首選方案3,將應用的api級別公升級到o版本(targetsdkversion>=26),這樣在不同比例螢幕下,應用都能自適應全屏顯示。但此方案對介面設計的要求也比較高,需保證介面拉伸到不同比例(16:9、18:9、18.9:9、19.5:9、21:9)時,都能正常顯示。同時api級別公升級到o版本,應用依賴的部分api功能公升級,要做相容性處理。
方案三要考慮相容處理,targetsdkversion>=26網上有小夥伴寫文章會有系統彈窗(懸浮窗)不生效、通知不生效需要考慮做相容。
如果採用方案3的代價過大,建議採用方案1,將最大支援的縱橫比設為2.4。這樣可以相容超寬屏產品,一次做好適配。
華為手機ADB除錯問題解決
adb安裝 安裝完後插入安卓裝置且安卓已開啟 usb 除錯模式,終端輸入adb devices,顯示裝置號則表示成功。如果是列表為空說明失敗。我的華為手機連線電腦後,安裝華為應用助手,驅動顯示正常,手機助手也連線正常,但是adb就是識別不到手機版本號。這個時候會有新的驅動自動安裝以及新的手機提示是否...
oom問題解決
dalvik虛擬機會為應用程式分配固定大小的heap 如果使用超過了這個heap的大小,且沒有可被 物件,就會報oom。多張較大會迅速占用空間造成oom。我們可以使用一下的方法來減少這種情況的產生 1.減少單張的大小,根據螢幕大小來對bitmap做resize。private void setima...
too many open files問題解決辦法
今天用 往liunx中寫檔案,檔案很多 執行一會就日誌上就報錯 too many open files 結果找了半天才解決這個問題,現在給大家分享一下。首先用 ulimit a 命令看看linux的open files值是多少,結果乙隻有1024,不夠用的。然後修改linux的配置檔案,修改 etc...