Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community!

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Android

Richard Ling
Richard Ling
8,522 Points

Increasing API level after publishing

Hi,

I was wondering what happens if you were to update an application to a higher API level after publishing to the Google Play store.

For example, if I have a published application targeting API level 8, but several months later I want to release a new updated version of my app, now targeting a minimum of API level 14 (for whatever reason, new features, app/re-design, targeting new demographic, etc).

What happens to all the people who have installed my app who are still only using API 8? Will they:

a) be able to update, but then it will no longer work on their device

b) see the update, but not be able to install it

c) not even be aware the update exists

d) something else??

Basically, will existing users who no longer meet the app requirements still be able to use the version they have installed. I wouldn't want to stop existing customers using my application, especially if they've paid for it.

Thanks for any help :) Rich

1 Answer

Harry James
Harry James
14,780 Points

Hey Richard!

I'll try to explain this concept the best I can for you.

If you were to set the API to 21 (The latest) then, devices running below this API can still use the code you are writing.

The difference is that some methods that Android gives you are only available on certain API versions. So, if we were to use a method exclusive only to those running API 21, anyone running <21 won't be able to use our app any more.

This is where support libraries come in - they give older API's newer features. We use a few of them in the courses and they come in helpful a lot! Using them means that even if you were to use a new method, if it was in the support library, you could also use that method on lower Android Versions!

Hopefully this should explain the concept to you but, if there's anything you don't understand, give me a shout :)

Richard Ling
Richard Ling
8,522 Points

Thanks very much for your response Harry, I'll have to take a look into support libraries, that sounds ideal.

Would I be correct in saying that if my app did end up having a new feature that wasn't supported by a users device, and they had "automatically update" enabled for my app, that this would effectively break their current install when the auto update downloaded the new version? Or is it intelligent enough to not install an update that isn't compatible?

Many thanks

Harry James
Harry James
14,780 Points

I believe that the app would no longer update however am not sure about this.

If the user was to try to install the app new (It's not already on the system) with an unsupported Android version, they will be given a message stating that the app is not available on their device.

Richard Ling
Richard Ling
8,522 Points

That's great, thanks very much for your help Harry :)