- 문법:
-
<compatible-screens> <screen android:screenSize=["small" | "normal" | "large" | "xlarge"] android:screenDensity=["ldpi" | "mdpi" | "hdpi" | "xhdpi" | "280" | "360" | "420" | "480" | "560" ] /> ... </compatible-screens>
- 포함된 위치:
<manifest>
- 설명
- 애플리케이션이 호환되는 각 화면 구성을 지정합니다. 매니페스트에는
<compatible-screens>
요소의 인스턴스 1개만 허용되지만<screen>
요소는 여러 개 포함할 수 있습니다. 각<screen>
요소는 애플리케이션이 호환되는 특정 화면 크기-밀도 조합을 지정합니다.Android 시스템은 어떤 시점에서도
<compatible-screens>
매니페스트 요소를 읽지 않습니다. 이 요소는 정보 제공의 목적으로만 사용되며 Google Play와 같은 외부 서비스에서 특정 화면 구성과의 애플리케이션 호환성을 더 잘 이해하고 사용자 필터링을 사용 설정하기 위해 사용됩니다.이 요소에 선언되지 않은 모든 화면 구성은 애플리케이션이 호환되지 않는 화면입니다. Google Play와 같은 외부 서비스는 이러한 화면이 있는 기기에 애플리케이션을 제공하지 않습니다.
주의: 일반적으로 이 매니페스트 요소는 사용하지 않습니다. 이 요소를 사용하면 나열되지 않은 화면 구성이 적용된 기기가 사용자에게 있는 경우 사용자가 애플리케이션을 설치하지 못하게 하여 애플리케이션의 잠재적 사용자층을 크게 줄일 수 있습니다. 애플리케이션이 특정 화면 구성에서 전혀 작동하지 않을 때 최후의 수단으로만 사용하세요. 이 요소를 사용하는 대신 여러 화면 지원 가이드에 따라 다양한 화면 크기 및 밀도용 대체 레이아웃과 비트맵을 사용하여 여러 화면을 위한 확장 가능한 지원을 제공합니다.
애플리케이션의 최소 화면 크기를 설정하려면
<supports-screens>
요소를 사용하세요. 예를 들어 대형 및 초대형 화면 기기에만 애플리케이션을 제공하려는 경우<supports-screens>
요소를 사용하면 애플리케이션이 소형 및 일반 화면 크기를 지원하지 않는다고 선언할 수 있습니다. 그러면 Google Play와 같은 외부 서비스에서 적절히 애플리케이션을 필터링합니다. 또한<supports-screens>
요소를 사용해 시스템에서 다른 화면 크기에 맞게 애플리케이션 크기를 조절할 수 있는지 선언할 수 있습니다.Google Play에서 이 매니페스트 요소와 다른 매니페스트 요소를 사용하여 애플리케이션을 필터링하는 방법에 관한 자세한 내용은 Google Play 필터를 참고하세요.
- 하위 요소
- 예
-
애플리케이션이 화면 밀도와 상관없이 소형 및 일반 화면과만 호환되는 경우 각 화면 크기에 서로 다른 밀도 구성이 6개 있으므로
<screen>
요소를 12개 지정해야 합니다.각각 모두 선언해야 합니다. 지정하지 않은 크기와 밀도의 조합은 애플리케이션이 호환되지 않는 화면 구성으로 간주됩니다. 애플리케이션이 소형 및 일반 화면과만 호환되는 경우 매니페스트 항목은 다음과 같습니다.
<manifest ... > ... <compatible-screens> <!-- all small size screens --> <screen android:screenSize="small" android:screenDensity="ldpi" /> <screen android:screenSize="small" android:screenDensity="mdpi" /> <screen android:screenSize="small" android:screenDensity="hdpi" /> <screen android:screenSize="small" android:screenDensity="xhdpi" /> <screen android:screenSize="small" android:screenDensity="xxhdpi" /> <screen android:screenSize="small" android:screenDensity="xxxhdpi" /> <!-- all normal size screens --> <screen android:screenSize="normal" android:screenDensity="ldpi" /> <screen android:screenSize="normal" android:screenDensity="mdpi" /> <screen android:screenSize="normal" android:screenDensity="hdpi" /> <screen android:screenSize="normal" android:screenDensity="xhdpi" /> <screen android:screenSize="normal" android:screenDensity="xxhdpi" /> <screen android:screenSize="normal" android:screenDensity="xxxhdpi" /> </compatible-screens> <application ... > ... <application> </manifest>
- 도입 수준:
- API 수준 9
- 참고 항목:
- 화면 호환성 개요
- Google Play 필터
<호환-화면>
이 페이지에 나와 있는 콘텐츠와 코드 샘플에는 콘텐츠 라이선스에서 설명하는 라이선스가 적용됩니다. 자바 및 OpenJDK는 Oracle 및 Oracle 계열사의 상표 또는 등록 상표입니다.
최종 업데이트: 2025-07-27(UTC)
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["필요한 정보가 없음","missingTheInformationINeed","thumb-down"],["너무 복잡함/단계 수가 너무 많음","tooComplicatedTooManySteps","thumb-down"],["오래됨","outOfDate","thumb-down"],["번역 문제","translationIssue","thumb-down"],["샘플/코드 문제","samplesCodeIssue","thumb-down"],["기타","otherDown","thumb-down"]],["최종 업데이트: 2025-07-27(UTC)"],[],[],null,["# <compatible-screens\u003e\n\nsyntax:\n:\n\n ```xml\n \u003ccompatible-screens\u003e\n \u003cscreen android:screenSize=[\"small\" | \"normal\" | \"large\" | \"xlarge\"]\n android:screenDensity=[\"ldpi\" | \"mdpi\" | \"hdpi\" | \"xhdpi\"\n | \"280\" | \"360\" | \"420\" | \"480\" | \"560\" ] /\u003e\n ...\n \u003c/compatible-screens\u003e\n ```\n\ncontained in:\n: [\u003cmanifest\u003e](/guide/topics/manifest/manifest-element)\n\ndescription:\n: Specifies each screen configuration with which the application is compatible. Only one instance\n of the `\u003ccompatible-screens\u003e` element is allowed in the manifest, but it can\n contain multiple `\u003cscreen\u003e` elements. Each `\u003cscreen\u003e` element\n specifies a specific screen size-density combination with which the application is compatible.\n\n The Android system *doesn't* read the `\u003ccompatible-screens\u003e` manifest\n element at any point. This element is informational only and is used\n by external services, such as Google Play, to better understand the application's compatibility\n with specific screen configurations and to enable filtering for users.\n\n\n Any screen configuration that\n *isn't* declared in this element is a screen with which the application *isn't*\n compatible. External services, such as Google Play, don't provide the application to\n devices with such screens.\n\n\n **Caution:** Normally, *you don't use this manifest\n element* . Using this element can dramatically reduce the potential user base for your\n application by preventing users from installing your application if they have a device with a screen\n configuration that you don't list. Use it only as a last resort, when the\n application absolutely doesn't work with specific screen configurations. Instead of using this\n element, follow the guide to [supporting multiple screens](/guide/practices/screens_support) to\n provide scalable support for multiple screens using alternative layouts and bitmaps\n for different screen sizes and densities.\n\n\n If you want to set a minimum screen size for your your application, use the [`\u003csupports-screens\u003e`](/guide/topics/manifest/supports-screens-element) element. For example, if you want your application to be available\n only for large and extra-large screen devices, the `\u003csupports-screens\u003e` element lets\n you declare that your application doesn't support small and normal screen sizes.\n Then, external services like Google Play filter your application accordingly. You can also use the\n `\u003csupports-screens\u003e` element to declare whether the system can resize your\n application for different screen sizes.\n\n\n For more information about how Google Play filters applications using this and\n other manifest elements, see [Filters on Google Play](/google/play/filters).\n\n\nchild elements:\n:\n\n `\u003cscreen\u003e`\n\n : Specifies a single screen configuration with which the application is compatible.\n\n At least one instance of this element must be placed inside the `\u003ccompatible-screens\u003e`\n element. This element must include both the `android:screenSize` and\n `android:screenDensity` attributes. If you don't declare both\n attributes, then the element is ignored.\n\n Attributes:\n\n `android:screenSize`\n : **Required.** Specifies the screen size for this screen configuration.\n\n Accepted values:\n\n - `small`\n - `normal`\n - `large`\n - `xlarge`\n\n\n For information about the different screen sizes, see [Screen compatibility overview](/guide/practices/screens_support#sizes).\n\n `android:screenDensity`\n : **Required.** Specifies the screen density for this screen configuration.\n\n Accepted values:\n\n - `\"ldpi\"` (approximately 120 dpi)\n - `\"mdpi\"` (approximately 160 dpi)\n - `\"hdpi\"` (approximately 240 dpi)\n - `\"xhdpi\"` (approximately 320 dpi)\n - `\"280\"`\n - `\"360\"`\n - `\"420\"`\n - `\"480\"`\n - `\"560\"`\n\n\n For information about the different screen densities, see [Screen compatibility overview](/guide/practices/screens_support#density).\n\n\nexample\n\n: If your application is compatible with only small and normal screens, regardless\n of screen density, then you must specify 12 `\u003cscreen\u003e` elements,\n because each screen size has six different density configurations.\n\n You must declare each one of\n these. Any combination of size and density that you *don't* specify is considered a screen\n configuration with which your application *isn't* compatible. Here's what the manifest\n entry looks like if your application is compatible with only small and normal screens: \n\n ```xml\n \u003cmanifest ... \u003e\n ...\n \u003ccompatible-screens\u003e\n \u003c!-- all small size screens --\u003e\n \u003cscreen android:screenSize=\"small\" android:screenDensity=\"ldpi\" /\u003e\n \u003cscreen android:screenSize=\"small\" android:screenDensity=\"mdpi\" /\u003e\n \u003cscreen android:screenSize=\"small\" android:screenDensity=\"hdpi\" /\u003e\n \u003cscreen android:screenSize=\"small\" android:screenDensity=\"xhdpi\" /\u003e\n \u003cscreen android:screenSize=\"small\" android:screenDensity=\"xxhdpi\" /\u003e\n \u003cscreen android:screenSize=\"small\" android:screenDensity=\"xxxhdpi\" /\u003e\n \u003c!-- all normal size screens --\u003e\n \u003cscreen android:screenSize=\"normal\" android:screenDensity=\"ldpi\" /\u003e\n \u003cscreen android:screenSize=\"normal\" android:screenDensity=\"mdpi\" /\u003e\n \u003cscreen android:screenSize=\"normal\" android:screenDensity=\"hdpi\" /\u003e\n \u003cscreen android:screenSize=\"normal\" android:screenDensity=\"xhdpi\" /\u003e\n \u003cscreen android:screenSize=\"normal\" android:screenDensity=\"xxhdpi\" /\u003e\n \u003cscreen android:screenSize=\"normal\" android:screenDensity=\"xxxhdpi\" /\u003e\n \u003c/compatible-screens\u003e\n \u003capplication ... \u003e\n ...\n \u003capplication\u003e\n \u003c/manifest\u003e\n ```\n\nintroduced in:\n: API level 9\n\nsee also:\n: [Screen compatibility overview](/guide/practices/screens_support)\n: [Filters on Google Play](/google/play/filters)"]]