我亲爱的三五读者,Smali语法讲解过的人已经太多了,而且前辈们讲的都很好,或许我没有必要再做重复的工作,我想把笔墨更多的投入在有差异化,更体现教程价值的地方。所以我们这一节中换一种方式学习Smali语法。
一、博客推荐
https://www.jianshu.com/p/b23782460f61
https://blog.csdn.net/wdaming1986/article/details/8299996
https://www.jianshu.com/p/ba9b374346dd
http://www.tasfa.cn/index.php/2016/05/07/android_re_smali/
https://www.cnblogs.com/alisecurity/p/5526811.html
初次之外也可以自行百度”Smali语法“,相信Smali的学习对于你来说并不会太难。
二、知识梗概
学习Smali并不需要你达到手写Smali逻辑的地步,没必要,甚至你不需要能完全看懂反编译App中的Smali代码,你只需要能看懂简单的Smali,能大致明白逻辑即可,我列一下必须了解的一些知识点。
- Smali表示各种数据类型,比如int,float,数组等等。
- Smali基本语法结构分析
- Smali常用条件跳转分支
- Smali寄存器与变量
寄存器和变量一定要弄懂。
三、语法参考
遇到不理解或者没见过的Smali文法,可以直接查看如下链接中的Smali语法表。
http://www.blogjava.net/midea0978/archive/2012/01/04/367847.html?plg_nld=1&plg_uin=1&plg_auth=1&plg_nld=1&plg_usr=1&plg_vkey=1&plg_dev=1
下一讲我们开始搞Sign参数的生成,大家加油。