2009-05-29

Android Native Development Kit (NDK)

http://android.git.kernel.org/?p=platform/development.git;a=blob_plain;f=pdk/ndk/Android_NDK_README.html;hb=HEAD

Android NDKですが、JNI shared libraryをbuildできるようにするために、Android SDKの様に、必要なツールとかMakefileとかを抜き出してまとめたものなわけですね。repoで全部sourceひっぱらなくてもNDKだけあればbuildできるようになったと。


JNI shared libraryを新しく入れるにはrootになれないといけない

というのは間違いで、platform別にshared libraryをapkに入れられる仕組みが元々あって

http://android.git.kernel.org/?p=platform/development.git;a=blob;f=pdk/ndk/samples/samplejni/Makefile;h=18e97df4e00729ac448af2cca8d1fbdbf434fd89;hb=HEAD

というようにshared libraryをapkに突っ込めます。普通にapkインストールするだけで自前のshared libraryをJNIで使えます。

NDKよりsourceひっぱってきてAndroid.mk使う方がMakefile書かなくて良い分楽だと思いますけども(http://blogger.splhack.org/2009/05/android-jni-shared-library.html)。

http://code.google.com/p/android-ruby/source/browse/trunk/irbapp/Android.mk
http://code.google.com/p/android-ruby/source/browse/trunk/lib/Android.mk
とか。


scummvm-android http://sites.google.com/site/scummvmandroid/ も興味深いことをやってます。
http://sourceforge.net/tracker/index.php?func=detail&aid=2603856&group_id=37116&atid=418822