简体   繁体   中英

How to test device compatibility?

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.

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

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):

上传APK到封闭的曲目

Then check the device catalog (under Release management > 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:

新SDK增加了支持

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM