.github | ||
.vscode | ||
__tests__ | ||
dist | ||
src | ||
.eslintignore | ||
.eslintrc.json | ||
.gitignore | ||
.prettierignore | ||
.prettierrc.json | ||
action.yml | ||
jest.config.js | ||
LICENSE | ||
matchers.json | ||
package-lock.json | ||
package.json | ||
README.md | ||
tsconfig.json |
setup-android
This action sets up the Android SDK tools by:
- Downloading the SDK commandline tools, if the current version (11.0) is not found in either
$ANDROID_SDK_ROOT
or$HOME/.android/sdk
. - Accepting the SDK licenses.
- Installing
tools
andplatform-tools
. - Adding
platform-tools
(contains adb) andcmdline-tools/11.0/bin
(contains sdkmanager) to$PATH
. - Setting up problem matchers.
On Windows 2016 runners, this action also checks if $ANDROID_SDK_ROOT
path contains spaces.
If it does - it moves SDK to a path without spaces. This is needed because spaces are highly problematic:
C:\windows\system32\cmd.exe /D /S /C ""C:\Program Files (x86)\Android\android-sdk\cmdline-tools\3.0\bin\sdkmanager.bat" --licenses"
Error: Could not find or load main class Files
Usage
See action.yml
Basic
steps:
- uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'temurin'
- name: Setup Android SDK
uses: android-actions/setup-android@v3
- name: Build SampleApplication
run: ./gradlew --no-daemon build
SDK Version selection
Command line tools are versioned using two variables - short and long. Long one is the build number, used in the zip URL, short one is the human friendly version name.
By default, setup-android installs version 10406996 (short version 11.0).
To install a different version, call setup-android with desired long version as the input parameter cmdline-tools-version
:
- name: Setup Android SDK
uses: android-actions/setup-android@v3
with:
cmdline-tools-version: 8512546
Version table
Short version | Long version |
---|---|
11.0 | 10406996 |
10.0 | 9862592 |
9.0 | 9477386 |
8.0 | 9123335 |
7.0 | 8512546 |
Current cmdline tools version can be found at https://developer.android.com/studio#command-line-tools-only
Thanks
Based on the project android-problem-matchers-action from @jonasb