最近要使用JNI调用一个C库,所以就趁这个时候学习一下JNI在android中怎样使用。
一配置环境:
1、下载安装cygwin(cygwin的下载文件太大了将近6G,安装后的安装文件达到了将近20G),具体的下载安装步骤我记不贴出来了,比较简单。
2、测试cygwin,输入make -v,gcc -v,看是否正常运行。
3、配置cygwin。找到cygwin的安装路径下的 .bash_profile文件,我的路径是:C:\cygwin64\home\ASUS,使用记事本打开这个文件,然后
在文件的末尾加上这两段代码:(注意其中ANDK这个名字可以自己随便取,但是两行代码的ANDK必须相同)
ANDK=/cygdrive/e/doMyself/android-ndk-r6b-windows/android-ndk-r6b
export ANDK
这样cygwin便配置完成了,这一步的主要问题是cygwin实在是太难下载了,其他的都很简单。
二编写android工程以及C++代码
1、新建一个android工程,编写好native方法:
public class JNIMethod {
public JNIMethod(){
load();
}
private void load() {
try {
System.loadLibrary("MyJNIProject");
} catch (Throwable e) {
e.printStackTrace();
}
}
private static JNIMethod jniMethod;
public static JNIMethod Instance()
{
if(jniMethod == null)
jniMet