search
尋找貓咪~QQ 地點 桃園市桃園區 Taoyuan , Taoyuan

深度了解Android 7.0 ,你準備好了嗎?

2016年8月22日,谷歌正式推送Android 7.0 Nougat(牛軋糖)正式版,他們還會三個月一次推送開發版,而曝光的消息看,第一個開發版就是Android 7.1,Android N主要新增了以下的新特性和優化。

一、新的Notification

Android N 增加了許多新的notifications API,進行了重新的設計,引入了新的風格。

模板更新:開發者將能夠充分利用新模板,只需進行少量的代碼調整。

消息樣式自定義:可以自定義更多與使用MessageStyle類的通知相關的用戶界面標籤。可以配置消息、會話標題和內容視圖。

捆綁通知:系統可以將消息組合在一起(例如,按消息主題)並顯示組。用戶可以適當地進行 Dismiss 或 Archive 等操作。

直接回復:對於實時通信應用,Android 系統支持內聯回復,以便用戶可以直接在通知界面中快速回復簡訊。

自定義視圖:兩個新的 API ,在通知中使用自定義視圖時可以充分利用系統裝飾元素,如通知標題和操作。

二、多窗口支持(分屏模式)

運行 Android N 的手機和平板電腦上,用戶可以並排運行兩個應用,或者處於分屏模式時一個應用位於另一個應用之上。用戶可以通過拖動兩個應用之間的分隔線來調整應用。在Android TV 設備上,應用可以將自身置於畫中畫模式,從而讓它們可以在用戶瀏覽或與其他應用交互時繼續顯示內容。

三、Quick Settings Tile API

「快速設置」通常用於直接從通知欄顯示關鍵設置和操作,非常簡單。在 Android N中,已擴展「快速設置」的範圍,使其更加有用更方便。為額外的「快速設置」圖塊添加了更多空間,用戶可以通過向左或向右滑動跨分頁的顯示區域訪問它們。 還讓用戶可以控制顯示哪些「快速設置」圖塊以及顯示的位置 — 用戶可以通過拖放圖塊來添加或移動圖塊。

對於開發者,Android N 還添加了一個新的 API,從而可以定義自己的「快速設置」圖塊,使用戶可以輕鬆訪問應用中的關鍵控制項和操作。

四、快速的應用安裝路徑

Android 運行組件的 JIT 編譯器最實際的好處之一是應用安裝和系統更新的速度。即使在Android 6.0 中需要幾分鐘進行優化和安裝的大型應用,現在只需幾秒鐘就可以完成安裝。系統更新也變得更快,因為省去了優化步驟。

五、隨時隨地低電耗模式

在 Android N 中,低電耗模式又前進了一步,隨時隨地可以省電。只要屏幕關閉了一段時間,且設備未插入電源,低電耗模式就會對應用使用熟悉的 CPU 和網路限制。這意味著用戶即使將設備放入口袋裡也可以省電。

六、Project Svelte:後台優化

Project Svelte在持續改善,以最大程度減少生態系統中一系列 Android 設備中系統和應用使用的 RAM。在 Android N 中,Project Svelte 注重優化在後台中運行應用的方式。

後台處理是大多數應用的一個重要部分。處理得當,可實現非常棒的用戶體驗—即時、快速和情境感知。如果處理不得當,後台處理會毫無必要地消耗 RAM和電池,同時影響其他應用的系統性能。

Android N 刪除了三項隱式廣播(CONNECTIVITY_ACTION、ACTION_NEW_PICTURE 和ACTION_NEW_VIDEO),以幫助優化內存使用和電量消耗。此項變更很有必要,因為隱式廣播會在後台頻繁啟動已註冊偵聽這些廣播的應用,刪除這些廣播可以顯著提升設備性能和用戶體驗。

移動設備會經歷頻繁的連接變更,例如在 Wi-Fi 和移動數據之間切換時。目前,可以通過在應用清單文件中註冊一個接收器來偵聽隱式 CONNECTIVITY_ACTION廣播,讓應用能夠監控這些變更。由於很多應用會註冊接收此廣播,因此單次網路切換即會導致所有應用被喚醒並同時處理此廣播。同理,應用可以註冊接收來自其他應用(例如相機)的隱式ACTION_NEW_PICTURE 和ACTION_NEW_VIDEO 廣播。當用戶使用相機應用拍攝照片時,這些應用即會被喚醒處理廣播。

為減緩這些問題,Android N應用了以下優化措施:

1、面向 Android N 開發的應用不會收到 CONNECTIVITY_ACTION 廣播,即使它們已有清單條目來請求接受這些事件的通知。在前台運行的應用如果使用BroadcastReceiver請求接收通知,則仍可以在主線程中偵聽CONNECTIVITY_CHANGE。

2、 應用無法發送或接收 ACTION_NEW_PICTURE 和ACTION_NEW_VIDEO廣播。此項優化會影響所有應用,而不僅僅是面向 Android N 的應用。

未來的 Android 版本還可能會棄用其他隱式廣播以及未綁定的後台服務。有鑒於此,應避免依賴在清單文件中聲明的接收器來偵聽隱式廣播或刪除此依賴關係,以及避免或刪除對後台服務的依賴關係。

Android 框架提供多種解決方案來降低這些隱式廣播或後台服務的必要性。例如,JobScheduler API 提供了一個穩健可靠的機制來安排滿足指定條件(例如連入不按流量計費的網路)時所執行的網路操作。甚至可以使用JobScheduler來響應內容提供程序所發生的變更。

七、Data Saver

在移動設備的整個生命周期,蜂窩數據計劃的成本通常會超出設備本身的成本。對於許多用戶而言,蜂窩數據是他們想要節省的昂貴資源。

Android N推出了Data Saver模式,這是一項新的系統服務,有助於減少應用使用的蜂窩數據,無論是在漫遊,賬單周期即將結束,還是使用少量的預付費數據包。 Data Saver讓用戶可以控制應用使用蜂窩數據的方式,同時讓開發者打開Data Saver時可以提供更多有效的服務。

八、Vulkan API

Android N 將一項新的 3D 渲染 API Vulkan™ 集成到平台中。就像 OpenGL™ ES 一樣,Vulkan是 3D 圖形和渲染的一項開放標準,由Khronos Group 維護。

Vulkan是完全從零開始設計,以最小化驅動器中的 CPU 開銷,並能讓應用更直接地控制 GPU 操作。Vulkan還允許多個線程同時執行工作,如命令緩衝區構建,以獲得更好的并行化。

Vulkan開發工具和庫都已捲入Android NDK。它們包括:

● 頭

● 驗證層(調試庫)

● SPIR-V 著色程序編譯器

● SPIR-V 運行時著色器編譯庫

● Vulkan僅適用於已啟用Vulkan硬體的設備上的應用,如 Nexus 5X、Nexus 6P 和Nexus Player。

九、號碼屏蔽

Android N 現在支持在平台中進行號碼屏蔽,提供框架 API,讓服務提供商可以維護屏蔽的號碼列表。默認簡訊應用、默認手機應用和提供商應用可以對屏蔽的號碼列表進行讀取和寫入操作,其他應用則無法訪問此列表。

十、來電過濾

Android N 允許默認的手機應用過濾來電。手機應用執行此操作的方式是實現新的CallScreeningService,該方法允許手機應用基於來電的Call.Details執行大量操作,例如:

● 拒絕來電

● 不允許來電到達通話記錄

● 不向用戶顯示來電通知

十一、多區域設置支持、多語言

Android N 現在允許用戶在設置中選擇多個區域設置,以更好地支持雙語用例。應用可以使用新的 API 獲取用戶選擇的區域設置,然後為多區域設置用戶提供更成熟的用戶體驗,如以多個語言顯示搜索結果,並且不會以用戶了解的語言翻譯網頁。

除多區域設置支持外,Android N 還擴展了用戶可用的語言範圍。它針對常用語言提供超過 25種的變體,如英語、西班牙語、法語和阿拉伯語。它還針對 100 多種新語言添加了部分支持。

應用可以通過調用 LocaleList.GetDefault 獲取用戶設置的區域設置列表。 為支持擴展的區域設置數量,Android N 正在改變其解析資源的方式。

十二、新增的表情符號

Android N引入更多表情符號和表情符號相關功能,包括膚色表情符號和支持變數選擇符。如果應用支持表情符號,請遵循以下準則,以便能充分利用這些表情符號相關功能優勢。

在插入之前,檢查設備是否包含表情符號。若要檢查系統字體中有哪些表情符號,使用hasGlyph(String) 方法。

檢查表情符號是否支持變數選擇符。變數選擇符能夠呈現一些彩色或黑白的表情符號。在移動設備上,應用應呈現彩色的表情符號,而不是黑白的。但是,如果應用顯示嵌入在文本中的表情符號,那應使用黑白變數。若要確定表情符號是否有變數,使用變數選擇符。如需有關支持變數的字元的完整清單,請參閱變數的 Unicode 文檔中的表情符號變數序列部分。

檢查表情符號是否支持膚色。Android N允許用戶按照他們的喜好修改表情符號呈現的膚色。鍵盤應用應為有多個膚色的表情符號提供可視化的指示,並應允許用戶選擇他們喜歡的膚色。若要確定哪些系統表情符號有膚色修改器,使用hasGlyph(String) 方法。可以通過讀取Unicode 文檔來確定哪些表情符號使用膚色。

十三、Android 中的 ICU4J API

ICU4J 是一個廣泛使用的開源 Java 庫集合,為軟體應用提供 Unicode 和全球化支持。Android N 在android.icu軟體包下顯示 Android 框架中的 ICU4J API 子集,供應用開發者使用。遷移很簡單,主要是需要從com.java.icu命名空間更改為android.icu。如果已在應用中使用 ICU4J 捆綁包,切換到 Android 框架中提供的android.icu API 可以大量節省 APK 大小。

十四、OpenGL™ ES 3.2 API

Android N 添加了框架介面和對 OpenGL ES 3.2 的平台支持,包括:

● 來自 Android 擴展包 (AEP) 的所有擴展(EXT_texture_sRGB_decode除外)。

● 針對 HDR 的浮點幀緩衝和延遲著色。

● BaseVertex繪圖調用可實現更好的批處理和流媒體服務。

● 強大的緩衝區訪問控制可減少WebGL開銷。

十五、VR 支持

(面向Android的 Google VR SDK)

Android N 添加了新的VR 模式的平台支持和優化,以使開發者能為用戶打造高質量移動 VR體驗。新版針對開發者提供了大量性能增強特性,包括單一緩衝區渲染以及允許 VR 應用訪問某個專屬的CPU 核心。在應用中,可以享受到專為 VR 設計的平滑頭部跟蹤和立體聲通知功能。

十六、無障礙增強功能

API參考 android.accessibilityservice.GestureDescription

Android N 現在針對新的設備設置直接在歡迎屏幕上提供「Vision Settings」。這使用戶可以更容易發現和配置他們設備上的無障礙功能,包括放大手勢、字體大小、顯示屏尺寸和TalkBack。

十七、密鑰認證

使用硬體支持的密鑰庫,可更安全地在 Android 設備上創建、存儲和使用加密密鑰。它們可保護密鑰免受 Linux 內核、潛在的 Android 漏洞的攻擊,也可防止從已取得根許可權的設備提取密鑰。

為了讓硬體支持的密鑰庫使用起來更簡單和更安全,Android N 引入了密鑰認證。應用和關閉的設備可使用密鑰認證以堅決地確定 RSA 或 EC 密鑰對是否受硬體支持、密鑰對的屬性如何,以及其使用和有效性有何限制。

應用和關閉的設備服務可以通過 X.509 認證證書(必須由有效的認證密鑰簽署)請求有關密鑰對的信息。認證密鑰是一個 ECDSA 簽署密鑰,其在出廠時被注入設備的硬體支持的密鑰庫。因此,有效的認證密鑰簽署的認證證書可確認硬體支持的密鑰庫是否存在,以及該密鑰庫中密鑰對的詳細信息。

為確保設備使用安全的官方 Android 出廠映像,密鑰認證要求設備 bootloader向可信執行環境(TEE)提供以下信息:

設備上安裝的操作系統版本和補丁級別

● 驗證的啟動公鑰和鎖定狀態。

● 除密鑰認證外,Android N 還推出了指紋綁定密鑰,在指紋註冊時不會撤銷。

另外新增特性還有直接啟動、列印服務增強、持續性能 API、作用域目錄訪問、鍵盤快捷鍵輔助工具等。

Android 7.0諸多新特性,如何立刻體驗?

騰訊WeTest雲真機上已經有多部Android 7.0手機可以選擇,讓您在網頁端流暢控制雲端手機。

文章選自:騰訊WeTest



熱門推薦

本文由 yidianzixun 提供 原文連結

寵物協尋 相信 終究能找到回家的路
寫了7763篇文章,獲得2次喜歡
留言回覆
回覆
精彩推薦