Java Native Code Android应用程序

时间:2015-05-22 15:37:30

标签: java android intellij-idea native

我无法理解为什么我的应用程序给了我这个错误。

05-22 11:26:29.636  21234-21264/com.interaptix.testApplication E/AndroidRuntime﹕ FATAL EXCEPTION: GLThread 4284
Process: com.interaptix.rbcDemo, PID: 21234
java.lang.UnsatisfiedLinkError: Native method not found: com.interaptix.vu.VuScreen.read:(JIIIILjava/nio/Buffer;)V
        at com.interaptix.vu.VuScreen.read(Native Method)
        at com.interaptix.vu.VuScreen.read(VuScreen.java:90)
        at com.interaptix.vu.VuScreen.read(VuScreen.java:96)
        at com.interaptix.rbcDemo.PlazaRenderer.renderVRPreview(PlazaRenderer.java:1259)
        at com.interaptix.rbcDemo.PlazaRenderer.renderFrame(PlazaRenderer.java:774)

VuScreen.java在一个编译的jar文件中,我无法自由编辑,但Intellij的反编译器能够给我这个。

private static native void read(long var0, int var2, int var3, int var4, int var5, Buffer var6);

public void read(int x, int y, int width, int height, Buffer buffer) {
    read(this.getPtr(), x, y, width, height, buffer);
}

public void read(int x, int y, int width, int height, Bitmap bitmap) {
    ByteBuffer buffer = ByteBuffer.allocateDirect(this.getWidth() * this.getHeight() * 4);
    this.read(x, y, width, height, (Buffer)buffer);
    bitmap.copyPixelsFromBuffer(buffer);
}

我真的很困惑为什么会发生这种错误。它甚至可能是编译器问题。如果有帮助,我会使用IntelliJ。

0 个答案:

没有答案