[Android] Android SDKをインストールしてエミュレータでブラウザ表示する
失敗の記録。
すんなりいかなくて苦労したあげく、よそ様のようなホーム画面が表示されない。
自分の poor な環境ではうまく動かないのか。。。
Contents
JDK をインストールする
Java Development Kit が必要なよう。
インストールされているか確認したところ、大丈夫そうです。
% java -version
java version "1.6.0_65"
Java(TM) SE Runtime Environment (build 1.6.0_65-b14-462-11M4609)
Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-462, mixed mode)
% javac -version
javac 1.6.0_65
もしなければこのあたりを参考にインストールします。
と思ったのですが、起動時にエラーが出ました。
後述の「 JDK をインストールする」のとおりインストールしました。
Android SDK をインストールする
SDK のダウンロードは下記から。
Download をよくみると「Eclipse + ADT plugin」と書いてあり、開発環境もインストールされてしまうよう。
今回は必要ないので「DOWNLOAD FOR OTHER PLATFORMS – SDK Tools Only」を選択。
brew でインストールする
と思ったのですが、なんとなく homebrew でインストールできそうなのでそちらで試しました。
% brew info android-sdk
android-sdk: stable 22.6.2
http://developer.android.com/index.html
Conflicts with: android-platform-tools
Not installed
From: https://github.com/Homebrew/homebrew/commits/master/Library/Formula/android-sdk.rb
==> Caveats
Now run the 'android' tool to install the actual SDK stuff.
The Android-SDK location for IDEs such as Eclipse, IntelliJ etc is:
/usr/local/Cellar/android-sdk/22.6.2
You will have to install the platform-tools and docs EVERY time this formula
updates. If you want to try and fix this then see the comment in this formula.
You may need to add the following to your .bashrc:
export ANDROID_HOME=/usr/local/opt/android-sdk
% brew install android-sdk
指示通り .bashrc あたりに設定を追加します。
export ANDROID_HOME=/usr/local/opt/android-sdk
ファイルを読み込み直すと、android
が使えるようになっています。
% android --help
Android SDK Manager を起動し、必要なパッケージをインストールする
android
で Android SDK Manager が GUI で起動します。
% android sdk
Android SDK Platform-tools のインストールは必須とのことでしたが、起動時にチェック済の項目も含め、そのままインストールします。
ライセンス承認の後、ダウンロードとインストールが始まります。
自分の環境では特に止まることもなく、android sdk の再起動をすすめるメッセージが表示されました。
開発は行わないので、このままエミュレーターの起動を進めます。
なお、後述の通りHAXM のインストールも行いましたが、暴走したような状態になったため使用を中止しました。
Android Virtual Device Manager で仮想デバイスを作成する
Android Virtual Device Manager を起動します。
% android avd
初期状態では仮想デバイスはありませんが、android list
で確認できた代表機種の定義は確認できました。
ここでは Nexus 5 を選び、Create AVD...
すると設定項目が表示されます。
それぞれの項目の意味は、下記が詳しいです。
画面を広げてエラーに気づきましたが、CPU と Skin の選択が必須でした。
- Android Wear ARM
- Skin with dynamic hardware controls
HAXM を使う場合は、CPU を Intel Atom (x86) 。
スキンはコントロールボタン付きと言うことらしいです。
Nexus 5 (Android 4.4.2) の仮想デバイスが作られました。
% android list avd
Available Android Virtual Devices:
Name: AVD_for_Nexus_5_by_Google
Device: Nexus 5 (Google)
Path: /Users/****/.android/avd/AVD_for_Nexus_5_by_Google.avd
Target: Android 4.4.2 (API level 19)
Tag/ABI: android-wear/armeabi-v7a
Skin: 1080x1920
仮想デバイスを起動する
Android Virtual Device Manager から選択し Start...
するか下記コマンドで,エミュレーターが起動します。
% emulator -avd AVD_for_Nexus_5_by_Google
後述の通り、いろいろ試行錯誤。
Nexus S で試したところ起動画面が表示されました。
このあとホーム画面が表示されませんでした。
補遺
HAXMをインストールする
エミュレーターの起動時にこんなエラーが出ました。
Starting emulator for AVD 'AVD_for_Nexus_5_by_Google'
emulator: Failed to open the hax module
HAX is not working and emulator runs in emulation mode
SDK の Extra から Intel x86 Emulator Accelerator (HAXM installer)
をインストールする必要がありました。
SDK を起動します。
% android sdk
インストールすると表示が変わりますが、ダウンロードされただけだそう。
ダウンロードされたインストーラー(v.1.0.8)を起動します。
% cd /usr/local/Cellar/android-sdk/22.6.2/extras/intel/Hardware_Accelerated_Execution_Manager
% open .
インストール後、エラーなしで起動できました。
しかし仮想デバイスが表示されず、Mac が急発熱、ファンが高速で回り始めました。
危険を感じたので中止しました。
% ps ax | grep emu
80734 s004 R+ 1:41.74 /usr/local/Cellar/android-sdk/22.6.2/tools/emulator64-x86 -avd AVD_for_Nexus_4_by_Google
80901 s012 R+ 0:00.00 grep emu
% kill -9 80734
JDK をインストールする
エミュレーター起動時にこんなエラーが出ました。
2014-06-19 17:14:33.163 java[68679:122cf] Persistent UI failed to open file file://localhost/Users/***/Library/Saved%20Application%20State/com.apple.javajdk16.cmd.savedState/window_3.data: No such file or directory (2)
どうも Java まわりのよう。
面倒なので JDK をインストールしました。
インストール後のバージョンはこうなりました。
% java -version
java version "1.8.0_05"
Java(TM) SE Runtime Environment (build 1.8.0_05-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.5-b02, mixed mode)
% javac -version
javac 1.8.0_05