Skip to content

Fix #1047 Bump targetSdkVersion to 36 - #1051

Merged
gstepniewski-google merged 1 commit into
GoogleChromeLabs:mainfrom
Ubeydu:bump-target-sdk-36
Jul 31, 2026
Merged

Fix #1047 Bump targetSdkVersion to 36#1051
gstepniewski-google merged 1 commit into
GoogleChromeLabs:mainfrom
Ubeydu:bump-target-sdk-36

Conversation

@Ubeydu

@Ubeydu Ubeydu commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

Google Play requires apps to target Android 16 (API 36) from Aug 31, 2026 (#1047).

Main already compiles against SDK 36: e0af5ad bumped compileSdkVersion to 36 together with AGP 8.9.1, Gradle 8.11.1 and JDK 17. This PR completes the move for generated apps:

Note: this overlaps with #1050 on the template line; that PR was opened while I was validating this branch end to end. The addition here is the BUILD_TOOLS_VERSION pairing from #764 and #862 (see 39d5972), plus the verification below. If the minimal shape of #1050 is preferred, I am happy to rebase this down to the build-tools companion change.

Verification, all done with this branch:

  • npm ci, build, lint and test: green on all three packages.
  • Generated the TWA for my production PWA (com.akluma.app, currently in closed testing on Google Play) with the patched CLI: the generated project gets targetSdkVersion 36, and bubblewrap build installed build-tools;36.1.0 from scratch via sdkmanager on a clean SDK, confirming the version string resolves.
  • The built APK verifies: aapt2 badging reports targetSdkVersion 36, signed with the app's existing upload key.
  • Installed and ran on an Android 16 (API 36) emulator: the TWA launches full screen with Digital Asset Links verification working (no URL bar). Screenshot below.
akluma-on-android16-emulator

I will upload the AAB to Google Play in the coming days and report acceptance here.

Out of scope, noted for the record: bumping android-browser-helper past 2.6.2 (the edge-to-edge splash fixes landed in 2.7.x) raises the library minSdk from 21 to 23, a breaking change that deserves its own PR. Same for the Play Billing Library 8.0 question raised in #1047, which lives in android-browser-helper's billing module.

Also bumps BUILD_TOOLS_VERSION to 36.1.0, matching the pairing in GoogleChromeLabs#764 and GoogleChromeLabs#862.
@gstepniewski-google
gstepniewski-google merged commit 3aed862 into GoogleChromeLabs:main Jul 31, 2026
9 checks passed
@Ubeydu

Ubeydu commented Jul 31, 2026

Copy link
Copy Markdown
Contributor Author

Real-world confirmation: Google Play today accepted and published a bundle built with this change applied (targetSdkVersion 36, build tools 36.1.0). The Play Console reads the bundle as target SDK 36, and it went live on my app's closed testing track with no warnings.

@ghnp5

ghnp5 commented Aug 6, 2026

Copy link
Copy Markdown

Hey! Do you confirm that this change is really included in the last release?

When I use the latest Docker container (ghcr.io/googlechromelabs/bubblewrap:latest, after pulling it),
and then run bubblewrap init,

the result is still targetSdkVersion 35 in build.gradle.

I know I can update it manually, but I was expecting bubblewrap to do it for me.

Thanks!

@ghnp5

ghnp5 commented Aug 6, 2026

Copy link
Copy Markdown

Maybe this is the reason: pwa-builder/PWABuilder#6159 (comment)

But that means that whenever the NPM version is released, the docker image needs to be updated too, so it can pull the latest npm package.

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.

3 participants