Android------JNI的调用方法

1,调用的地方java类

如下:

package com.ming.camera;

//import android.content.Context;
//如果引用了这些外部包,javac时,必须使用/home/ming/Android/Sdk/platforms/android-23/android.jar参数,具体参考2步骤.
//import android.graphics.Bitmap;

public class LibVGestureDetect {
      static
       {
           System.loadLibrary("BlurModoule");
       } 
       public static native void YUVtoRBGA(byte[] yuv420sp, int width, int height, int[] rgbOut);  
}
2,使用javac -classpath /home/ming/Android/Sdk/platforms/android-23/android.jar com/ming/camera/LibVGestureDetect.java 生成LibVGestureDetect.class文件

3,在src目录使用javah -classpath . -jni com.ming.camera.LibVGestureDetect 生成.h文件

(在jni开发中,有时候需要传入一个Context类型参数到C层,在使用javah生成头文件的时候,会报 javah Class android.content.Context could not be found.这个错误,原因是找不到android.content.Context该类,解决方法是,把Context类型改为Object类型即可。)

4,如果出现".class: major version 52 is newer than 51, the highest major version supported by this compiler"错误,说明javac 和javah版本不一致.可以使用"update-alternatives --config javac"切换javac版本重新来过

5,添加BlurModoule.so模块,根据.h文件建立BlurModoule.so模块



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值