支援多視窗

在 Android 7.0 及更高版本中,裝置可以使用多視窗同時顯示多個應用程式。 Android 支援三種多視窗配置:

  • 分割畫面是預設的多視窗實現,它提供兩個活動窗格,使用者可以在其中放置應用程式。
  • 自由形式允許使用者動態調整活動窗格的大小,並在螢幕上顯示兩個以上的應用程式。
  • 畫中畫 (PIP)允許 Android 裝置在使用者與其他應用程式互動時在小視窗中播放影片內容。

執行

Android 7.0 及更高版本預設啟用多視窗支援。若要停用它,請在裝置的config.xml檔案中將config_supportsMultiWindow標誌設為false

預設情況下,在所有低 RAM 裝置(宣告ActivityManager.isLowRam()的裝置)上停用多視窗。低 RAM 裝置會忽略config_supportsMultiWindow標誌的值。

分割畫面

多視窗的預設體驗是分割畫面模式,其中系統 UI 以縱向或橫向方式在裝置中間劃分。使用者可以透過左右或從上到下拖曳分隔線來調整視窗大小,具體取決於裝置方向。

啟用分割畫面後,裝置製造商可以選擇啟用自由格式或 PIP。

Android 8.0 及更高版本透過在使用者點擊Home時壓縮啟動器來改善分割畫面功能。具體實作請參考分割畫面互動

自由形式

使用config_supportsMultiWindow標誌啟用多視窗模式後,裝置製造商可以允許自由形式的視窗。此模式在平板電腦等較大裝置上最有用。

若要支援自由格式模式,請在/android/frameworks/base/core/java/android/content/pm/PackageManager.java中啟用PackageManager#FEATURE_FREEFORM_WINDOW_MANAGEMENT系統功能,並在 config.xml 中將config_freeformWindowManagement設定為true config.xml .

    <bool name="config_freeformWindowManagement">true</bool>
    

畫中畫

使用config_supportsMultiWindow標誌啟用多視窗模式後,裝置製造商可以支援畫中畫,讓使用者在瀏覽其他活動的同時觀看影片。雖然此功能針對 Android Television 設備,但其他設備類型也可能支援此功能。

若要支援 PIP,請在/android/frameworks/base/core/java/android/content/pm/PackageManager.java中啟用PackageManager#FEATURE_PICTURE_IN_PICTURE系統功能。

有關運行 Android 8.0 及更高版本的設備的更多 PIP 實現詳細信息,請參閱畫中畫頁面。

系統介面

根據多視窗開發人員文檔,支援所有標準系統 UI。

應用

若要支援預先載入應用程式的多視窗模式,請參閱Android 開發人員文件

驗證

若要驗證多視窗的實現,請執行相關的 CTS 測試並遵循多個視窗的測試說明

對於 Android 7.0,測試位於/platform/cts/hostsidetests/services/activitymanager/src/android/server/cts 。在 Android 8.0 及更高版本中,測試位於/platform/cts/tests/framework/base/activitymanager/src/android/server/am