Smali初识

版权声明:内容均为本人一步一步真实记录整个过程。本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u014235093/article/details/82531185

Smali初识

开始Smali的学习之前,也让我回想起很多陈年旧事,它好像就是串联我技术路线的目标或者动力所在。

对Smali接触的真心不多。从大一的时候了解到smali可以用来做ROM移植。之后便在Java Android的开发中爬坑。一直没有机会再接触Smali。直到前几日,在看《深入理解Android热修复技术原理》一书中,通过,作者对比Java原代码和编译为Smali文件之后的代码, 来深度理解热修复技术的底层原理,着实很有意思。也萌发了要学习一下Smali的想法。此外感觉学习Smali的语法,对我现有的技术是一种串联,和提高的机会。原因那就得从回忆说起:

大一,初步了解有Smali这个东西

这得从大学时期说起,因为家境不是很好,大学的时候,才有机会接触到互联网、笔记本、智能手机这些“新型玩具”。当时第一部手机是大一(2012)入学时候,充值送的一步中兴手机。具体型号已经忘记,当时便开始浏览Android手机论坛,比如安智移动叔叔、还有各种ROM之家等等(现在想起来,都是满满的回忆…)。当初看着论坛里的大牛移植着一个个形色各异的手机Rom,真的是羡慕。当时的系统也是百花齐放,比如MIUI、乐蛙、百度云、EMUI、Yunos、TecentOS、FreemeOS 当然还有原生AOSP。但能坚持下来的也只有大厂旗下的MIUI(已经上市的小米)、EMUI(华为不多解释)、YunOS(阿里爸爸)。和新兴的Flyme(魅族、颜值党)、Smartisan OS(锤子党)、氢/氧OS(一加 原生风格)等等.从毕业之后(2016)便很少再关注这些刷机信息。之后也换过不少手机(败家…),中兴、华为、小米、HTC、魅族、一加。最后还是换了IPhone。

在逛论坛期间,就有提过可以用通过Smali来进行Rom制作,当时也是懵逼状态,为了能自己进行ROM的制作,我开始学习Java,并做了当时我们班第一个有界面的课程设计项目。之后便是Android的学习。至今还停留在Java技术表层,Android业务代码的层面。深感无力。

再见Smali

就在前几天,想了解当下热门的热修复技术的时候,《深入探索Android热修复技术原理》中,以编译后的Smali文件为基础,从底层介绍了热修复的相关技术。当看到编译程Smali的代码的时候,才恍然大悟,原来可以通过这种方式加深对Java语言的理解。同时又能熟悉热修复技术,再者,也是继续为我当初目标努力的时候。

计划

学习Smali语法的好处有三,也是上文提到的,可以吧当前的技术串联起来,以后也会以此作为文章的分类,一步一步记录自己的学习过程。

计划如下:

  1. Smali语法学习

  2. 配合Smali对Java加深理解

  3. Android 热修复技术掌握

猜你喜欢

转载自blog.csdn.net/u014235093/article/details/82531185