UnsatisfiedLinkError:找不到无效com.kitware.KiwiViewer.KiwiNative.init的实现

时间:2018-10-01 10:04:36

标签: java android android-layout android-studio nativelibrary

这是旧的eclipse项目,我正在尝试使其在Android Studio上运行。该应用程序的目的是显示3D图像模型。该项目使用了kitware android库。当我在Android设备上运行apk时,出现以下错误。

java.lang.UnsatisfiedLinkError: No implementation found for void com.kitware.KiwiViewer.KiwiNative.init(int, int) (tried Java_com_kitware_KiwiViewer_KiwiNative_init and Java_com_kitware_KiwiViewer_KiwiNative_init__II)
        at com.kitware.KiwiViewer.KiwiNative.init(Native Method)
        at com.kitware.KiwiViewer.MyRenderer.onSurfaceCreated(MyRenderer.java:43)
        at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1539)
        at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1270)

这是MyRenderer.java类

import android.opengl.GLSurfaceView;
import android.opengl.GLSurfaceView.Renderer;
import java.util.ArrayList;
import javax.microedition.khronos.egl.EGLConfig;
import javax.microedition.khronos.opengles.GL10;

/* compiled from: KiwiGLSurfaceView */
class MyRenderer implements Renderer {
    public boolean isInitialized = false;
    public ArrayList<Runnable> mPostInitRunnables = new ArrayList();
    public ArrayList<Runnable> mPreRenderRunnables = new ArrayList();
    public GLSurfaceView parentView;

    MyRenderer() {
    }

    synchronized void queuePostInitEvent(Runnable runnable) {
        this.mPostInitRunnables.add(runnable);
    }

    synchronized void queuePreRenderEvent(Runnable runnable) {
        this.mPreRenderRunnables.add(runnable);
    }

    public void onDrawFrame(GL10 gl) {
        if (KiwiNative.render()) {
            this.parentView.setRenderMode(1);
        } else {
            this.parentView.setRenderMode(0);
        }
        while (this.mPreRenderRunnables.size() > 0) {
            ((Runnable) this.mPreRenderRunnables.remove(0)).run();
        }
    }

    public void onSurfaceChanged(GL10 gl, int width, int height) {
        KiwiNative.reshape(width, height);
    }

    public void onSurfaceCreated(GL10 gl, EGLConfig config) {
        KiwiNative.init(100, 100);
        this.isInitialized = true;
        while (this.mPostInitRunnables.size() > 0) {
            ((Runnable) this.mPostInitRunnables.remove(0)).run();
        }
    }
}

0 个答案:

没有答案