关键词 :JNI, win7 ,android SDK,Android NDK , CYGWin , eclipse , JDK
1.下载安装最新的Cygwinsetup.exe
这里要注意的是,需要选择Devel@Install,这个是模拟Linux环境必须的、、、、选择http://mirrors.163.com 下载速度比较快
安装完以后,打开输入make -v和gcc -v进行测试是否安装成功
2.下载安装JDK-7u2-windows-i586.exe
后面使用可能产生的问题:在path系统路径中添加javah.exe的有效路径,否则使用javah.exe产生JNI的头文件的时候会提示javah不是有效的程序
3.下载解压android-ndk-r7-windows.zip,比如D:/Tools/vs2008/HandPhone/android-ndk-r7
解压后,使用文本打开xxx\Cygwin\home\Administrator\.bash_profile文件,在最后加上(上面的路径,去掉:)、、、使用UE打开该文件,不用记事本或者写字板
NDK=/cygdrive/D/Tools/vs2008/HandPhone/android-ndk-r7
export NDK
保存退出后,代开Cygwin输入cd $NDK,如果进入你设置的文件夹则表示设置成功
后面使用可能产生的问题:如果后面使用的时候提示Android NDK: Host 'awk' tool is outdated.则进入xxx\android-ndk-r7\prebuilt\windows\bin中将awk.exe删除就可以了
4.下载安装andriod_sdk_installer_r16-windows.exe,安装路径比如:C:\Program Files\Android
①安装完成后打开C:\Program Files\Android\android-sdk\platforms\android-8文件夹,里面有一个andriod.jar文件,将其拷贝一份,然后将后缀改为zip,解压到当前目录下得到一个Andriod的文件夹
②在classpath的系统路径中增加该文件的有效路径,比如C:\Program Files\Android\android-sdk\platforms\android-8\android
后面使用可能产生的问题:如果不进行这步的设置,在javah操作时将提示
错误: 无法访问android.app.Activity
找不到android.app.Activity的类文件
5.下面的就是按照eclipse以及c++和andriod开发的相关插件
①下载解压eclipse
②下载对应版本c++开发插件CDT,下载地址如下CDT的下载地址如下:
http://www.eclipse.org/downloads/download.php?file=/tools/cdt/releases/helios/dist/cdt-master-8.0.1.zip,不用解压。
然后在eclipse中,help->Install new software...
点击Add按钮,name中填一个名字如cdt,archive选刚下载的cdt文件。
去掉Contact all update sites during install to find required software 勾选,原因就是他还要联网获取信息,慢死人的。发现那个报错就将那个包去掉就行了。
③安装android开发插件
打开Eclipse, 在菜单栏上选择 help->Install New SoftWare
点击Add按钮,name中填andriod,然后网址填https://dl-ssl.google.com/android/eclipse/ (如果出错,请将https改成http),那个出错取消那个
安装成功之后,在eclipse中的window菜单中则出现Andriod SDK Manager和AVD Manager,并且在File->New->Other中出现可创建Andriod工程
④需要注意的是,卸载插件也在help->Install New SoftWare页面上的“Avaliable Web Site"连接上,可屏蔽可卸载。也可以在help->About Eclipse点击Installation Detail中进行卸载。
6.OK,上面都完成了的话,下面创建一个Andriod工程试试(可以直接在xxx\android-ndk-r7\samples中创建一个MyFirstJNI工程)
①代码如下(注意package名):
package com.cn.test;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
public class MyFirstJNIActivity extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView tv = new TextView(this);
tv.setText(stringFromJNI());
setContentView(tv);
}
public native String stringFromJNI();
static { System.loadLibrary("MyFirstJNI"); }
}
②这一步可能出现2和4中的问题
使用javah -jni 命令之前,必须使用cmd先cd进入工程的classes文件夹F:\Eclipse\workspace\MyFirstJNI\bin\classes(切记,在操作过程中无需拷贝任何文件,在这个文件夹中包含了全路径如下F:\Eclipse\workspace\MyFirstJNI\bin\classes\com\cn\test,里面包含了文件MyFirstJNIActivity.class),那么命令就是javah -jni com.cn.test.MyFirstJNIAcrivity,成功后在classes文件夹下生成一个com_cn_test_MyFirstJNIActivity.h头文件
③在MyFirstJNI文件夹下创建一个新的文件夹jni,使用eclipse创建一个com_cn_test_MyFirstJNIActivity.c文件,
内容如下(函数名和头文件中的一样)
#include <string.h>
#include <jni.h>
jstring Java_com_cn_test_MyFirstJNIActivity_stringFromJNI( JNIEnv* env, jobject thiz )
{
return (*env)->NewStringUTF(env, "Hello from JNI !");
}
④将xxx\android-ndk-r7\samples\hello-jni\jni中的Android.mk拷贝到xxx\android-ndk-r7\samples\MyFirstJNI\jni中,然后使用文本打开,修改为
LOCAL_MODULE := MyFirstJNI
LOCAL_SRC_FILES := com_cn_test_MyFirstJNIActivity.c
⑤打开Cygwin,cd进入xxx\android-ndk-r7\samples\MyFirstJNI\jni,然后
输入$NDK/ndk-build
成功将在xxx\android-ndk-r7\samples\MyFirstJNI\libs\armeabi下生成一个.so文件
⑥OK,大功告成了,eclipse直接F11看看模拟器是否显示吧
参照来源
分享到:
相关推荐
ubuntu Android NDK开发环境的搭建
详细介绍了在eclipse中android项目下c/c++代码的自动编译,和在eclipse中用ant生成ndk需要的jni头文件,加速ndk的开发,因为是原创,费了不少心力和时间,所以设了6分,有人反映太贵了,现在调成3分,这下大家满意了...
ubuntu下android ndk编译环境搭建,android应用程序开发,环境编译
Windows下Eclipse搭建Android_NDK开发环境
NDK提供了的开发工具集合,使开发人员可以便捷地开发、发布C组件。 本文以图形化的方式帮助读者在Windows中搭建Android的NDK开发环境,并且演示怎样运行NDK中自带的示例。
在Android下用C/C++开发,新版本的配置不需要cygwin
基于Android底层NDK开发OpenCV环境搭建,基于Android底层NDK开发OpenCV环境搭建
Android系统中的应用程序都是用Java开发的。Android NDK使我们能够在android上使用C/C++开发的原生代码。 有两个理由使用NDK: 一是合理的重用现有的代码;二是在程序中某些关键的部分提高执行效率。
NDK提供了一系列的工具,帮助开发者快速开发C(或C++)的动态库,并能自动将so和java应用一起打包成apk,并集成了交叉编译器,并提供了相应的mk文件隔离CPU、平台、ABI等差异,开发人员只需要简单修改mk文件
windows下NDK搭建Android开发环境,环境配置亲测可用,安装文档一步一步就能调试第一个hello_jni了
Windows下Eclipse搭建AndroidNDK开发环境[整理].pdf
Android NDK 开发教程 三 Hello JNI 示例
搭建NDK的Android开发环境文档 从jdk安装开始到最后开发环境搭建结束。
目 录 1 Cygwin 1.1 Cygwin下载 1.2 Cygwin安装 2 NDK 2.1 NDK下载 2.2 Cygwin配置NDK ...4 Android项目NDK环境配置 4.1 .so文件Builder 4.2 导入include文件及编译 4.3 Native向logcat输出调试信息
ndk开发环境搭建
Android NDK 开发教程 二 概述
手把手教你怎么在windows下搭建android NDK环境
该资源包含了一个用android实现的androidndk文档,简单易懂!
android ndk 开发环境配置,不需要cygwin,可直接生成.h文件,直接编译库