Why does the Google Play store say my Android app is incompatible with my own device?
The answer appears to be solely related to application size. I created a simple "hello world" app with nothing special in the manifest file, uploaded it to the Play store, and it was reported as compatible with my device.
I changed nothing in this app except for adding more content into the res/drawable
directory. When the .apk
size reached about 32 MB, the Play store started reporting that my app was incompatible with my phone.
I will attempt to contact Google developer support and ask for clarification on the reason for this limit.
UPDATE: Here is Google developer support response to this:
Thank you for your note. Currently the maximum file size limit for an app upload to Google Play is approximately 50 MB.
However, some devices may have smaller than 50 MB cache partition making the app unavailable for users to download. For example, some of HTC Wildfire devices are known for having 35-40 MB cache partitions. If Google Play is able to identify such device that doesn't have cache large enough to store the app, it may filter it from appearing for the user.
I ended up solving my problem by converting all the PNG files to JPG, with a small loss of quality. The .apk
file is now 28 MB, which is below whatever threshold Google Play is enforcing for my phone.
I also removed all the <uses-feature>
stuff, and now have just this:
<uses-sdk android:minSdkVersion="4" android:targetSdkVersion="15" />
How to tell why a device isn't compatible in the Google Play store
It turns out you can view all incompatible devices and why they are incompatible in the Google Play console by going to Release management -> Device catalog
.
The app is incompatible with all your devices
My app became available now. I've wrote to Google Play support, didn't have any answer from them, but the app became available.
Also, another developer with the similar app contacted me with the same problem. GP support said him, that it was a bug on the GP side. His app is also available now.
This app is incompatible with your device after change targetSdkVersion from 28 to 29
Finally, I can solve this issue.
The problem is in the manifest file. There is a line I should remove.
I should remove camera2 in the manifest file.
Just it, and now my app is on play store.
Thank you guys
How to understand why Android app is incompatible with some specific devices
Is there any way to understand why specifically my application is not compatible with the Brand X device via Android Studio or Google Android Developer Console?
Yes ,Cloud Test Lab ,is a way you can test your application compatibility.
Get free automated testing of your app on physical devices covering
nearly every brand, model, and version of the devices your users might
have. The lab helps you quickly find compatibility issues that you
might miss using only your available test devices.
Use Cloud Test Lab from Android Studio:
Add the following to the studio.vmoptions file:
-Denable.google.cloud.testing.plugin=true
Now, you should be able to see the additional options for Cloud Test Lab in Android Studio's Run/Debug configurations dialog.
Under "Cloud device matrix", you can provide a different "Matrix configuration" by clicking on the following icon: and creating a different configuration.
Click "Apply" and close the window.
Now you can run the test by clicking the Run configuration icon in Android Studio.
Use Cloud Test Lab from the command-line
First, install gCloud SDk
Add Alpha components to enable access to Cloud Test Lab from the Alpha repository
$ gcloud components update alpha
Now configure the project for the codelab. If you're using your own project, substitute with the correct project id:
$ gcloud config set project cloud-test-lab-babbq-2015
Make sure your authentication credentials are current
$ gcloud auth login
To run the test on different devices, let's first look at a list of available devices by running this command:
$ gcloud alpha test android devices list
For Example:
a test on Nexus6 and Nexus7 virtual devices, running APIs 19 and 21 in English and French locales on portrait and landscape orientations. GCloud provided the URL to the test results page, where results appear as each test is completed.
$ gcloud alpha test android run \
--type instrumentation \
--app app/build/outputs/apk/app-debug-unaligned.apk \--test app/build/outputs/apk/app-debug-androidTest-unaligned.apk \
--device-ids Nexus6,Nexus7 \
--os-version-ids 19,21 \
--locales en,fr \
--orientations portrait,landscape
Guide For Using Google Cloud Test Lab
check below link for more details
https://firebase.google.com/docs/test-lab/
Hope this helps!!! Happy Coding!!
Edit :
To review aggregated test results for all test matrices for a given app in your Firebase project, click the name of the app, as shown in the example test matrix results page shown below.
Example test execution results page
Example test matrix list page
Example of a test matrix results page with only four test executions
Note:
Detailed test results are available for 90 days after you run a test, and are stored in a Google Cloud Storage (GCS) bucket (but are also visible in the Firebase console). You can view detailed test results in the GCS bucket when you click View Source Files on the test execution results page. When detailed test results are no longer available, you can still see which tests passed and failed.
Note:
Image sources are taken from official documentation.
Related Topics
Android Gridlayout with Dynamic Number of Columns Per Row
How to Tell If Android App Is Running in the Foreground
How to Cancel This Repeating Alarm
Broadcast Receiver Within a Service
How to Create and Read Log on Android Devices
"No Such File or Directory" Trying to Execute Linux Binary on Android Device
Tools: Replace Not Replacing in Android Manifest
Open an Image Using Uri in Android's Default Gallery Image Viewer
Why My App Is Not Showing Up on Tablets in Google Play
The APK File Does Not Exist on Disk
Get and Parse CSV File in Android
Adjustpan Not Preventing Keyboard from Covering Edittext
Creating a Preference Screen with Support (V21) Toolbar
How to Add a Fragment Inside a Viewpager Using Nested Fragment (Android 4.2)