Android 10에서는 디스플레이별 VSYNC를 지원하나요?
아직이요. Android 10 기본 디스플레이의 VSYNC는 모든 디스플레이를 구동합니다.
디스플레이를 개별적으로 켜거나 끌 수 있나요?
Android 10에서는 기기 전력 상태의 구현이 기본적으로 전역적이며, 기본 디스플레이의 전력 상태에 의해 결정됩니다.
가상 디스플레이만 개별적으로 켜고 끌 수 있으며, 이때 노출 영역을 null
로 설정해야 합니다. 활동/WindowManager는 이러한 상태 변화에 반응합니다.
입력 디스플레이 연결을 동적으로 구성하려면 어떻게 해야 하나요?
Android 10의 입력 및 기기 간의 연결을 동적으로 구성할 수 있는 기본적인 방법은 없지만 대부분의 경우에 해결 방법을 적용할 수 있습니다. 자세한 내용은 입력 라우팅을 참고하세요.
디스플레이에 시스템 장식을 사용 설정하려면 어떻게 해야 하나요?
가장 간단한 테스트 방법은 개발자 옵션인 데스크톱 모드 강제 사용을 사용하는 것입니다. 그러면 모든 보조 디스플레이에서 시스템 장식과 IME를 사용할 수 있습니다. 이는 실제 패널이나 시뮬레이션된 디스플레이와 같은 시스템 소유 디스플레이에서 효과가 있지만 앱에서 소유한 가상 디스플레이에서는 제한될 수 있습니다.
프로덕션의 경우 기본 구성 파일을 제공하세요. 자세한 내용을 보려면 다음을 참조하세요.
구체적인 디스플레이에 활동을 구성하려면 어떻게 해야 하나요?
모든 활동 실행을 가로채는 LaunchParamsController
를 사용하여 시스템 구성요소가 실행에 사용되는 매개변수를 수정할 수 있도록 하세요.
현재는 system_server
내에서 사용할 수 있습니다.
기기를 보조 화면에서 잠금 해제할 수 있나요?
Android 10 잠금 화면의 기본 구현은 대화형이 아니므로 잠금 해제가 불가능합니다. OEM은 자체 잠금 화면을 구현할 수 있지만 기본적인 보안 요구사항이 유지되어야 합니다.
- 기기 잠금 상태는 전역적이며,
- 모든 디스플레이에 적용됩니다.
타겟과 다른 디스플레이에 IME를 표시하려면 어떻게 해야 하나요?
IME는 DisplayWindowSettings
에서 구성된 디스플레이에만 표시할 수 있습니다. 입력이 요청된 디스플레이에 config이 사용 설정되지 않은 경우 IME가 기본 디스플레이에 표시됩니다.
주요 이벤트를 항상 구체적인 디스플레이로 보내려면 어떻게 해야 하나요?
키보드는 타겟팅되지 않은 입력 소스로 간주되므로 입력이 시스템의 최상단에 집중된 창으로 이동합니다. 타겟팅된 키 입력의 예는 PhoneWindowManager 클래스의 뒤로/홈 버튼 구현을 참조하세요. 이러한 키는 디스플레이만 타겟팅하는 반면 Android 10에서는 표시됩니다.
오디오는 어떻게 처리되나요?
Android 10에는 이러한 영역의 주요 개선사항이 포함되지 않습니다. Android 10에는 자동차용 다중 영역 오디오 지원이 추가되었지만 별도로 타겟팅된 오디오 스트림을 처리하기 위한 일반적인 방법은 아직 준비되지 않았습니다.
같은 앱을 여러 디스플레이에 표시할 수 있나요?
앱에서 지원하는 경우 앱 활동의 여러 인스턴스를 생성할 수 있습니다. 각 인스턴스는 기본적으로 같은 프로세스에서 실행됩니다. 이러한 앱의 예로 Chrome을 들 수 있습니다. 런처 샘플을 사용하여 쉽게 테스트해볼 수 있습니다. 런처 샘플은 타겟팅된 활동을 실행하고 새 인스턴스를 요청할 수 있게 해줍니다.
같은 앱의 여러 인스턴스를 상이한 화면/사용자에 대해 생성할 수 있나요?
AOSP에서는 같은 사용자에 대해 같은 앱의 샌드박스와 프로세스를 따로 여러 개 생성할 수 없습니다. 이 요청과 관련된 사용 사례에는 앱 수준의 분리 대신 동시적인 멀티 사용자 지원이 필요합니다.
다른 사용자가 같은 앱을 사용하려면 본인의 프로필로 로그인해야 합니다. 앱 수준에서 분리하려면 세션이 있을 때마다 앱에 로그인해야 합니다. 그렇지 않으면 다른 사용자의 데이터가 계속해서 존재할 수 있습니다.
Android 10에서는 멀티 사용자를 지원하나요?
아니요. Android 10에서는 로그인된 단일 사용자만 지원합니다.