I'm having trouble with the Google Play store that insists that my app is supported by 0 devices. I've tried all the solutions I found on SO and elsewhere. This isn't about the apk being inactive, it gets activated be default and I've even tried to deactivate and reactivate it.
I've tested it on my Galaxy Nexus and it works very well, there's no reason for it to be incompatible with every single Android device...
Here's my manifest file:
<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" />
The full project source can be found here: https://github.com/Nurgak/Android-Bluetooth-Remote-Control as it's open-source.
This is what I see on Google Play.
The 5 features being
android.hardware.ACCELEROMETER android.hardware.BLUETOOTH android.hardware.CAMERA android.hardware.camera.AUTOFOCUS android.hardware.TOUCHSCREEN
And 4 permissions
android.permission.BLUETOOTH android.permission.BLUETOOTH_ADMIN android.permission.CAMERA android.permission.INTERNET
I'm absolutely appalled by their support too, I've only gotten generic "hey have you looked at our FAQs?" replies to e-mails.
Because Android is an open source project, any hardware manufacturer can build a device that runs the Android operating system. Yet, a device is "Android compatible" only if it can correctly run apps written for the Android execution environment.
To get to the developer options, open your device's Settings app and navigate to System > Advanced > Developer options > App Compatibility Changes.
Unavailable Manufacturer-Specific AppsIf the app has a manufacturer name in its title, it might not be compatible with other devices. The good news is that most of these manufacturer-specific apps have alternatives that are often better anyway.
I had faced a similar issue when I had declared camera hardware in uses-feature tag in manifest file in my application as follows:
<uses-feature android:name="android.hardware.camera">
If you don't specify the android:required attribute it defaults to "true". Thus, Google Play Store will assume that the application will not work unless the camera hardware is present.
Once you set android:required to false as given below, Play Store will accept the APK and will show a list of devices available for the application.
<uses-feature android:name="android.hardware.camera" android:required="false"/>
You may also look for misspellings on features descriptors. For supported feature descriptors see http://developer.android.com/guide/topics/manifest/uses-feature-element.html#features-reference
For more information: http://developer.android.com/guide/topics/manifest/uses-feature-element.html
We recently moved to Android Studio (from Eclipse) and I was trying to upload my first production version built with Studio, and I got the dreaded "Supported Android Devices 0" message when I uploaded my APK. The solution ended up being how we were including the apache commons codec library.
Check your build.gradle file - if you see something like:
compile 'org.apache.directory.studio:org.apache.commons.codec:1.+'
change it to:
compile 'commons-codec:commons-codec:1.+'
My theory is that the "org.apache.directory.studio" part of the namespace is screwing up the developer console and using the shorthand works fine.
How did I discover this? Well, I didn't, they did I just got lucky and found their commit message via a Google search.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With