sintaks:
    <supports-screens android:resizeable=["true"| "false"]
                      android:smallScreens=["true" | "false"]
                      android:normalScreens=["true" | "false"]
                      android:largeScreens=["true" | "false"]
                      android:xlargeScreens=["true" | "false"]
                      android:anyDensity=["true" | "false"]
                      android:requiresSmallestWidthDp="integer"
                      android:compatibleWidthLimitDp="integer"
                      android:largestWidthLimitDp="integer"/>
    
terdapat dalam:
<manifest>
deskripsi:
Memungkinkan Anda menentukan ukuran layar yang didukung aplikasi Anda, dan mengaktifkan mode kompatibilitas layar untuk layar yang lebih besar dari yang didukung oleh aplikasi Anda. Anda harus selalu menggunakan elemen ini dalam aplikasi untuk menentukan ukuran layar yang didukung aplikasi Anda.

Catatan: Mode kompatibilitas layar bukanlah mode yang harus Anda gunakan untuk menjalankan aplikasi; mode ini menyebabkan pikselasi dan pemburaman di UI karena zoom yang diterapkan. Cara yang tepat agar aplikasi Anda berfungsi dengan baik di layar besar adalah dengan mengikuti panduan untuk Mendukung Beberapa Layar, dan menyediakan tata letak alternatif untuk berbagai ukuran layar.

Aplikasi akan dianggap "mendukung" ukuran layar tertentu jika dapat menyesuaikan ukurannya dengan benar untuk mengisi seluruh layar. Pengubahan ukuran normal yang diterapkan oleh sistem berfungsi dengan baik untuk sebagian besar aplikasi, dan Anda tidak perlu melakukan pekerjaan tambahan agar aplikasi Anda dapat berfungsi di layar yang lebih besar dari perangkat handset. Namun, penting bagi Anda untuk mengoptimalkan UI aplikasi bagi berbagai ukuran layar dengan memberikan resource tata letak alternatif. Misalnya, Anda mungkin ingin mengubah tata letak suatu aktivitas untuk menyesuaikan layar tablet ketika biasanya aktivitas tersebut berjalan di perangkat handset.

Namun, jika aplikasi tidak berfungsi dengan baik saat ukurannya diubah mengikuti ukuran layar yang berbeda, Anda dapat menggunakan atribut elemen <supports-screens> untuk mengontrol apakah aplikasi harus didistribusikan ke layar yang lebih kecil, atau ukuran UI-nya perlu diatur ("di-zoom") agar sesuai dengan layar yang lebih besar menggunakan mode kompatibilitas layar dari sistem. Jika Anda belum merancangnya untuk ukuran layar yang lebih besar dan pengubahan ukuran normal tidak memberikan hasil yang sesuai, mode kompatibilitas layar akan menskalakan UI Anda dengan mengemulasikan layar ukuran normal dan kepadatan sedang, kemudian memperbesarnya agar mengisi seluruh layar. Berhati-hatilah karena hal ini menyebabkan pikselasi dan pemburaman pada UI Anda, sebaiknya optimalkan UI untuk layar yang berukuran besar.

Catatan: Android 3.2 memperkenalkan beberapa atribut baru: android:requiresSmallestWidthDp, android:compatibleWidthLimitDp, dan android:largestWidthLimitDp. Jika aplikasi Anda dikembangkan untuk Android 3.2 dan yang lebih tinggi, sebaiknya gunakan atribut ini untuk mendeklarasikan dukungan ukuran layar, bukan atribut yang didasarkan pada ukuran layar umum.

Tentang mode kompatibilitas layar

Mode kompatibilitas layar adalah pilihan terakhir bagi aplikasi yang tidak dirancang dengan benar untuk memanfaatkan ukuran layar yang lebih besar. Mode ini tidak harus digunakan untuk menjalankan aplikasi karena memberikan pengalaman pengguna yang tidak optimal. Terdapat dua versi mode kompatibilitas layar yang berbeda menurut versi perangkat yang digunakan untuk menjalankan aplikasi.

Di Android versi 1.6 hingga 3.1, sistem akan menjalankan aplikasi dalam jendela "perangko". Jendela ini mengemulasikan layar 320 x 480 dp dengan batas hitam yang mengisi sisa area layar.

Di Android 3.2 dan yang lebih tinggi, sistem akan menggambar tata letak seperti pada layar 320 x 480 dp lalu menskalakannya untuk memenuhi layar. Hal ini biasanya akan menyebabkan artefak seperti pemburaman dan pikselasi dalam UI.

Untuk mengetahui informasi selengkapnya tentang cara mendukung berbagai ukuran layar dengan benar sehingga Anda tidak perlu menggunakan mode kompatibilitas layar dengan aplikasi, baca Mendukung Beberapa Layar.

atribut:
android:resizeable
Menunjukkan apakah ukuran aplikasi dapat diubah menyesuaikan berbagai ukuran layar. Secara default, atribut ini diatur ke true. Jika diatur ke false, sistem akan menjalankan aplikasi Anda dalam mode kompatibilitas layar di layar berukuran besar.

Atribut ini sudah tidak digunakan lagi. Fitur ini diperkenalkan guna memudahkan transisi aplikasi dari Android 1.5 ke 1.6 pada kali pertama dukungan untuk beberapa layar diperkenalkan. Anda tidak boleh menggunakannya.

android:smallScreens
Menunjukkan apakah aplikasi mendukung faktor bentuk layar yang lebih kecil. Layar kecil didefinisikan sebagai layar yang memiliki rasio aspek lebih kecil dari layar “normal” (HVGA tradisional). Aplikasi yang tidak mendukung layar kecil tidak akan tersedia bagi perangkat layar kecil melalui layanan eksternal (seperti Google Play) karena hanya sedikit yang dapat dilakukan oleh platform tersebut untuk membuat aplikasi seperti ini berfungsi di perangkat yang layarnya lebih kecil. Atribut ini diatur ke "true" secara default.
android:normalScreens
Menunjukkan apakah aplikasi mendukung faktor bentuk layar “normal”. Secara tradisional, ini adalah layar HVGA kepadatan medium, tetapi kepadatan rendah WQVGA dan kepadatan tinggi WVGA juga dianggap normal. Atribut ini diatur ke "true" secara default.
android:largeScreens
Menunjukkan apakah aplikasi mendukung faktor bentuk layar yang lebih besar. Layar besar didefinisikan sebagai layar yang secara signifikan lebih besar dari layar handset "normal", dan karenanya mungkin memerlukan perlakuan khusus bagi aplikasi agar dapat memanfaatkannya dengan baik meskipun aplikasi mungkin mengandalkan pengubahan ukuran oleh sistem untuk mengisi layar tersebut.

Nilai default untuk atribut ini sebenarnya berbeda-beda di antara beberapa versi, jadi sebaiknya deklarasikan atribut ini setiap saat secara eksplisit. Harap berhati-hati karena mengatur atribut ini ke "false" umumnya akan mengaktifkan mode kompatibilitas layar.

android:xlargeScreens
Menunjukkan apakah aplikasi mendukung faktor bentuk layar ekstra besar. Layar ekstra besar didefinisikan sebagai layar yang secara signifikan lebih besar dari layar "besar", seperti tablet (atau yang lebih besar) dan mungkin memerlukan perlakuan khusus bagi aplikasi untuk memanfaatkannya dengan baik, meskipun aplikasi mungkin mengandalkan pengubahan ukuran oleh sistem untuk mengisi layar tersebut.

Nilai default untuk atribut ini sebenarnya berbeda-beda di antara beberapa versi, jadi sebaiknya deklarasikan atribut ini setiap saat secara eksplisit. Harap berhati-hati karena mengatur atribut ini ke "false" umumnya akan mengaktifkan mode kompatibilitas layar.

Atribut ini diperkenalkan pada API level 9.

android:anyDensity
Menunjukkan apakah aplikasi menyertakan resource untuk memenuhi kebutuhan kepadatan layar apa pun.

Untuk aplikasi yang mendukung Android 1.6 (API level 4) dan yang lebih tinggi, atribut ini diatur ke "true" secara default dan Anda tidak boleh mengaturnya ke "false" kecuali Anda benar-benar yakin bahwa aplikasi memerlukannya agar dapat berfungsi dengan baik. Satu-satunya situasi ketika Anda perlu menonaktifkannya adalah jika aplikasi memanipulasi bitmap secara langsung (lihat dokumen Mendukung Beberapa Layar untuk informasi selengkapnya).

android:requiresSmallestWidthDp
Menentukan smallestWidth minimal yang diperlukan. SmallestWidth adalah dimensi terpendek ruang layar (dalam unit dp) yang harus tersedia untuk UI aplikasi Anda, yang merupakan dimensi terpendek dari dua dimensi layar yang tersedia. Jadi, agar perangkat dianggap kompatibel dengan aplikasi Anda, smallestWidth perangkat harus sama dengan atau lebih besar dari nilai ini. (Biasanya, nilai yang Anda berikan untuknya adalah “lebar terkecil” yang didukung tata letak Anda, terlepas dari orientasi layar saat ini.)

Misalnya, layar handset biasa memiliki smallestWidth sebesar 320 dp, tablet 7 inci memiliki smallestWidth sebesar 600 dp, dan tablet 10 inci memiliki smallestWidth sebesar 720 dp. Nilai-nilai ini umumnya adalah smallestWidth, karena merupakan dimensi terpendek dari ruang layar yang tersedia.

Ukuran yang dibandingkan dengan nilai Anda akan memperhitungkan dekorasi layar dan UI sistem. Misalnya, jika perangkat memiliki beberapa elemen UI yang persisten di layar, sistem akan mendeklarasikan smallestWidth perangkat sebagai ukuran yang lebih kecil dari layar sebenarnya, memperhitungkan elemen UI ini karena merupakan piksel layar yang tidak tersedia untuk UI Anda. Maka dari itu, nilai yang harus Anda gunakan adalah lebar minimal yang diperlukan oleh tata letak, terlepas dari orientasi layar saat ini.

Jika aplikasi Anda dapat mengubah ukurannya dengan benar untuk ukuran layar yang lebih kecil (menjadi ukuran kecil atau lebar minimal 320 dp), Anda tidak perlu menggunakan atribut ini. Jika tidak, Anda harus menggunakan nilai bagi atribut ini yang cocok dengan nilai terkecil yang digunakan oleh aplikasi sebagai penentu lebar layar terkecil (sw<N>dp).

Perhatian: Sistem Android tidak memperhatikan atribut ini sehingga perilaku aplikasi Anda tidak akan terpengaruh pada waktu proses. Sebagai gantinya, atribut ini digunakan untuk mengaktifkan pemfilteran bagi aplikasi Anda pada layanan seperti Google Play. Namun, Google Play saat ini tidak mendukung atribut ini untuk pemfilteran (pada Android 3.2) sehingga Anda harus terus menggunakan atribut ukuran lainnya jika aplikasi Anda tidak mendukung layar kecil.

Atribut ini diperkenalkan pada API level 13.

android:compatibleWidthLimitDp
Atribut ini memungkinkan Anda mengaktifkan mode kompatibilitas layar sebagai fitur yang dapat diatur oleh pengguna dengan menentukan "lebar layar terkecil" maksimal yang dirancang bagi aplikasi Anda. Jika sisi terkecil layar perangkat yang tersedia lebih besar dari nilai Anda di sini, pengguna masih dapat menginstal aplikasi Anda, tetapi akan diberi pilihan untuk menjalankannya dalam mode kompatibilitas layar. Secara default, mode kompatibilitas layar akan dinonaktifkan dan tata letak Anda akan diubah ukurannya untuk menyesuaikan layar seperti biasa, tetapi akan tersedia tombol di kolom sistem yang memungkinkan pengguna untuk mengaktifkan dan menonaktifkan mode kompatibilitas layar.

Jika aplikasi Anda kompatibel dengan semua ukuran layar dan ukuran tata letaknya dapat berubah dengan benar, Anda tidak perlu menggunakan atribut ini.

Catatan: Saat ini, mode kompatibilitas layar hanya mengemulasikan layar handset dengan lebar 320 dp sehingga mode kompatibilitas layar tidak akan diterapkan jika nilai Anda untuk android:compatibleWidthLimitDp lebih besar dari 320.

Atribut ini diperkenalkan pada API level 13.

android:largestWidthLimitDp
Atribut ini memungkinkan Anda mengaktifkan mode kompatibilitas layar secara paksa dengan menentukan "lebar layar terkecil" maksimal yang dirancang untuk aplikasi Anda. Jika sisi terkecil layar perangkat yang tersedia lebih besar dari nilai Anda di sini, aplikasi akan berjalan dalam mode kompatibilitas layar yang tidak dapat dinonaktifkan oleh pengguna.

Jika aplikasi Anda kompatibel dengan semua ukuran layar dan ukuran tata letaknya dapat berubah dengan benar, Anda tidak perlu menggunakan atribut ini. Jika tidak, Anda harus terlebih dahulu mempertimbangkan penggunaan atribut android:compatibleWidthLimitDp. Sebaiknya hanya gunakan atribut android:largestWidthLimitDp jika aplikasi Anda tidak dapat berfungsi dengan baik ketika ukurannya diubah untuk layar yang lebih besar, dan mode kompatibilitas layar adalah satu-satunya cara bagi pengguna untuk menggunakan aplikasi Anda.

Catatan: Saat ini, mode kompatibilitas layar hanya mengemulasikan layar handset dengan lebar 320 dp sehingga mode kompatibilitas layar tidak akan diterapkan jika nilai Anda untuk android:largestWidthLimitDp lebih besar dari 320.

Atribut ini diperkenalkan pada API level 13.

diperkenalkan pada:
API Level 4
lihat juga: