Skip to content
This repository was archived by the owner on May 11, 2021. It is now read-only.
This repository was archived by the owner on May 11, 2021. It is now read-only.

Build in Android Studio didn't seem to have produced the native code libraries #1

Description

@peterswang

I downloaded this project and imported into a project in Android Studio as a module. Made following changes in build.grade:

compileSdkVersion 21
buildToolsVersion "21.1.2"

defaultConfig {
    applicationId "com.polysfactory.opencvocr"
    minSdkVersion 17
    targetSdkVersion 21
    versionCode 1
    versionName "0.1"
}

Then built the project and tried running this app on a Google Nexus 7 tablet. It crashed on start, with following logical errors:

03-05 23:26:22.154 29413-29413/com.polysfactory.opencvocr D/OpenCV/StaticHelper﹕ Trying to get library list
03-05 23:26:22.158 29413-29413/com.polysfactory.opencvocr E/OpenCV/StaticHelper﹕ OpenCV error: Cannot load info library for OpenCV
03-05 23:26:22.158 29413-29413/com.polysfactory.opencvocr D/OpenCV/StaticHelper﹕ Library list: ""
03-05 23:26:22.159 29413-29413/com.polysfactory.opencvocr D/OpenCV/StaticHelper﹕ First attempt to load libs
03-05 23:26:22.159 29413-29413/com.polysfactory.opencvocr D/OpenCV/StaticHelper﹕ Trying to init OpenCV libs
03-05 23:26:22.159 29413-29413/com.polysfactory.opencvocr D/OpenCV/StaticHelper﹕ Trying to load library opencv_java
03-05 23:26:22.159 29413-29413/com.polysfactory.opencvocr D/OpenCV/StaticHelper﹕ Cannot load library "opencv_java"
03-05 23:26:22.160 29413-29413/com.polysfactory.opencvocr W/System.err﹕ java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.polysfactory.opencvocr-1/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]] couldn't find "libopencv_java.so"
03-05 23:26:22.165 29413-29413/com.polysfactory.opencvocr W/System.err﹕ at java.lang.Runtime.loadLibrary(Runtime.java:366)
03-05 23:26:22.165 29413-29413/com.polysfactory.opencvocr W/System.err﹕ at java.lang.System.loadLibrary(System.java:989)
03-05 23:26:22.165 29413-29413/com.polysfactory.opencvocr W/System.err﹕ at org.opencv.android.StaticHelper.loadLibrary(StaticHelper.java:54)
03-05 23:26:22.165 29413-29413/com.polysfactory.opencvocr W/System.err﹕ at org.opencv.android.StaticHelper.initOpenCVLibs(StaticHelper.java:85)
03-05 23:26:22.165 29413-29413/com.polysfactory.opencvocr W/System.err﹕ at org.opencv.android.StaticHelper.initOpenCV(StaticHelper.java:29)
03-05 23:26:22.165 29413-29413/com.polysfactory.opencvocr W/System.err﹕ at org.opencv.android.OpenCVLoader.initDebug(OpenCVLoader.java:51)
03-05 23:26:22.165 29413-29413/com.polysfactory.opencvocr W/System.err﹕ at com.polysfactory.opencvocr.OcrApplication.(OcrApplication.java:9)
03-05 23:26:22.165 29413-29413/com.polysfactory.opencvocr W/System.err﹕ at java.lang.reflect.Constructor.newInstance(Native Method)
03-05 23:26:22.166 29413-29413/com.polysfactory.opencvocr W/System.err﹕ at java.lang.Class.newInstance(Class.java:1572)
03-05 23:26:22.166 29413-29413/com.polysfactory.opencvocr W/System.err﹕ at android.app.Instrumentation.newApplication(Instrumentation.java:994)
03-05 23:26:22.166 29413-29413/com.polysfactory.opencvocr W/System.err﹕ at android.app.Instrumentation.newApplication(Instrumentation.java:979)
03-05 23:26:22.166 29413-29413/com.polysfactory.opencvocr W/System.err﹕ at android.app.LoadedApk.makeApplication(LoadedApk.java:558)
03-05 23:26:22.166 29413-29413/com.polysfactory.opencvocr W/System.err﹕ at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4491)
03-05 23:26:22.166 29413-29413/com.polysfactory.opencvocr W/System.err﹕ at android.app.ActivityThread.access$1500(ActivityThread.java:144)
03-05 23:26:22.166 29413-29413/com.polysfactory.opencvocr W/System.err﹕ at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1339)
03-05 23:26:22.166 29413-29413/com.polysfactory.opencvocr W/System.err﹕ at android.os.Handler.dispatchMessage(Handler.java:102)
03-05 23:26:22.166 29413-29413/com.polysfactory.opencvocr W/System.err﹕ at android.os.Looper.loop(Looper.java:135)
03-05 23:26:22.166 29413-29413/com.polysfactory.opencvocr W/System.err﹕ at android.app.ActivityThread.main(ActivityThread.java:5221)
03-05 23:26:22.166 29413-29413/com.polysfactory.opencvocr W/System.err﹕ at java.lang.reflect.Method.invoke(Native Method)
03-05 23:26:22.166 29413-29413/com.polysfactory.opencvocr W/System.err﹕ at java.lang.reflect.Method.invoke(Method.java:372)
03-05 23:26:22.166 29413-29413/com.polysfactory.opencvocr W/System.err﹕ at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
03-05 23:26:22.166 29413-29413/com.polysfactory.opencvocr W/System.err﹕ at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
03-05 23:26:22.166 29413-29413/com.polysfactory.opencvocr D/OpenCV/StaticHelper﹕ First attempt to load libs fails
03-05 23:26:22.210 29413-29413/com.polysfactory.opencvocr D/CameraBridge﹕ Attr count: 4
03-05 23:26:22.222 29413-29413/com.polysfactory.opencvocr E/art﹕ No implementation found for long com.polysfactory.opencvocr.jni.NativeMarkerDetector.nativeCreateObject(java.lang.String, java.lang.String) (tried Java_com_polysfactory_opencvocr_jni_NativeMarkerDetector_nativeCreateObject and Java_com_polysfactory_opencvocr_jni_NativeMarkerDetector_nativeCreateObject__Ljava_lang_String_2Ljava_lang_String_2)
03-05 23:26:22.223 29413-29413/com.polysfactory.opencvocr D/AndroidRuntime﹕ Shutting down VM
03-05 23:26:22.224 29413-29413/com.polysfactory.opencvocr E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: com.polysfactory.opencvocr, PID: 29413
java.lang.UnsatisfiedLinkError: No implementation found for long com.polysfactory.opencvocr.jni.NativeMarkerDetector.nativeCreateObject(java.lang.String, java.lang.String) (tried Java_com_polysfactory_opencvocr_jni_NativeMarkerDetector_nativeCreateObject and Java_com_polysfactory_opencvocr_jni_NativeMarkerDetector_nativeCreateObject__Ljava_lang_String_2Ljava_lang_String_2)
at com.polysfactory.opencvocr.jni.NativeMarkerDetector.nativeCreateObject(Native Method)
at com.polysfactory.opencvocr.jni.NativeMarkerDetector.(NativeMarkerDetector.java:12)
at com.polysfactory.opencvocr.MainActivity.onResume(MainActivity.java:68)
at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1241)
at android.app.Activity.performResume(Activity.java:6019)
at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2940)
at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2982)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2365)
at android.app.ActivityThread.access$800(ActivityThread.java:144)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5221)
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:899)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)

Looks like there is something else I need to do, in order to bet the native libraries built?

Thx in advance for any help on this.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions