MAC开发NDK非常的简单
转自:http://www.cnblogs.com/jarrah/archive/2013/03/15/2961892.html
附带CDT的下载:http://www.eclipse.org/cdt/downloads.php
导入jni.h , Project Properties -> C/C++ General -> Path and Symbols
选择include标签,Add -> $Android_NDK_HOME/platforms/android-14/arch-arm/usr/include
Mac os x下配置 Android ndk 开发环境
1.阅读下面之前,请确保你android sdk的开发环境已经搭建好,ADT也最好是目前最新的.
2.到http://developer.android.com/tools/sdk/ndk/index.html这里下载最新的ndk.
3.下载完成后,解压你下载的文件.
4.配置一下你的.bash_profile; 开启终端,输入命令 pico .bash_profile
首先添加一行 export PATH=${PATH}:/Users/jarrahwu/Documents/android-ndk-r8d
然后再来一行 A_NDK_ROOT=/Users/jarrahwu/Documents/android-ndk-r8d
最后来一行 export A_NDK_ROOT
这个其实就相当于windows里面的环境变量.contrl + x 保存一下,再输入 Y确认,最后来个enter.最后的最后,关闭终端,重新打开一下.
可以参考一下我上传的图片.
如果上面配置无误的话.就可以准备写一个ndk的hello world了.
(1)首先想正常建立android项目一样,建立好一个项目叫MyNDK
(2)配置一下android NDK 的路径,具体操作就是->eclipse ->preferences ->android ->NDK 然后再配置自己的NDK路径
(3)如果你不是最新的ADT可能你会要在终端用javah命令来添加NDK支持,建立文件夹什么的之类的,但是现在最新的ADT已经包含了一些列这些操作.你可以很简单就能添加NDK支持.
具体操作: 右键你的项目 ->android tools ->Add Native Support..一下子就OK了.如果你的eclipse不能查看c文件的话,你就要添加CDT的支持了.
很简单的就建立了一个NDK的project了.
下面到代码部分,先java部分吧,在你的activity里面主要就是调用你的ndk库,调用库的方法.
下面来到关键部分了.就C了,当时遇到了好多错误什么的,尤其要注意格式,和规范吧.直接看代码吧.一定要有这个extern 什么开头的 声明一下你的方法,不然回报错的.
最后我们来运行一下吧.看看效果..
MAC开发NDK非常的简单的更多相关文章
- android Jni NDK开发环境搭建及其简单实例的编写
android Jni NDK开发环境搭建及其简单实例的编写 由于工作需要,需要采用开发想要的JNI,由于之前没有接触过安卓的开发,所以更加网上的帖子,学习了下.遇到了些问题,然后总结下学习过程中 ...
- eclipse ndk 配置和简单开发demo
记录下以备忘: android开发的各种资源国内镜像 http://www.androiddevtools.cn/ 前端时间尝鲜用android stuido1.5开发了个android的小项目,发现 ...
- iOS开发多线程篇—多线程简单介绍
iOS开发多线程篇—多线程简单介绍 一.进程和线程 1.什么是进程 进程是指在系统中正在运行的一个应用程序 每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内 比如同时打开QQ.Xcod ...
- iOS开发UI篇—Quartz2D简单介绍
iOS开发UI篇—Quartz2D简单介绍 一.什么是Quartz2D Quartz 2D是⼀个二维绘图引擎,同时支持iOS和Mac系统 Quartz 2D能完成的工作: 绘制图形 : 线条\三角形\ ...
- iOS 非ARC基本内存管理系列 -手把手教你ARC——iOS/Mac开发ARC入门和使用(转)
手把手教你ARC——iOS/Mac开发ARC入门和使用 Revolution of Objective-c 本文部分实例取自iOS 5 Toturail一书中关于ARC的教程和公开内容,仅用于技术交流 ...
- 李洪强iOS开发Swift篇—01_简单介绍
李洪强iOS开发Swift篇—01_简单介绍 一.简介 Swift是苹果于2014年WWDC(苹果开发者大会)发布的全新编程语言 Swift在天朝译为“雨燕”,是它的LOGO 是一只燕子,跟Objec ...
- EClipse开发NDK流程
EClipse开发NDK流程(现在studio也在2.2之后支持了非常简单,只要创建项目的时候勾选c++支持就可以了) 什么情况下使用ndk,1.保护代码,java很容易反编译,c/c++反汇编比 ...
- Mac开发必备工具(三)—— Fish shell
Fish shell 简介 fish 可以根据输入自动匹配历史命令.它的一大特点是开箱即用,没有zsh那些繁琐的配置.官网:http://www.fishshell.com/. 安装与配置 在终端里使 ...
- Mac开发必备工具(二)—— iTerm 2
iTerm 2 简介 iTerm 2 is a terminal emulator for Mac OS X that does amazing things. iTerm 2 有很多能够提升效率的实 ...
随机推荐
- java 使用cookie记录用户上一次访问的时间 记住 用户的 登录名
package cn.itcast.cookie; import java.io.IOException; import java.io.PrintWriter; import java.util.D ...
- C#委托初探
委托是一种定义方法签名的类型,可以与具有兼容签名的任何方法关联.您可以通过委托调用其中已添加的方法列表.委托用于将方法作为参数传递给其他方法.事件处理程序就是通过委托调用的方法.您可以创建一个自定义方 ...
- UI auto test
java.home/lib/security/java.policy (Solaris/Linux) http://www.cnblogs.com/richaaaard/p/5091059.html ...
- js合计
Js合计行: 可以先循环行,然后按行获取这行带有你定义的class的td,取得这些td的 text后相加,最终赋值到这行的“合计”单元格就行了 var trslength = $("#dat ...
- PHP--浏览器禁用cookie后,怎么使用session
sessionid是存储在cookie中的,解决方案如下: Session URL重写,保证在客户端禁用或不支持COOKIE时,仍然可以使用Session session机制.session机制是一种 ...
- 1058 N的阶乘的长度
1058 N的阶乘的长度 基准时间限制:1 秒 空间限制:131072 KB 输入N求N的阶乘的10进制表示的长度.例如6! = 720,长度为3. Input 输入N(1 <= N <= ...
- mongoDB安装学习
一: 下载安装 上MongoDB官网 ,下载之后安装 安装好了之后在对应的安装目录下就会看到安装的文件 二:启动 微软徽标+R,输入cmd,首先找到“mongodb”的路径,然后运行mongod开启命 ...
- qt QString 与 int,char的转换
每次QString转换int或者char的时候都要查资料,记录一下,方便下次查看. 参考: http://blog.csdn.net/ei__nino/article/details/7297791 ...
- iOS 面试题及答案
1.写一个NSString类的实现 + (id)initWithCString:(c*****t char *)nullTerminatedCString encoding:(NSStringEnco ...
- JVM培训作业第二周
1. jre的运行时主要jar文件rt.jar都很大,这导致了用java做的桌面客户端程序很难发布绑定jre发布.这在很大程度上限制了java桌面软件 的分发.可是,jre并不是在所有的用户计算机上都 ...