jni调用过程遇到问题,new出jni对象程序直接退出了。急!!!!

package com.example.imagetogray;

public class LibFuns {
static {
System.loadLibrary("ImgToGray");
}
/**
* @param width the current view width
* @param height the current view height
*/

public native int[] ImgToGray(int[] buf, int w, int h);

}
这是声明!!

LibFuns myjni=new LibFuns();//new 一个自定义libfuns对象
int[] resultInt=myjni.ImgToGray(pix, w, h);//调用so中的灰度图处理方法
调用是这样的。
我这里只要new 程序就会直接崩溃退出。

本人刚接触安卓,请大神指教!!!!

参数都不对,参考:
https://www.cnblogs.com/aiguozhe/p/5355221.html

加:

        try {

        } catch (Throwable e) {
            e.printStackTrace();
        }

看看具体是产生了什么异常。

你检查一下System.loadLibrary("ImgToGray");加载的这个库是否存在;应该是这里出错了;
建议先注释这一行先确定问题;如果是这个问题就去确定库是否存在;

ImgToGray是你自己ndk的对象,MK文件是否正确了,系统是否找到了这个方法,还有,移动端调用NDK,建议不要新建对象来操作,你可以放到一个activity里面去,通过intent跳转到那个页面,反正你最终是要再layout中显示图片的嘛,新创建一个activity能避免不少麻烦

在 System.loadLibrary("ImgToGray"); 下个断点调试一下 ,如果是在这里崩球了说明 libImgToGray.so 有毛病,或者没有找见这个库

1.这个库找不到
2.编译so库的版本不兼容,具体可以看so库的注意事项 https://www.jianshu.com/p/cb05698a1968