<zgodne-ekrany>

składnia:
<compatible-screens>
    <screen android:screenSize=["small" | "normal" | "large" | "xlarge"]
            android:screenDensity=["ldpi" | "mdpi" | "hdpi" | "xhdpi"
                                   | "280" | "360" | "420" | "480" | "560" ] />
    ...
</compatible-screens>
zawarte w:
<manifest>
description:
Określa każdą konfigurację ekranu, z którą aplikacja jest zgodna. W pliku manifestu dozwolone jest tylko jedno wystąpienie elementu <compatible-screens>, ale może on zawierać wiele elementów <screen>. Każdy element <screen> określa konkretną kombinację gęstości ekranu, z którą aplikacja jest zgodna.

System Android nie odczytuje elementu manifestu <compatible-screens> w żadnym momencie. Ten element ma charakter wyłącznie informacyjny i jest używany przez usługi zewnętrzne, takie jak Google Play, aby lepiej poznać zgodność aplikacji z konkretnymi konfiguracjami ekranu i umożliwić filtrowanie według użytkowników.

Każda konfiguracja ekranu, która nie jest zadeklarowana w tym elemencie, to ekran, z którym aplikacja nie jest zgodna. Usługi zewnętrzne, np. Google Play, nie udostępniają aplikacji na urządzeniach z takimi ekranami.

Uwaga: zwykle nie używaj tego elementu manifestu. Użycie tego elementu może znacznie zmniejszyć liczbę potencjalnych użytkowników Twojej aplikacji, ponieważ uniemożliwia im jej zainstalowanie w przypadku urządzeń z konfiguracją ekranu, której nie podano na liście. Używaj go tylko w ostateczności, gdy aplikacja absolutnie nie działa z określonymi konfiguracjami ekranu. Zamiast korzystać z tego elementu, zapoznaj się z przewodnikiem dotyczącym obsługi wielu ekranów, aby zapewnić skalowalną obsługę wielu ekranów za pomocą alternatywnych układów i map bitowych dla różnych rozmiarów i gęstości ekranu.

Jeśli chcesz ustawić minimalny rozmiar ekranu aplikacji, użyj elementu <supports-screens>. Jeśli na przykład chcesz, aby aplikacja była dostępna tylko na urządzeniach z dużym i bardzo dużym ekranem, element <supports-screens> umożliwia zadeklarowanie, że nie obsługuje ona małych i normalnych rozmiarów ekranu. Następnie usługi zewnętrzne, takie jak Google Play, odpowiednio filtrują aplikację. Możesz też użyć elementu <supports-screens>, aby zadeklarować, czy system może zmieniać rozmiar aplikacji w przypadku różnych rozmiarów ekranu.

Więcej informacji o tym, jak Google Play filtruje aplikacje za pomocą tego i innych elementów manifestu, znajdziesz w artykule Filtry w Google Play.

elementy podrzędne:
<screen>

Określa konfigurację pojedynczego ekranu, z którą aplikacja jest zgodna.

Co najmniej jedno wystąpienie tego elementu należy umieścić w elemencie <compatible-screens>. Ten element musi zawierać zarówno atrybut android:screenSize, jak i android:screenDensity. Jeśli nie zadeklarujesz obu atrybutów, element zostanie zignorowany.

Atrybuty:

android:screenSize
Wymagane. Określa rozmiar ekranu na potrzeby tej konfiguracji ekranu.

Akceptowane wartości:

  • small
  • normal
  • large
  • xlarge

Informacje o różnych rozmiarach ekranu znajdziesz w artykule Omówienie zgodności ekranu.

android:screenDensity
Wymagane. Określa gęstość ekranu na potrzeby tej konfiguracji ekranu.

Akceptowane wartości:

  • "ldpi" (około 120 dpi)
  • "mdpi" (około 160 dpi)
  • "hdpi" (około 240 dpi)
  • "xhdpi" (około 320 dpi)
  • "280"
  • "360"
  • "420"
  • "480"
  • "560"

Informacje o różnych gęstościach ekranu znajdziesz w artykule Omówienie zgodności ekranu.

przykład

Jeśli Twoja aplikacja jest zgodna tylko z małymi i normalnymi ekranami, niezależnie od gęstości ekranu, musisz określić 12 elementów <screen>, ponieważ każdy rozmiar ekranu ma 6 różnych konfiguracji gęstości.

Musisz zadeklarować każdą z nich. Każda kombinacja rozmiaru i gęstości, której nie określisz, będzie uznawana za konfigurację ekranu, z którą Twoja aplikacja nie jest zgodna. Tak wygląda wpis w pliku manifestu, jeśli aplikacja jest zgodna tylko z małymi i normalnymi ekranami:

<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>
wprowadzone w:
Poziom API 9
zobacz też:
Omówienie zgodności ekranu
Filtry w Google Play