常見問題

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

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

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

在 Android 10 中,裝置電源狀態的實作方式主要為全域,並由預設顯示器的電源狀態決定。只有虛擬螢幕可以個別開啟/關閉,方法是將表面設為 null)。Activity/WindowManager 會回應此狀態變更。

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

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

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

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

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

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

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

裝置是否可從次要畫面解鎖?

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

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

如何在與目標不同的顯示器上顯示輸入法編輯器?

IME 只能顯示在 DisplayWindowSettings 中設定的螢幕上。如果螢幕未啟用相關設定 要求輸入來源時,輸入法編輯器會顯示在預設螢幕上。

如何一律將按鍵事件傳送至特定顯示裝置?

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

Google 如何處理音訊?

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

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

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

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

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

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

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

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