首页 > 代码库 > Android环境搭建 NDK+ADT(免cywgin)

Android环境搭建 NDK+ADT(免cywgin)


JDK下载:

1下载地址  http://www.oracle.com/technetwork/java/javase/downloads/index.html

2配置环境变量

JAVA_HOME:创建。

其值为:jdk在你电脑上的安装路径。

PATH:编辑。

其值为:%JAVA_HOME%\bin。

CLASSPATH编辑。

配置两个值,其值为:.;%JAVA_HOME%\lib\tools.jar(当中,第一个值表示JVM先搜索当前文件夹)。

3測试变量

打开cmd,输入命令java –version和javac,若出现返回信息,则设置成功。

ADT下载:

下载地址 http://dl.google.com/android/adt/adt-bundle-windows-x86_64-20140702.zip

Eclipse + SDK +ADT的集成工具包,也能够用eclipse自己先搭建

解压:

技术分享

NDK下载

下载地址 http://dl.google.com/android/ndk/android-ndk-r10e-windows-x86_64.exe

解压:

 技术分享

配置SDK和NDK

SDK配置:ADT集成的eclipse工具默认状况下已经配置好SDK

NDK配置打开Eclipse,点Window->Preferences->Android->NDK,设置NDK路径

技术分享

可能出现的问题:找不到NDK选项

解决方式:下载NDK组件com.android.ide.eclipse.ndk_23.0.2.1259578.jar将文件“com.android.ide.eclipse.ndk_23.0.2.1259578.jar”拷贝到sdk自带的eclipse/plugins文件夹下。

下载地址:软件百度云链接:http://pan.baidu.com/s/1qWz5rNApassword:0qhk

建立第一个安卓project:

1.      新建一个Android application project,全部參数项为默认值无须更改

技术分享

2.      project上右键点击AndroidTools->Add Native Support,名字为默认值。无须更改。

确认后,project自己主动生成jni的目录。jni下有Android.mkmy-ndk.cpp文件。Android.mkNDKproject的MakefileNDKTest.cpp。为NDK的源文件。

3.      编码NDKTest.cpp

代码:

#include <string.h>
#include <jni.h>
extern "C"
{
jstring Java_com_example_ndktest_MainActivity_stringJNI(JNIEnv* env,
        jobject thiz){
                   return env->NewStringUTF("HelloJNI!!");
}
}


4.      编码MainActivity.java

src->com.example.ndktest->MainActivity.java

代码:

packagecom.example.ndktest;
importandroid.support.v7.app.ActionBarActivity;
importandroid.os.Bundle;
importandroid.view.Menu;
importandroid.view.MenuItem;
importandroid.widget.TextView;
 
public classMainActivity extends ActionBarActivity {
 
                  static {
               System.loadLibrary("NDKTest");
                }
                  public native StringstringJNI();
        
               @Override
               protected voidonCreate(Bundle savedInstanceState) {
             super.onCreate(savedInstanceState);
                    TextViewtvText = new TextView(this);
                    tvText.setText(stringJNI());
                    setContentView(tvText);
                 }
 
 
               @Override
               public booleanonCreateOptionsMenu(Menu menu) {
                getMenuInflater().inflate(R.menu.main, menu);
                    return true;
                }
 
               @Override
               public booleanonOptionsItemSelected(MenuItem item) {
                    int id =item.getItemId();
                    if (id ==R.id.action_settings) {
                           return true;
                    }
                    return super.onOptionsItemSelected(item);
               } 
   
}


5.      编译执行。就可以。

可能出现故障:Unable to launch cygpath. Is Cygwin onthe path?错误

解决方式:

project右键,点Properties->C/C++ Build的Building Settings中去掉Use default build command,然后输入${NDKROOT}/ndk-build.cmd

技术分享

在C/C++ Build中点击Environment,点Add...加入环境变量NDKROOT,值为NDK的根文件夹。

 技术分享

 

6.      手机执行程序

能够选择虚拟机AVD或者直接连接手机。AVD执行配置繁琐执行慢,建议直接连接手机。(參考网址http://jingyan.baidu.com/album/6181c3e0618b18152ff15375.html?picindex=4

 

打开eclipse项目,选择run as中的runconfigurations这个选项,在target中。去掉第三个选项,选择第一个选项。然后apply,之后ok。


技术分享

技术分享

运行项目,能够看到已经连接的手机。选择手机。进行调试。



——@zl

2015年6月30

 


Android环境搭建 NDK+ADT(免cywgin)