关于NDK的那些事
来源:互联网 发布:鸭鸭网络平台 编辑:程序博客网 时间:2024/06/10 13:28
说到NDK,那就要先说说cygwin。
cygwin:是一个相当于Android虚拟机一样的东西,它是Linux系统的虚拟机,作用是编译成为so文件,具体的等会详细说。
NDK:它可以让我们在开发环境中使用本地语言来开发应用,比如说c、c++;
接下来我们说说这些内容的关系和使用:
首先说关系:使用NDK9之前版本编写c代码时,需要借助cygwin工具完成编译so的过程。NDK相当于编写Android应用的SDK,属于第三方库文件。而如果使用NDK9,或者以后的版本,由于对Android的版本要求比较高,所以还没有应用广泛。
再来是使用:最重要的是使用NDK,那么如何使用呢?我们首先安装cygwin,在虚拟机中配置NDK的路径。(.bash_profile文件,在cygwin的home目录中。)
双击运行cygwin,
输入命令:$ cd $NDK
如果显示NDK的路径就说明配置成功了。
编写c代码,在cygwin中有默认的代码模板,我们可以修改它作为我们需要生成so文件的c代码
之后我们在cygwin中输入
$ $NDK/ndk-build
就可以生成so文件了。找到文件后将文件考入我们的项目中(libs/armeabi)没有则创建。
为什么要用NDK:
从好处来讲,我们的关键代码比如加密等需要使用c来编写,因为它可以很好的防止反编译程序。c的代码运行速度快。
我们为什么要使用NDK生成so文件呢?
在Windows系统中,使用编译工具编写的c代码编译后生成dll文件,Linux系统中编写c代码后生成so文件。而dll是不可以在Linux系统中运行的,所以我们就需要一个cygwin虚拟机模拟Linux系统,从而帮助我们生成so文件的操作。我们知道,Android应用时运行在Linux中,所以我们的c代码只有生成so文件才可以让应用运行在Linux平台上。
- 关于NDK的那些事
- 关于Android NDK开发--编写C语言那些事
- Android之JNI和NDK的那些事
- 关于WAS的那些事....
- 关于foreach的那些事
- 关于成长的那些事
- 关于DOCTYPE的那些事
- 关于爱情的那些事。
- 关于http的那些事
- 关于年终奖的那些事
- 关于 DWR 的那些事
- 关于图片的那些事
- 关于补码的那些事
- 关于JSP的那些事
- 关于前端的那些事
- 关于多线程的那些事
- 关于cvScalar的那些事
- 关于cvAbsDiff的那些事
- python解决中文问题
- 给金额添加千分符,用swift语言编写.
- Android编程之LayoutInflater的inflate方法详解
- github上HEXO博客的建立
- 对象之间的关系
- 关于NDK的那些事
- 前端ui框架
- Fortran学习笔记(1-3)
- 第17回 音视频,一碟小菜
- android view显示在最顶层
- 开始架设kbengine
- winsecs .net 开发参考手册
- bower的使用
- quartz2d基本绘图