解决NDK编译so从C改为C++出现Native method not found错误

Android NDK支持C++开发,以前一直用C开发,感觉有些数据类型没法用,而且C也是面向过程的,所以打算换C++,但是源码没变,后缀改为cpp后,出现Native method not found错误,如下:

解决NDK编译so从C改为C++出现Native method not found错误_第1张图片

原来是在C++中,必须要include头文件,这个头文件需要用javah生成,cd到工程目录的classes目录下,执行javah -jni 包名+native方法声明的类名,就在当前目录下生成了.h文件


解决NDK编译so从C改为C++出现Native method not found错误_第2张图片

然后在cpp文件中include这个头文件即可。

命令执行如下:

javah -classpath "D:\firefox-download\adt-bundle-windows-x86-20131030\sdk\platforms\android-19\android.jar";bin/classes -d ndk -jni com.ss.androidserver.MainActivity

生成成功



你可能感兴趣的:(c,android,linux,native)