Android Studioの SDKフォルダを変更する

Android Studioが使う SDKフォルダを変更する方法についての覚書。

私が使っているAndroid StudioのVersionは0.82です。

詳細な確認まではしていません悪しからず(^^;。自己責任で。

何かあればコメントでもつけていただければと思います。

Android Studioの SDKフォルダを変更する

NDKを使いたい関係で Eclipse+ADT環境も入っているのですが、Android SDKを複数入れるのとか馬鹿らしいので
Android Studio側の設定を変更して 別フォルダにあるSDKを使いたいと思います。

ちなみに今現在の私の環境は

  • Windows 8.1 Pro 64bit
  • JDK/JRE 1.7.0-67 64bit
  • Eclipse 4.4 Luna 64bit
  • Android Studio 0.82
  • Android NDK r10 64bit

です。androidの開発関連は一つのフォルダにまとめていて

  • %USERPROFILE%\android\.android
  • %USERPROFILE%\android\android-ndk-r10
  • %USERPROFILE%\android\android-sdk-windows
  • %USERPROFILE%\android\android-studio
  • %USERPROFILE%\android\eclipse
  • %USERPROFILE%\android\projects
  • %USERPROFILE%\android\workspace

影響しそうな環境変数は以下

  • ANDROID_SDK_HOME=%USERPROFILE%\android
  • ANDROID_SDK_ROOT=%ANDROID_SDK_HOME%\android-sdk-windows
  • NDK_ROOT=%ANDROID_SDK_HOME%\android-ndk-r10
  • JAVA_HOME=%ProgramFiles%\Java\jdk1.7.0_67
  • Path=%ANDROID_SDK_ROOT%\tools;%ANDROID_SDK_ROOT%\platform-tools;%Path%

今まで使ってた SDKがあるんですが、Android Studio 0.80をInstallするとBundleされたSDK(%USERPROFILE%\android\android-studio\sdk)が一緒に入ってきてしまいます。

手順

  1. Android Studioを起動する
  2. Projectが勝手に開いた場合はProjectを閉じます。
  3. Projectがすべて閉じられるとWelcome Dialogが開くと思いますので、Configureを選択

    Android Studio Welcome Dialog

  4. Project Defaultsを選択

    Android Studio Configure

  5. Project Structureを選択

    Android Studio Project Defaults

  6. SDK Locationに上記の SDKのパスを入力(環境変数展開できるかどうかは確認していないのでFull Path指定)

    Android Studio SDK Path

  7. %USERPROFILE%\android\android-studio\sdkを消す
  8. Android Studio再起動(念のため)
  9. Projectを開く。ここでbundleのsdkをprojectが参照していた場合、警告が出て、新しく設定したSDKを参照するようにprojectが自動的に更新されます。
  10. メニューの Invalidate Caches / Restart… から Invalidate and Restart で Cacheをクリアして更に再起動(念のため)

※ ここまで書いて Other Settings → Default Project Structureってのがある事に気が付きました、、、w

捕捉情報

以下いろいろ調査結果ですが、未検証です。

Android StudioのInstallerがやっている事

Android Studioは Installerを使ってますが、ファイルのコピーと各種VCRUNTIMEのSetupがメインで、Registry情報は僅か。Installで全ユーザではなく自分だけ、スタートメニューへの登録をしない設定でInstallした場合、

キー
HKLM\SOFTWARE\Wow6432Node\Android Studio


Path (REG_SZ)
データ
< インストールしたパス>

だけっぽいです(もちろんUninstall情報も同時に書き込まれますが)
この情報が実際に使われているのかどうかは未検証ですが、ここだけ辻褄あわせてやれば Installer使わずに利用する事も出来そうな感じ。
bin\studio.batの中では studio.batの相対パスから IDE_HOME環境変数を設定して導入パスを判別していようでした。
インストーラーが嫌いなのでこんど試してみようかなと。

SDKの設定はどこに?

さきほど変更したSDKのパスについてですが、%USERPROFILE%\.AndroidStudioBeta以下に格納される事になります。
検索した範囲では config\options\jdk.table.xml の homePathが怪しい感じなんですが、詳細まで追ってません。

ファイルをコピーして環境を維持したい場合は この設定フォルダも一緒に移動させてやる必要がありそうです。
.androidは ANDROID_SDK_HOMEを変更してやれば良いのですが、.AndroidStudioBetaについては情報が見つかりませんでした。

こんなとこです。

Leave a Reply

Your email address will not be published. Required fields are marked *