Android-приложение поддерживается 0 устройствами
У меня возникают проблемы с магазином Google Play, который настаивает на том, что мое приложение поддерживается 0 устройствами. Я пробовал все решения, которые я нашел в SO и в других местах. Речь идет не о том, что apk неактивен, он активируется по умолчанию, и я даже пытался отключить его и повторно активировать.
Я тестировал его на своем Galaxy Nexus, и он работает очень хорошо, нет никаких причин для его несовместимости с каждым устройством Android...
Здесь мой файл манифеста:
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="17" />
<supports-screens
android:anyDensity="true"
android:largeScreens="true"
android:normalScreens="true"
android:resizeable="true"
android:smallScreens="true"
android:xlargeScreens="true" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-feature
android:name="android.hardware.accelerometer"
android:required="true" />
<uses-feature
android:name="android.hardware.screen.portrait"
android:required="false" />
Полный источник проекта можно найти здесь: https://github.com/Nurgak/Android-Bluetooth-Remote-Control как открытый.
Это то, что я вижу в Google Play.
![enter image description here]()
5 функций:
android.hardware.ACCELEROMETER
android.hardware.BLUETOOTH
android.hardware.CAMERA
android.hardware.camera.AUTOFOCUS
android.hardware.TOUCHSCREEN
И 4 разрешения
android.permission.BLUETOOTH
android.permission.BLUETOOTH_ADMIN
android.permission.CAMERA
android.permission.INTERNET
Я абсолютно потрясен их поддержкой, я только получил общий "эй, ты посмотрел наши часто задаваемые вопросы"? ответы на электронные письма.
Ответы
Ответ 1
- Попробуйте изменить имя apk от
com.bluetooth
до com.nurgak.bluetoothremote
- Попробуйте настроить все
uses-feature"-tag
на false
- Попробуйте удалить все разрешения (я знаю, что приложение не будет работать без них, но только для выяснения, почему Google Play говорит, что приложение поддерживает 0 устройств).
P.S.: Вам не нужно android.hardware.screen.portrait
, если вы установите его до false
, во всяком случае. В этом случае это не влияет.
Ответ 2
У меня возникла аналогичная проблема, когда я объявлял аппаратное обеспечение камеры в теге uses-feature в файле манифеста в своем приложении следующим образом:
<uses-feature android:name="android.hardware.camera">
Если вы не указали андроид: обязательный атрибут, по умолчанию он имеет значение "true". Таким образом, в Google Play Store предполагается, что приложение не будет работать, если оборудование камеры отсутствует.
После установки андроида: требуется false, как показано ниже, Play Store примет APK и отобразит список доступных для приложения устройств.
<uses-feature android:name="android.hardware.camera" android:required="false"/>
Вы также можете искать орфографические ошибки на дескрипторах функций. Для поддерживаемых дескрипторов функций см. http://developer.android.com/guide/topics/manifest/uses-feature-element.html#features-reference
Для получения дополнительной информации: http://developer.android.com/guide/topics/manifest/uses-feature-element.html
Ответ 3
Недавно мы перешли в Android Studio (из Eclipse), и я пытался загрузить свою первую производственную версию, созданную с помощью Studio, и я получил ужасное сообщение "Поддерживаемые устройства Android 0", когда я загрузил свой APK. Решение оказалось тем, что мы включали библиотеку кодеков apache commons.
Проверьте файл build.gradle - если вы видите что-то вроде:
compile 'org.apache.directory.studio:org.apache.commons.codec:1.+'
измените его на:
compile 'commons-codec:commons-codec:1.+'
Моя теория заключается в том, что часть пространства org.apache.directory.studio в пространстве имен закручивает консоль разработчика и отлично работает с сокращенными работами.
Как я узнал об этом? Ну, я этого не сделал, они сделали Мне просто повезло и нашло сообщение о фиксации через поиск Google.
Ответ 4
Иногда причиной этого является сторонняя библиотека, на которую вы ссылались. Если вы можете найти, какой из них есть, и если вы можете его удалить, вы можете решить проблему.
В этом случае мне пришлось удалить:
org.apache.commons.io:2.4
Ответ 5
Для меня проблема была в этой строке в файле манифеста:
<uses-feature android:name="android.hardware.camera2" />
Я бы потратил, возможно, довольно много времени, чтобы отследить его, но, к счастью, Google предоставляет в консоли разработчика возможность связаться с ними через чат (по какой-то причине этот параметр больше не присутствует в ATMW, возможно, он ограничен?), Они смогли определить проблему через несколько минут, мне пришлось изменить приведенную выше строку на
<uses-feature android:name="android.hardware.camera2" android:required="false" />
Достаточно задержка времени, поэтому спасибо Google!
Ответ 6
Перейдите к управлению выпуском, затем → Каталог устройств и выберите любое неподдерживаемое устройство, чтобы отобразить его данные, и вы увидите причину, по которой это устройство не поддерживается.
![enter image description here]()
![enter image description here]()
![enter image description here]()
Ответ 7
У меня была аналогичная проблема. Моим решением было написать эту строку правильно в манифесте:
<uses-feature android:name="android.hardware.sensor.barometer" android:required="true" />
Ответ 8
хотя на этот вопрос дан ответ, некоторые дополнительные поправки,
удалите любую зависимость .jar(особенно common-io. *. jar dependency).
я смог решить проблему после решения проблемы зависимости.
Ответ 9
В случае использования gradle убедитесь, что все манифесты в проекте совпадают с версией sdk min/max/target.
Ответ 10
У меня также была проблема с 0 поддерживаемыми устройствами, но причина была другая. Одна из библиотек создаст файл lib/README.txt
внутри сгенерированного APK. После загрузки APK в Google Play Console, файл lib/README.txt
будет выбран инструментом анализа APK и будет рассматриваться как родная библиотека, которая не поддерживается никаким устройством.
Я исправил проблему, удалив файл из APK, используя следующую конфигурацию Gradle в файле build.gradle
:
android {
...
packagingOptions {
exclude 'lib/README.txt'
}
}
Ответ 11
У меня была эта проблема. Исправлено, удалив все в манифесте.
Ответ 12
Я знаю, что поздно ответить, у меня такая же проблема. При установке всех пользователей-функций в качестве false
, в магазине воспроизведения все еще отображаются поддерживаемые нулевые устройства.
Вот решение, надежда поможет кому-то
<uses-feature
android:glEsVersion="0x00020000"
android:required="true" />
Также
<supports-screens
android:anyDensity="true"
android:largeScreens="true"
android:normalScreens="true"
android:resizeable="true"
android:smallScreens="true"
android:xlargeScreens="true" />
Надеюсь, что это поможет.
Ответ 13
Я также сталкиваюсь с той же проблемой. Я считаю, что эта проблема AndroidManifest.xml
файлом AndroidManifest.xml
. просто замени
<uses-feature android:name="android.hardware.accelerometer" android:required="true"/>
в
<uses-feature android:name="android.hardware.sensor.accelerometer" android:required="true"/>
Я надеюсь, что это поможет вам.