zoukankan      html  css  js  c++  java
  • Android环境搭建 NDK+ADT(免cywgin)


    JDK下载:

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

    2配置环境变量

    JAVA_HOME:创建。

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

    PATH:编辑。

    其值为:%JAVA_HOME%in。

    CLASSPATH编辑。

    配置两个值,其值为:.;%JAVA_HOME%lib ools.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


  • 相关阅读:
    hadoop_并行写操作思路_2
    hadoop_并行写操作思路
    Hadoop_Block的几种状态_DataNode
    KMP算法_读书笔记
    德才论
    换个格式输出整数
    继续(3n+1)猜想
    害死人不偿命的(3n+1)猜想
    c# number求和的三种方式
    c# 中的协变和逆变
  • 原文地址:https://www.cnblogs.com/jzssuanfa/p/6764046.html
Copyright © 2011-2022 走看看