Android SDKのツール使い方まとめ
Android SDKのツールについて、自分が必要な範囲で使い方をまとめました。1次ソースも併せて紹介します。
前回記事「MacにAndroid向けクロスコンパイル開発環境を構築する」の内容は全て終わっている前提とします。
AVDの作成
AVD(Android Virtual Device)を作成します。AVDとは、エミュレータから利用するための仮想Androidデバイスです。下記のように新しいAVDが作れます。
$ android create avd -n wvga800-arm-18 -t 1 Auto-selecting single ABI armeabi-v7a Android 4.3 is a basic Android platform. Do you wish to create a custom hardware profile [no] Created AVD 'wvga800-arm-18' based on Android 4.3, ARM (armeabi-v7a) processor, with the following hardware config: hw.lcd.density=240 vm.heapSize=48 hw.ramSize=512 $
上記の-tオプションでターゲットIDを指定します。ターゲットIDは下記のようにすればわかります。
$ android list targets Available Android targets: ---------- id: 1 or "android-18" Name: Android 4.3 Type: Platform API level: 18 Revision: 1 Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, WXGA720, WXGA800, WXGA800-7in ABIs : armeabi-v7a $
また、avdの一覧はCUIでも確認できます。
$ android list avd Available Android Virtual Devices: Name: wvga800-arm-18 Path: /Users/***/.android/avd/wvga800-arm-18.avd Target: Android 4.3 (API level 18) ABI: armeabi-v7a Skin: WVGA800 $
エミュレータにshellログインする
エミュレータ・実機問わず、MacOSXがAndroidデバイスを認識している場合は次のように存在を確認できます。
$ adb devices List of devices attached emulator-5554 device $
このように認識されているAndroidデバイスに対し、Linuxコマンドを実行したりshellログインしたりすることもできます。
$ adb -s emulator-5554 shell date Mon Aug 12 11:56:03 EDT 2013 $ adb -s emulator-5554 shell root@generic:/ #
エミュレータの場合はrootログインになるようですが、実機で実行する場合は一般ユーザー権限になります。
ちなみに、接続しているAndroid機(またはAndroidエミュレータ)が1台の場合は-sオプションの指定は省略できます。つまり、上記の場合は単に「adb shell」としても動きます。
エミュレータとファイルを送受信する
「adb push」と「adb pull」でAndroidマシンとMacOSXとでファイルの送受信が行えます。
$ adb -s emulator-5554 pull /etc/hosts /tmp/ 6 KB/s (25 bytes in 0.003s) $ cat /tmp/hosts # Androidからコピーしてきたものを表示 127.0.0.1 localhost $ adb -s emulator-5554 push /etc/hosts /data/local/tmp/ 62 KB/s (292 bytes in 0.004s) $