App suddenly not available on a device

Kevin

Well-Known Member
Licensed User
Longtime User
A customer who purchased my app told me that he noticed several days ago that my app does not show up in the market on his phone and when going to the Android Market website it tells him that his device is not compatible.

I don't understand why this is happening though. He was able to access it previously and nothing really has changed in my app. (Permissions are all the same).

His device is a Samsung Galaxy Nexus (toro) and in my developer console it lists that device as supported. I have only manually excluded Wildfire phones (because their resolution is too small for me to work with).

I also noticed that Android has automatically filtered out the Behold II (sgh-t939), Moment (sph-m900) and Galaxy (gt-i7500), although looking them up online I cannot figure out why.

It's bad enough to have a paid customer unable to access my app, but I also wonder how many others this has happened to. I have seen a couple recent comments about my app 'no longer working' but I also just fixed a minor bug that made it appear that it wasn't working but it was (just slowly). As such, I don't know what the comments were getting at. In other words, typical useless comments! :D

The only thing I changed somewhat recently was that I blocked a lot of foreign countries only because 1) My app will not work in 99% of them because they don't have access to the correct external hardware and 2) Most of the 1 star reviews were left in foreign languages, suggesting to me that they were trying my app in a country that it would never work in anyway. And yes, the customer in question is from the U.S. and no that country isn't filtered.

Below are the permissions required by my APK. Any ideas? I have tried unpublishing and republishing my app (saw that tip on another forum) but he hasn't responded that it worked.
<uses-sdk android:minSdkVersion="4" />

<supports-screens android:largeScreens="true" android:normalScreens="true" android:smallScreens="true" android:anyDensity="true" />

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

<uses-permission android:name="android.permission.INTERNET" />

<uses-permission android:name="android.permission.VIBRATE" />

 
Last edited:

NJDude

Expert
Licensed User
Longtime User
As far as I know, an app not showing (or displayed as incompatible) in the market is not due to permissions but FEATURES, let say, you have an app that makes phone calls, so, WiFi only tablets won't list that app.

Take a closer look at what changes you've made.
 
Upvote 0

Kevin

Well-Known Member
Licensed User
Longtime User
That's the thing.... about all I have done that is the least bit drastic is I added another service.

Here is from my dev console:

Screen layouts: SMALL NORMAL LARGE XLARGE
Screen densities:
Required device features
android.hardware.touchscreen


This application is available to over 1072 devices.Show devices
4 devices are manually filtered.
The funny thing is "Screen densities" does not appear on the app's Edit product Details page but when I copy/pasted it, it appeared. I don't know if it ever listed densities before, but I do know that nothing has changed in that regard.
 
Upvote 0

NJDude

Expert
Licensed User
Longtime User
Hmmm, I'd say, unfilter those devices and ask the user if he can see the app, if he still can't then I'd blame The Market app, maybe something went wrong, the market app fails sometimes, then report the issue to Google.
 
Upvote 0

Kevin

Well-Known Member
Licensed User
Longtime User
I haven't heard from him in several hours. Hopefully he will get back to me and let me know if he's made any progress. If not then I will see about adding the Wildfires back in, but I wouldn't expect that to block his phone.

Google and the Android Market in general do seem a bit buggy on occasions though!
 
Upvote 0

JonPM

Well-Known Member
Licensed User
Longtime User
Also, I believe if you add certain libraries to your project the new lib might require a higher sdk
 
Upvote 0

Kevin

Well-Known Member
Licensed User
Longtime User
I have added one or two libraries, but it is still showing level 4 in the manifest, same as it always was.


I just also saw a comment on the free version of someone requesting I 'add the Galaxy Note'. Once again, I see no reason for that phone to be blocked. :BangHead:
 
Upvote 0

Kevin

Well-Known Member
Licensed User
Longtime User
Technically, the Galaxy Note isn't in the list, but it also is not mentioned as being excluded. In that case it could be because it is new and Google hasn't added it yet. I'm not really sure how that works.

BUT, in the attached screenshot you can see the Galaxy Nexus (toro) and it is clearly in the list as being included.

Even more puzzling is I also included parts that show the Behold II and Moment as being included yet at the bottom of the Samsung section it showed that they have been excluded because of my manifest. The excluded stuff was very tiny so I tried to zoom in when I got the screen grabs.

I don't get it.

Edit: I had to compress the image a lot to make it small enough for the forum to accept, but you should get the idea.
 

Attachments

  • market2.jpg
    market2.jpg
    68.8 KB · Views: 251
Last edited:
Upvote 0

Kevin

Well-Known Member
Licensed User
Longtime User
I still don't know what to make of the discrepancies with the Behold II and Moment, but I got an update from the customer with the problem on his Nexus and he said that he had installed a leaked version of ICS 4.0.4 and that he has read of others having similar market problems so I now think that this is the problem.

With regard to the Galaxy Note, since it is not listed as being compatible or NOT compatible, does this simply mean that Google hasn't added market (app compatibility) support for it yet?
 
Upvote 0

corwin42

Expert
Licensed User
Longtime User
Did you enable "copy protection" for your app in Android Market? If you do this the app is only installable on devices with original ROMs which are registered to Google. Devices with custom ROM will be shown as incompatible device. Even some official ROMs are not registered to Google so they will not show the app as compatible.

It is a really bad idea to enable this "copy protection" option because this will make your app unavailable for many devices.
 
Upvote 0

NJDude

Expert
Licensed User
Longtime User
If he installed a leaked version of a ROM I would take that as the culprit, I've dealt with such versions and (at least the ones I tried ICS 4.x) didn't really work on certain phones, some of the device's features were not available like camera and/or sound after the new ROM was installed.
 
Last edited:
Upvote 0

Kevin

Well-Known Member
Licensed User
Longtime User
Did you enable "copy protection" for your app in Android Market? If you do this the app is only installable on devices with original ROMs which are registered to Google. Devices with custom ROM will be shown as incompatible device. Even some official ROMs are not registered to Google so they will not show the app as compatible.

It is a really bad idea to enable this "copy protection" option because this will make your app unavailable for many devices.


As it turns out, this is the culprit. I had sent an email to Google and much to my surprise they actually responded. After regaining my consciousness and reading the email it appears that it is in fact due to using copy protection.

As you may know, our copy protection relies on being able to trust the build that the app is installed on and therefore we only show copy-protected apps to known good builds. The build running on the device(s) you provided may not be registered as known good build (f.e. Custom ROM) or the device is rooted, so users on this device are unable to view your app.

To avoid this issue in the future, we advise disabling copy-protection and using the Market Licensing Service instead. To learn more, please visit our Help Center here: Android Market Licensing Service - Android Market for Developer Help

Which leads me to yet another question. In my app's B4A project I have it set to NOT allow copying to SD card. I've always thought that was part of the Android Market "copy protection" as well but now it doesn't sound that way. So if I disable copy protection in the market will my app still not be allowed to be copied to SD card so long as I keep that option in my project?

I do realize that rooted devices will get it anyway. For a couple reasons, I have not added licensing to my app yet. But after reading the thread here the other day (about a person's app being cracked) it really makes me wonder if it is even worth the effort. Part of the reason I have not done it is because it will not work with Amazon which I also sell it on so it will make things more difficult for me when it comes to maintaining my app for different markets.

I've been writing and selling Windows software for many years and have seen keygens and cracked versions of my programs floating around. Initially (like so many) I tried to fight it but at the end of the day I kind of figure that some people are going to crack it and people will then steal it. But most of those people who do that likely would not have bought it anyway. While you may lose a very small number of sales, I still think (honest) people will still continue to buy it.
 
Upvote 0

NJDude

Expert
Licensed User
Longtime User
I've been writing and selling Windows software for many years and have seen keygens and cracked versions of my programs floating around.

Same here, but, in reality, the number of "crooked" versions were always very small compared to the number of legit versions, you cannot avoid that, that's why I personally don't go crazy about it.
 
Upvote 0
Top