常見問題

Android 10 是否支援個別螢幕的 VSYNC?

目前還不行。Android 10 中預設螢幕的 VSYNC 會驅動所有螢幕。

螢幕可以個別開啟或關閉嗎?

在 Android 10 中,裝置電源狀態主要是採用全域性,且取決於預設螢幕的電源狀態。只有虛擬螢幕可以個別開啟/關閉,方法是將表面設為 null)。Activity/WindowManager 會回應此狀態變更。

如何動態設定輸入螢幕關聯?

在 Android 10 中,沒有內建方法可動態設定輸入內容與裝置之間的關聯,但在大多數情況下,可以採用某些因應措施。詳情請參閱輸入路由

如何在螢幕上啟用系統裝飾?

如要進行測試,最簡單的方法是使用「強制使用桌面模式」開發人員選項,這樣就能在所有次要顯示器上啟用系統裝飾和 IME 支援功能。這項功能適用於系統擁有的螢幕 (例如實體面板或模擬顯示畫面),但可能不適用於應用程式擁有的虛擬螢幕。

如果是實際工作環境,請提供預設的設定檔。詳情請參閱:

如何設定特定螢幕的活動?

使用 LaunchParamsController,可攔截所有活動啟動作業,並允許系統元件修改用於啟動作業的參數。這項服務目前在 system_server內提供。

可以透過次要螢幕解鎖裝置嗎?

Android 10 中螢幕鎖定畫面的預設實作方式無法互動,也不允許解鎖。只要維持基本安全性規定,原始設備製造商 (OEM) 就可以實作專屬的鎖定畫面。

  • 裝置鎖定狀態為全域。
  • 這項設定適用於所有顯示裝置。

如何在與目標不同的螢幕上顯示 IME?

IME 只能顯示在 DisplayWindowSettings 中設定的螢幕上。如未針對要求輸入的螢幕啟用該設定,預設畫面就會顯示輸入法編輯器。

如何一律將重要事件傳送至特定螢幕?

系統會將鍵盤視為非指定目標的輸入來源,因此系統會將輸入內容傳送至系統中最聚焦的視窗。如需指定按鍵輸入的範例,請參閱 PhoneWindowManager 類別中的「返回」/「主畫面」按鈕實作方式。這些鍵只會指定螢幕,但會在 Android 10 中顯示。

音訊如何處理?

Android 10 並未在這個領域進行重大改善。Android 10 已新增對 Auto 的多區域音訊支援功能,但處理個別指定音訊串流的通用解決方案仍在等待中。

同一個應用程式是否可以在多個螢幕上顯示?

如果應用程式支援,您可以建立應用程式活動的多個執行個體。根據預設,每個工作都會在相同程序下執行。這類應用程式的範例是 Chrome。使用Launcher 範例進行測試非常方便,因為您可以啟動指定的活動,並要求新的例項。

是否可以為不同的螢幕/使用者建立同一個應用程式的多個執行個體?

AOSP 不允許您為同一位使用者建立多個獨立的沙箱和相同應用程式的程序。與這項要求相關的用途需要同時支援多位使用者,而非應用程式層級的區隔。

如果不同使用者想要使用同一個應用程式,則應使用各自的設定檔登入。應用程式層級分離功能需要在每個工作階段登入應用程式。否則,其他使用者的資料仍可能會顯示。

Android 10 是否支援多位使用者?

否。Android 10 僅支援單一登入使用者。