コマンドラインからAndroidアプリを作成するには

Posted by kwmt on Sun, Feb 27, 2011

Androidアプリ作成でEclipseを使ってプロジェクトの作成からインストールまでやっていましたが、サブPCのスペックがなくあまりにも重いので、この一連の流れをコマンドで実行してみた。

いろいろ問題が生じたので、それも注意としてメモしておく。

今回作成例(前提)

新規プロジェクトを作成する

Created project directoryとか、Added file とか必要なディレクトリやファイルが追加されるログがでる。

参考

でoptionの確認ができる。

ビルドする

「BUILD SUCCESSFUL」と出たら成功

参考

というコマンドもあるらしいが調べてない。

作成済みのAVDを確認する(実機なら不要)

作成してなかったら、android.bat -h の create avdあたりを見て作成。まぁ、$android.batだけでGUIが起動するのでそれでOK。これぐらいなら軽い。

エミュレータを起動する(実機なら不要)

これもヘルプあり

apkをインストールする(注4)

これでインストールされたので、エミュレータやら実機で動作確認。

(注1)

と出た場合は、パスが通ってないかインストールされてない。

僕はインストールしてなかったので、インストールした。

antをダウンロード

http://ant.apache.org/bindownload.cgi

.zip archive: apache-ant-1.8.2-bin.zip

具体的なインストール方法はこちらを参考にした。

http://www.javadrive.jp/ant/install/

(注2)

と出たので、JAVA_HOMEの設定も必要

http://www.javadrive.jp/install/jdk/index5.html

(注3)

<現象>

のように、ソースに日本語を使うとビルド時に

となって、ビルドに成功するが、日本語が表示できない。

<原因と対策>

log.txtを見ると/tools/ant/main_rules.xmlを読み込んでるようだったので、それをみると「ascii」とあるのは一箇所だったので、それをとりあえず「utf-8」に変更。

あとは、大前提として、作成したソースのエンコードを 「UTF-8」に変更が必要。

(個人的にはこれをすぐ忘れそう・・・)

(注4)

インストール済みでinstallとすると、下記のよう失敗する。

アンインストールしてから、再度インストールする。

備考

Eclipseで新規プロジェクトを作成したものと、コマンドで新規プロジェクトを作成した場合では、作成されるファイルが異なるようだ。

具体的には、コマンドで新規プロジェクトを作成した場合、<プロジェクトフォルダ>の下に

のファイルが追加される。

なので、Eclipseで作成済みのプロジェクトをコマンドでビルドしようとしても

と失敗するので、コマンドで新規プロジェクトを作成した上記3つのファイル(log.txtはログなので特に不要)をコピーしたらコマンドでも実行できる。

ただ、コピーしたそのままをビルドすると、コピー元の<プロジェクト名>.apkとなるようなので、build.xmlの2行目のname部分をコピー先の名前に変えてやればいいようだ。

まとめ

Eclipse使うと重いからコマンドでビルドしたかったが、ここまで面倒だと多少重くてもEclipseを使ったほうがいいかもしれない。



comments powered by Disqus