1.配置JAVA环境变量
变量名:JAVA_HOME 变量值:C:\Program Files\Java\jdk1.7.0_67
变量名:calsspath 变量值:.;%JAVA_HOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jar
变量名:Path 变量值
2.编写JAVA 类
package com.oaup.core.libh264; /** * Created by jiaokx on 2016/4/8. */ public class CX264Writer { public native int Init();
public native static int getFrameSize(); }
3.生成*.class 文件
在CMD中进入到JAVA类当前目录(libh264目录)
执行命令 javac CX264Writer.java
就会在当前目录生产CX264Writer.class文件。
4.由 CX264Writer.class 生成jni头文件
一目了然,首先,回到包名根路径,比如我们的包名是com.oaup.core.libh264 类名是CX264Writer,那么我们就要进入到com同级的目录,src/main/java/com/oaup/core/libh264,我们就要进入到java目录下。
然后执行命令 javah -jni com.oaup.core.libh264.CX264Writer
生成com_oaup_core_libh264_CX264Writer.h头文件。
5. com_oaup_core_libh264_CX264Writer.h
/* DO NOT EDIT THIS FILE - it is machine generated */ #include <jni.h> /* Header for class com_oaup_core_libh264_CX264Writer */ #ifndef _Included_com_oaup_core_libh264_CX264Writer #define _Included_com_oaup_core_libh264_CX264Writer #ifdef __cplusplus extern "C" { #endif /* * Class: com_oaup_core_libh264_CX264Writer * Method: Init * Signature: ()I */ JNIEXPORT jint JNICALL Java_com_oaup_core_libh264_CX264Writer_Init (JNIEnv *, jobject); /* * Class: com_oaup_core_libh264_CX264Writer * Method: getFrameSize * Signature: ()I */ JNIEXPORT jint JNICALL Java_com_oaup_core_libh264_CX264Writer_getFrameSize (JNIEnv *, jclass); #ifdef __cplusplus } #endif #endif