作者 / Dave Burke, VP of Engineering
10 月 4 日遏插,我們已經(jīng)將源代碼推送至 Android 開源項目 (AOSP),并正式發(fā)布最新版本的 Android纠修。Android 12 會在接下來的幾周內(nèi)推送至 Pixel 設(shè)備胳嘲,并在今年晚些時候覆蓋三星 Galaxy、一加扣草、OPPO了牛、realme、TECNO辰妙、Vivo 和小米設(shè)備鹰祸。
再次感謝大家在 Android 12 Beta 版期間分享的反饋!有超過 22.5 萬人在 Pixel 以及合作廠商的設(shè)備上測試了 Android 12 的早期版本密浑,并向我們提交了近 5 萬條問題報告蛙婴,以幫助提高版本的質(zhì)量。我們也很感謝大家在許多文章尔破、討論街图、調(diào)研和面談中給出的寶貴想法,以及確保自己的應用及時獲得兼容性更新所做的工作呆瞻。大家的支持和貢獻使 Android 得以成為適合所有人的了不起的系統(tǒng)平臺台夺。
我們也將在今年 10 月 27 日至 28 日召開的 Android Dev Summit 上分享更多 Android 12 的詳細信息径玖。關(guān)于本次峰會痴脾,我們也帶來了包括 Android 技術(shù)演講概覽在內(nèi)的更多信息,請繼續(xù)閱讀本文或者 點擊這里 了解詳情梳星。
Android 12 為開發(fā)者帶來了什么赞赖?
這里針對開發(fā)者們列出一些不容錯過的 Android 12 新特性。請務必前往 Android 12 開發(fā)者網(wǎng)站 查看所有新功能的詳細信息冤灾。
Android 的新 UI
Material You - Android 12 帶來了新的設(shè)計語言前域,名為 Material You,用以幫助大家構(gòu)建更加個性化韵吨、更漂亮的應用匿垄。如果想將所有最新的 Material Design 3 新特性帶入您的應用,請嘗試 Material 設(shè)計組件 的 Alpha 版本归粉,并關(guān)注即將到來的 Jetpack Compose 支持椿疗。
重新設(shè)計的微件 (widget) - 我們重新設(shè)計了應用微件,讓它們更實用糠悼、更美觀届榄,且更易于發(fā)現(xiàn)。您可以體驗新的交互控件倔喂、適用于任何設(shè)備的響應式布局铝条,以及動態(tài)顏色靖苇,來創(chuàng)建充滿個性同時依然擁有高度一致性的外觀。請訪問 官方文檔 了解詳細信息班缰。
通知界面更新 - 我們還對通知設(shè)計進行了改版贤壁,使其更現(xiàn)代、更實用埠忘。Android 12 也會使用標準的元素來美化自定義通知芯砸,使其觀感與其他通知保持一致。請訪問 官方文檔 了解詳細信息给梅。
過度滾動拉伸效果 - 為了讓應用內(nèi)容的滾動更加順暢假丧,Android 12 為所有滾動容器添加了一個新的過度滾動 "拉伸" 效果。這個自帶的滾動停止效果覆蓋整個系統(tǒng)和所有應用动羽。請訪問 官方文檔 了解詳細信息包帚。
應用啟動畫面 - Android 12 還為所有的應用帶來了新的啟動畫面。應用也可以通過多種方式來定制啟動畫面运吓,以彰顯其獨有的品牌個性渴邦。請訪問 官方文檔 了解詳細信息。
性能表現(xiàn)
更快拘哨、更高效的系統(tǒng)性能 - 我們將核心系統(tǒng)服務所需的 CPU 時間減少了 22%谋梭,并將對大核的使用減少了 15%。我們還改善了應用的啟動時間倦青,并優(yōu)化了 I/O 以加快應用的加載速度瓮床;對于數(shù)據(jù)庫查詢,在使用 CursorWindow 處理大量數(shù)據(jù)的時候产镐,我們將其性能提高了 49 倍之多隘庄。
前臺服務優(yōu)化 - 為了給用戶提供更好的體驗,Android 12 禁止應用在后臺啟動前臺服務癣亚。應用可以使用 JobScheduler 中新引入的 加急作業(yè) (expedited job) 來代替之前的做法丑掺。請訪問 官方文檔 了解詳細信息。
更靈敏的通知 - Android 12 對通知 trampoline (利用廣播接收器或服務間接啟動目標 Activity) 的限制有助于減少從通知中啟動應用的延遲述雾。例如街州,Google Photos 應用在不使用通知 trampoline 后,啟動速度快了 34%玻孟。請訪問 官方文檔 了解詳細信息唆缴。
性能等級 (Performance class) - 性能等級定義了一組設(shè)備功能,它們共同支持在 Android 12 設(shè)備上運行更苛刻的用例和更高質(zhì)量的內(nèi)容取募。應用可以在運行時檢查設(shè)備的性能等級琐谤,并充分利用設(shè)備的性能。請訪問 官方文檔 了解詳細信息玩敏。
更快的機器學習 - Android 12 能幫助您充分利用 ML 加速器斗忌,并通過 Neural Networks API 始終獲得最佳的性能表現(xiàn)质礼。ML 加速器驅(qū)動現(xiàn)在也可以獨立于平臺版本之外,通過 Google Play 服務進行更新织阳,因此您可以在任何兼容的設(shè)備上使用最新的驅(qū)動眶蕉。
隱私
隱私信息中心 - 系統(tǒng)設(shè)置 (Settings) 中新增的這個信息中心讓用戶可以更好地了解應用何時訪問麥克風、攝像頭和位置數(shù)據(jù)唧躲。請訪問 官方文檔 了解詳細信息造挽。
大致位置 - 用戶對位置數(shù)據(jù)有了更多的控制權(quán),即使您的應用請求確切位置弄痹,他們也可以只授權(quán)訪問大致位置饭入。請訪問 官方文檔 了解詳細信息。
麥克風和攝像頭指示標志 - 狀態(tài)欄中的指示標志讓用戶知道應用何時在使用設(shè)備攝像頭或麥克風肛真。請訪問 官方文檔 了解詳細信息谐丢。
麥克風和攝像頭切換開關(guān) - 在支持的設(shè)備上,快捷設(shè)置 (Quick Settings) 中新增的切換開關(guān)讓用戶可以輕松地立即禁止所有應用對麥克風和攝像頭的訪問蚓让。請訪問 官方文檔 了解詳細信息乾忱。
附近設(shè)備權(quán)限 - 您的應用可以使用新的權(quán)限來掃描附近的設(shè)備并與之配對,而不需要獲取位置權(quán)限历极。請訪問 官方文檔 了解詳細信息窄瘟。
更好的用戶體驗工具
富媒體內(nèi)容插入 - 新增了統(tǒng)一的 API 讓您的用戶界面可以從任何來源接收富媒體內(nèi)容: 包括剪貼板、鍵盤趟卸、拖放等蹄葱。為確保向前兼容性,我們也將這套統(tǒng)一的 API 添加到了 AndroidX 中衰腌。請訪問 官方文檔 了解詳細信息新蟆。
支持圓角屏幕 - 許多現(xiàn)代設(shè)備的屏幕采用圓角設(shè)計。為了在這些設(shè)備上提供良好的用戶體驗右蕊,您可以使用新的 API 來查詢圓角詳情,然后根據(jù)需要管理 UI 元素吮螺。請訪問 官方文檔 了解詳細信息饶囚。
AVIF 圖像支持 - Android 12 增加了對 AV1 圖像文件格式 (AVIF) 的平臺支持。AVIF 利用了視頻壓縮的幀內(nèi)編碼內(nèi)容鸠补,與舊的圖像格式 (如 JPEG) 相比萝风,在相同的文件大小下可以大幅提高圖像質(zhì)量。
兼容媒體轉(zhuǎn)碼 - 對于視頻內(nèi)容紫岩,HEVC 格式在質(zhì)量和壓縮方面都有明顯的提升规惰,我們建議所有的應用都支持該格式。不能支持 HEVC 的應用可以使用兼容媒體轉(zhuǎn)碼功能泉蝌,應用只需請求 AVC 格式的文件歇万,并由系統(tǒng)來進行轉(zhuǎn)碼揩晴。請訪問 官方文檔 了解詳細信息。
更易用的模糊贪磺、彩色濾鏡等特效 - 新的 API 讓您能更輕松地將常見圖形效果應用到視圖和渲染結(jié)構(gòu)上硫兰。您可以使用 RenderEffect 將模糊、色彩濾鏡等效果應用于 RenderNode 或 View寒锚。您還可以使用新的 Window.setBackgroundBlurRadius() API 為窗口背景創(chuàng)建霧面玻璃效果劫映,或者使用 blurBehindRadius 來模糊窗口后面的所有內(nèi)容。
增強的觸覺體驗 - Android 12 提供了更多工具來為 UI 事件創(chuàng)建豐富的觸覺反饋刹前,以及為游戲營造出更沉浸和愉悅的體驗泳赋,更能打造出有助于提升生產(chǎn)力的觸覺效果。請訪問 官方文檔 了解詳細信息喇喉。
新的攝像頭效果和傳感器功能 - 新的 設(shè)備廠商擴展 讓應用可以利用設(shè)備廠商打造的自定義攝像頭效果摹蘑,比如散景 (bokeh)、HDR轧飞、夜間模式等衅鹿。您還可以使用新的 API 來充分利用配備了四/九 (Quad/Nona) 拜耳模式的超高分辨率攝像頭。請訪問 官方文檔 了解詳細信息过咬。
更好地調(diào)試原生代碼崩潰 - Android 12 提供了更多可操作的診斷信息大渤,讓您可以更輕松地調(diào)試 NDK 相關(guān)的崩潰。應用現(xiàn)在可以通過 App Exit Reasons API 來訪問詳細的崩潰轉(zhuǎn)儲文件 (稱為 tombstone)掸绞。
Android 12 的游戲支持 - 通過 游戲模式 (Game Mode) API泵三,您可以在玩家為游戲選擇不同的性能配置時做出反應: 比如在漫長的通勤途中節(jié)省電池消耗,或者通過性能模式獲得更高的幀率衔掸。邊玩邊下 (play as you download) 功能將允許游戲在安裝過程中從后臺下載游戲資源烫幕,從而讓玩家更快地進入游戲。
讓您的應用為 Android 12 做好準備
隨著 Android 12 的正式發(fā)布敞映,我們要求所有的 Android 開發(fā)者完成兼容性測試并盡快發(fā)布更新较曼,以便用戶順利過渡到 Android 12。
要測試應用的兼容性振愿,只需在 運行 Android 12 的設(shè)備 上安裝應用捷犹,并測試應用的所有流程,找出功能或 UI 上暴露的問題冕末。請通過 Android 12 行為變更清單 (針對所有應用) 來找出可能影響應用的變更萍歉。
這里列出一些需要注意的變更:
隱私信息中心 - 通過系統(tǒng)設(shè)置 (Settings) 中新增的這個信息中心來查看應用對麥克風、位置信息和其他敏感數(shù)據(jù)的訪問档桃,您也可考慮向用戶提供訪問原因的詳細信息枪孩。請訪問 官方文檔 了解詳細信息。
麥克風和攝像頭指示標志 - 當應用正在使用攝像頭或麥克風時,Android 12 會在狀態(tài)欄顯示指示標志蔑舞。請確保該標志不會影響應用的用戶界面拒担。請訪問 官方文檔 了解詳細信息。
麥克風和攝像頭切換開關(guān) - 使用快捷設(shè)置 (Quick Settings) 中新增的切換開關(guān)來禁止應用對麥克風和攝像頭的訪問斗幼,請確保您的應用能正確處理這一變化澎蛛。請訪問 官方文檔 了解詳細信息。
剪貼板訪問通知 - 當應用從剪貼板中讀取數(shù)據(jù)時蜕窿,請注意出現(xiàn)的消息框消息谋逻。請避免出現(xiàn)意外訪問的情形。請訪問 官方文檔 了解詳細信息桐经。
過度滾動拉伸效果 - 請通過您的滾動內(nèi)容來體驗新的 "拉伸" 過度滾動效果毁兆,并確保內(nèi)容如預期顯示。請訪問 官方文檔 了解詳細信息阴挣。
應用啟動畫面 - 通過各種流程啟動您的應用气堕,以測試新的啟動動畫。如果有必要畔咧,您可以對其進行自定義茎芭。請訪問 官方文檔 了解詳細信息。
Keygen 變更 - 我們移除了一些被廢棄的 BouncyCastle 加密算法誓沸,轉(zhuǎn)而使用 Conscrypt 實現(xiàn)梅桩。如果您的應用使用 512 位的 AES 密鑰,您需要將其改為 Conscrypt 支持的標準長度拜隧。請訪問 官方文檔 了解詳細信息稼跳。
別忘了測試應用中的開發(fā)庫和 SDK 的兼容性虏束。如果您發(fā)現(xiàn) SDK 的問題奈揍,請嘗試更新 SDK 到最新版本掌唾,或向其開發(fā)者尋求幫助。
一旦您發(fā)布了當前應用的兼容版本干奢,就可以開始 著手升級 應用的 targetSdkVersion痊焊。請查閱 行為變更清單 (針對面向 Android 12 的應用),并使用 兼容性框架工具 來快速檢測問題律胀。
相聚 Android Dev Summit 2021宋光,盡覽 Android 12 等眾多精彩!
#AndroidDevSummit 回來了炭菌!10 月 27 日至 28 日,和我們一起了解包括 Android 12 在內(nèi)的 Android 開發(fā)最新進展逛漫。今年的主題是杰出的應用和跨設(shè)備黑低,您還將了解有助于提高工作效率的開發(fā)工具、API 和技術(shù),從而打造出更棒的應用克握,并在數(shù)十億臺設(shè)備上運行蕾管,包括平板電腦、可折疊設(shè)備菩暗、可穿戴設(shè)備等掰曾。
我們也帶來了關(guān)于本次峰會的更多消息,包括 30 余場 Android 技術(shù)演講的概覽停团,您可以在 官方網(wǎng)站 查看并規(guī)劃自己應該關(guān)注哪些場次旷坦。在接下來的幾周內(nèi)我們也會邀請大家提交 #AskAndroid 問題,我們的團隊成員會在峰會現(xiàn)場進行解答佑稠。
本次峰會將于美國太平洋時間 10 月 27 日上午 10 點 (北京時間 10 月 28 日凌晨 1 點) 開幕秒梅,第一場大戲就是 The Android Show,這是一場 50 分鐘的技術(shù)主題演講舌胶,您將聽到所有和 Android 開發(fā)者有關(guān)的最新消息和進展捆蜀。別忘了 注冊 并獲取最新動態(tài)。
歡迎您 點擊這里 向我們提交反饋幔嫂,或分享您喜歡的內(nèi)容辆它、發(fā)現(xiàn)的問題。您的反饋對我們非常重要履恩,感謝您的支持锰茉!