事象の水平線

個人的ブックマーク代わりなメモ書きブログ。 地球は丸いよ。↓このへん。

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

PageTop
今更だけれど、Androidアプリの開発環境構築に関するメモ (2013年8月10日版)

中身の前に、実機がある人は実機をusbでつないでデバッグするのが一番いいのだろうけれど、実機が手元にないので定番はエミュレーターを使うわけですが、これが実用性がないと言い切れるほど遅い。
Intelの仮想化支援が何たらで速くなるらしいけど、あいにくAMDなので使えず。
GoogleがAndroidStudioというIDEを出したと言うんで試しに入れてみたけど、そのエミュもぜんぜん速くない(同じ?)
Linux上なら速いかも?というのを見てやってみたがうまく行かず。
で、たどり着いたのが、AndroidOSを仮想化で動かすというもの。

材料
jdk-7u25-windows-x64.exeJava SE DownloadsからJDKのダウンロードを選んで適当に
 └Java開発キット
●adt-bundle-windows-x86_64-20130729.zip:Get the Android SDKからDownload the SDK ADT Bundle for Windows か DOWNLOAD FOR OTHER PLATFORMSから適当に
 └Android開発キット Eclipseも入ってる
●Pleiades プラグイン:Pleiades の Pleiades プラグイン・ダウンロード 最新版 1.4.x
 └Eclipseの日本語化プラグイン
●VirtualBox:Download VirtualBoxから適当に
●androVM_vbox86t_4.1.1_r6.1-20130222-gapps-houdini-flash.ova:AndroVM blogから適当に
 └androVM_vbox86tはタブレット用
 └androVM_vbox86pは携帯電話用
 └androVM_vbox86tpはタブレット(電話機能付)用  らしい
  末尾gapps-houdini-flashは、Playストアのアプリが同梱 らしい
AndroidOS x86のISOファイルもhttp://www.android-x86.org/downloadにあるが、それでVirtualBoxに入れると、VirtualBoxが対応してないらしくGuestAdditionsが入れられない。
どうなってるのかわからないが、AndroVM blogのはそのままでマウスが統合されているのでこっちを使う。
いちいちマウスを右Ctrlで切り替えるのが苦でないならisoから入れてもいいかもしれない。4.3も選べる

●AndroVMplayer-Win64-20130208.zip:AndroVM blogから適当に
 └OpenGLでハードウェアアクセラレーターが効くらしい

インストール
Java関係は普通にインストールするだけ。
JDKだのJSEだの、バージョンが最新だとだめだったり、いつもはいろいろ有るけど、今回は順当に出てくる最新のでOKみたい。
AndroidStudioのインストールの際、java.exeが見当たらないといわれてpathを通したけど、こっちでも必要かは試してないので知らない。たぶんいらない。java_path.png

AndroidSDKは単に圧縮されているだけなので、解凍するだけでOK。
ただ、解凍先の階層が深かったりすると解凍に失敗してるのに気付かないことがあるらしい。
pleiadesも同様に解凍して、readme_pleiades.txtを読んで書いてある通りにするだけ。
具体的には
1.pluginsfeaturesフォルダの中身をadt-bundle-windows-x86_64-20130729\eclipse\以下のpluginsfeaturesフォルダの中にコピー
 当初フォルダを上書きコピーと解説してるHPを参考にして動かなかった
2.eclipse.ini の最終行に以下を追加
-javaagent:plugins/jp.sourceforge.mergedoc.pleiades/pleiades.jar
Eclipseを起動して、無事起動したらウィンドウ > Android SDK マネージャからAndroid4.1.2のSDKをインストールする(VirtualBoxのAndroidが4.1.1なので@これをしないと仮想androidにつながらなかった。まぁ当然か。4.1.1はAPI Level16らしい
android_sdk_manager.png

VirtualBoxのインストールは割愛
androVM_vbox86t_4.1.1_r6.1-20130222-gapps-houdini-flash.ovaをダブルクリックするとVirtualBoxでインポートするようになるので、ひとまずそのままインポートする
virtualbox_appliance.png

その後、起動する前に設定画面で
プロセッサー数:2	(2より増やしても無意味らしい コア数が少なければ1で)
ビデオメモリー:128MB (そんなにいらないと思うけど・・・)
ネットワーク: アダプター1 ホストオンリーアダプター (Eclipseからの接続用)
アダプター2 NAT  (androidのネット接続用)

androidvm_netsetting.png

起動したら、UIがシンプルすぎて戸惑うが、何とかして日本語にしたりする。
android_welcome1.png

android_welcome2.png
いろいろ聞かれるが適当にかわすと、Home画面?が現れる。
androidvm_home.png
戻るボタン?Homeボタン?がないがキーボードのHomeでホーム画面(?)へ戻れる。
また、しばらく放置してロックがかかった時は、鍵のアイコンを右とかに動かすが、そもそも画面が固まってるときがある。そのときはなぜかキーボードのEndで反応するようになった。正しい操作かは知らない。

ドットのサイズが微妙にでかく感じたので、dpiを上げようと思ったら、なぜか数字を上げたら、表示されるウィンドウのサイズが変わらず、ワンドットのサイズがますますでかくなった。どゆこと?
androVM configureからdpiを120にしたら、ホームボタンとかも出てきた。
androvm_config.png

androvm_config2.png
もしかしたら、ResolutionがPC画面上のresolutionと一致していて(=ドットバイドット)、そこでdpiをきめるから、物理的な1インチのサイズが可変なわけね?
わお。wysiwig(ウィシウィグ)なんてのはもう過去のものなのね・・・まぁ、、いいとして、、

DPI 120の画面
androidvm_home120dpi.png
なんかUIも微妙に変わったようだけど?

ひとまず、AndroVM playerを試すのでバツボタンで仮想OSの電源を落とす。
AndroVMplayer-Win64-20130208.zipを解凍して、AndroVMplayer.exeを起動する。
androvm_player.png

ハードウェアアクセラレーションで動くらしい。
androvm_player_ha.png
こちらは、もとからHomeボタンとかがついてる。

ちなみに、VirtualBoxで電源を落とさず、保存状態(仮想マシンの状態を保存)にしておくと"This VM is in an incompatible state."とか言われてAndroVM playerが立ち上がらない。
androvm_player_alert.png

また、OpenGLのせいか他のウィンドウの下になった状態から前面にすると元の画面が張り付いたままのときがあるが、Homeボタンを押すとか、何か画面をリドローさせると普通に戻る。
androvm_player_reload.png
VirtualBoxから立ち上げたAndroidよりは多少軽いようだが、あまり差は感じないかな。(と、思ったけどデバッグしてるとだいぶ違うですた)
それよりも、VirtualBoxだと状態を保存するとものの数秒で起動するが、AndroVM playerだと毎回bootからになるようで、起動にちょっと時間がかかる。
どっちがいいかはCPU性能によるだろうか。
<<追記>>
VirtualBoxからでもandroVM Configuration上でHardware OpenGLにチェックを入れるとハードウェアアクセラレーションで動くようだ。
というか、AndroVM playerでEnable hardware accelarationといわれたのも、これのチェックを入れることだったのか?AndroVM player使用後は、androVM ConfigurationのHardware OpenGLにチェックが入っていた。
また、Hardware OpenGLのチェックが入っていると、ResolutionとDPIの表示自体がなくなっていた。


次に、Eclipseからデバッグできるようにsdk\platform-tools\adb.exeでつなぐらしい
具体的には、Windows上のコマンドプロンプトからadb connect ipaddress
で、ipaddressはAndroid上のterminalからnetcfgとかで調べるらしいけど、AndroVM playerだとタイトルバーに書いてある。
androvm_player_ip.png
ので、192.168.56.101を打ち込む。VirtualBoxのネットワークアダプター1番をホストオンリーアダプターにするとこのipになるみたい。AndroVM Configureのeth0 IPのところにも書いてあるけどね。
adb_connect.png

connected to ~ となればOK。
ならない時は、SDKのバージョンがあってないとか(自分はそこだった)EclipseでSDKマネージャーを確認する。
EclipseかAndroVM playerを立ち上げるたびに毎回のようなので、適当な場所に
adb_connect.bat とかで以下みたいなバッチファイルを作っておくといいかも。
@echo off
"C:\Program Files (x86)\adt-bundle-windows-x86_64-20130729\sdk\platform-tools\adb.exe" connect 192.168.56.101


続いて、
Eclipseでサンプルを読み込んで動かしてみる
ファイル > 新規 > その他 から
Android サンプル・プロジェクトを選び
eclipse_new.png

ターゲットは4.1.2
eclipse_new_target.png

どうせよくわからないから一番上のを
eclipse_new_sample.png

Eclipseの使い方が全然わからないが、実行 > Androidアプリケーション でAndroVM playerのほうが何かしら動けばOK
eclipse_do_sample.png

とりあえずここまで。
Android端末の操作方法が全然わからないぞ。と。

参考:
Android アプリ開発環境構築方法 (2013年4月版)
android 開発でエミュレーターの代わりに x86版 + Virtualbox を使ってみる
VirtualBoxでAndroid4.1を動作させる
AndroidエミュレータはAndroVM一択
スポンサーサイト

PageTop

コメント

 ※
 ※
管理者にだけ表示を許可する
  ※ 必須項目です

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。