Google Play <совместимые экраны> блокируют устройства Samsung при изменении их разрешения
В последнее время у нас были проблемы, когда пользователи не могли загрузить наше приложение из магазина Google Play из-за сообщения "Ваше устройство несовместимо с этой версией", хотя устройство указано как совместимое в диспетчере устройств версии приложения и приложения, которые были совместимы.
Мы обнаружили, что это происходит только с устройствами Samsung E.G. S7, S8 и S6 Edge +, когда параметр разрешения экрана изменен в настройках устройства.
В нашем манифестах указывается следующая поддержка экрана. Это работает для Galaxy S7 во всех разрешениях экрана, но не будет работать на S6 Edge с разрешением WQHD, в магазине Google Play говорится: "Ваше устройство не совместимо с этой версией", пока не будет выбрано другое разрешение.
<!-- just handsets allowed -->
<compatible-screens>
<screen android:screenSize="small" android:screenDensity="280" />
<screen android:screenSize="small" android:screenDensity="xhdpi" />
<screen android:screenSize="small" android:screenDensity="360" />
<screen android:screenSize="small" android:screenDensity="420" />
<screen android:screenSize="small" android:screenDensity="xxhdpi" />
<screen android:screenSize="small" android:screenDensity="560" />
<screen android:screenSize="small" android:screenDensity="xxxhdpi" />
<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="280" />
<screen android:screenSize="normal" android:screenDensity="xhdpi" />
<screen android:screenSize="normal" android:screenDensity="360" />
<screen android:screenSize="normal" android:screenDensity="420" />
<screen android:screenSize="normal" android:screenDensity="xxhdpi" />
<screen android:screenSize="normal" android:screenDensity="xxxhdpi" />
<screen android:screenSize="normal" android:screenDensity="480" />
<screen android:screenSize="normal" android:screenDensity="560" />
<screen android:screenSize="normal" android:screenDensity="640" />
</compatible-screens>
Ответы
Ответ 1
Фрагментация в устройствах Android огромна, я видел, что некоторые пользователи определяют <compatible-screens>
в своих приложениях, но иногда, когда новое устройство выпускается с новой плотностью или разрешение экрана изменяется пользователями, они не могут загрузите приложение из Google Play Store.
Я использовал определение compatible-screens
в своем AndroidManifest.xml
<!-- just handsets allowed -->
<compatible-screens>
...
...
...
</compatible-screens>
но в конце, чтобы избежать сообщения "Ваше устройство несовместимо с этой версией" и фильтрации из Google Play для определенных устройств, я удалил ограничение <compatible-screens>
из моего AndroidManifest.xml
во всех моих приложениях.
Если вы хотите исключить только планшеты, я использовал эту конфигурацию на основе этого ответа от Марка Мерфи.
<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" />
<!-- 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" />
</compatible-screens>