멀티 윈도우 지원

Android 7.0 이상에서는 기기가 멀티 윈도우를 사용하여 여러 개의 앱을 동시에 표시할 수 있습니다. Android는 세 가지 멀티 윈도우 구성을 지원합니다.

  • 화면 분할은 사용자가 앱을 배치할 수 있는 두 개의 활동 창을 제공하는 기본 멀티 윈도우 구현입니다.
  • 자유 형식은 사용자가 동적으로 활동 창 크기를 조절하고 화면에 2개 이상의 앱을 표시할 수 있게 해줍니다.
  • PIP 모드(PIP)는 Android 기기가 작은 창에서 동영상 콘텐츠를 재생하는 동안 사용자가 다른 앱과 상호작용할 수 있게 해줍니다.

구현

멀티 윈도우 지원은 Android 7.0 이상에서 기본으로 사용 설정됩니다. 사용 중지하려면 기기의 config.xml 파일에서 config_supportsMultiWindow 플래그를 false로 설정합니다.

멀티 윈도우는 RAM이 적은 모든 기기(ActivityManager.isLowRam()을 선언한 기기)에서 기본으로 사용 중지됩니다. RAM이 적은 기기는 config_supportsMultiWindow 플래그 값을 무시합니다.

화면 분할

멀티 윈도우의 기본 환경은 시스템 UI가 세로 또는 가로 모드의 기기 중간에서 분할되는 화면 분할 모드입니다. 사용자는 기기 방향에 따라 구분선을 측면에서 측면으로 또는 상단에서 하단으로 드래그하여 창 크기를 조절할 수 있습니다.

화면 분할을 사용 설정한 후에는 기기 제조업체에서 자유 형식 또는 PIP를 선택해 사용 설정할 수 있습니다.

Android 8.0 이상에서는 사용자가 을 탭할 때 런처를 압축하여 화면 분할을 개선합니다. 구현 세부정보는 화면 분할 상호작용을 참고하세요.

자유 형식

config_supportsMultiWindow 플래그로 멀티 윈도우 모드를 사용 설정한 후에는 기기 제조업체에서 자유 형식 창 지정을 허용할 수 있습니다. 이 모드는 태블릿과 같은 큰 기기에서 가장 유용합니다.

자유 형식 모드를 지원하려면 /android/frameworks/base/core/java/android/content/pm/PackageManager.java에서 PackageManager#FEATURE_FREEFORM_WINDOW_MANAGEMENT 시스템 기능을 사용 설정하고 config.xml.에서 config_freeformWindowManagementtrue로 설정합니다.

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

PIP 모드

config_supportsMultiWindow 플래그로 멀티 윈도우 모드를 사용 설정한 후 기기 제조업체는 PIP 모드를 지원할 수 있으며 이 모드를 사용하면 사용자가 다른 활동을 탐색하면서 동영상을 시청할 수 있습니다. 이 기능은 Android 텔레비전 기기에 타겟팅되지만 다른 기기 유형도 이 기능을 지원할 수 있습니다.

PIP를 지원하려면 /android/frameworks/base/core/java/android/content/pm/PackageManager.java에서 PackageManager#FEATURE_PICTURE_IN_PICTURE 시스템 기능을 사용 설정합니다.

Android 8.0 이상을 실행하는 기기의 PIP 구현 세부정보는 PIP 모드 페이지를 참고하세요.

시스템 UI

멀티 윈도우 개발자 문서에 따라 모든 표준 시스템 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에 있습니다.