1. 程式人生 > >Android8.0新特性總結

Android8.0新特性總結

概覽 intent 適配 ear ctu wid blog launcher 打開

1.通知渠道:開發者可以自定義應用的通知內容類別,為用戶提供一個可以對通知精細控制的接口,用戶可以對通知 進行精細的掌控

技術分享圖片

開發指南

創建通知渠道的步驟:

  1. 創建 NotificationChannel 對象,並設置應用內唯一的通知 ID。
  2. 配置通知渠道的屬性,比如提示聲音等。
  3. 在 NotificationManager 中註冊通知渠道對象。

技術分享圖片

2.畫中畫模式: 該功能主要針對視頻播放,通俗一點有點類似於分屏操作,用戶可以一邊發微信一邊看視頻

技術分享圖片

△ 畫中畫模式圖示

開發指南

1> 關於生命周期

PIP 模式不會改變 Activity 的生命周期。在指定時間只有最近與用戶交互過的 Activity 為活動狀態。 該 Activity 將被視為頂級 Activity。 所有其他 Activity 雖然可見,但均處於暫停狀態。當一個 Activity 處於 PIP 模式時,其實它是出在暫停狀態,但其內容會繼續展示。

2> API變更

在 Android O 中新增 PictureInPictureArgs 對象來指明你的 Activity 在 PIP 模式中的屬性,比如長寬比等。

Android O 還新增了以下方法來支持 PIP。

  1. Activity.enterPictureInPictureMode(PictureInPictureArgs args):將Activity置於 PIP 模式之下。
  2. Activity.setPictureInPictureArgs():用於更新 Activity 在 PIP 模式下的設置。如果 Activity 正處於 PIP 模式之下,那麽更改的屬性將立即生效。
3.自適應圖標 — Adaptive Icons:

Android 的屏幕適配一直以來都折磨著不少的開發者。為了幫助開發者更好的與設備 UI 集成,Android O 支持創建自適應圖標,系統可以基於設備選擇的蒙版將這些圖標顯示為不同形狀。系統還將實現與圖標的自動交互,並在啟動器、快捷方式、設置、共享對話框以及概覽屏幕中使用它們。

技術分享圖片

△ Android O 支持創建自適應圖標圖示

開發指南

1> 自適應圖標支持多種形狀

通過定義兩張圖層(前景與背景)你可以制定你的桌面圖標外觀,你必須提供沒有形狀和陰影的 PNG 格式圖象作為圖層。

技術分享圖片

△ 多形狀桌面圖標外觀圖示

2> 自適應圖標由兩張圖層和一個形狀來定義

在以前的 Android 版本中,圖標大小定義為 48 x 48 dp。現在你必須按照以下的規範定義你的圖層大小:

  1. 兩張圖層大小都必須為 108 x 108 dp。
  2. 圖層中心 72 x 72 dp 範圍為可視範圍。
  3. 系統會保留四周外的 36dp 範圍用於生成有趣的視覺效果(如視差和跳動)。

技術分享圖片

3> 創建你的自適應圖標

首先你需要在 Application 標簽中加入 Android:icon 屬性,定義你的 icon 圖標。其次如果你需要創建一個原型的 icon,你還需要加入 Android:roundIcon 屬性。

技術分享圖片

接下來,你需要 res/mipmap-anydpi/ic_launcher.xml 文件中定義您的圖層。在 選項中加入您的前景和背景圖層。

技術分享圖片

4.固定快捷方式和小部件 — Pinning shortcuts

Pinning shortcuts 是一個比 APP shortcuts 更小的快捷方式,放置於桌面上,用於更快速的打開某一 APP 的某單一任務。Pinning shortcuts 在桌面上可呈現不同的圖標顯示。

技術分享圖片

△ 固定快捷方式和小部件圖示

開發指南

  1. 首先使用 isRequestPinShortcutSupported() 方法校驗手機是否支持啟動這種快捷方式。
  2. 創建 ShortcutInfo 對象。
  3. 用 requestPinShortcut() 方法應用 Pinning shortcuts。你可以通過 PendingIntent 來通知你的 shortcuts 有沒有創建成功。

技術分享圖片

Android O 其他特性介紹

除了以上幾個新特性以外,Android O 還未增加了其他的功能。比如增加了 Autofill Framework,方便用戶在不同 APP 之間填寫信息。比如開放 android.permission.ANSWER_PHONE_CALLS,以後在自己的 APP 裏也可以對來電做響應。

在性能優化上,Android O 還對隱式廣播、後臺服務和位置更新等進行了後臺自動限制,以此來增加手機電池壽命。並對 Java 8 Language API 和 Runtime 進行了優化,使應用的運行速度更快,手機使用更流暢。

Android8.0新特性總結