NDK在windows下的开发环境搭建及开发过程

在Android应用的开发project中。无论是游戏还是普通应用。都时常会用到.so即动态链接库,关于.so是什么玩意儿,有什么优点。这个大家能够在网上查一下,本人不做过多解释。

.so本是linux下的文件类型,所以编译.so必需要在linux环境下,那么怎样在win下进行编译呢?随便在网上搜下,教程也是五花八门,不清不楚,没有一定功底,即便看着教程到最后预计还是功败垂成,更别说刚開始学习的人,看了保证头晕眼花,本人也是依据网上的一些样例。总结了一个个人觉得还算比較简单的一个.so的编译方法:GNUstep(网上有不少用cygwin的。大家也能够去研究下)。

进入正题。win下.so开发环境搭建:(因为资源在网上不太好找,于是本人将须要的工具都放进了网盘)

1.NDK(本NDK版本号为10):链接: http://pan.baidu.com/s/1bn1xDQB password: lr7d

2.gnustep-core-0.34.0-setup.exe。gnustep-devel-1.4.0-setup.exe,gnustep-msys-system-0.30.0-setup.exe 链接: http://pan.baidu.com/s/1ntLwd53 password: kuuj

下载并安装完成后(安装路径默认就可以):

首先。在eclipse中导入NDK所在路径(解压完成后的路径)

然后。在c盘(本人的安装路径在c盘),找到文件GNUstep.conf并打开以配置环境变量:

在该文件最后两行加入或改动:(注意你NDK的路径)

NDK=E:/baiyuliang/android-ndk-r10
export=NDK

打开GNUstep,并输入make -v,确定(enter键),再输入gcc -v。出现例如以下图症状:

输入cd $NDK,出现又出现下图症状:

则表示开发环境已搭建成功!

好了。接下来我们做一个简单的样例以学习怎样使用GNUstep来做NDK的开发:

在eclipse中创建一个项目project,包名:com.byl.testjni,主类名MainActivity(这个要看清楚,接下来会要求你正确输入他们的路径和名称):

创建完成后,打开cmd,输入javah命令执行:

出现如图显示,则表示一切顺利,可继续往下进行,假设出现找不到该命令,则要检查下你的jdk环境变量是否配置正确。

接下来。定位到该project项目中src目录硬盘中的所在路径:

打开项目中的MainActivity。增加下面代码:

    public native String hello();//定义.so中的方法名

    static{
            System.loadLibrary("testJni");//定义生成的.so的名称
    }

这个是须要事先写在调用.so的Activity中的,在编译时会自己主动在头文件里生成定义的方法名,以及最后生成的.so名称,接下来在cmd中输入下面命令,生成c头文件:

javah -d ../jni com.byl.testjni.MainActivity

千万注意路径不要写错。确定后,假设什么都没提示,则表示运行成功,eclipse中右键-刷新项目:

然后在jni目录中创建一个c文件。名称为与.so名称一致,即testJni.c:

接下来。仍在jni目录中编写Android.mk文件,Android.mk文件可在NDK安装路径下的samples/hello-jni/jni中找到,直接复制过来:

打开Android.mk,并改动当中的LOCAL_MODULE和LOCAL_SRC_FILES:

LOCAL_MODULE是描写叙述模块的,用来给java调用的模块名。会生成相应的libtestJni.so;

LOCAL_SRC_FILES是源文件,多个文件空格隔开就可以。

关键的一步来了。打开GNUstep,開始编译并生成.so文件:

1.输入命令。定位到项目(TestJni)所在位置:

cd /E/AndroidProject/TestJni

2.输入命令,生成testJni.so文件:

$NDK/ndk-build

如图所看到的,则表示执行成功,刷新项目,看libs下testJni.so文件是不是已经静静的躺在那里了?(注意:生成的文件默认前面会加一个lib即libtestJni.so)

以下就是见证奇迹的时刻:

打开MainActivity,在Oncreate方法中。调用hello()方法并打印,假设显示”HelloJni!“即表示.so生成无误而且调用成功。

		Log.e("jj", hello());

执行,看LogCat:

OK!完美执行。

此后,就能够把一些重要的变量。或者服务地址什么的放在.so里面了,然后将生成的.so放进项目就能够使用啦!

PS:这个样例非常easy。就是打印一字符串,跟实际应用开发中所要编写的复杂的方法等相错甚远,所以真正学会NDK开发还须要下苦功夫的!

注意事项:

有童鞋可能用这个样例上生成的.so直接放在其他项目上使用时出现调用方法不成功的问题,在这里告诉大家一下,编译.so时所使用的Activity路径一定要与项目中调用.so中方法的Activity路劲一致,比方:A项目中的AActivity要调用一个.so。那么能够直接在本项目中生成.so,假设另创建一个单独的项目如B项目去生成.so时,那么B项目中Activity路径要与A全然一样:

A项目:com.byl.testjni.AActivity,

那么B项目也必须为:com.byl.testjni.AActivity

demo源代码:http://download.csdn.net/detail/baiyuliang2013/8505977

时间: 2024-10-24 04:37:28

NDK在windows下的开发环境搭建及开发过程的相关文章

windows下android开发环境搭建

JDK的安装和Java环境变量的设置 1 JDK下载地址 JDK下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html JDK(Java Development Kit)是整个Java的核心,包括一系列Java开发的东西,安装完毕需要配置一下环境变量. 2 JAVA_HOME JDK的安装路径,这个环境变量本身不存在,需要创建,创建完则可以利用%JAVA_HOME%作为统一引用路径,其值为:jdk在你电脑上的

windows下golang开发环境搭建(sublime text3 + gosublime + sublimeGDB)

最近开始学习go语言的相关开发教程,之前的工作都是在linux上完成居多,但是家里的电脑还是windows的系统. 在搜索了N多方案以及尝试了N多IDE后,决定还是使用sublime+gosublime插件 这一套东西作为家用学习的跑demo方案. 在此需要感谢go社区以及一众之前已经存在的搭建方法和文档,本页以记录一下自己的搭建过程为主o(∩_∩)o 哈哈 1. 安装go语言 官网地址:https://golang.org/  点击下载需要的平台的安装版本,推荐msi,下载完成之后,点击安装,

Windows下PHP开发环境搭建

PHP集成开发环境有很多,如XAMPP.AppServ......只要一键安装就把PHP环境给搭建好了.但这种安装方式不够灵活,软件的自由组合不方便,同时也不利于学习.所以我还是喜欢手工搭建PHP开发环境,需要哪个模块自己安装就行了,或者那个软件需要升级,直接升级那个软件就行了,并不影响其他软件,非常方便. 一.准备工作-下载所需软件 Apache  httpd-2.2.22-win32-x86-openssl-0.9.8t.msi PHP       php-5.3.10-Win32-VC9-

Windows 下 Android 开发环境搭建

Android 系统主要是基于 Java 语言进行开发的,只有核心和一些底层库是用 C/C++ 来写的.所以搭建 Android 开发环境的第一步就是安装并配置 Java 的开发环境.Java 开发环境配置好之后从 Android 的官网下载开发工具包,解压后就可以使用了. 一.Java开发环境安装 从 java 的官网下载最新的 jdk http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.

Windows下PyQt4开发环境搭建

开发环境组件 Anaconda2.x (成熟可靠的集成编译环境,Python之父Guido也是核心的开发成员之一) Sublime Text 3(拥有强大补全功能和代码规范化功能的编辑器) Eric(支持可视化开发的IDE) 前两者的安装自然是不用说了,第三个的安装则需要Python事先安装好PyQt4和sip等,可以使用pip或者conda进行安装. Eric4的安装和配置 将下载好的Eric解压后等到如下的目录结构: 双击 install.py,当然也可以在cmd下用python解释器进行.

【转】windows下python开发环境搭建

1 -- 安装python的前期准备 Python开发有众多工具,又以Eclipse+Pydev最为常见.Eclipse平台对开发同学来讲,肯定是如雷贯耳,自不用废话.而PyDev是Eclipse平台下的一个Python IDE插件,利用PyDev插件我们可以把Eclipse变为功能强大且易用的Python IDE.本文只简单介绍Eclipse+PyDev的安装和配置过程,至于开发.调试等高级话题不做深入分析. 首先,需要安装python的编译和执行程序,推荐安装Python2.7.3版本.至于

Windows下Java开发环境搭建

1.在cmd中输入Java,若如下图所示的提示,则说明当前电脑没有安装Java运行环境或者是JDK,则需要手动下载和安装Java 2.打开网站http://www.oracle.com/index.html,点击download选择Java for Development 3.点击进去就可以看到可以下载的Java 4.找到JDK Download的下载按钮,点击进入到下载界面,选择适应的系统版本 5.下载完成对应版本,然后进行安装

Windows下 Scala开发环境搭建

1.配置jdk:可看这里 2.下载scala,并安装 3.配置scala环境变量,把scala的安装路径加入path内 ps:验证是否安装正确:cmd->输入scala,如果出现scala环境,则配置成功 4.下载IntelliJ IDEA,并安装 5.打开IDE: 点击Configure->Plugins: 点上图的Browse repositories至: 输入scala显示如上图,右侧会有安装选项(因为我已安装,故没有显示安装按钮) 输入sbt,然后点击安装 安装后会提示重新启动 6.重

windows下Ruby开发环境搭建

一.下载 下载RubyInstaller 二.安装 按照提示安装 安装完毕后,在cmd命令窗口,输入:ruby -v 查询rbuy版本:输入gem -v 查询gem版本 三.Ruby插件(Redis插件)安装 下载地址:https://rubygems.org/gems/redis/versions/3.2.2 参考资料: http://blog.csdn.net/jason314/article/details/6204781