私はandroid.graphics.Bitmapパッケージを含むJavaクラスがあるandroidのアプリに取り組んでいます
javah を使用してヘッダー ファイルを作成したいのですが、エラーが発生します。
Class android.graphics.Bitmap not found
あなたはopenCVアプリを開発しようとしていると思います。
したがって、基本的には、Java にはまだ実装されていないが、ネイティブの C または C++ メソッドとして利用できる openCV ライブラリからメソッドを呼び出したいとします。jni 呼び出しはコストがかかるため、これを回避するようにしてください。
#include <jni.h>
#include <opencv2/core/core.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/features2d/features2d.hpp>
#include <vector>
using namespace std;
using namespace cv;
extern "C" {
JNIEXPORT void JNICALL Java_[your]_[package]_[com]_[class]_[method](JNIEnv* env, jobject thiz, jlong addrGray, jlong addrRgba)
{
//do stuff
}
このメソッドを Java クラスから呼び出すことができます。
public native void method(long matAddrGr, long matAddrRgba);