1、在开始之前,需要先准备好资源如下,如果安卓开发环境有了直接装第3、4。

  1、JDK      点击下载 (1.6)

  2、ADT(已经自带Android SDK)点击下载

  3、NDK 点击下载

  4、CYGWIN 点击下载
 
 
2、环境变量(未必全用到,在这做个标志)
 

----------------------  JAVA 环境变量设置  --------------------------------------
JAVA_HOME
C:\Program Files\Java\jdk1.7.0_17
--------------------------
CLASSPATH
.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
--------------------------
Path
%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
--------------------------

---------------------  NDK 环境变量  ---------------------------------------
NDK_ROOT
C:\Program Files\Java\ndk

---------------------------  SDK 环境变量 -------------------------------
ANDROID_SDK_ROOT
D:\安装包\开发软件\Android\adt-bundle-windows-x86_64-20130729\sdk0
--------------------------
PATH 
;%ANDROID_SDK_ROOT%\platform-tools;%ANDROID_SDK_ROOT%\platforms;%ANDROID_SDK_ROOT%\tools;
--------------------------

 
4、怎么新建一个HelloWord 项目,点击查看官方有教程,下面是导入之后的步骤。
 
3、CYGWIN NDK 需要下载的包(安装过程参考,下面的是必装的)
 
     autoconf2.1、automake1.10、binutils、gcc-core、gcc- g++、gcc4-core、gcc4-g++、gdb、pcre、pcre-devel、gawk、make
 
     校验是否安装成功,打开cygwin.bat  输入:
     cygcheck -c cygwin
     gcc --version
  g++ --version
  make --version
 
  如果显示信息出来则表示安装成功。
 
  • 【可以能出现的问题】CYGWIN 如果没有在/home/ 下面生成对应当前系统的用户的文件夹,则需要删除环境变量HOME,重新运行即可。
  • 在/home生成的文件夹下找到.bash_profile 添加下面的NDK所在路径

 

NDK_ROOT=/cygdrive/D/安装包/开发软件/Android/NDK/android-ndk-r10d
export NDK_ROOT
  • 要访问自己本地硬盘的文件则输入/cygdrive/文件路径 ,如上面所示。
 
4、ADT 设置编译环境。
 
     新建一个编译环境。
 
  
     
 
     按照下面 完成  CYGWIN 编译环境,注意$NDK_ROOT 是之前.bash_profile 里面设置的。&&后面要加$NDK_ROOT 否则找不到这个命令。
 
   
   
   
 
     选择当前项目JNI 所在目录。
 
     
 
     最后保存,清理一下项目(Clean)完成。
 
 
5、【可以能出现的问题】 将编译.so 的库名称改成相对应的名称即可,然后再编译一次。否则一运行就会报错
 
  

6、【可以能出现的问题】 将资源文件(../Resources)复制到asserts目录下,由于找不到资源文件所以报了 Fatal signal 11 (SIGSEGV) at 0x00000000  的空指针错误。
 
   
 
 
经过许多波折,终于能运行了,第一编译.so 库很慢很慢。最后运行效果:
 
 

最新文章

  1. Mongodb 基础(Z)
  2. Android studio 的初始设置
  3. HDOJ 1874
  4. Python学习路程day3
  5. 【转】linux下cvs配置
  6. Javascript 链式运动框架——逐行分析代码,让你轻松了解运动的原理
  7. .NET编程和SQL Server ——Sql Server 与CLR集成 (学习笔记整理-1)
  8. [PCB设计] 3、用CAM350修改GERBER文件(删除某些部分)
  9. github学习(一)
  10. WP-player——WordPress的一款好用的音乐插件
  11. Unity3D UGUI 自动调节大小
  12. hdu 5015(矩阵快速幂z )
  13. LeetCode(37)-Minimum Depth of Binary Tree
  14. css清除浏览器默认样式
  15. Codeforces 835E. The penguin's game
  16. [转]handsontable常规配置的中文API
  17. C++命令行画心形<转载>
  18. JavaScript的基本概念
  19. hadoop(五)HDFS原理剖析
  20. I2C总线协议

热门文章

  1. DBImport V3.7版本发布及软件稳定性(自动退出问题)解决过程分享
  2. 逆天Kali带你游遍大江南北~安全之前人铺路!
  3. JavaWeb——ServletContext
  4. javascript 笔记!
  5. JAVA 设计模式之策略模式
  6. Windows下Redis缓存服务器的使用 .NET StackExchange.Redis Redis Desktop Manager
  7. jQuery 的选择器常用的元素查找方法
  8. Linux实战教学笔记06:Linux系统基础优化
  9. TFS 生成发布代理
  10. linux常用命令(1)cd命令