Android SDK/NDK

環境設定の手順。Windows および Mac OS X, Linux 。詳しくは http://developer.android.com/sdk/installing.html を参照

  • SDK には Android SDK (Java) と Android NDK (C/C+ +) があります。
    • 通常のアプリ開発は SDK だけで十分です。C/C+ + を用いる場合は NDK も併用します。
  • Version 番号は 2012/03/31 現在のもの。必要に応じて読み替えてください。

Windows の場合

install 手順

  1. JDK install
  2. Eclipse install
    • Eclipse Classic 3.7.2 (or newer) から選択 [Windows 64 Bit] または [Windows 32 Bit] ボタン
    • eclipse-SDK-3.7.2-win32-x86_64.zip を展開して任意のフォルダに置く (32bit: eclipse-SDK-3.7.2-win32.zip)
  3. Eclipse に ADT を入れる
    1. Eclipse 起動
    2. Help → Install New Software
    3. Add ボタン
    4. Name ADT, Location https://dl-ssl.google.com/android/eclipse/ を入れる。
    5. 表示が「Pending …」となるので、「Developer Tools」が表示されるまでしばらく待つ。
    6. Developer Tools にチェックを入れて Next, Next
    7. accept を選択して Finish
    8. Eclipse 再起動
  4. Eclipse 上で Android SDK のダウンロードが自動で始まる。デフォルトパスは HOME/android-sdks
    • すでに手動で android sdk をダウンロードしてあるならそのパスを書きこんでも良い
    • SDK のパスは Window → Preferences → Android → SDK Location でも登録できる。
  5. Android SDK Manager を起動する (Menu の Windows の中)
    1. Extras の中の Google USB Driver package にチェックを入れる
    2. 他に必要な API や System Image があればそれも追加しておく。
    3. 右下の [Install ~ packages] ボタンを押す。Accept All → Install
    4. 全部終わったら Close を押して閉じる。
  6. android-sdk-windows\platform-tools をパスに追加しておく (ADT の自動ダウンロードなら HOME/android-sdks の中にある)

以下、NDK が必要な場合のみ。

  1. Cygwin を入れる。NDK で必要 (無くてもビルドはできるようになりましたがデバッグに必要)
  2. NDK を install

cygwin 無しで build する

Android NDK r7 からは cygwin 無しでも build できるようになりました。 cygwin shell (bash) から ndk-build を使う代わりに、Command Prompt から ndk-build.cmd を使います。

cygwin に path が通っていると cygwin の sh をシェルと認識して ndk-build.cmd の実行が失敗するので注意してください。

Upgrade 手順

  • USB で端末がつないである場合は外しておきます。(重要)
  • SDK の場合新しい SDK がリリースされても、すでに install してあるなら更新するだけで OK
    1. Eclipse のメニュー Help → Check for Updates
    2. Eclipse のメニュー Window → Android SDK and AVD Manager → Installed packages → Update All → Accept All → Install
  • NDK はダウンロードしてアーカイブ展開、再びファイル一式を置き換えます。
    • パス設定してある場合パスも置き換えます。

install 中に問題発生時の対処方法

  • SDK Manager.exe が起動しない場合 → 環境変数 ANDROID_SW を削除

実端末の接続 / adb driver

PC に実機を接続してデバッグするには adb driver が必要。

たいていは端末メーカーから提供されている。

もしなければ自分で inf に追加できる。1)

  1. android-sdk-windows\extras\google\usb_driver 内の android_winusb.inf を編集する
    • 注意! : Google usb driver のパスは install 時の SDK version によって異なります。下記のどれかです。必要に応じて読み替えてください。
      • 旧: android-sdk-windows\extras\google\usb_driver
      • 旧: android-sdk-windows\google-usb_driver
      • 新: android-sdk-windows\usb_driver
  2. 下に記載した設定行を [Google.NTx86] 及び [Google.NTamd64] セクションの最後に追加する
    • Windows が 32bit (x86) なら Google.NTx86 、64bit (x64) なら Google.NTamd64 の情報が参照されます。
  3. C:\Users\<ユーザー名>\.android\adb_usb.ini がもし存在していればファイルを編集する
    • ベンダーコードを 16進数で記述する。ベンダーコードは VID_ の後ろの数値です。VID_0123 の場合 0x0123 を追加します。
  4. コマンドラインでサーバーを再起動する
    • adb kill-server
    • adb start-server
  5. デバイスの 設定→アプリケーション→開発→ USB デバッグ を on にする
  6. USB で接続して、ドライバとして android-sdk-windows\extras\google\usb_driver を指定
  7. adb devices でリストが取れて、かつ online になっていれば成功

android_winusb.inf

; NVIDIA Tegra2 (LuvPad AD100)
%SingleAdbInterface%        = USB_Install, USB\VID_0955&PID_7000
%CompositeAdbInterface%     = USB_Install, USB\VID_0955&PID_7100&MI_01
;
; Creative ZiiO7
%SingleAdbInterface%        = USB_Install, USB\VID_2350&PID_0102
%CompositeAdbInterface%     = USB_Install, USB\VID_2350&PID_0102&MI_01
;
; Creative ZEN Touch2
%SingleAdbInterface%        = USB_Install, USB\VID_041E&PID_4166
%CompositeAdbInterface%     = USB_Install, USB\VID_041E&PID_4166&MI_01
;
; Samsung Galaxy S2 (SC-02C)
%SingleAdbInterface%        = USB_Install, USB\VID_04E8&PID_685E
%CompositeAdbInterface%     = USB_Install, USB\VID_04E8&PID_685E&MI_03
;
; SHARP IS03
%SingleAdbInterface%        = USB_Install, USB\VID_04DD&PID_939a
%CompositeAdbInterface%     = USB_Install, USB\VID_04DD&PID_939a&MI_01
;
; Acer ICONIA TAB A500
%SingleAdbInterface%        = USB_Install, USB\VID_0502&PID_3341
%CompositeAdbInterface%     = USB_Install, USB\VID_0502&PID_3341&REV_9999&MI_01
;
; HTC EVO 3D (ISW12HT)
%SingleAdbInterface%        = USB_Install, USB\VID_0BB4&PID_0CBA
%CompositeAdbInterface%     = USB_Install, USB\VID_0BB4&PID_0CBA&MI_01
;
; Life Touch NOTE (NA75W/1A)
%SingleAdbInterface%        = USB_Install, USB\VID_0409&PID_0301
%CompositeAdbInterface%     = USB_Install, USB\VID_0409&PID_0301&MI_01
;
; Kindle Fire
%SingleAdbInterface% = USB_Install, USB\VID_1949&PID_0006&MI_01
%CompositeAdbInterface% = USB_Install, USB\VID_1949&PID_0006&REV_00216&MI_01

ベンダーコード、プロダクトコードはデバイスマネージャーを見ればわかるので、任意のデバイスを上と同じ要領で追加できる。

プロパティ → 詳細 → Hardware Ids

adb_usb.ini

VID_ 以後の番号だけ追加する。(adb_usb.ini が存在しない場合は不要です)

0x0955
0x2350
0x041e
0x0bb4
0x04e8
0x04dd
0x0409
0x054c
0x1949

DDMS

PC に接続されているデバイスを管理するためのコマンドが ddms。

eclipse からも起動できるが、コマンドから直接実行も可能。

  • android-sdk-windows\tools\ddms.bat

接続されているデバイスの情報、コンソール、ファイルシステムの操作、等が可能。

eclipse の場合、任意の perspective にウィンドウとして個別に追加できる。

  1. menu の Window → Show View → Other…
  2. Android の中から Devices, File Explorer, LogCat 等
    • Devices のウィンドウでスクリーンキャプチャが取れる

adb

コマンドラインツール adb で直接ターゲットを操作することも可能。 これを使えば直接 android 端末にリモートログインもできる。

よく使うコマンド

adb devices 接続されているデバイスの情報を一覧表示。デバイス名の参照。
adb shell シェルログイン
adb shell コマンド 端末上でコマンドを実行する。adb shell cat /proc/cpuinfo など。
adb push PCのファイル 端末のパス ファイルを端末に転送する
adb pull 端末のファイル PCのパス 端末のファイルを取り出す
adb install インストールするAPK apk ファイルを直接インストールする
adb uninstall パッケージ名 パッケージを uninstall する

emulator

実機がなくても Android emuulator を使うことができる。

  1. eclipse
  2. Window → AVD Manager
  3. Virtual devices → [New] → Name 適当, Target Android 2.3.3 API Level 10 → 画面サイズ選択 → Create AVD

Start を押すと起動する。

sample

SDK Sample

SDK sample のプロジェクト作成

  1. eclipse 起動
  2. File → New → Android Project
  3. Create project from existing sample を選択
  4. Build Target で OS version を選択
  5. Samples: のプルダウンから選択
  6. Next → Finish

ビルド&実行方法

  1. Java の画面で プロジェクトを選んで右ボタン
  2. Run as → Android Application

NDK Sample

NDK Sample のプロジェクト作成

  1. eclipse 起動
  2. File → New → Android Project
  3. Create project from existing source を選択
  4. Location に ndk の samples から任意のパスを設定
    • 例: ~android-ndk-r7b\samples\hello-gl2
  5. Build Target を選択
  6. Next → Finish

ビルド&実行方法

  1. cygwin シェル起動
  2. NDK の path に移動する
    • cd c:/~/android-ndk-r7b/samples/hello-gl2
  3. コンパイルする
    • ../../ndk-build
  4. eclipse 上でプロジェクトを選択して F5 を押す
  5. プロジェクト上で右ボタンから → Run As → Android Application

Console

アプリケーションからの出力メッセージは LogCat に入る。

DDMS をひらいてターゲットを選択すると見える。または Devices ウィンドウで選択する。

Mac OS X の場合

install 手順

  • Mac OS X v10.6/10.7
  • Windows の場合と全く同じです
  1. JDK
    • MacOS X 10.6 (Snow Leopard) 以前は JDK は最初から入っているので不要
    • MacOS X 10.7 (Lion) 以降は Eclipse 初回起動時に自動でダウンロード&インストールされます
  2. Eclipse install
    • eclipse-SDK-3.7.2-macosx-cocoa.tar.gz (eclipse-SDK-3.7.2-macosx-cocoa-x86_64.tar.gz)
    • Mac OS X 版をダウンロードして任意の場所に展開
  3. Android SDK install
  4. Eclipse に ADT を入れる
    • Eclipse 起動
    • Help → Install New Software
    • [Add] → Name: ADT, Location: https://dl-ssl.google.com/android/eclipse/ を入力
    • Developer Tools にチェックを入れて Next, Next, Accept を選択して Finish
    • Eclipse 再起動
  5. Android SDK の設定
    • 環境設定 から Adnroid → SDK Location に Android SDK のフォルダを入れる。”~/android-sdk-macosx”
    • Window → Android SDK Manager 起動
    • 必要な項目にチェックを入れて SDK をダウンロード&インストール
  6. NDK install (必要な場合のみ)

cygwin が無いので Windows よりも手順は少なくてすみます。

実端末の接続

  • ◯ (2.2) HTC Desire X06HT
  • ◯ (2.2) Huawei IDEOS U8150-B
  • ◯ (2.2) MouseComputer LuvPad AD100
  • ◯ (2.2) Hardkernal ODROID-S

上記端末はすべて USB ケーブルでつなぐだけで認識できました。

  • × (2.1) Creative ZEN Touch 2
  • × (2.1) Creative ZiiO 7inch

上記端末はだめでした。

  • Eclipse の DDMS で見えないときは Eclipse を再起動
  • online にならないときは、端末側でいったん “USB debug” のチェックを外してつけ直す

DDMS/adb

使い方は Windows と全く同じです。

Sample

サンプルのプロジェクト作成方法、NDK のビルドも Windows 版と全く同じ手順で出来ます。

cygwin の代わりに普通のコンソールを開きます。 sdk や ndk の各コマンドのフォルダにパスを通しておく必要があります。

Linux の場合

Mac OS X の手順と全く同じです。 Ubuntu 10.10 x86 (32bit) 及び x64 (64bit) の両方で試しましたが全く同じように install 可能です。

ディストリビューション依存ですが Eclipse はパッケージ化されているため、install 手順もさらに簡単になっています。

install 手順

  • Windows/Mac OS X の場合と同じです
  • Ubuntu 11.10 の場合
  1. Eclipse install
    • どれでも構いません。インストールするとアプリケーションメニューに追加されます
      • 「Ubuntu ソフトウェアセンター」
      • 「Synaptic パッケージ・マネージャー」
      • コマンドラインから sudo apt-get install eclipse
  2. 64bit OS の場合下記コマンドを実行
    • sudo apt-get update
    • sudo apt-get install ia32-libs
  3. Eclipse に ADT を入れる
    • Eclipse 起動
    • Help → Install New Software
    • [Add] → Name: ADT, Location: https://dl-ssl.google.com/android/eclipse/ を入力
    • Developer Tools にチェックを入れて Next, Next, Accept を選択して Finish
    • Eclipse 再起動
  4. Android SDK install
    • ADT からダウンロードで切るようになりました
      • 初回起動時に Android SDK を download するか聞いてくるので、パスを確認してから Next
    • 手動で登録することもできます
      • http://developer.android.com/sdk/index.html からダウンロードして任意の場所に展開
      • 環境設定 から Adnroid → SDK Location に Android SDK のフォルダを入れる。”~/android-sdk-linux”
  5. Android SDK パッケージ選択
    • Window → Android SDK and AVD Manager 起動
    • SDK をダウンロード&インストール
  6. path 登録
    • :!: android-sdk-linux/platform-tools をパスに追加
  7. NDK install (必要な場合のみ)

実端末の接続

Linux の場合は比較的簡単で、特に adb driver を用意する必要がなく端末を接続できます。

Ubuntu を想定しています。

  1. /etc/udev/rules.d/51-android.rules ファイルを編集します。もしなければ作成
    • 操作例: sudo vi /etc/udev/rules.d/51-android.rules
  2. USB のベンダー ID (VID) を下記のように記述します。
    • SUBSYSTEM==“usb”, SYSFS{idVendor}==“<番号>”, MODE=“0666”
  3. ファイルのパーミッションを変更します
    • 操作例: sudo chmod a+r /etc/udev/rules.d/51-android.rules
  4. 定義ファイルを作成してから USB で実端末をつなぐと adb や DDMS で認識している状態になります。

定義ファイルの例

##   /etc/udev/rules.d/51-android.rules
# Huawei
SUBSYSTEM=="usb", SYSFS{idVendor}=="12d1", MODE="0666"
# HTC
SUBSYSTEM=="usb", SYSFS{idVendor}=="0bb4", MODE="0666"
# NVIDIA
SUBSYSTEM=="usb", SYSFS{idVendor}=="0955", MODE="0666"
# Zii
SUBSYSTEM=="usb", SYSFS{idVendor}=="2350", MODE="0666"
# Zen
SUBSYSTEM=="usb", SYSFS{idVendor}=="041e", MODE="0666"
# Samsung
SUBSYSTEM=="usb", SYSFS{idVendor}=="04e8", MODE="0666"

試した結果 ZiiO7 は接続できませんでした。 Mac OS X と同じように ZEN Touch 2 もつながらないかもしれません。

  • ◯ (2.2) HTC Desire X06HT
  • ◯ (2.2) Huawei IDEOS U8150-B
  • × (2.1) Creative ZiiO 7inch

未検証

  • (2.2) MouseComputer LuvPad AD100
  • (2.2) Hardkernal ODROID-S
  • (2.1) Creative ZEN Touch 2

プロジェクトを他の環境へ持っていく場合

Windows/MacOS X/Linux 共通です。

プロジェクト読み込み

現在のワークスペースに読み込みます。

  1. Eclipse 起動
  2. File → Import → General を開いて Existing Projects into Workspace
  3. Browse でフォルダを選択する。”.project” や ”.cproject” が置いてあるフォルダを指定
  4. OK → Finish

Import 後に問題が発生した場合

"Android requires .class compatibility set to 5.0. Please fix project properties."

このエラーは Android SDKAPI Level とは関係ないようです。

  1. Eclipse でエラーの出ているプロジェクトを選択し、右ボタンのメニューを開く
  2. Android Tools → Fix Project Properties
  3. Eclipse を一旦終了して再起動する
  4. Project → Clean

"Project 'sandboxPlugin' is missing required source folder: 'gen'"

Eclipse を一度起動しなおしすと直ります。

opengl/androidsdk.txt · 最終更新: 2012/04/14 18:17 by oga
 
特に明示されていない限り、本Wikiの内容は次のライセンスに従います: CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki