上一篇文章,简单的设置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. Android本地视频播放器开发--视频解码

    在上一章Android本地视频播放器开发--SDL编译编译中编译出sdl的支持库,当时我们使用的2.0,但是有些api被更改了,所以在以下的使用者中我们使用SDL1.3的库,这个库我会传上源码以及编译 ...

  2. PHP JSON_ENCODE 不转义中文汉字的方法

    ios程序中不识别读取到的JSON数据中 \u开头的数据. PHP 生成JSON的时候,必须将汉字不转义为 \u开头的UNICODE数据. 网上非常多,可是事实上都是错误的,正确的方法是在json_e ...

  3. Swift - 访问控制(private,internal,public)

    在Swift语言中,访问修饰符有三种,分别为private,internal和public.同时,Swift对于访问权限的控制,不是基于类的,而是基于文件的.其区别如下: 1,private priv ...

  4. 联系人数据库设计之AbstractContactsProvider

    个人见解,欢迎交流. 联系人数据库设计,源代码下载请自行去android官网下载. package com.android.providers.contacts; import android.con ...

  5. jsonp和事件发布监听

    模拟jsonp var id = 0; function JSONP(url,param,cb){ var callbackName = "json_" + id++; var a ...

  6. Swift 编程语言新手教程

    今天在网上看到一篇很好的教程,分享给大家 原文地址:http://gashero.iteye.com/blog/2075324 文件夹 1   简单介绍 2   Swift入门 3   简单值 4   ...

  7. 让你提前知道软件开发(22):shell脚本文件操作

    文章1部分 再了解C语言 shell脚本中的文件操作 [文章摘要] 编写shell脚本时,经常会涉及到对文件的操作,比方从文件里读取一行数据.向文件追加一行数据等. 完毕文件读写操作的方法有非常多,了 ...

  8. 使用HtmlAgilityPack批量抓取网页数据

    原文:使用HtmlAgilityPack批量抓取网页数据 相关软件点击下载登录的处理.因为有些网页数据需要登陆后才能提取.这里要使用ieHTTPHeaders来提取登录时的提交信息.抓取网页  Htm ...

  9. 三框架:使用数据源dbcp注意

    使用spring整合hibernate时间,需要使用该数据源,数据源使用apache的dbcp,使用dbcp当需要依靠pool的jar包.选择dbcp和pool当你需要注意. DBCP 2 compi ...

  10. (白书训练计划)UVa 120 Stacks of Flapjacks(构造法)

    题目地址:UVa 120 水题. 从最大的開始移,每次都把大的先翻到最上面,再翻到以下. 代码例如以下: #include <iostream> #include <cstdio&g ...