Android8.0適配那點事(一)


最近有小伙伴說,7.0適配整了一波,現在又要來適配8.0,真是一波未平一波又起

 

但是作為開發者來說,學無止境,不跟上時代的步伐,肯定會被時代所淘汰...

 

話說Android P已經在路上了,你准備好了嗎?

 

 

 適配屬性 

 

1、通知渠道(Channeld)

當然,適配8.0的第一步自然是把targeSdk升級到26,在8.0中所有通知的實現都需要提供通知渠道,否則,所有通知在8.0系統上面都不能正常顯示;

下圖是8.0系統上,APP通知的展示樣式: 

 

 

APP適配渠道通知的實現如下:

 

 

 

 

2、懸浮窗

8.0 API 新增了一種懸浮窗的窗口類型,TYPE_APPLICATION_OVERLAY;

如果應用使用 SYSTEM_ALERT_WINDOW 權限並且嘗試使用以下窗口類型之一來在其他應用和系統窗口上方顯示提醒窗口:

TYPE_PHONE 
TYPE_PRIORITY_PHONE 
TYPE_SYSTEM_ALERT 
TYPE_SYSTEM_OVERLAY 
TYPE_SYSTEM_ERROR 
TYPE_TOAST

 

這些窗口將始終顯示在使用 TYPE_APPLICATION_OVERLAY 窗口類型的窗口下方。 
如果該應用適配了8.0,則應用只能使用TYPE_APPLICATION_OVERLAY窗口類型來創建懸浮窗。(其它窗口類型在8.0已經被廢棄掉)

 

3、畫中畫模式(新增功能)

我們知道Activity是默認支持分屏模式的,但我們也需要聲明Activity是允許分屏的,再增加支持畫中畫模式:

 

App頁面從全屏模式切換到畫中畫模式,它的Activity生命周期也會經歷銷毀后重建的過程,如果開發者想保持App頁面不被重建,則需給該頁面的activity節點加上以下的屬性描述:

android:configChanges="srceenLayout|orientation"

 

對於視頻播放頁面,Activity代碼同樣不在onPause方法中暫停播放視頻,而應當在onStop方法中暫停播放,並在onStart方法中恢復播放視頻;

 

 

進入畫中畫模式:

 

 

4、自適應圖標

Android 8.0 引入自適應啟動器圖標,可在不同設備型號上顯示為各種不同的形狀,創建方式如下:

 

   

 

然后點擊Next后,直接finish,最后在application中使用:

 

 

 

 結語 

 

各位看官,別走開,你的留言,你的點贊,是我前進的動力,接下來還有啟動頁的適配,版本更新適配等其他一些功能詳細闡述;文中如有錯誤請留言指出,共同探討。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM