在安卓JNI編程中,手動寫代碼讓原生函數(shù)及參數(shù)列表域Java類文件的原始定義一致是一件繁瑣的工作。我們可以利用JDK中的javah的命令行工具為原生方法解析java類文件并生成由原生方法聲明組成的頭文件。
1.添加外部工具命令。
- 點擊菜單欄中File按鈕,選擇Settings>>Tools>>External Tools。

添加外部工具命令

添加外部工具命令
- 填寫工具名稱,工具分組和工具功能描述。
- 點擊程序路徑文本框后的Inser Macros 按鈕指定命令的路徑。

指定程序命令的路徑
- 指明外部命令行工具名稱。

指明外部命令行工具名稱
- 指定執(zhí)行命令行工具需要的各類參數(shù)。

指明參數(shù)
- 設置工作路徑

設置工作路徑.png
完整命令
$JDKPath$\bin\javah -d src/main/cpp -classpath F:\Android\sdk\extras\android\m2repository\com\android\support\appcompat-v7\26.0.0-alpha1\appcompat-v7-26.0.0-alpha1-sources.jar;$OutputPath$;$ModuleSdkPath$\platforms\android-25\android.jar $FileClass$
- $JDKPath$\bin\javah
命令行工具的路徑
- -d
指明生成的頭文件所存放的路徑
- -classpath
指定類和所依賴的架包所存在的路徑
- $FileClass$
指定的類
2.指定java類文件生成JNI接口C/C++頭文件
- 創(chuàng)建java類文件,并在類中聲明JNI接口方法。

創(chuàng)建java類文件
- 工程目錄視圖內(nèi)選中需要生成對應JNI接口C/C++頭文件的java類文件。右鍵選擇External Tools>>Generate C and C++ Header File。

生成JNI接口C/C++頭文件
- 查看生成的頭文件。

生成的頭文件.png
按著上述步驟進行設置和操作之后我們要在C/C++文件中包含這個文件,并一一實現(xiàn)其中的原生方法。