您的位置:首页 > 移动开发 > Android开发

Android NDK开发第一蛋

2016-03-12 21:30 267 查看

应届毕业生一枚,毕业后学习安卓并且爱上编程,热爱技术渴望成为技术屌

qq:1275054668 email:

pook216@163.com

我的经历

android菜鸟一个,第一次写博客,个人表示很紧张。学习安卓大概已经七八个月了自我感觉技术已经初步入门,从最初的能够写出一个hello world就欣喜不以到现在能够找到一家心仪的公司并且能够在项目中独挡一面,回想整个学习历程还真是唏嘘不以,不过也许正是学习中的各种挫折才让只是变得更加宝贵吧。

我要做什么

接下来的一段时间内我将要把自己一段时间内NDK的学习经历和心得体会分享给大家(虚荣心使然了),首先感谢带我NDK进阶的良师益友 大牛Jason 再说一句我NDK也是初学,大牛求绕路走

为什么要学习NDK

安卓有过一年经验的人应该深有体会,android本身的知识并不多,有一种夸张的说法是这样的,懂得ListView适配数据的人都可以称作android工程师,话虽夸张但是话糙理不糙,大多数android者平时做的事情都就是一些安卓原声控件的使用和jason数据的解析然后显示(枯草乏味好没劲啊),而当一个涉及底层的需求拿来时我觉得大部分安卓开发者内心都是蒙圈的,为什么?因为我们中大多数人都已经被局限在android原生开发的小圈子里了,而NDK就是java代码调用C和C++代码实现一些安卓不能实现或者效率低下的一些功能(这句应该放到下面说才对)从而为我们打通底层的通道。

NDK什么是NDK

java代码调用C和C++代码实现一些安卓元素不能实现的一些功能(个人理解). 看到这里大家心里想到的是什么,我相信大部分人内心依然是蒙圈的,的确技术的东西想要通过语言表达清楚再被人理解的确不是一件容易的事情。不过没关系我会在之后的博客里面用运用代码和例子来帮助大家理解。

java C C++ Jni的关系

啰嗦了这么多到了本次课程知识点的讲解了

下面的图片基本阐述了三者的关系



Jni是Java和C级C++之间的桥梁Java通过类里面的Native方法可以将java类中的变量和参数传人Jni,同时也能获得Jni的中的变量和参数,而在Java本地方法生成的Jin方法中我们就可以调用一写优秀的C C++世界的开源库当然也可以自己写类库,这样Java与C和C++的通信就完成了。本次课程比较啰嗦之后的课程会变成纯粹知识的讲解,尽量少扯淡少浪费大家时间。

学习NDK需要哪些准备

C C++基础 Jni

这些我会在之后的博客稍有提及,事先提醒NDK的学习过程是抽象而且枯燥乏味,甚至是让人头痛欲裂的,如果想从头写下来恐怕是要死掉无数脑细胞的,但是正如我刚交的好朋友波神所说。想成为android大牛就必须学习NDK,所以无论多么痛苦希望大家和我一起坚持下去,只要坚持到最后再愚笨的人也会成为胜利者

最后用我最喜欢的一句名言收个尾

我不知道在别人看来,我是什么样的人;但在我自己看来,我不过就象是一个在海滨玩耍的小孩,为不时发现比寻常更为光滑的一块卵石或比寻常更为美丽的一片贝壳而沾沾自喜,而对于展现在我面前的浩瀚的真理的海洋,却全然没有发现。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: