前言
相信很多Android开发者,都没有过多接触NDK,或许听过,或许了解过,但不曾知道NDK 到底要学哪些?
下面小编整理的一线互联网 Android高级NDK要学习的技术知识点:
如果想往底层方向发展,突破native层瓶颈的,
想与同行拉开差距,保持核心技优势,
没有任何C基础编程语言
可以看看:
基础知识
1:函数
linux内存布局原理
指针(N级指针概念、指针数组、数组指针)
2:结构体和共用体
3:so动态库设计与编译
C++基础晋升
1:命名空间、引用、C/C++混合编程、引用、函数扩展
2:c++编译器对象管理模型分析、类的继承、多态、抽象类、函数模板、类模板,模板的继承
3:C++类型转换、C++ IO、异常处理
4:序列式容器、堆栈容器、双向链表容器、关联式容器、对组、算法详解
5:对象管理、类的构造和析构、友元函数与友元类、操作符重载
MakeFile语法详解
1:静态库与动态库原理与编译流程详解
2:MakeFile文件走读
3:编译,链接,处理程序
4:Makefile语法规则
5:预定义变量,预定义宏函数
6:Android.mk文件与so打包流程详解
Shell语法详解
1:变量的定义到使用
2:语法(数组,管道,遍历,流程控制,条件判断,云算法)
3:方法参数传递机制详解
4:shell脚本编写与执行编译ffmpeg库
详解及其AndroidStudio编译So原理
1:AndroidStudio2.3之后为什么集成Cmake语法来编译So过程详解
2:cmake与makefile区别详解
3:Cmake语法详解
指令(meassage,ADD_DEFINITIONS,FILE,INCLUDE,OPTIONAL,FIND_FILE ,FIND_PATH,FIND_LIBRARY)
常用Cmake变量与环境变量(CMAKE_BINARY_DIR
PROJECT_BINARY_DIR _BINARY_DIR)
4:CmakeList.txt(语法配置,引入第三方静/动态库,引入额外的CMakeList.txt文件,编译模块划分)
5:CmakeLists.txt文件详解(add_library,find_library,target_link_libraries方法执行流程)
一线互联网企业核心技术
1:手写阿里云andfix热修复与Sophix原理分析(class字节码在虚拟机加载流程,探索起源之java方法调用底层分析)
2:java方法在Dalvik和Art虚拟机运行原理
3:利用系统源码打造gif图的播放
4:Bsdiff实现增量更新(服务端linux生成patch)
爱奇艺音视频实战
1:手写shell脚本编译FFmpeg(gcc命令详解)
2:AndroidStudio搭建音视频开发环境(集成FFmpeg环境)
3:音频解码、视频解码、音视频同步处理
4:音视频编码原理详解
视频编码
H261,MEPG1,MPEG2,H263,MPEG4,H264主流编码格式详解
关键帧,前后帧,非关键帧详解
帧内预测,帧间预测与算法
H264视频格式文件走读(sps,pps)
NALU技术在视频编码中的应用
音频
音频编码格式详解(AAC,AC-3,MP3)
通道数详解
采样率与人生声原关系
X264开源解码库编译
Faac库的编译与继承
5:OpenSl
ES对象生命周期详解及音频播放
6:用ffmpeg手写电视台直播app(直播cctv,凤凰卫视)
手写斗鱼视频直播
1:斗鱼直播解决方案(nginx流媒体服务器部署)
2:音视频采集与编码(faac编译到音频推流)
3:视频编码与根据pts和系统计时实现音频同步(X264混合编译和h264编码原理)
4:生产者与消费者实在推流中应用
Opencv详解与应用
1:opencv原理详解,结构体颜色通道使用
2:AndroidStudio
cmake配置OpenCV开发环境
3:opencv人脸跟踪与定位
4:OpenCV人工智能应用揭秘——车牌号码检测与识别
5:人工智能神经网络在分类器中的运用——android 与人工智能
仿写抖音小视频实战课程
1:人脸磨皮算法与美白
2:人脸动态贴纸 (opengl FBO与PBO、着色器GLSL语言、OpenCv人脸定位)
3:大眼瘦脸(图像局部缩放、平移,人脸关键点检测)
4:视频特效处理(灵魂出窍、抖动等)
5:视频与音频合成原理分析以及手写实现
qq音视频通话核心技术
1:腾讯QQ视频通话核心技术-WebRTC
2:webrtc实现点对点通信原理
3:实现内网之间直接通信的穿透原理与机制
4:手写QQ视频通话-打造无延时高质量的p2p通话以及多人视频会议
5:QQ语音变声-让你秒变成萌妹大汉大叔叔
智能家居实战
1:串口通信原理详解
2:协议分析以控制
以上知识点,你都会嘛?
如果没有接触过的,或者不会的,
附《Android核心知识笔记2020》分享
前段时间我和圈子里的几位架构师朋友一起闲聊时的突发奇想,我们在学习Android开发的时候或多或少也受到了一些前辈的指导,所以想把这份情怀延续下去。三个月后,这套资料就出来了,需要这份资料的朋友加Android学习交流群1049273031即可获取。