最后
对于程序员来说,要学习的知识内容、技术有太多太多,要想不被环境淘汰就只有不断提升自己,从来都是我们去适应环境,而不是环境来适应我们!
最后,我再重复一次,如果你想成为一个优秀的 Android 开发人员,请集中精力,对基础和重要的事情做深度研究。
对于很多初中级Android工程师而言,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长且无助。整理的这些架构技术希望对Android开发的朋友们有所参考以及少走弯路,本文的重点是你有没有收获与成长,其余的都不重要,希望读者们能谨记这一点。
为了大家能够顺利进阶中高级、架构师,我特地为大家准备了一套高手学习的源码和框架视频等精品Android架构师教程,保证你学了以后保证薪资上升一个台阶。
以下是今天给大家分享的一些独家干货:
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
奋飞:抓不到包的原因太多了,咱们得用排除法分析下。
- 某音乐App 10.8.4
二、步骤
排查协议
李老板也跟我们混了这么多期,所以基本排除抓包环境的问题。
那么另一个可能就是像某手使用的 quic协议 或者某鱼使用的 spdy协议 了。
上jadx搜一下 “quic”,如果搜不到还可以直接试试 quic
有6个结果,看来我们的猜测是对的,一个一个结果看过来,第三个结果应该有点猫腻。
看上去像是传个协议名称进来。
上Objection
有了怀疑对象之后,先不要着急写代码,用Objection批量Hook印证一下,精准定位之后再去写js。
objection -g com.kxxou.android explore -P ~/.objection/plugins
android hooking watch class ‘com.kxxou.common.network.netgate.o’
结果还是不错的,刷新主页面的时候这个类的函数被调用了,虽然没有我们刚才分析的 a(Ljava/lang/String;)I,不过有可能这个函数只在启动的时候调用一次。
(agent) [559860] Called com.kxxou.common.network.netgate.o.a(int, java.lang.String, java.lang.String)
(agent) [559860] Called com.kxxou.common.network.netgate.o.a(java.lang.String, java.lang.String, java.lang.String)
(agent) [559860] Called com.kxxou.common.network.netgate.o.a(int, java.lang.String, java.lang.String)
然后我们可以写js来慢慢分析了。
一个尴尬的故事
正准备分析的时候,发现一个尴尬的事。我能抓到包了……
也许是App启动的时候自动判断了要走http不走quic协议了吧。
根据职场第一守则:老板是不会错的。 我们毫不犹豫的告诉李老板,搞定了,能抓到包了。 手动狗头。
signature分析
在新歌里面随便点一个评论。
我们今天的目标是这个 signature
掰指头数了数32位,很有md5的潜质。
jadx搜一下 “signature”
这个 hashMap.put 应该是重点考察对象。
一路点进去看到了熟悉的 MD5。
继续用 objection 把整个类跟踪一下
总结
最后为了帮助大家深刻理解Android相关知识点的原理以及面试相关知识,这里放上相关的我搜集整理的Android开发中高级必知必会核心笔记,共计2968页PDF、58w字,囊括Android开发648个知识点,我把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包知识脉络 + 诸多细节。
网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。
2021年虽然路途坎坷,都在说Android要没落,但是,不要慌,做自己的计划,学自己的习,竞争无处不在,每个行业都是如此。相信自己,没有做不到的,只有想不到的。
虽然面试失败了,但我也不会放弃入职字节跳动的决心的!建议大家面试之前都要有充分的准备,顺顺利利的拿到自己心仪的offer。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
真正的技术提升。**
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!