作者 / Seang Chau, VP of Engineering
今天,我們將 Android 13 的源代碼推送至 Android 開源項目 (AOSP),并正式發(fā)布最新版本的 Android。對于開發(fā)者來說,Android 13 聚焦于我們的核心主題,即隱私和安全,以及開發(fā)者生產(chǎn)力,幫助您更輕松地為用戶構(gòu)建優(yōu)良的體驗。我們還繼續(xù)使 Android 成為更適合平板電腦和大屏幕設(shè)備的操作系統(tǒng),為您提供更好的工具,讓您得以充分利用世界各地正在廣泛使用的 2.7 億多臺此類設(shè)備。
Android 13 自即日起會推送至 Pixel 設(shè)備。今年晚些時候,Android 13 也會推送至其他您喜愛的設(shè)備,包括三星 Galaxy、華碩、HMD (諾基亞手機)、iQOO、摩托羅拉、一加、OPPO、真我、夏普、索尼、TECNO、vivo、小米等。
再次感謝大家分享的測試反饋,以及您為確保應(yīng)用與今天的版本兼容所做的工作。是大家的支持和貢獻讓 Android 成為了屬于每一個人的偉大平臺!
Android 13 為開發(fā)者帶來了什么?
Android 13 帶來的更新內(nèi)容眾多,下文只是精選的一部分。
開發(fā)者生產(chǎn)力和工具
主題應(yīng)用圖標- Android 13 將 Material You 的動態(tài)顏色擴展到了所有應(yīng)用圖標,讓用戶可以基于其壁紙和其他主題偏好來選擇圖標色調(diào)。您的應(yīng)用僅需提供一個單色的應(yīng)用圖標,并對自適應(yīng)圖標 XML 進行一些調(diào)整即可。
按應(yīng)用設(shè)定語言偏好- Android 13 可以讓應(yīng)用使用不同于系統(tǒng)語言的其他語言,以更好地滿足多語言用戶的需求。Android 現(xiàn)在為應(yīng)用提供了一個標準的 "應(yīng)用語言" 設(shè)置面板 (如果應(yīng)用選擇支持此功能),您還可以調(diào)用一個新的平臺 API,在運行時獲取或設(shè)置用戶的首選語言區(qū)域,從而減少模板代碼并提高兼容性。
改進的文本支持 - Android 13 針對文本和語言提供了多項改進,幫助您打造更加完美的體驗。更快的斷字將斷字性能優(yōu)化了多達 200%,因此您現(xiàn)在可以在 TextView 中啟用此功能,這幾乎不影響渲染性能。通過使用文本轉(zhuǎn)換 API,能讓中文、日文等需要使用拼音輸入的語言在執(zhí)行搜索和自動完成等功能時的速度更快。Android 13 還改善了非拉丁文字 (如泰米爾語、緬甸語、泰盧固語和藏語等) 的行高,讓字符免于被裁切且更加易于閱讀。
彩色矢量字體 - Android 13 增加了對 COLR 版本 1 (請參考詳細規(guī)格和介紹視頻) 字體的渲染支持,并將系統(tǒng)表情符號更新為 COLRv1 格式。COLRv1 是一種新的、高度緊湊的字體格式,在任何尺寸下都能快速清晰地渲染。對于大多數(shù)應(yīng)用,這項修改完全無法被感知到,系統(tǒng)會自動處理好一切。
快捷設(shè)置放置 API - 對于提供自定義快捷設(shè)置 (Quick Settings) 圖塊的應(yīng)用,Android 13 能讓用戶更容易發(fā)現(xiàn)和添加您的圖塊。借助新的圖塊放置 API,您的應(yīng)用現(xiàn)在可以讓用戶通過對話框直接添加您的自定義快捷設(shè)置圖塊,而且只需一步即可完成操作,不需要離開您的應(yīng)用。
可編程著色器 (shader) - Android 13 引入了可編程 RuntimeShader 對象,其行為使用 Android 圖形著色語言 (Android Graphics Shading Language, AGSL) 定義。您可以使用這些著色器在自己的應(yīng)用中實現(xiàn)波紋、模糊和過度滾動拉伸,以及類似的高級效果。
基于 PlaybackState 的媒體控件 - 對于以 Android 13 為目標平臺的應(yīng)用,系統(tǒng)基于 PlaybackState 操作清單實現(xiàn)了更豐富的媒體控件,從而在手機和平板電腦等設(shè)備類型上獲得更佳的一致性,并和 Android Auto 和 Android TV 等其他 Android 平臺保持一致。
藍牙低功耗 (LE) 音頻 - 低功耗 (Low Energy, LE) 音頻是用于實現(xiàn)新的用例的下一代無線音頻。用戶可以通過它與朋友和家人分享和廣播自己的音頻,或訂閱公共廣播以獲得信息、娛樂或無障礙輔助信息。它旨在確保用戶能夠在不犧牲電池壽命的情況下接收高保真音頻,并在不同用例之間無縫切換。Android 13 增加了對低功耗音頻的內(nèi)置支持,開發(fā)者們可在兼容的設(shè)備上使用這項新功能。、
MIDI 2.0 - Android 13 增加了對新的 MIDI 2.0 標準的支持,包括通過 USB 連接 MIDI 2.0 硬件的能力。這個更新的標準提供了一些新功能,如更高的控制器分辨率,更好地支持非西方音調(diào),以及通過單一音符控制器提供更佳的表現(xiàn)力。
OpenJDK 11 更新 - Android 13 核心庫已經(jīng)與 OpenJDK 11 LTS 版本保持一致,為應(yīng)用和平臺開發(fā)者提供庫更新和 Java 11 編程語言支持。作為對 Android 12 及以上設(shè)備的 ART 模塊更新的一部分,我們計劃通過 Google Play 系統(tǒng)更新將這些核心庫的變更發(fā)布至更多設(shè)備。請訪問官方文檔了解詳細信息:
https://developer.android.google.cn/about/versions/13/features#core-libraries
預(yù)測性返回手勢 - Android 13 引入了新的 API,可讓您的應(yīng)用告訴系統(tǒng)它將提前處理返回事件,我們稱之為 "提前" 模型。這個新方案會需要若干年來完善,以幫助您的應(yīng)用程序支持預(yù)測性返回手勢,該功能現(xiàn)在可通過開發(fā)者選項在當前版本中進行測試。
為平板電腦而生
Android 13 進一步拓展了我們今年早些時候發(fā)布的 Android 12L 功能更新,在平板電腦上提供了更好的體驗。我們強化了一些功能,包括針對多任務(wù)操作改進過的任務(wù)欄,更多針對大屏幕的布局,以及針對系統(tǒng)界面和應(yīng)用進行了許多優(yōu)化,應(yīng)用兼容模式也得到了改進,等等。我們將繼續(xù)投入資源為您打造工具,幫助您為平板電腦、Chromebook 和可折疊設(shè)備構(gòu)建優(yōu)良的體驗。
照片選擇器和 API - 全新的系統(tǒng)照片選擇器為用戶分享本地和云端照片提供了標準且私密的方式。照片選擇器針對 Android 上長期使用的文檔選擇器進行了擴展,使用戶可以很容易地與應(yīng)用分享特定的照片和視頻,而無需授權(quán)應(yīng)用查看設(shè)備上的所有媒體文件。照片選擇器為照片和視頻提供了專門的體驗,并提供了供應(yīng)用訪問共享媒體文件的 API。Android 11 及以上系統(tǒng)設(shè)備 (Go 設(shè)備除外) 的用戶會通過 Google Play 系統(tǒng)更新獲得照片選擇器功能。
通知權(quán)限 - 為了幫助用戶專注于對他們最重要的通知,Android 13 引入了一個新的通知運行時權(quán)限?,F(xiàn)在應(yīng)用需要在發(fā)送通知之前向用戶申請通知權(quán)限。對于以 Android 12 或更低版本為目標平臺的應(yīng)用,系統(tǒng)將代您處理升級流程。
針對附近 Wi-Fi 設(shè)備的權(quán)限 - Android 13 為管理設(shè)備與周圍 Wi-Fi 熱點連接的應(yīng)用引入了新的 NEARBY_WIFI_DEVICES 運行時權(quán)限。許多常用的 Wi-Fi API 都需要這個新權(quán)限,從而讓應(yīng)用在不需要獲得定位權(quán)限的情況下即可通過 Wi-Fi 發(fā)現(xiàn)并連接到附近的設(shè)備。
細化的媒體權(quán)限 - 在分享照片和視頻時,照片選擇器現(xiàn)在是我們推薦的解決方案,它更加用戶友好,且無需請求權(quán)限。但對于尚未使用照片選擇器的應(yīng)用,或者需要訪問音頻文件的場景,Android 13 也增加了新的更細化的媒體權(quán)限。這些媒體權(quán)限用以取代 READ_EXTERNAL_STORAGE 權(quán)限,讓應(yīng)用得以訪問特定的媒體文件類型,包括圖片、視頻和音頻。我們強烈建議您在條件允許時使用照片選擇器方案,當應(yīng)用以 Android 13 為目標平臺且不適合使用該方案時,則推薦使用細化的媒體權(quán)限。
開發(fā)者可降級權(quán)限 - 從 Android 13 開始,如果應(yīng)用不再需要某些之前由用戶授予過的權(quán)限,可以通過新的 API 來降級權(quán)限。通過移除不再使用的權(quán)限,您的應(yīng)用可以向用戶表明其只使用了必需的最少權(quán)限,從而提高用戶信任度。
更安全的導(dǎo)出 Intent 過濾器 - 在向以 Android 13 為目標平臺的其他應(yīng)用的導(dǎo)出 intent 過濾器發(fā)送顯式 intent 時,Android 13 給出了更嚴格的規(guī)則。如果 intent 指定了動作,則系統(tǒng)只在該 intent 與接收應(yīng)用中聲明的 元素匹配時才會向?qū)С鼋M件傳遞 intent。
應(yīng)用性能
Android 13 通過對 ART 運行時的更新,提高了所有應(yīng)用的性能和效率。我們正在為 Android 12 及以上設(shè)備更新 ART 模塊,作為此項更新的一環(huán),我們也會通過 Google Play 系統(tǒng)更新將這些性能改進帶給更多的 Android 用戶。
垃圾回收改進 - 一個基于 Linux 內(nèi)核功能 userfaultfd 的新垃圾回收器會隨著即將到來的 Google Play 系統(tǒng)更新加入 Android 13 設(shè)備的 ART。新的垃圾回收器消除了讀取障礙,降低了每個對象加載的開銷,減少了內(nèi)存壓力,使得編譯后的代碼體積能減少約 10%。它在 GC 時間也更高效,因為分頁會隨著壓縮的進行而被釋放??偠灾碌睦厥掌饔兄诠?jié)省電量,避免在 GC 過程中出現(xiàn)卡頓,以及讓應(yīng)用免于在低內(nèi)存時被強行終止。
遍及整個 ART 的優(yōu)化 - 在 Android 13 中,ART 讓切換到本地代碼的速度更快,反之亦然,現(xiàn)在 JNI 調(diào)用的速度可達之前的 2.5 倍。我們還重新設(shè)計了運行時的引用處理,使其基本處于非阻塞狀態(tài),這進一步減少了卡頓。我們公開了一個新的公共 API,Reference.refersTo(),讓您可以盡快回收無法抵達的對象,我們還優(yōu)化了類/方法的查找,從而讓解釋器的運行更快。最后,ART 現(xiàn)在在安裝時會執(zhí)行更多的字節(jié)碼驗證,避免了在運行時驗證的損耗,從而讓應(yīng)用能快速啟動。
讓您的應(yīng)用做好準備!
隨著今天 Android 13 正式發(fā)布至 AOSP,我們要求所有的 Android 開發(fā)者完成兼容性測試,并盡快發(fā)布更新,從而讓您的用戶能順利過渡至 Android 13。
只需在運行 Android 13 的設(shè)備上安裝您的應(yīng)用,即可開始測試其兼容性。請測試應(yīng)用的所有流程,找出功能或用戶界面中暴露的問題。
這里列出一些需要注意的變更:
通知的運行時權(quán)限 - 請您務(wù)必了解新的權(quán)限在您的應(yīng)用發(fā)送通知時的工作機制,并盡快開始規(guī)劃針對 Android 13 (API 33) 的相關(guān)工作,以讓用戶獲得良好的體驗。
剪貼板預(yù)覽 - 請確保您的應(yīng)用在 Android 13 全新的剪貼板預(yù)覽中隱藏敏感數(shù)據(jù),比如密碼或信用卡信息。
JobScheduler 預(yù)提取 - JobScheduler 現(xiàn)在會預(yù)測您下次啟動應(yīng)用的時機,并提前運行關(guān)聯(lián)的預(yù)提取作業(yè)。如果您有使用預(yù)提取作業(yè),請通過測試確保它們工作正常。
別忘了測試應(yīng)用中的開發(fā)庫和 SDK 的兼容性。如果您在測試中發(fā)現(xiàn) SDK 存在問題,請嘗試更新 SDK 到最新版本,或向其開發(fā)者尋求幫助。
一旦您發(fā)布了當前應(yīng)用的兼容版本,就可以開始更新應(yīng)用的 targetSdkVersion。請查閱行為變更清單 (針對面向 Android 13 的應(yīng)用),并使用兼容性框架工具來快速檢測問題。
對平板電腦和大屏幕設(shè)備的支持
Android 13 為平板電腦帶來了更好的體驗,請確保您的應(yīng)用能活用這項優(yōu)勢。您可以通過在 Android Studio 中設(shè)置 Android 模擬器來測試大屏幕設(shè)備相關(guān)的功能,或者在我們的 Android 13 Beta 合作伙伴的大屏幕設(shè)備上進行測試。
以下是一些測試時的注意點:
任務(wù)欄交互 - 請檢查您的應(yīng)用在大屏幕上配合新任務(wù)欄時的交互情況,確保應(yīng)用的界面沒有被任務(wù)欄裁切或遮擋。
多窗口模式 - 無論應(yīng)用配置如何,所有的應(yīng)用現(xiàn)在默認啟用多窗口模式,所以請確保應(yīng)用妥善處理分屏顯示。您可以通過拖放將您的應(yīng)用切換至分屏模式,并調(diào)整窗口大小來進行測試。
改進的兼容性體驗 - 如果您的應(yīng)用尚未針對平板電腦進行優(yōu)化,比如使用固定的朝向、不支持縮放等,請檢查您的應(yīng)用在兼容模式下的表現(xiàn) (如信箱模式)。
媒體投影 - 如果您的應(yīng)用使用了媒體投影功能,請檢查您的應(yīng)用在媒體播放、串流,以及在大屏幕設(shè)備上投影時的情況。別忘了針對可折疊設(shè)備的狀態(tài)切換進行適配。
相機預(yù)覽 - 針對相機應(yīng)用,請檢查相機預(yù)覽界面在大屏幕設(shè)備的多窗口模式或分屏模式中,應(yīng)用被限制在屏幕的局部區(qū)域時的表現(xiàn)。同樣也別忘了針對可折疊設(shè)備的狀態(tài)切換進行適配。
下一步
Android 13 自即日起會推送至 Pixel 設(shè)備。
如果您已經(jīng)參加了 Android Beta 版測試,您將會自動獲得 Android 13 的正式版,并會在后續(xù)的 Android 13 功能更新 (今年晚些發(fā)布) 中繼續(xù)獲得這些功能的 Beta 版更新。如果您不想繼續(xù)接收 Beta 版更新且不希望刷寫自己的設(shè)備,請在獲取完 Android 13 正式版后,并在 Android 13 的第一個功能更新 Beta 版發(fā)布之前在 Android Beta 測試站點退出測試即可:
適用于 Pixel 設(shè)備的系統(tǒng)映像已經(jīng)發(fā)布,您可以下載并刷入設(shè)備。您也可以通過 Android Studio 的 SDK 管理器獲得最新的 Android 模擬器系統(tǒng)映像。如果您需要 Android 13 的源代碼,可以在 Android 開源項目 (AOSP) repo 里的 Android 13 分支里獲取。
再次感謝您參與我們的早期體驗測試和 Beta 版測試!我們已經(jīng)迫不及待想在 Android 13 上看到您的應(yīng)用了!
審核編輯:湯梓紅
-
Android
+關(guān)注
關(guān)注
12文章
3903瀏覽量
126611 -
開源
+關(guān)注
關(guān)注
3文章
3125瀏覽量
42068 -
AOSP
+關(guān)注
關(guān)注
0文章
16瀏覽量
6167 -
Pixel
+關(guān)注
關(guān)注
1文章
233瀏覽量
9950
發(fā)布評論請先 登錄
相關(guān)推薦
評論