2

My app is not compatible for my device through Play Store. I am constantly testing on my device and it works properly.

  1. How can I learn what is not compatible?
    1.1 I have only 1 'uses-feature', for 'android.hardware.telephony' and it is 'required="false"'

    1.2 My 'compileSdkVersion' = 23, 'minSdkVersion' = 16, 'targetSdkVersion' = 23

    1.3 My device is Nexus 5 with Android 6.0

  2. How can I test if a fix works without uploading to the store? Currently I can install and run the app on my device through Android Studio but not through the Play Store.

AYBABTU
  • 986
  • 3
  • 17
  • 39

2 Answers2

0

You can write unit tests that run on your device/emulator to get the features available on the device/emulator and compare them with your app's required features.

The PackageManager.getSystemAvailableFeatures() method will be helpful in that case.

Another approach is to check the output of the aapt tool by the SDK to see the permissions and features defined by your app, these permissions and features dumped by the tool are those who GooglePlay will use to filter your app. https://developer.android.com/guide/topics/manifest/uses-feature-element.html#testing

Mina Wissa
  • 10,923
  • 13
  • 90
  • 158
0

The aapt tool may be useful in some cases, but the easiest way I've found to test device support is to upload an APK to a closed track in the Play Store Console (under Release management > App releases > Create closed track > Manage):

Upload APK to closed track

Then check the device catalog (under Release management > Device catalog):

Device catalog

I had previously excluded a ton of devices from the compatible-screens part of my manifest. I was able to test that the new APK corrected this by clicking on one of the devices in the catalog and expanding the "Track-level status" section on the next page:

New SDK adds support

Big McLargeHuge
  • 14,841
  • 10
  • 80
  • 108