Skip to content

Bump Android minSdkVersion to 27#55726

Closed
zoontek wants to merge 19 commits intofacebook:mainfrom
zoontek:bump-min-sdk-to-27
Closed

Bump Android minSdkVersion to 27#55726
zoontek wants to merge 19 commits intofacebook:mainfrom
zoontek:bump-min-sdk-to-27

Conversation

@zoontek
Copy link
Contributor

@zoontek zoontek commented Feb 24, 2026

Summary:

The last time the minSdk was bumped (to 24), the cumulative distribution percentage of supported versions (≥ API 24) was 97.4%, according to this screenshot. Based on the current percentages, if we bump the minSdk to 27, the cumulative distribution percentage of supported versions will be 97.6%.

If you are OK with it, this could help library authors and allow deletion of legacy code.

Screenshot 2026-02-24 at 17 24 22

Changelog:

[ANDROID] [BREAKING] - Bump Android minSdkVersion from 24 to 27

Test Plan:

  • Built and ran the RNTester app on an Android API 27 emulator successfully.
  • Verified that all version checks and @RequiresApi annotations targeting APIs 24-26 have been removed, as they are now guaranteed by the new minSdk.
  • Existing Android CI checks continue to pass.

@meta-cla meta-cla bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Feb 24, 2026
@facebook-github-bot facebook-github-bot added the Shared with Meta Applied via automation to indicate that an Issue or Pull Request has been shared with the team. label Feb 24, 2026
@Abbondanzo
Copy link
Contributor

We have apps at Meta that use React Native and are targeting a min SDK of 24. As such, we probably won't be removing support for them for quite a while. The min SDK is just a suggestion, if your library is only targeting newer versions then that's fine if the app authors are also on a newer min SDK

@zoontek
Copy link
Contributor Author

zoontek commented Feb 25, 2026

@Abbondanzo I’m aware, but given the current percentages and the ones from the last time you made such a bump internally, I was hoping you would consider doing it again.

Currently, Android is supported from API 24 to 36 (12 versions), and this is quite a burden for library authors (compared to the supported iOS version range).

@cortinico
Copy link
Contributor

We have apps at Meta that use React Native and are targeting a min SDK of 24. As such, we probably won't be removing support for them for quite a while. The min SDK is just a suggestion, if your library is only targeting newer versions then that's fine if the app authors are also on a newer min SDK

Closing for this reason

@cortinico cortinico closed this Feb 25, 2026
@zoontek
Copy link
Contributor Author

zoontek commented Feb 25, 2026

@cortinico Understandable

But as @Abbondanzo said, the minimum SDK version is just a suggestion. What do you think about bumping not the project SDK, but only the template minSdkVersion? For example, it could follow a threshold rule, such as supporting 97-98% of existing devices.

Similarly, we could update the template IPHONEOS_DEPLOYMENT_TARGET value for iOS.

This would not impact Meta, since you don't consume community packages, but it could send a positive message to library maintainers.

@zoontek zoontek deleted the bump-min-sdk-to-27 branch February 25, 2026 12:58
@cortinico
Copy link
Contributor

But as @Abbondanzo said, the minimum SDK version is just a suggestion. What do you think about bumping not the project SDK, but only the template minSdkVersion? For example, it could follow a threshold rule, such as supporting 97-98% of existing devices.

I'm in general against this. We tend to follow the minSDK that FB App uses. FB App is quite of a big application, so that should give a sense of what is a good minSDK the market should attempt to follow.

If we were to change the template to send a message to the library author, we'll be effectively fragmenting the ecosystem. So you will end up with libs that have different minSDK versions, which is quite painful to deal with as a app developer.

Libraries can already increase minSDK versions if they want today, they don't need to wait for us.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. Shared with Meta Applied via automation to indicate that an Issue or Pull Request has been shared with the team.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants