閉じる

Android NDK次手

NDK付属のサンプル Hello-jniをいじくる。
ネイティブメソッドの戻り値/引数を変更してみる。

  • HelloJni.javaの native就職されているメソッドを適当にいじる。
  • eclipseにて普通にビルド =< bin/下に HelloJni.javaのクラスファイル(HelloJni.class)が生成される。
  • bin/にて「 javah com.example.hellojni.HelloJni」を実行すると HelloJni.javaに含まれるネイティブメソッドのプロトタイプ宣言が書かれた「com_example_hellojni_HelloJni.h」が生成される。
  • com_example_hellojni_HelloJni.hを元に jni/hello-jni.cを修正する。

この手の高速化手段で重要なのは「ボトルネックを把握してから取りかかる」なのでざっくりと処理にかかる時間を調べてみる…確かに Javaは遅い。
ネイティブの 15倍の時間がかかっている…が、今回の件に関しては「2msと 30msの差に誰が気づく?」ってな世界だな。
NDKで遊ぶの自体はいいとして、高速化という点ではもう少し考えた方が良さそうだ。

コメントを残す

メールアドレスが公開されることはありません。必須項目には印がついています *

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)