上一篇文章,简单的设置NDK开发环境,本文通过导入C:\android-ndk-r9d\samples\hello-jni(NDK自带example)来疏通真个环境。

  1. 打开Eclipse IDE。指定NDK的位置
         选择的NDK位置仅对当前的Eclipse workspace有效哦。

假设更改workspace。须要又一次指定NDK的位置

         
     2. 像导入普通Androidproject一样导入hello-jni
  • 此时会出现例如以下图错误,这个错误是Android导入project大部分都会出现类似的(原因是开发时API Level小 )。能够无论它。
  • 这个时候假设编译执行,会报错,没有.so这个文件。
3. 加入原生C文件支持
直接上图吧。不用文字说明了
 
点击Finishbutton就可以完毕对C原生的支持。
4.接下来直接编译执行就可以成功导入hello-jniproject。

接下来,我们看下控制台的信息打印:

此时。你可能会感觉IDE真牛逼,这也没有NDK。ANT,Cygwin什么事。那我们之前还安装它干什么呢。

事实上是Eclipse简化了整个构建过程和部署过程。可是并非全部Android NDK 项目都是Eclipse 来搞定的啊。

我感觉距离入门NDK还差点远哦。接下来我们共同继续努力学习吧,苦逼的程序员们。

命令行构建项目
1. 删除上面Eclipse构建project生成的libs。obj这两个目录,又一次用命令行的形式构建项目
2.构建原生的组件(ndk build c库),具体例如以下图

           已经生成我们在Eclipse中看到的编译成功之后的libs,obj文件夹了,这个能够说命令行构建已经成功大部分咯。
           3.构建Android应用程序,事实上就是打包apk的过程
                这是我们须要用到ANT,用ant的原因是android sdk是基于ant的。

在第一次构建项目时。要首先生成ANT的构建文件。例如以下图


         接下来呢,我们运行ant debug命令构建apk文件:hello-jni-debug.apk

       话说,有ant debug,那会不会有ant release呢,看下图就知道ant release是能够的哦。



       我们在构建Apache ANT文档时曾说,他是第一次须要构建,来验证下哦。

把hello-jni.c的文件输出改为“Hello from Apache ANT !”,然后直接执行ndk-build,然后ant debug看看

验证事实OK

我们通过这个过程看作是,那么,我们的新项目,其实主要是Android.mk Application.mk等待makefile文件哦。

NDK/JNI学习--进口hello-jniproject的更多相关文章

  1. NDK/JNI学习--环境搭建

    基于Windows来开发Android的NDK.JNI须要的环境搭建,所须要的软件例如以下: Android 开发环境的基本配置(SDk,ADT.Eclipse IDE.JDK)       这些都是 ...

  2. android NDK 实用学习(五)-c++端调用java接口

    1,阅读此文章前请阅读前面文章,以免阅读出现障碍: android NDK 实用学习(一)-获取java端类及其类变量 android NDK 实用学习(二)-java端对象成员赋值和获取对象成员值 ...

  3. 【转】基于 Android NDK 的学习之旅-----数据传输(引用数据类型)

    原文网址:http://www.cnblogs.com/luxiaofeng54/archive/2011/08/20/2147086.html 基于 Android NDK 的学习之旅-----数据 ...

  4. Android JNI学习(五)——Demo演示

    本系列文章如下: Android JNI(一)——NDK与JNI基础 Android JNI学习(二)——实战JNI之“hello world” Android JNI学习(三)——Java与Nati ...

  5. Android JNI学习(四)——JNI的常用方法的中文API

    本系列文章如下: Android JNI(一)——NDK与JNI基础 Android JNI学习(二)——实战JNI之“hello world” Android JNI学习(三)——Java与Nati ...

  6. Android JNI学习(三)——Java与Native相互调用

    本系列文章如下: Android JNI(一)——NDK与JNI基础 Android JNI学习(二)——实战JNI之“hello world” Android JNI学习(三)——Java与Nati ...

  7. Android JNI学习(二)——实战JNI之“hello world”

    本系列文章如下: Android JNI(一)——NDK与JNI基础 Android JNI学习(二)——实战JNI之“hello world” Android JNI学习(三)——Java与Nati ...

  8. Android NDK JNI 入门笔记-day04-NDK实现Hash算法

    * Android NDK JNI 入门笔记目录 * 开头 前面的学习,我们已经掌握了 NDK 开发的必备知识. 下一步就要多实践,通过创造问题并解决问题,来增加熟练度,提升经验. 日常开发中,经常会 ...

  9. 【Android】Eclipse自动编译NDK/JNI的三种方法

    [Android]Eclipse自动编译NDK/JNI的三种方法 SkySeraph Sep. 18th  2014 Email:skyseraph00@163.com 更多精彩请直接访问SkySer ...

随机推荐

  1. 怎样高速正确的安装 Ruby, Rails 执行环境

    对于新入门的开发人员,怎样安装 Ruby, Ruby Gems 和 Rails 的执行环境可能会是个问题,本页主要介绍怎样用一条靠谱的路子高速安装 Ruby 开发环境. 次安装方法相同适用于产品环境! ...

  2. hdu 4715 Difference Between Primes 2013年ICPC热身赛A题 素数水题

    题意:给出一个偶数(不论正负),求出两个素数a,b,能够满足 a-b=x,素数在1e6以内. 只要用筛选法打出素数表,枚举查询下就行了. 我用set储存素数,然后遍历set里面的元素,查询+x后是否还 ...

  3. 浙江大学PAT上机题解析之2-06. 数列求和

    给定某数字A(1<=A<=9)以及非负整数N(0<=N<=100000),求数列之和S = A + AA + AAA + … + AA…A(N个A).例如A=1, N=3时,S ...

  4. linux 终端控制-- 多彩输出 格式排版

    linux 终端控制-- 多彩输出 格式排版 在unix/linux的终端下,怎么控制终端输出的颜色和格式呢,当然了有专门的工具,tput,但是能被terminal直接读懂的格式化字符串更通用. 先来 ...

  5. 对struts2的OGNL的理解

    OGNL:Object-Graph Navigation Language.对象图形化导航语言 OGNL是集成进struts2框架中比較强大的技术有助于传输数据和类型转换,OGNL由表达式语言和类型装 ...

  6. 利用未公开API获取终端会话闲置时间(Idle Time)和登入时间(Logon Time)

    利用未公开API获取终端会话闲置时间(Idle Time)和登入时间(Logon Time)作者:Tuuzed(土仔)   发表于:2008年3月3日23:12:38 版权声明:可以任意转载,转载时请 ...

  7. 小议common lisp程序开发流程 - Ever 17 - 博客频道 - CSDN.NET

    小议common lisp程序开发流程 - Ever 17 - 博客频道 - CSDN.NET 小议common lisp程序开发流程 分类: lisp 2011-04-17 20:59 1316人阅 ...

  8. 我为什么要创建帮创业者找合伙人的缘创派(ycpai.com)?

    我为什么要创建帮助创业者找合伙人的缘创派(ycpai.com)? 在我发出第一条离开CSDN出来创业的微博后,感谢各位朋友的鼓励.很多朋友问我一些问题,我在这里一并回答,并简单阐述一下我的理念. 问: ...

  9. 使用国内源解决Qt在线更新慢的问题

    Qt在线安装更新工具默认使用官方的源,国内访问比较慢,可以在setting中增加国内的源来提高更新速度,如下面的源: http://mirrors.ustc.edu.cn/qtproject/onli ...

  10. python语言学习5——输入和输出

    输出 用print()在括号中加上字符串,就可以向屏幕上输出指定的文字. 注意点: 字符串用的是单引号 碰到逗号输出时就会输出一个空格 输入 python提供了一个input(),可以让用户输入一个字 ...