如何生成包含Android Studio中本机方法实现JNI的函数原型的C头文件(* .h),同时自动构建?
谢谢
答案 0 :(得分:3)
假设您有一个项目HelloNative
HelloNative
|-build/intermediate/classes/debug (you get this directory upon project build)
|-app/src/main/jni
/src/main/java/com/planets/mercury/HelloNativeActivity.java
并且您想为HelloNativeActivity.java生成头文件 - >这样做
cd HelloNative
javah -d app/src/main/jni -classpath /Users/john-smith/Android/sdk/platforms/android-19/android.jar:app/build/intermediates/classes/debug com.planets.mercury.HelloNativeActivity
将john-smith和android sdk路径替换为您自己机器上的路径。 对于android jar文件。您可以使用您选择的任何内容。
EG。 android-19,或android-21
答案 1 :(得分:1)
要在android studio中生成头文件,请按照给定的几个步骤进行操作。
1) Open Android Studio Terminal (At Left Bottom Corner Given Terminal Tab) 2) type this command first (cd app/src/main) it is located to the your main source directory. 3) now type this command in the termial for the generation of the header file (javah -d cpp -classpath ../../build/intermediates/classes/debug <your_packagename>.<class_name>)
答案 2 :(得分:0)
我建议创建一个外部工具。
转到文件->设置->工具->外部工具 并添加一个新工具。填写对话框表单(使用“插入宏”按钮)
保留其他选项不变。
现在,您可以在 Project Explorer 中选择您的类,右键单击,然后从上下文菜单中启动External Tool-> javah。
头文件将在项目的 cpp 文件夹中创建(如Android Studio Native开发所建议),但是您需要浏览该文件夹才能看到它。
功劳归于http://kn-gloryo.github.io/Build_NDK_AndroidStudio_detail/ (已修改为与最新的SDK和Android Studio更加一致) 并转到Javah: Error: cannot access android.support.v7.app.ActionBarActivity