header

2012年12月18日火曜日

Emacsから実機にandroidアプリをインストール

Emacsから実機にandroidアプリをインストール

ほとんどandroid-modeの力を借りていますが
Emacsからandroid端末(私はNexus4で確認)へのアプリのインストールを
記事にしたいとおもいます。
ただ現状ant debugでのインストールのみです。
(私がまだantの使い方をよくわかっていないので
releaseだとうまくいきませんでした。署名とか必要そうです…)
eclipseやsdkのインストールが終わった前提で記事を
書いています。
(まだの人は Nexus4で実機確認 の記事を参考にしてください。)
既にandroid-modeを使いこなしている方は.emacsに貼り付けるだけで使えると
思います。
尚、私はJavaとか全然くわしくない人なので、何か流儀的にこれちがうんじゃない?
ということがあればコメントいただけるとうれしいです。

準備

antのインストール

build.xmlからビルドするのにantが必要なのでインストール
(私の環境だと最初から入ってたのでもしかしたら他に必要なパッケージがあるかも?)

sudo apt-get install ant

android-mode.elのインストール

Emacs24をお使いの方は、M-x list-packagesコマンドからインストールできます。
以下は私の設定例です。(参考までに)
android-mode-avdというのは別に設定しなくてもよいとおもいます。
私の場合(android-list-avd)を実行した時にでてくるデバイス名を
設定しました。(無設定の場合はそこからきめられる為)

(eval-when-compile (require 'cl))
(require 'android-mode)

(setq android-mode-sdk-dir "~/android/sdk"
android-mode-key-prefix "\C-c \C-c"
android-mode-avd "AVD_for_android_4_2")

(defun android-mode-install-to-real-machine ()
(interactive)
(lexical-let*
((base-directory default-directory)
(build-dir (locate-dominating-file default-directory "build.xml"))
(adb (concat android-mode-sdk-dir "/platform-tools/adb")))
(shell-command-to-string
(concat "cd " build-dir " && "
"rm -fr ./bin && "
"ant debug && cd ./bin && " adb " install *.apk && "
"cd " base-directory))))

プロジェクトの作成

antを利用する為にはbuild.xmlが必要ですが、eclipseで作成
したときはできなかったのでandroid-modeのコマンドで
プロジェクトを作成します。

M-x android-create-projectを実行

コマンドを実行するとPATH,PACKAGE,ACTIVITY,TARGETについて
minibufferで聞かれるのでそれぞれ入力します。
以下はHelloプロジェクトをつくる例


path: ~/android/workspace/Hello
-> ~/android/workspace/Helloディレクトリより下にプロジェクト作成


package: com.example.hello
-> あんまりよくわかってない。
アプリをリリースする時はドメインを取得する必要があるらしい。
ただテストアプリを実機にインストールする分には
example.com.package-nameでも大丈夫でした。


activity: Hello
-> よくわからない。取り敢えずパッケージ名にしました。


target: Googleうんにゃらかんにゃら…
TAB補間ででる候補を参考にした方がよいと思います。
多分, android sdk managerで何かインストールしないと候補が出ないと
思います。

M-x android-mode-install-to-real-machineを実行

このコマンドで作成されたアプリを実機に送ることができます。
注意点としてbuild.xmlを今いるディレクトリから上に向かって検索するため
Emacsでいまいるディレクトリが作成しているプロジェクト以下である必要があります。
また、実機の方でusb デバッグの許可を有効にする必要があります。
(デバッグだからなのか、unknow sourcesのチェックは許可しなくてもOKでした)


0 件のコメント:

コメントを投稿

Popular Posts

Blogger templates

Blogger news