【一起来玩NDK】篇一:不好意思,学会NDK真的无所不能

【一起来玩NDK】篇一:不好意思,学会NDK真的无所不能

Android小彩虹2021-07-16 14:07:40120A+A-

广告时间

宝沃汽车-智能系统部正在招聘Android开发工程师,感兴趣的可以发送简历到 liyilin7@borgward.com,期待跟你成为同事!

前言

作为Android工程师,Java和Kotlin是我们经常使用的开发语言

但在涉及到一些需要高性能,或与底层相关,或与安全相关的功能,就不得不使用C/C++来实现,Java语言也提供了相关接口(JNI)来调用native相关的代码

Android平台又在此基础上提供了native相关的开发套件NDK(native develop kit)让我们更加便利的实现Android平台与native代码之间的交互

作为开端,本篇文章将简单介绍我们使用NDK可以做哪些事情,实现哪些功能

下面,正文开始!

使用NDK可以做什么?

NDK开发并不难,因为NDK只是开发工具,但前提是掌握了C/C++相关的语言基础,JNI相关的调用API,以及Cmake相关的编译知识,本系列也会在此基础上进行的展开分析

安全相关

将部分代码放在C语言中去实现,可以增加逆向分析的难度,对程序来说也更安全。针对这一块目前没有发现比较好的开源库,后面我会自己去做一些代码示例,或者做成开源库的形式

处理音频(Audio) 

  1. audio-echo: github.com/android/ndk…
  2. oboe: github.com/android/ndk…
  3. opensl es: github.com/android/ndk…
  4. MIDI: github.com/android/ndk…

处理视频(Video)

  1. codec: github.com/android/ndk…
  2. openMAX: github.com/android/ndk…
  3. ffmpeg: github.com/FFmpeg/FFmp…

处理图片(Picture)

  1. plasma effect : github.com/android/ndk…
  2. webp: github.com/android/ndk…
  3. image-p3: github.com/android/ndk…

神经网络(Neural Network)

  1. NNAPI: github.com/android/ndk…

OpenGL(Render with OpenGL)

  1. render tea port: github.com/android/ndk…
  2. render san angles: github.com/android/ndk…
  3. sensor graph: github.com/android/ndk…
  4. GLES2.0: github.com/android/ndk…

5 .GLES3.0 : github.com/android/ndk…

游戏开发(3D Game)

github.com/android/ndk…

后记

在下面的文章中,我将逐项分析相关源码,并拓展实现相关功能,感兴趣的小伙伴可以关注一波!

我是释然,我们下篇文章再见!

点击这里复制本文地址 以上内容由权冠洲的博客整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!

支持Ctrl+Enter提交

联系我们| 本站介绍| 留言建议 | 交换友链 | 域名展示
本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除

权冠洲的博客 © All Rights Reserved.  Copyright quanguanzhou.top All Rights Reserved
苏公网安备 32030302000848号   苏ICP备20033101号-1

联系我们