Android 應用程式可在各種裝置上執行,包括手機、平板電腦、折疊式裝置、Chromebook、車輛、電視,甚至 XR。為了因應這種多變的環境,您的應用程式應支援所有裝置板型規格和螢幕尺寸。
Android 16 (API 級別 36) 可讓應用程式藉由覆寫螢幕方向、顯示比例和可調整大小的應用程式限制,以便適應不同的板型規格和顯示大小。此覆寫值適用於最小寬度大於或等於 600dp 的裝置,定義如下:
- 平板電腦
- 大螢幕摺疊式裝置的內螢幕
- 電腦分割視窗 (適用於所有板型規格)
如果螢幕的最小寬度為 >= 600dp,指定 API 級別 36 的應用程式可調整大小,且可進入多視窗模式 (等同於 resizeableActivity="true"
)。

Android 16 會強制執行一致的自動調整應用程式設計模型,遵循使用者對裝置方向、顯示比例和螢幕大小的偏好設定,藉此提升使用者體驗。
變更內容
如果應用程式指定 Android 16 (API 級別 36) 為大螢幕裝置的目標版本,系統會忽略下列資訊清單屬性和 API:
屬性或 API | 忽略的值 |
---|---|
screenOrientation |
portrait ,landscape ,reversePortrait ,reverseLandscape ,sensorPortrait ,sensorLandscape ,userPortrait ,userLandscape |
resizeableActivity |
全部 |
minAspectRatio |
全部 |
maxAspectRatio |
全部 |
setRequestedOrientation() getRequestedOrientation() |
portrait ,landscape ,reversePortrait ,reverseLandscape ,sensorPortrait ,sensorLandscape ,userPortrait ,userLandscape |
例外狀況
不受 Android 16 變更影響的例外狀況包括:
螢幕小於 sw600dp (大多數手機、翻轉式手機和大螢幕折疊式裝置的外部螢幕)
遊戲 (根據
android:appCategory
標記)使用 Android App Bundle 和 Play 應用程式簽署功能發布遊戲,讓 Google Play 管理標記,並自動提供應用程式套件的優點。另請參閱「應用程式資訊清單總覽」。
使用者在顯示比例設定中選擇啟用應用程式的預設行為
選擇退出
如要停用 API 級別 36 的行為,請宣告 PROPERTY_COMPAT_ALLOW_RESTRICTED_RESIZABILITY
資訊清單屬性。
如要選擇不參與特定活動,請在 <activity>
元素中設定屬性:
<activity ...>
<property
android:name="android.window.PROPERTY_COMPAT_ALLOW_RESTRICTED_RESIZABILITY"
android:value="true" />
...
</activity>
如要為整個應用程式停用這項功能,請在 <application>
元素中設定屬性:
<application ...>
<property
android:name="android.window.PROPERTY_COMPAT_ALLOW_RESTRICTED_RESIZABILITY"
android:value="true" />
...
</application>
測試
如要測試應用程式是否受到 Android 16 變更的影響,請在 Android Studio 中使用 Pixel Tablet 和 Pixel Fold 系列模擬器,並在應用程式模組的 build.gradle
檔案中設定 targetSdkPreview = "Baklava"
。
或者,您也可以在測試裝置上啟用 UNIVERSAL_RESIZABLE_BY_DEFAULT 標記,以便使用應用程式相容性架構 (請參閱「相容性架構工具」)。
您可以使用 Espresso 測試架構和 Jetpack Compose 測試 API 自動化測試。
常見問題
限制裝置螢幕方向、顯示比例或應用程式大小調整功能的應用程式,在 Android 16 上可能會發生顯示問題,例如重疊的版面配置。
如要在手機、折疊式裝置、平板電腦、Chromebook、車用螢幕或擴增實境上提供最佳使用者體驗,請建構回應式且可調整的應用程式:
避免 UI 元素拉長:針對標準直向手機螢幕設計的版面配置,可能無法配合其他顯示比例。舉例來說,如果 UI 元素填滿整個螢幕寬度,在橫向模式下會顯示為拉長的狀態。為元件新增最大寬度,避免延展。
啟用可捲動的版面配置:如果版面配置無法捲動,使用者可能無法在橫向模式下存取螢幕外側的按鈕或其他 UI 元素。啟用應用程式版面配置的捲動功能,確保所有內容都能在任何螢幕高度下顯示。
確保直向和橫向的相機相容性:如果相機觀景窗預覽畫面假設相機感應器的特定顯示比例和方向,在未符合規格的螢幕上可能會導致預覽畫面拉長或翻轉。確認取景器會在螢幕方向變更時正確旋轉。讓取景器調整為與感應器顯示比例不同的 UI 顯示比例。
在視窗大小變更期間保留狀態:移除螢幕方向和顯示比例限制後,應用程式視窗大小可能會經常變更,以回應使用者偏好的應用程式使用方式,例如旋轉、摺疊或展開裝置,或是在多視窗或電腦視窗模式下調整應用程式大小。設定變更 (例如方向變更和視窗大小調整) 會導致活動重建 (預設)。為確保最佳使用者體驗,請在設定變更期間保留應用程式狀態,讓應用程式保留資料 (例如表單輸入內容),使用者也能維持相關情境。
使用視窗大小類別:無需進行裝置專屬的自訂設定,即可支援不同的視窗大小和顯示比例。假設視窗大小會經常變動。使用視窗大小類別來描述視窗的尺寸,然後套用適當的自動調整式版面配置。
建立回應式版面配置:在視窗大小類別中,回應式版面配置會根據螢幕尺寸變更調整,以便隨時建立最佳的應用程式呈現方式。
時間軸
Android 16 (2025):對於指定 API 級別 36 的應用程式,支援所有螢幕方向和顯示比例,以及應用程式可調整大小功能,是針對大螢幕裝置 (最小螢幕寬度 >= 600dp) 的基準體驗。不過,開發人員可以選擇不採用。
2026 年 Android 版本:對於指定 API 級別 37 的應用程式,支援所有螢幕方向和顯示比例,以及應用程式可調整大小功能,將成為大螢幕裝置 (最小螢幕寬度 >= 600 dp) 的基本體驗。開發人員無法選擇不採用。
目標 API 級別 | 適用裝置 | 允許開發人員選擇停用 |
---|---|---|
36 (Android 16) | 大螢幕裝置 (最小螢幕寬度 >= 600 dp) | 是 |
37 (預計) | 大螢幕裝置 (最小螢幕寬度 >= 600 dp) | 否 |
指定特定 API 級別的期限取決於應用程式商店。自 2026 年 8 月起,Google Play 將要求應用程式指定 API 級別 36,自 2027 年 8 月起則要求指定 API 級別 37。