刚才终于成功地运行了我的第一个ndk项目,此时此刻我是无比的幸福,因为有个问题一直困扰着我。
下面记录一下我成功运行Hello World之前的步骤和遇到的一些问题。
步骤:
- 下载ndk并配置ndk环境(最新的ndk r8即便在windows环境下也无需再安装Cygwin了,很是方便)
- 安装NDK插件
以上步骤都没有遇到什么问题。特别说明的是Android官网上提供了developer tools,已经内置了ndk插件了,你只需下载ndk,并配置好就可以了。
就这么简单就完成安装了ndk的开发环境了,可是我第一次安装的时候,居然还去安装了Cygwin,还配置了一大堆东西,说起那个过程简直就一个字“乱”,
而且还花了我很长时间,记得在安装Cygwin的时候,由于是在线安装的,所以要下载,下载了两三次才能成功。
当然了,最后能成功运行ndk程序,我是不安装Cygwin的。
下面是我遇到的最关键的一个问题,其它的一些问题就不用多说了,为什么说是最关键呢,因为我google + baidu 了很久,都没得,也正是这个问题拖了我两天时间,
让我在两天之后的今晚,才能无出错的运行出来。
这个该死的错误就是:java.lang.UnsatisfiedLinkError: Native method not found
程序编译没问题,就只在执行的时候,出现了这个error。后面我的解决方法是:
1、c++中的方法Java_xxx_xxx 中的Java 首字母一定要大写
2、如果是 .cpp 文件 则用 extern "C" {"您的方法在这里"},大括号里是您的本地方法。
最后发张图庆祝一下,现在心情依旧很激动哦,哈哈