2011年5月24日火曜日

Android JNIライブラリの利用<その1>

Android JNIライブラリの作成で開発したライブラリプロジェクトを、そのままEclipseから利用する方法です。
<その1>ではJNIを対象としていますが、利用方法はJavaプロジェクトも全く同一です。<その2>はJNI専用になります。

<Android JNIライブラリ利用側>
  • ライブラリプロジェクトが完成したら、今度は利用するプロジェクト側を用意します。これは例ですが、特別なことはしていません。

  • プロジェクトプロパティの[Android]にあるLibraryの[Add...]ボタンでAndroidライブラリを選択します。ライブラリ登録したプロジェクトが選択できるようになります。設定完了した[Android]タブ

  • 同じくプロジェクトプロパティの[Java Build Path]のProjectsタブにある[Add...]ボタンを押下します。すると、Workspaceにある自分を除く全てのプロジェクトが選択できますが、JNIライブラリを選択します。この例では2つしか無いのでJNIライブラリだけ選択候補になっているように見えますが、間違えないでください。

  • Librariesタブに移動し[Add Class Folder...]ボタンを押下します。ここで、ライブラリ側のJavaソースがあるsrcフォルダを選択します。

  • Order and Exportタブに移動し先程追加したソースのクラスフォルダにチェックを入れます。一応これで準備完了です。後は好きにライブラリを利用したプログラムを開発すれば良いです。

  • ちなみに、Project Explorerで確認するとライブラリが追加されていることが分かると思います。ついでですが、説明しませんでしたがプロジェクトプロパティの[Java Build Path]にあるSourceタブは完了すると勝手にソースが追加されます。これを削除するとライブラリをコンパイルしませんので注意してください。

設定のみなので簡単でしたよね。後はJava実装を行なって実行すれば良いです。
ただ、初心者はJNIライブラリは利用側を実装するまでビルドしないことをお勧めします。というのも、ビルド結果がライブラリフォルダ内で行われてしまい、ライブラリ利用側のbinにコピーされない現象が発生しました。私が行なった対処方法は、binフォルダやgen、Libs、obj配下のディレクトリやファイルを削除することで対応できたように記憶しています。

上記のJNIライブラリ利用は、ライブラリ開発者とアプリ開発者が同一の場合に利用できます。しかしながら、他人にバイナリを配布する際はどうするのか?
これを<その2>に記載したいと思います。

0 件のコメント:

コメントを投稿