写点什么

客 2 消,客 1 消,客 0 消,android 热修复视频

用户头像
Android架构
关注
发布于: 22 小时前


最近看到很多客户端要消失的言论,整体感觉就是贩卖焦虑。


不过,客户端在走下坡路确实是真的。目前客户端存在的原因在于跨平台性能不够好,但差距在缩减。


客户端工作三年和工作五年十年的差距,大多数都在深度广度上,源码了解更深,解决的 bug 多一些,但工作三年开发的 app 已经够用。


现在贩卖焦虑也是好事,能提前有危机意识。大前端趋势是肯定的,react、flutter 还要继续卷着学。有机会做管理就努力争取。


不要把鸡蛋放到一个篮子里,要提前规划后路,如果不做这行了,以后靠什么谋生?值得我们深思。


我自己是做客户端的,自己也在招人,理性说几句。客户端可做的事情太多了,可做的深度也更深。一般小厂快速开发迭代上线,rn 的技术选型会更好一些,毕竟快速试错和开发成本都比较低,对大厂来说,一方面人力成本不是太在意,另外客户端确实能做的事情更深更多,轮子之类的也会自己维护。所以对于只做业务,写写 ui,调调 api 的客户端可能会淘汰,但是对于底层的客户端反而是非常稀缺的。


在现在这个阶段,公司之间的技术鸿沟已经非常明显,开发者身在其中,也因为自身学习能力,环境,项目等等的差别,技术上的差距越拉越大,造成了工作几年之后的两级分化,并且这种差距的拉开不是靠自己的努力就能弥补的。在前段时间面试了一个在某一线手机厂商做 App 的同学,985 出身,工作 3 年,目前也是公司的核心骨干,跟我说了他做的很多 UI 上的优化和重构工作。他们的 App 团队大概是 4,5 个人,看的出来他已经在力所能及的范围内努力做到最好,可惜,受限于团队规模,支持力度和技术储备,他的天花板来的太快,做的不够深入,技术能力也不够全面。


那面对这种情况,作为开发者,我们能做的是什么?最基本的,脱离舒适区,不停磨练自己的技术。举我自己的例子,刚进公司的时候我主要做的是 UI,平时搞一些页面上的优化,解决一些小 BUG 和 ANR,做的还算不错;因为之前做的不错,也因为方向变化,大半年之后我开始切换到做视频下载,后来又开始做视频播放,一年半多时间里跟我的导师把空间播放器和下载器推倒了重做,到现在各项指标都很不错。刚开始切换的时候很痛苦,音视频领域入门有一定门槛,项目压力非常大,之前又完全没有接触过。那段时间不知道多少次 15 楼南区半夜和假日只剩我跟我导师两个人在公司加班,可现在想想也确实是成长最快的时候。这块做的差不多了,今年又开始做编解码,继续在音视频这块深挖下去。所以就是这样,技术不行就深挖技术,觉得环境束缚了你就尽快跳槽,保持自己足够的竞争力。或许一次跳槽还没有办法改变什么,但这是一个量变产生质变的过程,一份不断向上的简历也能为你敲开很多公司的大门。


我在一线互联网企业工作近十年,指导过不少同行后辈。帮助很多人得到了学习和成长。

[](

)应用层开发


Android 原生开发,需要重点关注的依然主要是各种性能优化,启动速度,耗电量,流畅度,网络优化再到大厂项目实战,这些都是作为一名优秀 Android 开发具备的基本素养。


  • 启动速度

  • 流畅度

  • 抖音在 APK 包大小资源优化的实践

  • 优酷响应式布局技术全解析

  • 网络优化

  • 手机淘宝双十一性能优化项目揭秘

  • 高德 APP 全链路源码依赖分析

  • 彻底干掉 OOM 的实战经验分享

  • 微信 Android 终端内存优化实践



以上资源均免费分享给大家,[https://github.com/Android-Alvin/Android-LearningNotes](


) 中已收录,里面包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…


[](


)音视频开发




音视频/高清大图片/人工智能/直播/抖音等等这年与用户最紧密,与我们生活最相关的技术一直都在寻找最终的技术落地平台。


以前是 windows 系统,而现在则是移动系统了,移动系统中又是以 Android 占比绝大部分为前提,所以 Android NDK 技术已经是我们必备技能了。要学习好 NDK,其中的关于 C/C++,jni, Linux 基础都是需要学习的,除此之外,音视频的编解码技术,流媒体协议, ffmpeg 这些都是音视频开发必备技能,而且 OpenCV/OpenG/这些又是图像处理必备知识。


接下来我们可以通过字节跳动抖音部门整理音视频学习手册,来学习如何进行音


《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》
浏览器打开:qq.cn.hn/FTe 免费领取
复制代码


视频开发。


以下是这份开发文档的部分章节:


阶段一:Android 多媒体


第 1 章 三种方式绘制图片


第 2 章 AudioRecord 录制 PCM 音频


第 3 章 AudioTrack 播放 PCM 音频


第 4 章 Camera 视频采集


第 5 章 MediaExtractor MediaMuxer 实现视频的解封装与合成


第 6 章 MediaCodec 硬编解流程与实践



阶段二:OpenGL ES


第 7 章 OpenGL ES 基本概念


第 8 章 GLSL 及 Shader 的渲染流程


第 9 章 OpenGL ES 绘制平面图形


第 10 章 GLSurfaceView 源码解析 &EGL 环境


第 11 章 OpenGL ES 矩阵变换与坐标系统


第 12 章 OpenGL ES 之纹理


第 13 章 OpenGL ES 滤镜 (篇一)


第 14 章 OpenGL ES 实时滤镜


第 15 章 OpenGL ES 粒子系统 - 喷泉


第 16 章 OpenGL ES 粒子效果-烟花爆炸


[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-T38lwFVk-1618385464192)(https://upload-images.jianshu.io/upload_images/24944278-ec6e4cfc22accf3a.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]


阶段三::JNI&NDK


第 17 章 JNI 与 NDK 的学习和使用


第 18 章 JNI - 引用类型、异常处理、函数注册


第 19 章 NDK 构建方式 ndk-build 与 cmake


第 20 章 指针、内存模型、引用


第 21 章 运算符重载、继承、多态、模版

用户头像

Android架构

关注

还未添加个人签名 2021.10.31 加入

还未添加个人简介

评论

发布
暂无评论
客2消,客1消,客0消,android热修复视频