その関数を使用するために、Java ファイルに ,c fileを含めようとしています。ImageProc
からコードを取得しましたMjpegInputStream file(すべてが機能するはずですが、もちろんそれほど簡単ではありません)
クラッシュするコードは次のとおりです(どういうわけかキャッチがキャッチしていません)
static {
try {
System.loadLibrary("ImageProc");
}
catch (Exception e){
e.getMessage();
}
}
はmakefile:
include $(CLEAR_VARS)
LOCAL_MODULE := ImageProc
LOCAL_SRC_FILES := ImageProc.c
LOCAL_LDLIBS := -llog -ljnigraphics
LOCAL_SHARED_LIBRARIES := prebuilt-libjpeg
LOCAL_C_INCLUDES := external/include jni/external/include
したがって、私の理解では、 を使用できるはずImageProcです。
c file最初は h ファイルの参照が見つからなかったため、実行してコンパイルしたことはわかっています (現在は修正されています)。
私が確信していないもう1つのことはpixeltobmp、cファイルで定義されている関数を呼び出していることJava_com_camera_simplemjpeg_MjpegInputStream_pixeltobmpです。メソッドの名前を変更して、コピー元のパッケージではなく、使用しているパッケージを含めようとしましたが、何も修正されませんでした。
どんな助けでも大歓迎です。
追加情報: gradle build 2.10 を使用しています