hellkite 日記と雑記とメモ。

Shiki Kazamaの駄文と音楽と、時々技術な感じ

Android NDKのインストールと実行


スポンサーリンク


Android SDKのインストールが終わっていれば、NDKのインストールまで30分程度、実行に10分程度で完了します。
ちなみにMacでの話です。WindowsならCygwinを使うのかな?

Android NDKのダウンロード

下のリンクからNDKをダウンロードします。今回は、r7をダウンロードしました。
Android NDK | Android Developers


ダウンロードしたら解凍して、適当なフォルダに置きます。

CDTのインストール

Eclipseのヘルプから新規ソフトウェアのインストールを選択、作業対象に「Indigo - http://download.eclipse.org/releases/indigo」を選択。


しばらくして読み込まれた一覧の「プログラミング言語」から、次の2つをインストール。

  1. C/C++ Development Tools
  2. C/C++ Library API Documentation Hover Help(インキュベーション)

環境変数の追加

.bashrcを編集して、先ほどダウンロードして展開したフォルダをPATHに追加します。追加後、.bashrcを再読み込みします。
再読み込み後、printenvで反映されているかチェックします。

source ~/.bashrc
printenv PATH


自分は.bashrcを使っていましたけど、.bash_profileなど自分が環境変数を入れているファイルに追記すればいいです。

サンプルのビルドで動作確認

動作確認として、Android NDKに付属のhello-jniをコンパイルしてみます。
android-ndkの中にあるsamples/hello-jni/に移動します。ndk-buildコマンドを実行するとビルドすることができます。
ビルド結果は以下のように表示されます。

Gdbserver      : [arm-linux-androideabi-4.4.3] libs/armeabi/gdbserver
Gdbsetup       : libs/armeabi/gdb.setup
Compile thumb  : hello-jni <= hello-jni.c
SharedLibrary  : libhello-jni.so
Install        : libhello-jni.so => libs/armeabi/libhello-jni.so


ビルドに失敗した場合は、環境変数がきちんと追加されているか確認しましょう。

サンプルプロジェクトの読み込み

続いて、サンプルプロジェクトを実行してみます。
まず、ファイルから新規Androidプロジェクトを実行。ダイアログが開きます。プロジェクト名を適当に決めたら「外部ソースからプロジェクトを作成」で、ロケーションからAndroid NDKのサンプルプロジェクトのフォルダを指定します。

/Users/Username/dev/android-ndk-r7/samples/hello-jni

そしたら完了を押してプロジェクトを生成します。

サンプルプロジェクトの実行

今回は動作確認としてサンプルプロジェクトhello-jniのビルドが済んでいるので、そのまま実行からAndroidアプリケーションの実行を選択します。
次のような画面が出ればAndroid NDKのインストールからサンプル実行まで完了です。



お疲れさまでした。
ちなみに実際の開発ではCのソースコードを修正して、ndk-buildコマンドを実行、Eclise上でAndroidアプリケーションの実行でapkファイルにコンパイル、実行となります。


このサンプルは非常に単純なものなのでCで書かれた部分とJavaで書かれた部分がどう連携しているのか確認するのによさそうですね。
・・・ってまだ見れていないんですがorz

追記

ここではシミュレータで動作させていますが、実機でも動作させてみました。実機で動作させる方法はこちら。
開発中のAndroidアプリを実機で動作させる方法(Mac編) - hellkite 日記と雑記とメモ。