初试Windows下Android NDK开发环境配置

具体配置过程就不冗述了,网上一搜一大堆。主要是:java

1)下载Android NDK;windows

2)安装Cygwin;eclipse

3)在Cygwin中配置Android NDK的环境变量。说白了,就是将windows系统下的NDK路径映射到Cygwin环境下,以便后期编译的时候能找到对应目录;工具

4)在Eclipse中设置Android project的属性,经过设置working环境与命令,调用Cygwin的编译工具来生成动态链接库。ui

安装Cygwin是为了与NDK工具一块儿生成本地代码的动态链接库。具体的调用命令能够在eclipse中的project属性里设置。code

我在配置完成以后翻了一个错误,虽然能正常build出so,可是在run的时候老是提示"java.lang.UsatisfiedLinkError",一直没有找到问题缘由,后来忽然想到jni代码是从NDK sample中copy过来,而调用Native code的Class是本身定义的,跟sample中的不同。会不会是Java Class的package name与class name不一致形成的呢?打开JNI代码一看,发现Natave方法的命名颇有规则:Java_com_example_hellojni_HelloJni_stringFromJNI  com_example_hellojni应该就是调用Native code的Java package,HelloJni应该就是调用Native code的Java class。而本身的Java Class所在package与sample中一致,区别的只是Class name,故对本身的Class rename,ok,顺利运行!ip

相关文章
相关标签/搜索