ソフトコミュ開発ブログ

SoftCommu は Javaアプリ、Androidアプリの開発を行うディベロッパーです。人材教育もやっています。企業の新人研修の講師からスカイプでのオンライン家庭教師まで!技術書の執筆や翻訳もしています。
2017.03.02 Thursday
Android Studio で "SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable" と表示される問題の原因と対応策

Github や Gitbucket から Android Studio にプロジェクトをインポートする際、下記のようなエラーメッセージが表示されることがあります。

 

 

"SDK location not found. Define location with sdk.dir in the local.

properties file or with an ANDROID_HOME environment variable"

 

"SDK location not found." というメッセージから、「Android Studio の設定で SDK のパスとかを設定しなおさなければいけないのかな・・・」とかいろいろ考えますが、それをし始まると問題解決できず、ハマってしまいます。。。

 

はい、そうです!これ、Google の製品で良くある「表示されているエラーメッセージと実際に起きている問題が全然違うやつ」です。

 

私は、Udacity というサイトが Google とコラボして作成している Firebase の学習コース用の Githubリポジトリ、ShoppingListPlusPlus というサンプルコードをインポートしたときに、この問題を経験しました。

 

そんなこんなで同じような問題で途方に暮れている方に朗報です!

 

これには、結構簡単な解決策があります!みんなの味方 stack overflow に書いてありました!

 

その方法とは・・・

 

プロジェクトのルートディレクトリに空のテキストファイルを作成し、

ファイル名を local.properties にする!

 

・・・それだけです。

 

なぜそれだけで解決するのかちょっと謎ですが、この問題はおそらくAndroid Studio の単純なバグのようです。

 

プロジェクトのインポート時に local.properties というファイルが存在していない場合に、それを自動で新規作成して処理を進めてくれれば良いのに、そういう気の利いたことはしてくれません。そして、その代わりに見当違いのエラーメッセージを出しちゃっているということみたいです。

 

この問題の回避策が、手動で local.properties という空のファイルを手動で作る・・・ということになるわけですね。

 

下記に詳細な手順を記載しておきます。

 

(1) Githubや Bitbucket からリポジトリをインポート後、「SDK location not found... 」というエラーメッセージが出たら、ダイアログをキャンセルし、いったんAndroid Studio をクローズしましょう。

 

(2) テキストエディタか何かを使って、プロジェクトのルートディレクトリに空のファイルを作成します。ファイル名は "local.properties" にしてください。もちろん、Windowsのエクスプローラーで、該当のフォルダを表示して右クリックメニューから「新規作成」→ 「テキストドキュメント」としてもOKです。

 

(3) Android Studio の File メニューの "Open" あるいは "Open an existing Android Studio Project" を実行し、プロジェクトのルートフォルダを指定します。

 

(4) プロジェクトがオープンし、無事にコンパイルできるようになります。

 

以上です!

 

ちなみに、 local.properties という空のファイルを作ってあげさえすれば、Android Studio 君は中身にテキストを自動で書き込んでくれるようです。上記の(1)から(4)の手順を踏んだ後、"local.properties" の中身をのぞいてみると、下記のようなテキストが書き込まれていることがわかります。

 

## This file is automatically generated by Android Studio.
# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
#
# This file must *NOT* be checked into Version Control Systems,
# as it contains information specific to your local configuration.
#
# Location of the SDK. This is only used by Gradle.
# For customization when using a Version Control System, please read the
# header note.
#Thu Mar 02 12:48:29 JST 2017
ndk.dir=D¥:¥¥Android¥¥sdk¥¥ndk-bundle
sdk.dir=D¥:¥¥Android¥¥sdk

 

自動的に設定内容を書き込んでくれるんですね。すばらしい!

 

ただ、もしそこまで出来るのなら、local.properties というファイルを新規作成することぐらいサクッとやってくれてもいいのに・・・

 

あと、「わざとユーザーを惑わせるためにしてるんじゃないのか?」と疑いたくなるほどの見当違いのエラーメッセージを表示するのは、ぜひやめていただきたい・・・

 

ちなみに、上記の現象は Android Studio のバージョン 2.2.3 で発生した問題です。将来のバージョンでは、このような単純なバグが修正されるといいですね。

 

以上、Android Studio で "SDK location not found." エラーが出た場合の原因と対応策でした!

 

ソフトコミュでは、スカイプによる Java や Androidプログラムの

オンライン家庭教師を受け付けています。

料金は30分2,000円から。

ネット検索しながら何日も悩んだ問題が、たった30分で解決すると大好評です!

興味のある方はソフトコミュのホームページからご連絡ください!

 

 

| SoftCommu | Android | 13:03 | comments(0) | - |
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
<< July 2017 >>
+ 人気の記事
+ ARCHIVES
+ CATEGORIES
+ MOBILE
qrcode
(C) 2016 SoftCommu All Rights Reserved.