- نحو:
<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>
در مانیفست مجاز است، اما میتواند حاوی چندین عنصر<screen>
باشد. هر عنصر<screen>
یک ترکیب اندازه و چگالی صفحه نمایش مشخص می کند که برنامه با آن سازگار است.سیستم Android عنصر مانیفست
<compatible-screens>
را در هیچ نقطه ای نمی خواند. این عنصر فقط اطلاعاتی است و توسط سرویس های خارجی مانند Google Play برای درک بهتر سازگاری برنامه با تنظیمات صفحه نمایش خاص و فعال کردن فیلتر کردن برای کاربران استفاده می شود.هر پیکربندی صفحهای که در این عنصر اعلام نشده باشد ، صفحهای است که برنامه با آن سازگار نیست . سرویسهای خارجی، مانند Google Play، برنامه را در اختیار دستگاههایی با چنین صفحههایی قرار نمیدهند.
احتیاط: معمولاً از این عنصر مانیفست استفاده نمیکنید . استفاده از این عنصر میتواند به طور چشمگیری پایگاه کاربر بالقوه برای برنامه شما را کاهش دهد، زیرا از نصب برنامه شما توسط کاربران جلوگیری میکند، در صورتی که دستگاهی با پیکربندی صفحهنمایش دارند که شما فهرست نکردهاید. از آن فقط به عنوان آخرین راه حل استفاده کنید، زمانی که برنامه کاملاً با تنظیمات صفحه نمایش خاص کار نمی کند. به جای استفاده از این عنصر، راهنمای پشتیبانی از چند صفحه نمایش را دنبال کنید تا با استفاده از طرحبندیها و نقشههای بیتی جایگزین برای اندازهها و تراکمهای مختلف صفحه، پشتیبانی مقیاسپذیر برای چندین صفحه ارائه دهید.
اگر می خواهید حداقل اندازه صفحه نمایش را برای برنامه خود تنظیم کنید، از عنصر
<supports-screens>
استفاده کنید. برای مثال، اگر میخواهید برنامه شما فقط برای دستگاههای صفحهنمایش بزرگ و فوقالعاده در دسترس باشد، عنصر<supports-screens>
به شما امکان میدهد اعلام کنید که برنامه شما از اندازههای کوچک و معمولی صفحه نمایش پشتیبانی نمیکند. سپس، سرویس های خارجی مانند Google Play برنامه شما را بر این اساس فیلتر می کنند. همچنین می توانید از عنصر<supports-screens>
برای اعلام اینکه آیا سیستم می تواند اندازه برنامه شما را برای اندازه های مختلف صفحه تغییر دهد یا خیر، استفاده کنید.برای اطلاعات بیشتر درباره نحوه فیلتر کردن برنامهها توسط Google Play با استفاده از این و سایر عناصر مانیفست، به فیلترها در Google Play مراجعه کنید.
- عناصر کودک:
- مثال
اگر برنامه شما صرف نظر از تراکم صفحه نمایش تنها با صفحه نمایش های کوچک و معمولی سازگار است، باید 12 عنصر
<screen>
را مشخص کنید، زیرا هر اندازه صفحه دارای شش پیکربندی تراکم مختلف است.شما باید هر یک از اینها را اعلام کنید. هر ترکیبی از اندازه و چگالی که شما مشخص نکردهاید ، به عنوان پیکربندی صفحهای در نظر گرفته میشود که برنامه شما با آن سازگار نیست . اگر برنامه شما فقط با صفحه نمایش های کوچک و معمولی سازگار باشد، ورودی مانیفست چگونه به نظر می رسد:
<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
- همچنین ببینید:
- نمای کلی سازگاری با صفحه نمایش
- فیلترها در گوگل پلی
<صفحه نمایش سازگار>
محتوا و نمونه کدها در این صفحه مشمول پروانههای توصیفشده در پروانه محتوا هستند. جاوا و OpenJDK علامتهای تجاری یا علامتهای تجاری ثبتشده Oracle و/یا وابستههای آن هستند.
تاریخ آخرین بهروزرسانی 2025-07-29 بهوقت ساعت هماهنگ جهانی.
[[["درک آسان","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-29 بهوقت ساعت هماهنگ جهانی."],[],[],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)"]]