Android NDK に入っているSampleプロジェクトhello-jniをNetBeans内で構築できるかやってみた。
開発環境
OS | Windows7 Professional 64bit |
JDK | Java SE7 Update 3 |
IDE | NetBeans7.1.2 |
Cygwin | Version 1.7.15 |
Android SDK | SDK Tools, Revision 18 |
Android NDK | Revision 8 |
Android SDK 及び Android用プラグインの導入
Hello Android(NetBeans) などを参照し、導入をする。
Android NDKの準備
NDK配布サイトからzipファイルを落とし、任意のフォルダに解凍する。(以降解凍先フォルダを<ndk>と表記)
<ndk>をWindowsのPATH環境変数に追加する。
必須ではないが、サンプルプロジェクト<ndk>/samples/hello-jni を任意のフォルダにコピーする。(以降目的のプロジェクトフォルダを<hello-jni>と表記)
Cygwinのインストール
C/C++プロジェクトの構築でCygwinやMinSYSのシェルが必要、ここではCygwinを使用した。
Cygwin配布サイトからsetup.exeを落とし、実行する。
DefaultのPackege構成に加え、Develカテゴリから最低限gcc、makeを選択し、イントールする。(以降Cygwinインストールフォルダを<cygwin>と表記)
NetBeansの設定
NetBeansにC/C++プラグインが入っていない場合、[ツール]->[プラグイン]、[プラグイン]ダイアログの[使用可能なプラグインタブ]で[C/C++]プラグインを選択し、インストールする。
・C/C++ツールコレクションを構成
[ツール]->[オプション]、[オプション]ダイアログの[C/C++]の[構成ツール]タブで[ツールコレクション]が設定されていなければ、[追加]ボタンを押す。
[新規ツールコレクションの追加]ダイアログの[ベースディレクトリ]に"<cygwin>/bin"を設定する
・hello-jni Androidプロジェクトを開く
[ファイル]->[プロジェクトを開く]、[プロジェクトを開く]ダイアログで<hello-jni>を指定し、プロジェクトを開く。
・hello-jniプロジェクトのjniフォルダをC/C++プロジェクトして開く
[ファイル]->[新規プロジェクト]、[新規プロジェクト]ダイアログで、[C/C++]カテゴリから[既存のソースを使用するC/C++プロジェクト]を選択し、[次へ]
[モードを選択]で[既存のソースを含むフォルダを指定]に"<hello-jni>/jni"を指定、[構成モードを選択]で[カスタム]を選択し[次へ]。
[構成ツール]で[既存のメイクファイルを使用]を選択し、[既存のメイクファイル]に"<hello-jni>/jni/Android.mk"を指定し[次へ]。
[構成アクション]で[構築コマンド]に"ndk-build.cmd"、[生成物を削除コマンド]に"ndk-build.cmd clean"を指定し、[次へ]
[プロジェクトの名前と場所]で[プロジェクト名]と[プロジェクトの場所]に適宜値を設定し、[完了]
hello-jniのC/C++プロジェクトが自動的に構築される。
(<ndk>/ndk-build.cmdに実行権限が無く失敗することがあった)
プロジェクトへの操作
[プロジェクト]ウィンドウの[hello-jni C/C++]プロジェクトの右クリックで表示されるポップアップメニューで、[構築]、[生成物を削除して構築]、[そのほかの構築]->[生成物を削除]が行える。
[プロジェクト]ウィンドウの[hello-jni]プロジェクトの右クリックで表示されるポップアップメニューで、[実行]を選択することで、エミュレータの起動、アプリケーションのエミュレータへのインストール、実行が行える。