Skip to content

Target Android 15 (API 35) for Play upload#26

Merged
MustafaNazeer merged 2 commits into
mainfrom
chore/target-sdk-35-play-upload
Jun 24, 2026
Merged

Target Android 15 (API 35) for Play upload#26
MustafaNazeer merged 2 commits into
mainfrom
chore/target-sdk-35-play-upload

Conversation

@MustafaNazeer

Copy link
Copy Markdown
Owner

Summary

Targets Android 15 (API 35) so the app meets the Play Console new app target SDK requirement, and keeps the unit suite green under that bump.

Two commits:

  1. Target Android 15 (API 35) for Play upload and bump version code to 2 (7a00a00). compileSdk 34 to 36, targetSdk 34 to 35, versionCode 1 to 2, plus android.suppressUnsupportedCompileSdk=36.
  2. Pin Robolectric test runtime to SDK 34 for the targetSdk 35 bump (3105e9a). Robolectric 4.12.2 supports a maximum Android SDK of 34. Without a pin it defaults to the app targetSdkVersion, so the bump to 35 made every un-annotated Robolectric suite fail to initialize (targetSdkVersion=35 > maxSdkVersion=34), turning 10 Compose UI suites red. A global robolectric.properties with sdk=34 keeps the test runtime on 34 while the app still ships targetSdk 35.

Verification

  • Unit suite: 483 passing, 0 failures, 0 errors, 4 skipped (./gradlew :app:testDebugUnitTest).
  • Release bundle decoded from the proto manifest: versionCode 2, targetSdk 35, compileSdk 36, permissions limited to CAMERA and RECORD_AUDIO, no INTERNET or ACCESS_NETWORK_STATE, validly signed with the release key.

Notes

  • No new permissions.
  • The Robolectric pin is a test runtime concern only and does not affect the shipped artifact. Raise it to 35 once Robolectric is upgraded to a release that ships SDK 35 shadows (4.14 or later).

Google Play now requires new apps to target at least API level 35.
Set targetSdk to 35 and compileSdk to 36 (API 35 is not installed
locally; the installed platform is 36, and compileSdk may exceed
targetSdk). Bump versionCode to 2 because the prior target 34 upload
consumed version code 1 on the internal testing track. Suppress the
AGP 8.5.0 unsupported compileSdk warning, which is non fatal.
Robolectric 4.12.2 supports a maximum Android SDK of 34. Bumping
targetSdk to 35 for the Play upload made every un-annotated Robolectric
suite fail to initialize with targetSdkVersion=35 > maxSdkVersion=34,
turning 10 Compose UI suites red. Pinning the test runtime to SDK 34 via
robolectric.properties keeps the suite green while the app still ships
targetSdk 35. Suite back to 483 passing, 0 failures, 4 skipped.
@MustafaNazeer MustafaNazeer merged commit ef53866 into main Jun 24, 2026
1 check passed
@MustafaNazeer MustafaNazeer deleted the chore/target-sdk-35-play-upload branch June 24, 2026 00:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant