2016-03-04 4 views
1

Я хочу развернуть свое приложение в Play Store для небольших и обычных телефонов всех плотностей. Атрибут android:screenDensity элемента <screen> не имеет xxhdpi и xxxhdpi плотности в виде предопределенных значений. Должны ли я использовать значения 480 и 560 для соответствующих недостающих плотностей?Поддержка плотности экрана приложений для Play Store

Или я мог бы использовать это?

<supports-screens android:smallScreens="true" 
        android:normalScreens="true" 
        android:largeScreens="false" 
        android:xlargeScreens="false"/> 

Охватывает ли это все плотности выбранных размеров экрана?

ответ

0

Я бы пошел со вторым вариантом; с указанием поддерживаемых экранов, а затем, возможно, добавить anyDensity = «истина»:

<supports-screens android:smallScreens="true" 
        android:normalScreens="true" 
        android:largeScreens="false" 
        android:xlargeScreens="false" 
        android:anyDensity="true"/> 

Это не должно быть необходимо установить xxhdpi и xxxhdpi. И тогда всегда используйте эмулятор для тестирования вашего приложения на разных размерах экрана и плотности.

1

В теге <supports-screens>, установив значения android:largeScreens и android:xlargeScreens на false, ваше приложение не будет доступно для этих размеров экрана. Он просто позволит включить режим совместимости с экраном для вашего приложения на этих размерах экрана.

С Android разработчика doc:

андроида: largeScreens

Указывает, поддерживает ли приложение больший экран форм-факторов. Большой экран определяется как экран, который значительно больше, чем экран «обычной» телефонной трубки, и поэтому для его эффективного использования может потребоваться особая забота о части приложения, хотя он может полагаться на изменение размера системы, чтобы заполнить экран. Значение по умолчанию для этого действительно зависит от некоторых версий, поэтому лучше, если вы явно объявляете этот атрибут во все времена. Помните, что установка «false» обычно включает режим совместимости с экраном.

андроида: xlargeScreens

Указывает, поддерживает ли приложение дополнительные большой экран форм-факторов. Экран xlarge определяется как экран, который значительно больше, чем «большой» экран, такой как планшет (или нечто большее), и может потребовать особой заботы о том, чтобы часть приложения использовала его, хотя он может полагаться на изменение размера системой для заполнения экрана. Значение по умолчанию для этого действительно зависит от некоторых версий, поэтому лучше, если вы явно объявляете этот атрибут во все времена. Помните, что установка «false» обычно включает режим совместимости с экраном.

Если вы хотите, чтобы ваше приложение доступно только для телефонов, добавьте следующие строки в манифесте:

<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="480" /> 
    <!-- 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="small" android:screenDensity="480" /> 
</compatible-screens> 

Записи с android:screenDensity="480" должны поддерживать xxhdpi ведра.

Взгляните на this article документов для разработчиков Android, в котором объясняется, как сделать ваше приложение доступным только для мобильных телефонов.