トップ 一覧 置換 検索 ヘルプ RSS ログイン

Android SDK の使い方の変更点

  • 追加された行はこのように表示されます。
  • 削除された行はこのように表示されます。
http://www.javadrive.jp/android/index.html
http://firespeed.org/diary2/read/read.php?diary=kenz&junl=2

!!!利用するJavaのバージョンについて
JDK7 を使うとリリース時に
 パッケージファイルに正しく署名されていません。
と出るので注意。
今のところは、JDK6 を使うのが無難。

!!!設定
1.ダウンロードして解凍
2.tools にパスを通す
3.コマンドプロンプトで
 android create avd --name test1 --target 2
で仮想デバイスを作成する。
 android create avd
でヘルプ表示。
ここで作った設定は、ホームディレクトリのandroid以下にある

ターゲットのリストは
 android list targets
で表示できる。

!!!エミュレータ
!エミュレータの起動
 emulator -avd test1
でエミュレータ起動

!キーボード、マウスホイールを有効にする
http://tmegos.blogspot.jp/2012/07/android.html
設定によってはキーボードが使えないことがある。

ユーザのホームディレクトリの .android/avd 以下にある
AVDの設定ファイルである config.ini を開いて
 hw.dPad=yes
 hw.keyboard=yes
を追記、編集する


!エミュレータの画面を回転させる
 CTRL + F11
でエミュレータを回転できる。

!!!コンパイルと実行
!環境作成
 android create project -a actname  -k pack.test -t 2 -p path
バージョンによっては
 activityCreator.py --out hello org.klab.Hello
 activityCreator.bat --out hello org.klab.Hello
とか。

!コンパイル
 ant
とか
 ant build
とか。バージョンによりけり。
javac とか ant とか使えるようにパスを設定しておく。

!エラーがでたら
 Certificate expired xxxxxxxx
っていうエラーがでたら、ホームディレクトリ直下の
 .android
を消してしまうのが一番楽。

!プロジェクトのアップデート
SDKをアップデートすると、プロジェクトが古くてコンパイルできなくなったりする。
その場合は、
 android update project --path プロジェクト
で、プロジェクトをアップデートする。

!実行
エミュレータを実行している状態で
 ant install
 ant debug install (最近はこっち)
または、
 adb install bin\actname-debug.apk
XXX.apk はコンパイル後に bin の中に出来る。

!デバッグ
 System.out.println
または
 android.util.Log
でログ出力。
 adb logcat 
必要に応じて -d オプションを付ける。
フィルタリングは
 adb logcat  *:s System.out:I
とか。マッチするタグがないと表示されるみたいなので *:s で余計なタグを弾く。

!日本語の表示
ソースをMS932で書いてnative2ascii をかます。
{{ref n2a.bat}}
こんなバッチを書いて、src_natvieにソースを置けばOK

!!!複数デバイスを使う
adb コマンドは
 -s
でシリアルを指定できる。
 adb devices
で表示されるシリアルを指定する。
 adb -s emulator-5554 shell
とか

!!!VMWare を使う場合
{{word 以下の内容は,red}}[[VMWareでAndroidアプリをデバッグする]]{{word へまとめ直しました。,red}}



エミュレータを使用している場合、
パッケージのインストール、デバッグなどの作業は
adb(Android Debug Bridg)を使用して行われている。

エミュレータの代わりにVMWareにインストールしたAndroidを使う場合も
adbを使用してパッケージのインストールやデバッグが行える。

!手順
vmware 内のandroid で adbd が起動されていることを確認する
adbコマンド実行側の環境変数(ADBHOST)にadbd実行側のIPアドレスを設定する
 set ADBHOST=192.168.*.*
あとは、普通のエミュレータと同じ。
 adb devices
でデバイスを確認する。もし、デバイスが認識されていない場合は
 adb kill-server
を実行してから、 add devices を実行してみる。

 adb start-server
は実行しなくても、自動で実行してくれるので必要ない。

!その他のadbコマンド
,コマンド,用途
,adb install (-r) *.apk, パッケージインストール -r はリインストール
,adb shell, adbd 実行側でのshellを起動する
,adb kill-server, adb server を止める。 adb server は自動で実行される。
,adb start-server, adb serverを明示的に実行する
,adb devices, 使用出来るデバイスの一覧を表示する
,adb logcat, ログを確認する
,adb push, ファイルを送信する
,adb pll, ファイルを受信する
※ 複数デバイスがある場合、 -s でデバイスを指定出来る。

!!!adb の仕組み
この内容は、予想なので実際はどうなのかわからない
*Android OS 側に adbd (adbデーモン)を起動しておく
*adb コマンド実行側に adb server (adb デーモンと通信するプロセス)を起動する
*adb コマンド実行側が adb server 経由でadbdに指示を与える

{{category2 プログラミング言語,Java,Android}}