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! While you're at it, check out some resources Treehouse students have shared here.

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 Build a Simple Android App with Java Getting Started with Android Android Project Basics

dasith perera
dasith perera
81 Points

What is the purpose of the Minimum SDK of a project?

I want a clear answer.

2 Answers

Linda de Haan
Linda de Haan
12,413 Points

The minimum SDK or API level of your project determines on how many devices your app can run. The lower the API level, the more devices your app will be compatible with. But there must also be a balance. The API level needs to be low enough to be compatible with a fair number of devices, but you don't want to go too low to lose features you want your app to run.

Most developers consider the target audience for their app (who is the app for?) and what their app needs to do to determine the API level. Is it a very simple app with mostly basic functions? Then the API level can be low. Is it a more complicated app that would only be runnable on more modern devices and you need the newer Android features? Choose a higher API level that contains these features.

You can always adapt the minimum SDK in your project in the Module's build.gradle file.

dasith perera
dasith perera
81 Points

thank you so much linda.

Dayan Rodriguez
Dayan Rodriguez
1,286 Points

Devices have different SDK, or API versions (Often determined by the user, manufacturer or date it was released). Such as Android P, Nougat and Oreo. There are many more. Some devices old Nexus phones have a really low API like Jellybean. The lower the API version you target the more devices will be compatible or able to run your app. But have in mind that lower API (Android programming interface) have fewer features and are not as good (optimized, clean) as the newer ones. Luckily Google has released some libraries that help you fix that (Which is another topic). It depends on your app's complexity and your opinion that determines which API version you should target. And therefore, if you choose a minimum SDK, only devices above that minimum SDK will by able to execute your app. Hope this helps you.