Почему мое приложение не появляется на планшетах в Google Play?

Я только что выпустил приложение для телефонов и планшетов, но он не отображается в Google Play для планшетов.

Проверено на Nexus 7 и Asus eeeePad

Это то, что у меня есть в файле манифеста

                 

uses-sdk tag

  

разрешений

                    

После явного добавления тега uses-feature в false он начал появляться для планшета Asus eeeePad, но все еще не отображается для nexus 7. Вот что я вижу в консоли разработчика

Это приложение доступно только для устройств с этими функциями, как определено в манифесте приложения. Плотность экрана: LARGE,MDPI LARGE,HDPI LARGE,LDPI LARGE,XHDPI XLARGE,MDPI XLARGE,HDPI XLARGE,LDPI XLARGE,XHDPI NORMAL,MDPI NORMAL,HDPI NORMAL,XHDPI Необходимые функции устройства

 android.hardware.screen.portrait android.hardware.touchscreen 

    Наконец, для меня работал специальный случай для Nexus 7 с . Поскольку Nexus 7 имеет плотность tvdpi

                         

    ОБНОВИТЬ:

    Для устройств xxhdpi вы можете использовать 480 в качестве значения int

        ` 

    Эта страница идентифицирует вашу проблему.

    Когда вы используете вместо , ваше приложение не будет отфильтровано Market, но ожидает, что вы будете обрабатывать устройства, не поддерживающие эту функцию на уровне кода.

    Для любого из разрешений на этой странице выше вы можете отключить фильтрацию на основе подразумеваемой функции, явно объявив явную функцию явно в элементе с атрибутом android:required="false" . Например, чтобы отключить любую фильтрацию на основе разрешения CAMERA, вы должны добавить это объявление в файл манифеста:

      

    Однако, когда вы указываете , все устройства, которые не имеют доступа к этой функции, фильтруются.

    Я верю, что ключ находится в ваших разрешениях. Говоря, что ваше приложение использует RECEIVE_SMS и READ_PHONE_STATE Google Play использует это для фильтрации устройств, которые не могут делать эти вещи (highcharts), потому что думают, что ваше приложение должно использовать эти разрешения для работы. Согласно сайту разработчика Android:

    «Чтобы предотвратить непреднамеренное использование этих приложений, Google Play предполагает, что определенные разрешения, связанные с оборудованием, указывают на то, что по умолчанию требуются основные аппаратные функции. Например, приложения, использующие Bluetooth, должны запрашивать разрешение BLUETOOTH в элементе – для устаревших приложений , Google Play предполагает, что объявление разрешений означает, что приложение android.hardware.bluetooth требуется для приложения и настраивает фильтрацию на основе этой функции. ”

    Кроме того, посмотрите на это:

    Телефония CALL_PHONE android.hardware.telephony CALL_PRIVILEGED android.hardware.telephony MODIFY_PHONE_STATE android.hardware.telephony PROCESS_OUTGOING_CALLS android.hardware.telephony READ_SMS android.hardware.telephony RECEIVE_SMS android.hardware.telephony RECEIVE_MMS android.hardware.telephony RECEIVE_WAP_PUSH android.hardware.telephony SEND_SMS android.hardware.telephony WRITE_APN_SETTINGS android.hardware.telephony WRITE_SMS android.hardware.telephony

    У вас есть RECEIVE_SMS и READ_PHONE_STATE поэтому у вас автоматически есть android.hardware.telephony . Вы можете это исправить, выполнив

      

    Все это объясняется здесь более подробно.

    Я должен сделать все три из этих вещей, чтобы заставить его работать на Nexus 7. После того как вы загрузили свой apk, вы можете проверить настройки, сначала активировав новый apk, перейдите к описанию продукта и найдите поддерживаемые устройства. Если Nexus 7 не найден в разделе «Неподдерживаемые устройства из-за ваших настроек манифеста», вы в порядке.

    Примечание. После того, как вы загрузите свой apk, Google Play переведет плотность 213 в tvdpi. Не уверен, почему в инструменте манифеста eclipse нет возможности …

      ....     

    Документация инструктирует нас избегать использования

      

    см. здесь
    вместо этого вы должны использовать

      

    Многие другие ответы, представленные на этой странице, также являются эффективными ответами. Я сам их реализовал. Всем спасибо.

    По словам разработчика.android.com

    Если приложение объявляет элемент < compatible-screens > в манифесте, элемент должен включать атрибуты, которые определяют все комбинации размера и плотности для экранов планшетов, поддерживаемых приложением.

    Обратите внимание, что, если возможно, вам следует избегать использования элемента < compatible-screens > в вашем приложении.


    Поэтому я выполняю следующие задачи,

    1- УДАЛЕННЫЕ < совместимые экраны > из манифеста

                                

    2- ADDED < поддерживает-экраны > атрибут в манифесте

       

    3- ADDED android: required = “false” в < uses-feature > (согласно моему требованию) в манифесте

          

    Официальная документация на Android о разрешениях, которые подразумевают требования к характеристикам

    Более подробное объяснение о android: required false присутствует в ATTRIBUTES: android: required false

    Когда вы объявляете андроид: required = «false» для функции, это означает, что приложение предпочитает использовать эту функцию, если она присутствует на устройстве, но что она предназначена для работы без указанной функции, если это необходимо (это разрешение на телефонию в случай таблеток).


    Сделав вышеуказанные изменения,

    В списке поддерживаемых Android-устройств добавлено более 2000 устройств

    Добавлено 2000+ устройств

    Надеюсь, это поможет

    Я получаю помощь от ответа на этот вопрос.

    Как сделать Android-телефонию доступной для планшетов?

    Да. Проблема заключалась в разрешении. Я удаляю все разрешения из AndroidManifest.xml, чем тестирую приложение и добавляю разрешение один за другим при получении отсутствующей ошибки разрешения. Теперь мое приложение совместимо с телефонами Android, а также планшетами.

    Давайте будем гением компьютера.