最近想调用FFmepg库来做编解码的东西,首先就得学会使用JNI(JAVA Native Interface)调用。
下面做个简单的JNI调用实例,中间遇到的问题及解决过程省略一万字,查找到的资料也都是东一句西一句的,整理一下完整的实现过程,希望对初学JNI的朋友有所帮助:
1、创建一个Android工程,名为SimpleJni;
2、在com.example.simplejni包下新建一个Jni接口类SimpleInterface,这个类不需要继承java的接口类;
package com.example.simplejni;
public class SimpleInterface {
public static native String sayName();
}
3、编译这个接口类,为c端调用的头文件。
工程目录:
命令窗口:Win+R运行cmd,cd进入到eclipse工作空间中SimpleJni工程目录,
输入javah -classpath bin/classes -d jni com.example.simplejni.SimpleInterface编译接口类
编译完成后,刷新工程,就可以看到工程中自动创建了jni文件夹,其中包含编译好的.h头文件