javah -classpath . -jni 類路徑.JNIClass(提供的接口,編譯後)
/**
*TokenFxxcImpl類中方法聲明方式
*/
public static native Object[] getCreditTokenJni(long meterNo, int sgc, int tariffIndex,
int keyVersion, int keyExpiredTime, long keyNo, int seqNo,
int amount);
示例:F:\android program\Fxxc_T\bin>javah -classpath . -jni com.fxxc.TokenFxxcImpl
- F:\android program\Fxxc_T\bin 為編譯後的包路徑
- javah -classpath . -jni 生成.h的java指令
- com.fxxc.TokenFxxcImpl 編譯後的class帶包名的路徑
- 執行完後會在bin目錄下生成.h檔案com_fxxc_TokenFxxcImpl.h
.h檔案内對應方法接口如下
/* DO NOT EDIT THIS FILE - it is machine generated */
#include <jni.h>
/* Header for class com_fxxc_TokenFxxcImpl */
#ifndef _Included_com_fxxc_TokenFxxcImpl
#define _Included_com_fxxc_TokenFxxcImpl
#ifdef __cplusplus
extern "C" {
#endif
/*
* Class: com_fxxc_TokenFxxcImpl
* Method: getCreditTokenJni
* Signature: (JIIIIJII)[Ljava/lang/Object;
*/
JNIEXPORT jobjectArray JNICALL Java_com_fxxc_TokenFxxcImpl_getCreditTokenJni
(JNIEnv *, jclass, jlong, jint, jint, jint, jint, jlong, jint, jint);
#ifdef __cplusplus
}
#endif
#endif
最後在C語言中實作H檔案中的方法就行