...

Android 12 正式發布 | 開發者們的(de)全新舞台

2021-10-11

作者 / Dave Burke, VP of Engineering

10 月 4 日,我們已經将源代碼推送至 Android 開源項目 (AOSP),并正式發布最新版本的(de) Android。Android 12 會在(zài)接下來(lái)的(de)幾周内推送至 Pixel 設備,并在(zài)今年晚些時(shí)候覆蓋三星 Galaxy、一(yī / yì /yí)加、OPPO、realme、TECNO、Vivo 和(hé / huò)小米設備。

再次感謝大(dà)家在(zài) Android 12 Beta 版期間分享的(de)反饋!有超過 22.5 萬人(rén)在(zài) Pixel 以(yǐ)及合作廠商的(de)設備上(shàng)測試了(le/liǎo) Android 12 的(de)早期版本,并向我們提交了(le/liǎo)近 5 萬條問題報告,以(yǐ)幫助提高版本的(de)質量。我們也(yě)很感謝大(dà)家在(zài)許多文章、讨論、調研和(hé / huò)面談中給出(chū)的(de)寶貴想法,以(yǐ)及确保自己的(de)應用及時(shí)獲得兼容性更新所做的(de)工作。大(dà)家的(de)支持和(hé / huò)貢獻使 Android 得以(yǐ)成爲(wéi / wèi)适合所有人(rén)的(de)了(le/liǎo)不(bù)起的(de)系統平台。

我們也(yě)将在(zài)今年 10 月 27 日至 28 日召開的(de) Android Dev Summit 上(shàng)分享更多 Android 12 的(de)詳細信息。關于(yú)本次峰會,我們也(yě)帶來(lái)了(le/liǎo)包括 Android 技術演講概覽在(zài)内的(de)更多信息,請繼續閱讀本文或者 點擊這(zhè)裏 了(le/liǎo)解詳情。

Android 12 爲(wéi / wèi)開發者帶來(lái)了(le/liǎo)什麽?

這(zhè)裏針對開發者們列出(chū)一(yī / yì /yí)些不(bù)容錯過的(de) Android 12 新特性。請務必前往 Android 12 開發者網站 查看所有新功能的(de)詳細信息。

Android 的(de)新 UI

Material You - Android 12 帶來(lái)了(le/liǎo)新的(de)設計語言,名爲(wéi / wèi) Material You,用以(yǐ)幫助大(dà)家構建更加個(gè)性化、更漂亮的(de)應用。如果想将所有最新的(de) Material Design 3 新特性帶入您的(de)應用,請嘗試 Material 設計組件 的(de) Alpha 版本,并關注即将到(dào)來(lái)的(de) Jetpack Compose 支持。

重新設計的(de)微件 (widget) - 我們重新設計了(le/liǎo)應用微件,讓它們更實用、更美觀,且更易于(yú)發現。您可以(yǐ)體驗新的(de)交互控件、适用于(yú)任何設備的(de)響應式布局,以(yǐ)及動态顔色,來(lái)創建充滿個(gè)性同時(shí)依然擁有高度一(yī / yì /yí)緻性的(de)外觀。請訪問 官方文檔 了(le/liǎo)解詳細信息。

通知界面更新 - 我們還對通知設計進行了(le/liǎo)改版,使其更現代、更實用。Android 12 也(yě)會使用标準的(de)元素來(lái)美化自定義通知,使其觀感與其他(tā)通知保持一(yī / yì /yí)緻。請訪問 官方文檔 了(le/liǎo)解詳細信息。

過度滾動拉伸效果 - 爲(wéi / wèi)了(le/liǎo)讓應用内容的(de)滾動更加順暢,Android 12 爲(wéi / wèi)所有滾動容器添加了(le/liǎo)一(yī / yì /yí)個(gè)新的(de)過度滾動 "拉伸" 效果。這(zhè)個(gè)自帶的(de)滾動停止效果覆蓋整個(gè)系統和(hé / huò)所有應用。請訪問 官方文檔 了(le/liǎo)解詳細信息。

應用啓動畫面 - Android 12 還爲(wéi / wèi)所有的(de)應用帶來(lái)了(le/liǎo)新的(de)啓動畫面。應用也(yě)可以(yǐ)通過多種方式來(lái)定制啓動畫面,以(yǐ)彰顯其獨有的(de)品牌個(gè)性。請訪問 官方文檔 了(le/liǎo)解詳細信息。

性能表現

更快、更高效的(de)系統性能 - 我們将核心系統服務所需的(de) CPU 時(shí)間減少了(le/liǎo) 22%,并将對大(dà)核的(de)使用減少了(le/liǎo) 15%。我們還改善了(le/liǎo)應用的(de)啓動時(shí)間,并優化了(le/liǎo) I/O 以(yǐ)加快應用的(de)加載速度;對于(yú)數據庫查詢,在(zài)使用 CursorWindow 處理大(dà)量數據的(de)時(shí)候,我們将其性能提高了(le/liǎo) 49 倍之(zhī)多。

前台服務優化 - 爲(wéi / wèi)了(le/liǎo)給用戶提供更好的(de)體驗,Android 12 禁止應用在(zài)後台啓動前台服務。應用可以(yǐ)使用 JobScheduler 中新引入的(de) 加急作業 (expedited job) 來(lái)代替之(zhī)前的(de)做法。請訪問 官方文檔 了(le/liǎo)解詳細信息。

更靈敏的(de)通知 - Android 12 對通知 trampoline (利用廣播接收器或服務間接啓動目标 Activity) 的(de)限制有助于(yú)減少從通知中啓動應用的(de)延遲。例如,Google Photos 應用在(zài)不(bù)使用通知 trampoline 後,啓動速度快了(le/liǎo) 34%。請訪問 官方文檔 了(le/liǎo)解詳細信息。

性能等級 (Performance class) - 性能等級定義了(le/liǎo)一(yī / yì /yí)組設備功能,它們共同支持在(zài) Android 12 設備上(shàng)運行更苛刻的(de)用例和(hé / huò)更高質量的(de)内容。應用可以(yǐ)在(zài)運行時(shí)檢查設備的(de)性能等級,并充分利用設備的(de)性能。請訪問 官方文檔 了(le/liǎo)解詳細信息。

更快的(de)機器學習 - Android 12 能幫助您充分利用 ML 加速器,并通過 Neural Networks API 始終獲得最佳的(de)性能表現。ML 加速器驅動現在(zài)也(yě)可以(yǐ)獨立于(yú)平台版本之(zhī)外,通過 Google Play 服務進行更新,因此您可以(yǐ)在(zài)任何兼容的(de)設備上(shàng)使用最新的(de)驅動。

隐私

隐私信息中心 - 系統設置 (Settings) 中新增的(de)這(zhè)個(gè)信息中心讓用戶可以(yǐ)更好地(dì / de)了(le/liǎo)解應用何時(shí)訪問麥克風、攝像頭和(hé / huò)位置數據。請訪問 官方文檔 了(le/liǎo)解詳細信息。

大(dà)緻位置 - 用戶對位置數據有了(le/liǎo)更多的(de)控制權,即使您的(de)應用請求确切位置,他(tā)們也(yě)可以(yǐ)隻授權訪問大(dà)緻位置。請訪問 官方文檔 了(le/liǎo)解詳細信息。

麥克風和(hé / huò)攝像頭指示标志 - 狀态欄中的(de)指示标志讓用戶知道(dào)應用何時(shí)在(zài)使用設備攝像頭或麥克風。請訪問 官方文檔 了(le/liǎo)解詳細信息。

麥克風和(hé / huò)攝像頭切換開關 - 在(zài)支持的(de)設備上(shàng),快捷設置 (Quick Settings) 中新增的(de)切換開關讓用戶可以(yǐ)輕松地(dì / de)立即禁止所有應用對麥克風和(hé / huò)攝像頭的(de)訪問。請訪問 官方文檔 了(le/liǎo)解詳細信息。

附近設備權限 - 您的(de)應用可以(yǐ)使用新的(de)權限來(lái)掃描附近的(de)設備并與之(zhī)配對,而(ér)不(bù)需要(yào / yāo)獲取位置權限。請訪問 官方文檔 了(le/liǎo)解詳細信息。

更好的(de)用戶體驗工具

富媒體内容插入 - 新增了(le/liǎo)統一(yī / yì /yí)的(de) API 讓您的(de)用戶界面可以(yǐ)從任何來(lái)源接收富媒體内容: 包括剪貼闆、鍵盤、拖放等。爲(wéi / wèi)确保向前兼容性,我們也(yě)将這(zhè)套統一(yī / yì /yí)的(de) API 添加到(dào)了(le/liǎo) AndroidX 中。請訪問 官方文檔 了(le/liǎo)解詳細信息。

支持圓角屏幕 - 許多現代設備的(de)屏幕采用圓角設計。爲(wéi / wèi)了(le/liǎo)在(zài)這(zhè)些設備上(shàng)提供良好的(de)用戶體驗,您可以(yǐ)使用新的(de) API 來(lái)查詢圓角詳情,然後根據需要(yào / yāo)管理 UI 元素。請訪問 官方文檔 了(le/liǎo)解詳細信息。

AVIF 圖像支持 - Android 12 增加了(le/liǎo)對 AV1 圖像文件格式 (AVIF) 的(de)平台支持。AVIF 利用了(le/liǎo)視頻壓縮的(de)幀内編碼内容,與舊的(de)圖像格式 (如 JPEG) 相比,在(zài)相同的(de)文件大(dà)小下可以(yǐ)大(dà)幅提高圖像質量。

兼容媒體轉碼 - 對于(yú)視頻内容,HEVC 格式在(zài)質量和(hé / huò)壓縮方面都有明顯的(de)提升,我們建議所有的(de)應用都支持該格式。不(bù)能支持 HEVC 的(de)應用可以(yǐ)使用兼容媒體轉碼功能,應用隻需請求 AVC 格式的(de)文件,并由系統來(lái)進行轉碼。請訪問 官方文檔 了(le/liǎo)解詳細信息。

更易用的(de)模糊、彩色濾鏡等特效 - 新的(de) API 讓您能更輕松地(dì / de)将常見圖形效果應用到(dào)視圖和(hé / huò)渲染結構上(shàng)。您可以(yǐ)使用 RenderEffect 将模糊、色彩濾鏡等效果應用于(yú) RenderNode 或 View。您還可以(yǐ)使用新的(de) Window.setBackgroundBlurRadius() API 爲(wéi / wèi)窗口背景創建霧面玻璃效果,或者使用 blurBehindRadius 來(lái)模糊窗口後面的(de)所有内容。

增強的(de)觸覺體驗 - Android 12 提供了(le/liǎo)更多工具來(lái)爲(wéi / wèi) UI 事件創建豐富的(de)觸覺反饋,以(yǐ)及爲(wéi / wèi)遊戲營造出(chū)更沉浸和(hé / huò)愉悅的(de)體驗,更能打造出(chū)有助于(yú)提升生産力的(de)觸覺效果。請訪問 官方文檔 了(le/liǎo)解詳細信息。

新的(de)攝像頭效果和(hé / huò)傳感器功能 - 新的(de) 設備廠商擴展 讓應用可以(yǐ)利用設備廠商打造的(de)自定義攝像頭效果,比如散景 (bokeh)、HDR、夜間模式等。您還可以(yǐ)使用新的(de) API 來(lái)充分利用配備了(le/liǎo)四/九 (Quad/Nona) 拜耳模式的(de)超高分辨率攝像頭。請訪問 官方文檔 了(le/liǎo)解詳細信息。

更好地(dì / de)調試原生代碼崩潰 - Android 12 提供了(le/liǎo)更多可操作的(de)診斷信息,讓您可以(yǐ)更輕松地(dì / de)調試 NDK 相關的(de)崩潰。應用現在(zài)可以(yǐ)通過 App Exit Reasons API 來(lái)訪問詳細的(de)崩潰轉儲文件 (稱爲(wéi / wèi) tombstone)。

Android 12 的(de)遊戲支持 - 通過 遊戲模式 (Game Mode) API,您可以(yǐ)在(zài)玩家爲(wéi / wèi)遊戲選擇不(bù)同的(de)性能配置時(shí)做出(chū)反應: 比如在(zài)漫長的(de)通勤途中節省電池消耗,或者通過性能模式獲得更高的(de)幀率。邊玩邊下 (play as you download) 功能将允許遊戲在(zài)安裝過程中從後台下載遊戲資源,從而(ér)讓玩家更快地(dì / de)進入遊戲。

讓您的(de)應用爲(wéi / wèi) Android 12 做好準備

随着 Android 12 的(de)正式發布,我們要(yào / yāo)求所有的(de) Android 開發者完成兼容性測試并盡快發布更新,以(yǐ)便用戶順利過渡到(dào) Android 12。

要(yào / yāo)測試應用的(de)兼容性,隻需在(zài) 運行 Android 12 的(de)設備 上(shàng)安裝應用,并測試應用的(de)所有流程,找出(chū)功能或 UI 上(shàng)暴露的(de)問題。請通過 Android 12 行爲(wéi / wèi)變更清單 (針對所有應用) 來(lái)找出(chū)可能影響應用的(de)變更。

這(zhè)裏列出(chū)一(yī / yì /yí)些需要(yào / yāo)注意的(de)變更:

  • 隐私信息中心 - 通過系統設置 (Settings) 中新增的(de)這(zhè)個(gè)信息中心來(lái)查看應用對麥克風、位置信息和(hé / huò)其他(tā)敏感數據的(de)訪問,您也(yě)可考慮向用戶提供訪問原因的(de)詳細信息。請訪問 官方文檔 了(le/liǎo)解詳細信息。

  • 麥克風和(hé / huò)攝像頭指示标志 - 當應用正在(zài)使用攝像頭或麥克風時(shí),Android 12 會在(zài)狀态欄顯示指示标志。請确保該标志不(bù)會影響應用的(de)用戶界面。請訪問 官方文檔 了(le/liǎo)解詳細信息。

  • 麥克風和(hé / huò)攝像頭切換開關 - 使用快捷設置 (Quick Settings) 中新增的(de)切換開關來(lái)禁止應用對麥克風和(hé / huò)攝像頭的(de)訪問,請确保您的(de)應用能正确處理這(zhè)一(yī / yì /yí)變化。請訪問 官方文檔 了(le/liǎo)解詳細信息。

  • 剪貼闆訪問通知 - 當應用從剪貼闆中讀取數據時(shí),請注意出(chū)現的(de)消息框消息。請避免出(chū)現意外訪問的(de)情形。請訪問 官方文檔 了(le/liǎo)解詳細信息。

  • 過度滾動拉伸效果 - 請通過您的(de)滾動内容來(lái)體驗新的(de) "拉伸" 過度滾動效果,并确保内容如預期顯示。請訪問 官方文檔 了(le/liǎo)解詳細信息。

  • 應用啓動畫面 - 通過各種流程啓動您的(de)應用,以(yǐ)測試新的(de)啓動動畫。如果有必要(yào / yāo),您可以(yǐ)對其進行自定義。請訪問 官方文檔 了(le/liǎo)解詳細信息。

  • Keygen 變更 - 我們移除了(le/liǎo)一(yī / yì /yí)些被廢棄的(de) BouncyCastle 加密算法,轉而(ér)使用 Conscrypt 實現。如果您的(de)應用使用 512 位的(de) AES 密鑰,您需要(yào / yāo)将其改爲(wéi / wèi) Conscrypt 支持的(de)标準長度。請訪問 官方文檔 了(le/liǎo)解詳細信息。

别忘了(le/liǎo)測試應用中的(de)開發庫和(hé / huò) SDK 的(de)兼容性。如果您發現 SDK 的(de)問題,請嘗試更新 SDK 到(dào)最新版本,或向其開發者尋求幫助。 一(yī / yì /yí)旦您發布了(le/liǎo)當前應用的(de)兼容版本,就(jiù)可以(yǐ)開始 着手升級 應用的(de) targetSdkVersion。請查閱 行爲(wéi / wèi)變更清單 (針對面向 Android 12 的(de)應用),并使用 兼容性框架工具 來(lái)快速檢測問題。

相聚 Android Dev Summit 2021,盡覽 Android 12 等衆多精彩!

#AndroidDevSummit 回來(lái)了(le/liǎo)!10 月 27 日至 28 日,和(hé / huò)我們一(yī / yì /yí)起了(le/liǎo)解包括 Android 12 在(zài)内的(de) Android 開發最新進展。今年的(de)主題是(shì)傑出(chū)的(de)應用和(hé / huò)跨設備,您還将了(le/liǎo)解有助于(yú)提高工作效率的(de)開發工具、API 和(hé / huò)技術,從而(ér)打造出(chū)更棒的(de)應用,并在(zài)數十億台設備上(shàng)運行,包括平闆電腦、可折疊設備、可穿戴設備等。

我們也(yě)帶來(lái)了(le/liǎo)關于(yú)本次峰會的(de)更多消息,包括 30 餘場 Android 技術演講的(de)概覽,您可以(yǐ)在(zài) 官方網站 查看并規劃自己應該關注哪些場次。在(zài)接下來(lái)的(de)幾周内我們也(yě)會邀請大(dà)家提交 #AskAndroid 問題,我們的(de)團隊成員會在(zài)峰會現場進行解答。

本次峰會将于(yú)美國(guó)太平洋時(shí)間 10 月 27 日上(shàng)午 10 點 (北京時(shí)間 10 月 28 日淩晨 1 點) 開幕,第一(yī / yì /yí)場大(dà)戲就(jiù)是(shì) The Android Show,這(zhè)是(shì)一(yī / yì /yí)場 50 分鍾的(de)技術主題演講,您将聽到(dào)所有和(hé / huò) Android 開發者有關的(de)最新消息和(hé / huò)進展。别忘了(le/liǎo) 注冊 并獲取最新動态。

歡迎您 點擊這(zhè)裏 向我們提交反饋,或分享您喜歡的(de)内容、發現的(de)問題。您的(de)反饋對我們非常重要(yào / yāo),感謝您的(de)支持!


來(lái)源:oschina