-
Notifications
You must be signed in to change notification settings - Fork 3.7k
[all OSs] Android NDK 22 will be replaced in favor of 24, version 23 will be set as the default one on June, 6 #5595
Copy link
Copy link
Closed
Labels
AnnouncementArea: AndroidOS: UbuntuOS: WindowsOS: macOSawaiting-deploymentCode complete; awaiting deployment and/or deployment in progressCode complete; awaiting deployment and/or deployment in progress
Description
Breaking changes
There are two changes:
- Ndk 22 will be replaced by Ndk 24
- Ndk 23 will be the new default (ndk-bundle) instead of Ndk 21
Target date
The propagation is starting on June, 6 and will take 3-4 days
The motivation for the changes
According to our Software and image guidelines we support 1 latest non-LTS and 2 latest LTS versions of NDK. Currently, our image contains NDK r22 whereas the latest non-LTS is 24. LTS version of NDK 21 is not supported so we would like to set version 23 as the new default.
Possible impact
- If your project depends on NDK r22 it can be broken
- If your project relies on ndk-bundle based on r21 it can be broken
Virtual environments affected
- Ubuntu 18.04
- Ubuntu 20.04
- Ubuntu 22.04
- macOS 10.15
- macOS 11
- macOS 12
- Windows Server 2019
- Windows Server 2022
Mitigation ways
- To install NDK r22 in runtime use the following snippets;
- Windows
$sdkRoot = "C:\Android\android-sdk" $sdkManager = "$sdkRoot\cmdline-tools\latest\bin\sdkmanager.bat" Install-AndroidSDKPackages -AndroidSDKManagerPath $sdkManager ` -AndroidSDKRootPath $sdkRoot ` -AndroidPackages "ndk;21.4.7075529"
- macOS
ANDROID_HOME=$HOME/Library/Android/sdk SDKMANAGER=$ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager echo y | $SDKMANAGER "ndk;21.4.7075529"
- Ubuntu
ANDROID_ROOT=/usr/local/lib/android ANDROID_SDK_ROOT=${ANDROID_ROOT}/sdk SDKMANAGER=${ANDROID_SDK_ROOT}/cmdline-tools/latest/bin/sdkmanager echo "y" | $SDKMANAGER "ndk;21.4.7075529"
- To change default NDK version (ndk-bundle) use the following snippets:
- Windows
$sdkRoot = "C:\Android\android-sdk" $sdkManager = "$sdkRoot\cmdline-tools\latest\bin\sdkmanager.bat" $ndkRoot = "$sdkRoot\ndk-bundle" New-Item -Path $ndkRoot -ItemType SymbolicLink -Value "$sdkRoot\ndk\21.4.7075529" -Force
- macOS
ANDROID_HOME=$HOME/Library/Android/sdk ln -sfn $ANDROID_HOME/ndk/21.4.7075529 $ANDROID_HOME/ndk-bundle
- Ubuntu
ANDROID_ROOT=/usr/local/lib/android ANDROID_SDK_ROOT=${ANDROID_ROOT}/sdk ANDROID_NDK_ROOT=${ANDROID_SDK_ROOT}/ndk-bundle ln -sfn $ANDROID_SDK_ROOT/ndk/21.4.7075529 $ANDROID_NDK_ROOT
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
AnnouncementArea: AndroidOS: UbuntuOS: WindowsOS: macOSawaiting-deploymentCode complete; awaiting deployment and/or deployment in progressCode complete; awaiting deployment and/or deployment in progress