贵有恒,何必三更起、五更眠、最无益,只怕一日曝、十日寒。这篇文章主要讲述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和NDKSDK配置:ADT集成的eclipse工具默认状况下已经配置好SDK
NDK配置:打开Eclipse,点Window-> Preferences-> Android-> NDK,设置NDK路径
【Android环境搭建 NDK+ADT(免cywgin)】
文章图片
可能出现的问题:找不到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.mk和my-ndk.cpp文件。Android.mk是NDKproject的Makefile,NDKTest.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
推荐阅读
- spring整合hibernate的applicationContext.xml文件配置以及web.xml
- Android开发怎么让自己的APP UI漂亮大方(规范篇一)
- Android开发怎么让自己的APP UI漂亮大方(配色篇二)
- Android驱动之 Linux Input子系统之TP——A/B(Slot)协议
- Android攻城狮 调试
- android studio 如何设置代码提示
- Android PagerSlidingTitleIconTabStrip 能够在title旁边加小图标的PagerSlidingTabStrip
- Dapper.net Insert mssql unicode 乱码问题
- android 获取蓝牙已连接设备