SDKToolsだけでコマンドラインからエミュレータを設定 起動


SDKToolsだけでコマンドラインからエミュレータを設定

エミュレータだけ使いたかったのでAndroid StudioのサイトからCommand line toolsだけダウンロードしてコマンドラインからエミュレータの起動を試みた内容をまとめます。
webアプリの表示を実機で確認できないのでエミュレータを使おうという話です。
Androidアプリの開発は皆無なので一部適当な記述があることをご了承ください。

環境

JDKのインストールが必要

JDKが必要なのでインストールしてください
環境変数「JAVA_HOME」の設定も合わせて行います。
ここでは説明は割愛します。

構成

初期の構成

Android Studio のダウンロードページにCommand line toolsだけダウンロードできるリンクがあるのでそこから落としてきます。あとは適当な場所で「sdk」フォルダを作ってダウンロードした「tools」を入れます。

 - 任意のSDKフォルダ
    ┗  sdk
       ┗  tools (sdkmanager, avdmanagerがはいってます)

必要なパッケージのインストール

設定後の構成

 - 任意のSDKフォルダ
    ┗  sdk
       ┣  tools (sdkmanager, avdmanagerがはいってます)
       ┣  platform (これ入れないとSDKとして扱われなかったのでいれてます)
       ┣  system-images (sdkmanagerでシステムイメージをインストールすると勝手にできます)
       ┣  licenses (インストールしているうちに気づいたらできてます)
       ┣  extras (Haxmとかリポジトリとかが入ります)
       ┣  emulator (エミュレートに必要なプログラムが入ってます)
       ┗  build-tools (いらないかも)

環境変数の設定

Windows

システム環境設定を開いて環境変数に下記追加してください
※追加方法は別途ご確認ください

ANDROID_HOME = \PATH\TO\HOME_DIR\任意のSDKフォルダ
ANDROID_SDK_ROOT = %ANDROID_HOME%\sdk
PATH に追加 ⇒ %ANDROID_SDK_ROOT%\tools\bin
PATH に追加 ⇒ %ANDROID_SDK_ROOT%\emulator

Mac

~/.bash_profile等 に追記してください
※追加方法は別途ご確認ください

export ANDROID_HOME=/PATH/TO/HOME_DIR/任意のSDKフォルダ;
export ANDROID_SDK_ROOT=$ANDROID_HOME/sdk;
export PATH=$ANDROID_SDK_ROOT/tools/bin:$PATH;
export PATH="$ANDROID_SDK_ROOT/emulator:$PATH;

コマンドの動作確認

下記コマンドを入力してヘルプ等が出力されるかご確認ください
※command not found がでなければokです

  • sdkmanager
  • avdmanager
  • abd

※GitBash利用の場合は後ろに .bat をつけてください
例) sdkmanager.bat

パッケージのインストール

sdkmanagerコマンドから必要なパッケージをインストールします

インストールのコマンド

sdkmanager "パッケージID";

パッケージ確認のコマンド

sdkmanager --list

--verbose オプションをつけると省略されずに表示できます

sdkmanager --list --verbose

インストール候補一覧

今回インストールする例として下記まとめていきます。
注)
※ Intel x86 Atom System Image 系はHAXAMの利用ができない場合は使えないので今回はパス
※ HAXMが使える場合
※ ・CPUが Virtualization Technology(VT-x)に対応している
※ ・インストールが可能
※ ・BIOSの設定が可能

emulator

emulator
    Description:        Android Emulator
    Version:            27.0.2
    Dependencies:
        patcher;v4
        tools Revision 25.3

patcher

emulatorのDependenciesに記載があるのでいれてます

patcher;v4
    Description:        SDK Patch Applier v4
    Version:            1

platforms

これいれないとemulatorコマンドがうまく動きませんでした

platforms;android-9
    Description:        Android SDK Platform 9
    Version:            2

platform-tools

platform-tools
    Description:        Android SDK Platform-Tools
    Version:            27.0.1

extras

入れた記憶はないが入っていた

extras;intel;Hardware_Accelerated_Execution_Manager
    Description:        Intel x86 Emulator Accelerator (HAXM installer)
    Version:            6.2.1


       extras;intel;Hardware_Accelerated_Execution_Manager Revision 6.2.1

System-images

いろいろ試すためにこんなに入れてしまった;
必要なバージョンだけで問題ありません

system-images;android-16;default;mips
    Description:        MIPS System Image
    Version:            1

system-images;android-17;default;mips
    Description:        MIPS System Image
    Version:            1

system-images;android-22;default;armeabi-v7a
    Description:        ARM EABI v7a System Image
    Version:            2
    Dependencies:
        patcher;v4

system-images;android-14;default;armeabi-v7a
    Description:        ARM EABI v7a System Image
    Version:            2

system-images;android-10;default;armeabi-v7a
    Description:        ARM EABI v7a System Image
    Version:            4

system-images;android-15;default;armeabi-v7a
    Description:        ARM EABI v7a System Image
    Version:            4
    Dependencies:
        patcher;v4

system-images;android-16;default;armeabi-v7a
    Description:        ARM EABI v7a System Image
    Version:            4

system-images;android-18;default;armeabi-v7a
    Description:        ARM EABI v7a System Image
    Version:            4
    Dependencies:
        patcher;v4

system-images;android-21;default;armeabi-v7a
    Description:        ARM EABI v7a System Image
    Version:            4
    Dependencies:
        patcher;v4

system-images;android-19;default;armeabi-v7a
    Description:        ARM EABI v7a System Image
    Version:            5
    Dependencies:
        patcher;v4

system-images;android-17;default;armeabi-v7a
    Description:        ARM EABI v7a System Image
    Version:            5
    Dependencies:
        patcher;v4

system-images;android-24;default;arm64-v8a
    Description:        ARM 64 v8a System Image
    Version:            7

system-images;android-24;default;armeabi-v7a
    Description:        ARM EABI v7a System Image
    Version:            7
    Dependencies:
        patcher;v4

再現するデバイスを確認する

下記のコマンドを実行する

avdmanager list

AVDを作成する

下記のコマンドを実行する

avdmanager create avd -n 任意の名前 -k "ダウンロードしたシステムイメージのID" --device "再現するデバイス"

作成したエミュレータを実行する

下記コマンドを実行する

emulator @設定した任意の名前

ローカルホストにアクセスする

エミュレータ上で下記アクセスする

10.0.2.2

sample create device command

avdmanager create avd -f -n hoge2  -k "system-images;android-21;default;armeabi-v7a" -d 6
avdmanager create avd -f -n hoge3  -k "system-images;android-21;default;armeabi-v7a" -d 7
avdmanager create avd -f -n hoge4  -k "system-images;android-21;default;armeabi-v7a" -d 8
avdmanager create avd -f -n hoge5  -k "system-images;android-21;default;armeabi-v7a" -d 9
avdmanager create avd -f -n hoge6  -k "system-images;android-21;default;armeabi-v7a" -d 10
avdmanager create avd -f -n hoge7  -k "system-images;android-21;default;armeabi-v7a" -d 11
avdmanager create avd -f -n hoge8  -k "system-images;android-21;default;armeabi-v7a" -d 12
avdmanager create avd -f -n hoge9  -k "system-images;android-21;default;armeabi-v7a" -d 13
avdmanager create avd -f -n hoge10 -k "system-images;android-21;default;armeabi-v7a" -d 14
avdmanager create avd -f -n hoge11 -k "system-images;android-21;default;armeabi-v7a" -d 15
avdmanager create avd -f -n hoge12 -k "system-images;android-21;default;armeabi-v7a" -d 16
avdmanager create avd -f -n hoge13 -k "system-images;android-21;default;armeabi-v7a" -d 17
avdmanager create avd -f -n hoge14 -k "system-images;android-21;default;armeabi-v7a" -d 18
avdmanager create avd -f -n hoge15 -k "system-images;android-21;default;armeabi-v7a" -d 19
avdmanager create avd -f -n hoge16 -k "system-images;android-21;default;armeabi-v7a" -d 20
avdmanager create avd -f -n hoge17 -k "system-images;android-21;default;armeabi-v7a" -d 21
avdmanager create avd -f -n hoge18 -k "system-images;android-21;default;armeabi-v7a" -d 22
avdmanager create avd -f -n hoge19 -k "system-images;android-21;default;armeabi-v7a" -d 23
avdmanager create avd -f -n hoge20 -k "system-images;android-21;default;armeabi-v7a" -d 24
avdmanager create avd -f -n hoge21 -k "system-images;android-21;default;armeabi-v7a" -d 25
avdmanager create avd -f -n hoge22 -k "system-images;android-21;default;armeabi-v7a" -d 26
avdmanager create avd -f -n hoge23 -k "system-images;android-21;default;armeabi-v7a" -d 27
avdmanager create avd -f -n hoge24 -k "system-images;android-21;default;armeabi-v7a" -d 28
avdmanager create avd -f -n hoge25 -k "system-images;android-21;default;armeabi-v7a" -d 29
avdmanager create avd -f -n hoge26 -k "system-images;android-21;default;armeabi-v7a" -d 30
avdmanager create avd -f -n hoge27 -k "system-images;android-21;default;armeabi-v7a" -d 31
avdmanager create avd -f -n hoge28 -k "system-images;android-21;default;armeabi-v7a" -d 32
avdmanager create avd -f -n hoge29 -k "system-images;android-21;default;armeabi-v7a" -d 33
avdmanager create avd -f -n hoge30 -k "system-images;android-21;default;armeabi-v7a" -d 34

sample emulator command

emulator @hoge2  -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge3  -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge4  -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge5  -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge6  -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge7  -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge8  -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge9  -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge10 -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge11 -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge12 -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge13 -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge14 -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge15 -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge16 -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge17 -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge18 -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge19 -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge20 -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge21 -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge22 -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge23 -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge24 -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge25 -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge26 -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge27 -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge28 -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge29 -skin 600x1024 -no-boot-anim -fixed-scale
emulator @hoge30 -skin 600x1024 -no-boot-anim -fixed-scale