sdkmanager
は、Android SDK のパッケージを表示、インストール、更新、アンインストールできるコマンドライン ツールです。Android Studio を使用している場合は、このツールを使用する必要はありません。代わりに IDE から SDK パッケージを管理できます。
sdkmanager
ツールは Android SDK Tools パッケージ(25.2.3 以降)に組み込まれています。インストールする手順は次のとおりです。
- Android Studio のダウンロード ページから「コマンドライン ツールのみ」のパッケージをダウンロードします。
- パッケージを解凍して、任意のディレクトリに移動します。
sdkmanager
の最新バージョンをインストールするには、解凍したパッケージがあるディレクトリから以下のコマンドを実行します。cmdline-tools/bin/sdkmanager --install "cmdline-tools;latest"
インストール先のディレクトリ(
android_sdk
など)を指定するために、--sdk_root
フラグの使用が必要になる場合があります。インストールされた
sdkmanager
はandroid_sdk/cmdline-tools/latest/bin/
にあります。
使用方法
sdkmanager
を使用して、次のタスクを実行できます。
インストール済みで利用可能なパッケージのリストを表示する
sdkmanager --list [options] \ [--channel=channel_id] // Channels: 0 (stable), 1 (beta), 2 (dev), or 3 (canary)
channel
オプションを使用して、channel_id
以前のチャンネルからのパッケージを含めることができます。たとえば、Canary チャンネルを指定して、すべてのチャンネルのパッケージのリストを表示します。
パッケージをインストールする
sdkmanager packages [options]
packages 引数は、--list
コマンドで表示されるような SDK 形式のパスを引用符で囲ったものです(例: "build-tools;30.0.2"
、"platforms;android-28"
)。複数のパッケージのパスをスペースで区切って渡すことができますが、それぞれ引用符で囲む必要があります。
たとえば、最新のプラットフォーム ツール(adb
と fastboot
が含まれる)と、API レベル 28 の SDK ツールをインストールする方法を次に示します。
sdkmanager "platform-tools" "platforms;android-28"
または、テキスト ファイルにすべてのパッケージを指定して、それを渡すことができます。
sdkmanager --package_file=package_file [options]
package_file 引数は、テキスト ファイルの場所です。このファイルの各行に、インストールするパッケージの SDK 形式のパス(引用符は付けません)を指定します。
アンインストールするには、--uninstall
フラグを追加します。
sdkmanager --uninstall packages [options] sdkmanager --uninstall --package_file=package_file [options]
CMake または NDK をインストールするには、次の構文を使用します。
sdkmanager --install ["ndk;major.minor.build[suffix]" | "cmake;major.minor.micro.build"] [--channel=channel_id] // NDK channels: 0 (stable), 1 (beta), or 3 (canary)
たとえば、現在のチャンネルにかかわらず、次のコマンドを使用して指定された NDK バージョンをインストールします。
sdkmanager --install "ndk;21.3.6528147" --channel=3 // Install the NDK from the canary channel (or below) sdkmanager --install "cmake;10.24988404" // Install a specific version of CMake
インストールされているすべてのパッケージを更新する
sdkmanager --update [options]
オプション
上記のコマンドで使用できるオプションの一覧を次の表に示します。
オプション | 説明 |
---|---|
--sdk_root=path
|
このツールが含まれる SDK の代わりに、SDK へのパスを指定します。 |
--channel=channel_id
|
channel_id までのチャンネル内にパッケージを含めます。指定できるチャンネルは次のとおりです。
|
--include_obsolete
|
廃止されたパッケージをパッケージ リストまたはパッケージの更新の対象とします。
--list と --update でのみ使用します。
|
--no_https
|
HTTPS ではなく HTTP を使用することをすべての接続に強制します。 |
--verbose
|
詳細出力モード。エラー、警告、情報の各メッセージが出力されます。 |
--proxy={http | socks}
|
指定したタイプのプロキシ経由で接続します。タイプは、http (HTTP、FTP などのハイレベルのプロトコル用)または socks (SOCKS V4 または SOCKS V5 のプロキシ用)です。
|
--proxy_host={IP_address | DNS_address}
|
使用するプロキシの IP アドレスまたは DNS アドレス。 |
--proxy_port=port_number
|
接続先のプロキシポート番号。 |