此版本包括對未來應用自適應性、實時動態、高級專業視頻格式等內容的支持。感謝您一直以來對 Android 平臺的支持,使其成為一個適合所有人的平臺。
Android 自適應應用
用戶希望能夠在他們的所有設備上無縫運行應用,而不受屏幕大小和設備形態的影響。為此,Android 16 正在逐步淘汰應用限制用戶在大屏設備上調整屏幕方向和大小的功能。這類似于原始設備制造商 (OEM) 在過去幾年中為大屏設備添加的功能,讓用戶能以任何窗口大小和寬高比運行應用。 在寬度大于 600dp 的屏幕上,以 API 級別 36 為目標的應用將采用可調整大小的窗口。您可以檢查自己的應用,以確保現有界面能夠無縫縮放,在縱向與橫向的寬高比下都能流暢運行。我們提供了框架、工具和庫來助您一臂之力。
主要變更
- 在大屏設備上,應用(而不是游戲)將棄用限制方向和大小調整的清單屬性和 API。
時間表
- Android 16(2025 年):此更改適用于大屏設備(寬度為 600dp)上以 API 級別 36 為目標的應用(開發者可以選擇不接受)
- 將于 2026 年發布的 Android 版本:此更改適用于大屏設備上以 API 級別 37 為目標的應用(不可選擇不接受)
- 現在正是讓您的應用具備自適應能力的絕佳時機!您可以通過啟用 UNIVERSAL_RESIZABLE_BY_DEFAULT 標志,在不針對特定目標的情況下使用應用兼容性框架來測試這些覆蓋設置。
Live Updates
實時動態 (Live Updates) 是一種全新的通知類型,可幫助用戶監控和快速訪問正在進行的重要活動。
新的 ProgressStyle 通知模板為實時動態提供了統一的用戶體驗,從而幫助您構建以進度為中心的用戶旅程,包括共享車輛、送貨和導航。該模板還支持自定義圖標,用于開始、結束和當前進度追蹤、分段和點、用戶旅程狀態、里程碑事件等內容。
建議僅在共享車輛、送貨和導航等場景中使用 ProgressStyle 通知。
protected Notification getNotification() {
return new Notification.Builder(mContext, CHANNEL_ID)
.setSmallIcon(R.drawable.ic_app_icon)
.setContentTitle("Ride requested")
.setContentText("Looking for nearby drivers")
.setStyle(
new Notification.ProgressStyle()
.addProgressSegment(
new Notification.ProgressStyle.Segment(100)
.setColor(COLOR_ORANGE)
).setProgressIndeterminate(true)
).build();
}
相機和媒體更新
Android 16 增強了對播放、創建和編輯高質量媒體內容的支持,這是社交和生產力應用的關鍵用例。
高級專業視頻
Android 16 引入了對高級專業視頻 (APV) 編解碼器的支持,該編解碼器旨在用于專業級高質量視頻的錄制和后期制作。
-
高級專業視頻
https://www.ietf.org/archive/id/draft-lim-apv-00.html
APV 編解碼器標準具有以下特點:
- 感知上無損的視頻畫質(接近原始視頻畫質)
- 低復雜度和高吞吐量的幀內編碼(無像素域預測),以更好地支持編輯工作流程
- 通過輕量級熵編碼方案,支持針對 2K、4K 和 8K 分辨率內容使用高比特率范圍(高達數 Gbps)
- 幀平鋪,適用于沉浸式內容以及實現并行編碼和解碼
- 支持各種色度采樣格式和位深
- 支持多次解碼和重新編碼,且不會嚴重降低視覺質量
- 支持多視圖視頻和輔助視頻,如深度、Alpha 和預覽
- 支持 HDR10/10+ 和用戶定義的元數據
- OpenAPV 項目https://github.com/openapv/openapv
相機夜間模式場景檢測
為了幫助您的應用了解何時切換至或切換出夜間模式相機會話,我們在 Android 16 中添加了 EXTENSION_NIGHT_MODE_INDICATOR。如果設備支持,您可以在 Camera2 內的 CaptureResult 中獲取此 API。
垂直文本
Android 16 增加了對垂直渲染和測量文本的底層支持,為庫開發者提供了基礎的垂直書寫支持。這對于像日語這樣常用垂直書寫系統的語言特別有用。Paint 類中添加了一個新標志 VERTICAL_TEXT_FLAG。使用 Paint.setFlags 設置此標志后,Paint 的文本測量 API 將報告書寫方向為垂直方向而不是水平方向,而 Canvas 將垂直繪制文本。
注意:目前的高級文本 API(如 Jetpack Compose 中的 Text、TextView、Layout 類及其子類) 既不支持垂直書寫系統,也不支持使用 VERTICAL_TEXT_FLAG。
val text = "「春は、曙。」"
Box(Modifier
.padding(innerPadding)
.background(Color.White)
.fillMaxSize()
.drawWithContent {
drawIntoCanvas { canvas ->
val paint = Paint().apply {
textSize = 64.sp.toPx()
}
// Draw text vertically
paint.flags = paint.flags or VERTICAL_TEXT_FLAG
val height = paint.measureText(text)
canvas.nativeCanvas.drawText(
text, 0, text.length, size.width / 2, (size.height - height) / 2, paint
)
}
})
{}
無障礙功能
我們在 Android 16 中添加了新的無障礙功能 API,旨在幫助您將應用帶給每位用戶。
補充說明
當無障礙功能服務描述 ViewGroup 時,它會將其子視圖的內容標簽合并。如果您為 ViewGroup 提供 contentDescription,無障礙功能服務則會假定您也要覆蓋不可聚焦的子視圖的內容。如果您想為下拉菜單(如 "字體系列")添加標簽,同時保留無障礙功能的當前選擇(如"Roboto"),這可能會出現問題。我們在 Android 16 中添加了 setSupplementalDescription,以便您可以提供 ViewGroup 相關信息的文本,而不會覆蓋其子視圖的信息。
必填表單字段
在 Android 16 中,我們將 setFieldRequired 添加到 AccessibilityNodeInfo,以便應用告知無障礙功能服務需要輸入表單字段。這對于填寫各種類型表單的用戶來說是一個重要的場景,即使是像必須勾選的條款和條件復選框這樣簡單的操作,也可以幫助用戶始終如一地識別和快速瀏覽必填字段。
通用測距 API
Android 16 包含新的 RangingManager,提供了在受支持的硬件上,確定本地設備與遠程設備之間距離和角度的方法。RangingManager 支持使用多種測距技術,如 BLE 信道探測、基于 BLE RSSI 的測距、超寬帶和 Wi-Fi 往返時間。
行為變更
每次發布 Android 版本時,我們都力求使平臺變得更加高效和強大,在應用需求與系統性能、電池續航等因素之間尋求平衡。但這可能會導致影響兼容性的行為變更。
ART 內部變更
利用 Android 運行時 (ART) 內部結構的代碼,可能無法在運行 Android 16 以及更早 Android 版本 (通過 Google Play 系統更新來更新 ART 模塊) 的設備上正常工作。這些結構正在發生變化,以提高 ART 的性能。
受此影響的應用需要進行更新。依賴內部結構始終會導致兼容性問題,因此尤為重要的是,避免依賴使用內部 ART 結構的代碼(或包含代碼的庫),因為 ART 的更改與設備運行的平臺版本無關;它們通過 Google Play 系統更新推送給超過 10 億臺設備。
預測性返回的遷移或停用
對于以 Android 16 或更高版本為目標并運行在 Android 16 或更高版本設備上的應用,默認會啟用預測性返回系統動畫(返回主屏幕、跨任務和跨 activity)。此外,系統不會調用已棄用的 onBackPressed,也不再分發 KeyEvent.KEYCODE_BACK。
如果您的應用攔截了返回事件,而您尚未遷移到預測性返回,請更新您的應用以使用受支持的返回導航 API,或在應用 AndroidManifest.xml 文件的
針對 "三按鈕" 導航的預測性返回支持
對于已正確遷移到預測性返回的應用,Android 16 為 "三按鈕" 導航提供了預測性返回支持。長按返回按鈕會觸發預測性返回動畫,讓用戶可以預覽返回按鈕前往的位置。
此行為適用于系統中支持預測性返回動畫的所有區域,包括系統動畫(返回主屏幕、跨任務和跨 activity)。
優化按固定比率進行的作業調度
在以 Android 16 為目標平臺之前,scheduleAtFixedRate 會因為不在有效的進程生命周期內而錯過任務執行;當應用返回到有效的生命周期時,則會立即執行所有錯過的任務。
而以 Android 16 為目標平臺后,當應用返回到有效的生命周期時,scheduleAtFixedRate 最多會立即執行一次錯過的任務。此行為變更旨在提升應用性能。請通過測試來確保您的應用不受影響。您還可以通過使用應用兼容性框架并啟用 STPE_SKIP_MULTIPLE_MISSED_PERIODIC_TASKS 兼容性標志進行測試。
有序廣播的優先級范圍不再是全局的
在 Android 16 中,使用 android:priority 屬性或 IntentFilter#setPriority() 跨不同進程的廣播傳遞順序將無法保證。有序廣播的廣播優先級將僅在同一應用程序進程內有效,而不是跨所有系統進程。
此外,廣播優先級將被自動限制在(SYSTEM_LOW_PRIORITY + 1、SYSTEM_HIGH_PRIORITY - 1)的范圍內。 如果您的應用執行以下任一操作,則可能會受到影響:- 您的應用已聲明多個進程,并都為同一 Intent 設置了廣播接收器優先級。
- 您的應用進程與其他進程交互,并期望以特定順序接收廣播 Intent。
Gemini 擴展程序
Samsung 在 S25 系列上推出了新的 Gemini 擴展程序,展示了 Android 應用與 Gemini 強大功能集成的新方法。我們正努力將此功能運用在更多設備形態上。
- Samsung 在 S25 系列上推出了新的 Gemini 擴展程序https://blog.google/products/gemini/new-gemini-app-updates-android/
2025 年即將發布的
兩個 Android API 版本
本預覽版適用于 Android 計劃在 2025 年第二季度推出的下一個主要版本,并且我們計劃在第四季度發布另一個帶有新開發者 API 的版本。第二季度發布的主要版本將是 2025 年內唯一包含可影響應用的計劃行為變更的版本。第四季度發布的次要版本將包含功能更新、優化和問題修復,但不包括任何影響應用的行為變更。
我們將繼續以季度為周期發布 Android 版本。為確保質量始終如一,我們會在第二季度和第四季度發布兩次 API 版本之間的空檔期進行兩次增量更新 (第一和第三季度)。我們正在積極與設備合作伙伴合作,為盡可能多的設備提供第二季度版本。
Google Play 中應用的目標 API 級別要求及相關日期保持不變;我們計劃每年發布一次要求,且僅與主要 API 級別相關聯。
如何做好準備
除了對下一個主要版本進行兼容性測試之外,請您確保根據新的 SDK 編譯應用,并使用兼容性框架啟用 targetSdkVersion 控制的行為變更,以便進行早期測試。
應用兼容性
Android 16 預覽版計劃自 2024 年 11 月開始執行,并于 2025 年第二季度最終公開發布。我們將在開發階段的各個關鍵里程碑時刻為您的開發和測試環境提供更新。每次更新都會包括 SDK 工具、系統映像、模擬器、API 參考文檔和 API 差異。目前,我們已經做好了在預覽版計劃中測試核心 API 的準備工作,所以我們將在博客和 Android 16 開發者網站上著重介紹關鍵 API。
我們預計將在 2025 年 3 月實現平臺穩定性里程碑。在這一關鍵階段,我們將提供最終的 SDK/NDK API,以及最終的內部 API 和面向應用的系統行為。自那時起,距離最終版本發布還有幾個月時間,您可以充分利用這段時間完成測試工作。
開始使用 Android 16
在 Beta 版階段,您可以注冊任何受支持的 Pixel 設備,以便以 OTA 方式下載此版本和未來的 Android Beta 版更新。如果您沒有 Pixel 設備,可以在 Android Studio 中使用 64 位的 Android 模擬器系統映像。
如果您當前使用的是 Android 16 開發者預覽版 2 或已加入 Android Beta 版計劃,我們會為您提供 Beta 版 1 的 OTA 方式更新鏈接。 如果您使用的是 Android 25Q1 Beta 版,并希望獲得 25Q1 的最終穩定版本并退出 Beta 版,則需要忽略 25Q2 Beta 版 1 的 OTA 更新,等待 25Q1 版的發布。為獲得最佳的 Android 16 開發體驗,我們建議您使用 Android Studio (Meerkat) 的最新預覽版。設置完成后,您可以執行以下操作:
- 使用新的 SDK 進行編譯,在 CI 環境中測試,并在我們反饋頁面的跟蹤頁中報告問題。
- 測試您當前應用的兼容性,了解您的應用是否受到 Android 16 版本變更的影響,將您的應用安裝到搭載 Android 16 的設備或模擬器上進行全面測試。
-
Android
+關注
關注
12文章
3963瀏覽量
129546 -
beta測試
+關注
關注
0文章
14瀏覽量
8225
原文標題:Android 16 首個 Beta 版現已推出
文章出處:【微信號:Google_Developers,微信公眾號:谷歌開發者】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
哪些華為手機/平板符合升級HarmonyOS 2.0 Beta測試條件?
升級Android 7.1之后,OPPO手機迎來了這些新功能
ios11測試版值不值得升級?iOS11 Beta2來了,修復眾多BUG,但仍有這些問題!
谷歌推出Android P_Android P功能有哪些
Google已為所有兼容的Pixel手機發布了Android 11 Beta 2
谷歌現已推出支持 iOS 14 和 Android 11 的最新版 Flutter
LG Android 11 beta版到來:僅限一款機型
Google重磅推出Android Beta Q 2
iOS/iPadOS 16 Beta 2發布 如何進行升級
正式版即將到來 | Android 14 Beta 5 發布

評論