Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/207.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android java.lang.UnsatisfiedLinkError:未找到java.lang.String com.swoop.utility.ImageStabilator.hello()的实现_Android_Android Ndk_Ndk Build - Fatal编程技术网

Android java.lang.UnsatisfiedLinkError:未找到java.lang.String com.swoop.utility.ImageStabilator.hello()的实现

Android java.lang.UnsatisfiedLinkError:未找到java.lang.String com.swoop.utility.ImageStabilator.hello()的实现,android,android-ndk,ndk-build,Android,Android Ndk,Ndk Build,我怎么了?请帮忙 日志 格拉德尔 Android.mk main.cpp 您的ImageStabilator类的代码是什么?在Java中?@Afshin请检查更新的答案您是否为正确的ABI构建代码? java.lang.UnsatisfiedLinkError: No implementation found for java.lang.String com.swoop.utility.ImageStabilizer.hello() (tried Java_com_swoop_utility_I

我怎么了?请帮忙

日志

格拉德尔

Android.mk

main.cpp


您的
ImageStabilator
类的代码是什么?在Java中?@Afshin请检查更新的答案您是否为正确的ABI构建代码?
java.lang.UnsatisfiedLinkError: No implementation found for java.lang.String com.swoop.utility.ImageStabilizer.hello() (tried Java_com_swoop_utility_ImageStabilizer_hello and Java_com_swoop_utility_ImageStabilizer_hello__)
    at com.swoop.utility.ImageStabilizer.hello(Native Method)
    at com.swoop.utility.ImageStabilizer.checkLibraryConnection(ImageStabilizer.java:27)
    at com.swoop.widgets.SensorImageView$FrameExtractor.onPreExecute(SensorImageView.java:121)
    at android.os.AsyncTask.executeOnExecutor(AsyncTask.java:587)
    at android.os.AsyncTask.execute(AsyncTask.java:535)
    at com.swoop.widgets.SensorImageView.initSensors(SensorImageView.java:61)
    at com.swoop.widgets.SensorImageView.setSwoop(SensorImageView.java:52)
    at com.swoop.activity.PreviewActivity.onCreate(PreviewActivity.java:43)
    at android.app.Activity.performCreate(Activity.java:5933)
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2282)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2389)
    at android.app.ActivityThread.access$900(ActivityThread.java:147)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1296)
    at android.os.Handler.dispatchMessage(Handler.java:102)
    at android.os.Looper.loop(Looper.java:135)
    at android.app.ActivityThread.main(ActivityThread.java:5254)
    at java.lang.reflect.Method.invoke(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:372)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:898)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:693)
apply plugin: 'com.android.application'

android {
compileSdkVersion 26
defaultConfig {
    applicationId "com.swoop"
    minSdkVersion 16
    targetSdkVersion 26
    versionCode 1
    versionName "1.0"
    vectorDrawables.useSupportLibrary = true
    multiDexEnabled true

    ndk{
        moduleName "ImageStabilizer"
    }
}

sourceSets.main.jni.srcDirs = []

buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
repositories {
    maven { url "https://jitpack.io" }
    mavenCentral()
}

aaptOptions {
    cruncherEnabled = false
}

}

dependencies {
...
...
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation project(':libraries:opencv')
}
}
LOCAL_PATH := $(call my-dir)

CVROOT := D:/Rajesh/Downloads/OpenCV-android-sdk/sdk/native/jni

include $(CLEAR_VARS)
OPENCV_INSTALL_MODULES:=on
OPENCV_LIB_TYPE:=STATIC
include $(CVROOT)/OpenCV.mk

LOCAL_MODULE += ImageStabilizer

LOCAL_C_INCLUDES += ImageStabilizer.h
LOCAL_SRC_FILES += main.cpp

LOCAL_CFLAGS += -std=c++11 -frtti -fexceptions -fopenmp -w
LOCAL_LDLIBS += -llog -L$(SYSROOT)/usr/lib
LOCAL_LDFLAGS += -fopenmp

include $(BUILD_SHARED_LIBRARY)
#include "com_swoop_utility_ImageStabilizer.h"

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/features2d/features2d.hpp>
#include <android/log.h>
#include <opencv2/video/tracking.hpp>

using namespace std;
using namespace cv;

#define  LOG_TAG    "JNI_LOG"
#define  ALOG(...)  __android_log_print(ANDROID_LOG_INFO,LOG_TAG,__VA_ARGS__)

extern "C"
{
    JNIEXPORT jstring JNICALL Java_com_swoop_utility_ImageStabilizer_hello
        (JNIEnv *env, jobject obj){
    return env->NewStringUTF("Hello from JNI");
    }
}
public class ImageStabilizer {
static {
    try {
        System.loadLibrary("ImageStabilizer");
    } catch (UnsatisfiedLinkError use) {
        Log.e("JNI", "WARNING: Could not load native library");
    }
}

public native String hello();

public native int getGrayImages(long[] orignalMats, long[] resultMats, int numOfImages);

public native int getFeatrueExtractedImages(long[] orignalMats, long[] resultMats, int numOfImages);

public native int getMatchedFeatureImages(long[] orignalMats, long[] resultMats, int numOfImages);

public native int getStabilizedImages(long[] originalMats, long[] resultMats, int numOfImages);

public String checkLibraryConnection() {
    return hello();
}
}