UnsatisfiedLinkError: Не найдена реализация для void com.kitware.KiwiViewer.KiwiNative.init - PullRequest
0 голосов
/ 01 октября 2018

Это старый проект Eclipse, и я пытаюсь заставить его работать на Android Studio.Цель приложения - показ моделей трехмерных изображений.В этом проекте была использована библиотека andware Kitware.Когда я запускаю apk на устройстве Android, получаю следующую ошибку.

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();
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...