プログラマーのメモ書き

伊勢在住のプログラマーが気になることを気ままにメモったブログです

avd 保存先を変更

android のエミュレータ (avd, android virtual device) をいくつか作成するようになると、結構ディスク容量がとられることに気づきます。で、案の定、システムディスクの容量が足りなくなってきたので、avdの保存先を移動できないか調べたら、できそうなので早速やってみました。

今回の元ネタは下記の記事になります。ありがとうございます。

www.javadrive.jp

ちなみに、現在のディスク容量はこんな感じです。

f:id:junichim:20201120084628p:plain

Dドライブのほうが空いているので、こちらに avd を移動させます。 なお、Dドライブへは C:\Users\ユーザー名\home に junction を張ってるので、Cドライブ以下のパス(C:\Users\ユーザー名\home )でアクセスできるようにしています。

環境変数の設定

まずは、avdを保存しているフォルダを環境変数に設定します。

『コントロールパネル』 -> 『システム』 -> 『システムの詳細設定』 -> 『環境変数』 を開いて、ユーザーの環境変数 または システム環境変数 のどちらかに ANDROID_AVD_HOME を追加します。

f:id:junichim:20201120085513p:plain

今回はユーザー用環境変数に追加しました。

avdファイルの移動

次に、既存のavdファイル(デフォルトだと、 C:\Users\ユーザー名\.android\avd になると思います)をすべて、新しいフォルダに移動させます。

f:id:junichim:20201120092217p:plain

f:id:junichim:20201120092335p:plain

に移動させます。

移動が完了したら、avd名.ini ファイルをエディタで開いて、

avd.ini.encoding=UTF-8
path=C:\Users\mor\.android\avd\Pixel_3a_XL_API_29.avd
path.rel=avd\Pixel_3a_XL_API_29.avd
target=android-29

の部分にある path= で示された絶対パスを、下記のように新しいavdフォルダに合わせて編集します。

avd.ini.encoding=UTF-8
path=C:\Users\mor\home\avd\Pixel_3a_XL_API_29.avd
path.rel=avd\Pixel_3a_XL_API_29.avd
target=android-29

これを移動させたすべての avd 分行います。

確認

最後に、Android Studio を起動して AVD Manager を立ち上げて、既存のエミュレータが問題なく表示されることを確認します。

f:id:junichim:20201120093012p:plain

OKですね。

なお、エミュレータを起動してみると、起動はするけど操作を受け付けない、という状態になっていました。多分、前回起動時の状態(変更前のavdフォルダのパスで起動した状態)が何か残っていて。これが悪さをしているのではないかと推測されます。

今回は、一旦、エミュレータを終了させ、AVD Manager から Cold Boot Now を選択して、 Cold Boot すると問題なく起動・操作ができるようになりました。

ちなみに、おおよそ 68GB 程度空いたようです。

f:id:junichim:20201120092753p:plain

参考

環境変数についての公式の説明

環境変数  |  Android デベロッパー  |  Android Developers

その他の参考記事

AVDの場所を変える - HONDAのAndroid アプリ, Web アプリ開発備忘録