-
Notifications
You must be signed in to change notification settings - Fork 3.6k
Open
Description
Breaking changes
Android SDK platforms and build tools older than version 34 will be removed from images.
Target date
Image deployment will start on Monday January 12th, 2026 and will take about 3 days.
The motivation for the changes
We're removing the least current versions to free up disk space. If needed, tools can be quickly installed at runtime.
Possible impact
Projects targeting Android API level 33 (Android 13) and lower will no longer build unless the required SDK platforms and build tools are installed at runtime.
Platforms affected
- Azure DevOps
- GitHub Actions
Runner images affected
- Ubuntu 22.04
- Ubuntu 24.04
- Ubuntu Slim
- macOS 14
- macOS 14 Arm64
- macOS 15
- macOS 15 Arm64
- macOS 26 Arm64
- Windows Server 2019
- Windows Server 2022
- Windows Server 2025
Mitigation ways
If your project requires it, you can install Android SDK and build tools at runtime, for example for GitHub Actions:
env:
ANDROID_API_LEVEL: "31"
BUILD_TOOLS_VERSION: "31.0.0"
jobs:
build:
strategy:
matrix:
os: [macos-latest, ubuntu-latest, windows-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- name: Configure Android env (macOS/Linux)
if: runner.os != 'Windows'
shell: bash
run: |
echo "ANDROID_HOME=$ANDROID_SDK_ROOT" >> "$GITHUB_ENV"
echo "ANDROID_SDK_HOME=$RUNNER_TEMP/android-home" >> "$GITHUB_ENV"
echo "$ANDROID_SDK_ROOT/cmdline-tools/latest/bin" >> "$GITHUB_PATH"
- name: Configure Android env (Windows)
if: runner.os == 'Windows'
shell: pwsh
run: |
Add-Content $env:GITHUB_ENV "ANDROID_HOME=$env:ANDROID_SDK_ROOT"
Add-Content $env:GITHUB_ENV "ANDROID_SDK_HOME=$env:RUNNER_TEMP\android-home"
Add-Content $env:GITHUB_PATH "$env:ANDROID_SDK_ROOT\cmdline-tools\latest\bin"
- name: Install Android platform + build-tools (macOS/Linux)
if: runner.os != 'Windows'
shell: bash
run: |
sdkmanager "platforms;android-${ANDROID_API_LEVEL}" "build-tools;${BUILD_TOOLS_VERSION}"
test -d "$ANDROID_SDK_ROOT/platforms/android-${ANDROID_API_LEVEL}"
test -d "$ANDROID_SDK_ROOT/build-tools/${BUILD_TOOLS_VERSION}"
- name: Install Android platform + build-tools (Windows)
if: runner.os == 'Windows'
shell: pwsh
run: |
sdkmanager "platforms;android-$env:ANDROID_API_LEVEL" "build-tools;$env:BUILD_TOOLS_VERSION"
if (!(Test-Path "$env:ANDROID_SDK_ROOT\platforms\android-$env:ANDROID_API_LEVEL")) { throw "platforms missing" }
if (!(Test-Path "$env:ANDROID_SDK_ROOT\build-tools\$env:BUILD_TOOLS_VERSION")) { throw "build-tools missing" }