• Hey Guest! Ever feel like entering a Game Jam, but the time limit is always too much pressure? We get it... You lead a hectic life and dedicating 3 whole days to make a game just doesn't work for you! So, why not enter the GMC SLOW JAM? Take your time! Kick back and make your game over 4 months! Interested? Then just click here!
  • Hello [name]! Thanks for joining the GMC. Before making any posts in the Tech Support forum, can we suggest you read the forum rules? These are simple guidelines that we ask you to follow so that you can get the best help possible for your issue.

Android SOLVED(somehow): Lint report says use min API 19, but I want min 16

Pushloop

Member
In order to serve my app to emerging markets I want to keep the min api as low as possible, but with the new GM2 update I'm forced to go up to 19. How can I change this?
 

FrostyCat

Redemption Seeker
If that's what you want, then build with an earlier runtime that still allows a minimum of API 16.

However, I would advise that you NOT do this just to be everyone's friend. According to Google Play's Distribution Dashboard, as of the time of writing a minimum of API 19 already has 96.5% coverage, and going down to API 16 only nets you 3.0% more. If you're only trying for API 16 because that's what you need for your Nexus 7, you should just upgrade it to its official Android 6.0 update (API 23).

In particular, the addition of TRIM on API 18 is a major consideration. Devices without it slow down over time, to the point of crashing on almost any app. Your app could easily get bad reviews and hard-to-replicate support tickets for the device's faults instead of the app's faults. I've had personal experience with this on my old Google Nexus (which I just replaced with a refurbished iPhone 6), where I've done at least 5 factory resets over the past 3 years just to get it working properly again. The last was when I patched it with an official 4.3 build, and I haven't needed to reset it again since then.

A market segment that can't purchase a new device or bother with upgrading the OS after 6 years is not worth keeping.
 

Pushloop

Member
Thank you for the extensive explanation. It was a bit scary to see when I did an app update of one of my games in google play, it lost the support of about 1100 devices. This meant about current 20 installs, so that's not a big deal. I hope that getting less crashes and ANR's have a better effect on the ranking than serving more people in emerging markets.

With GM2 2.2.1.375 and 2.2.1.291 run-time I have no issues anymore with my Nexus 7 test device, so that's solved. What's bothering me a bit is that if you follow the official guidelines from the required SDKs article, the build wont work, unless you change from 16 to 19.

Since you're very knowledgeable, could you shine your light on the architecture, please? Which ones do you select? All or just Armv7 and Arm64?
 

Pushloop

Member
Thanks again. That data is almost 2 years old. They moved it to your own project dashboard:
https://operate.dashboard.unity3d.com/organizations/<YOUR ORG ID HERE>/projects/<YOUR PROJECT ID HERE>/hwstats.
market.png
99% according to that graph.

Again weird that the required sdk article show an image with only arm64 ticked (why not armv7?) :


To conclude as a work around, i now build with api 28 settings like that picture but adding Armv7 and I have to switch off Lint report to pass the gamepad api19 warnings.
 
Top