flutter实战!一个Android应届生从上海离职,深度好文
开头
Android开发中,热修复技术被越来越多的开发者使用,市面上也出现很多成熟的开源框架。但对大部分开发者来说,热修复依然是一个既熟悉又陌生的词。仅仅知道热修复的作用,会使用框架,那样意义并不大。我们还要知道热修复的原理,这样不管框架如何变化,只要基本原理不变,我们都可以快速掌握它,或者自己动手写一个适合项目的热修复框架。
第一阶段:Android 基础知识回顾:
- 回顾Android 开发编程,深入理解Android系统原理和层次结构,深入分析Handler源码和原理;
- 回顾Java,C/C++,Kotlin、dart 在Android开发中必用的语言,熟悉一下几种语言混淆后的特性;
- 回顾Android IPC和JNI的底层原理和热更新技术回顾Native开发要点,使用C++结合NDK完成Android Native开发;
- 回顾Android开发中常用的 AMS、PMS、WMS原理和App启动中服务加载的流程;
- 回顾Android开发中必用的 Google的MVVM框架:DataBinding+LiveData+ViewModel;
- 回顾Android开发中必用的 Google的MVP框架:Dagger2;
- 回顾Android开发必用的网络架构:Okhttp3+RxJava2+Retrofit2+Rxdownload4+Rxcache+Glide;
Android 逆向基础知识:
- 熟悉Android逆向工具的使用,如apktool,IDA,dex2jar,JEB,Androidkiller,Androguard等;
- 深入分析APK中包含的各文件格式,分析Android系统源码中解析APK的相关代码;学习和熟悉smali语言(重点);
- 仿微信写一个APP,并利用工具逆向出apk内的代码,并对比源码分析。
入门知识总结和实战(逆向入门):
- 知识梳理,常用工具安装,adb命令与Linux常用命令,常见登录逻辑分析;
- 分析ELF可执行程序,调式ELF可执行程序;ARM汇编与寄存器,ARM反汇编速成,ARM指令机器码,常用ARM指令集;
- 反编译ELF文件与ObjDump,ELF文件解析与readelf,ELF文件解析与010Editor,深入分析ELF文件结构;IDA静态分析,IDA动态调式;
- 简易计算器实现及分析(练习);
- 字符串加密与解密,冒泡排序算法分析;
- 关键android_server文件检测,IDA调试端口检测;
- ELF可执行程序加载so库,DEX解析与dexDump,DEX解析与010Editor;
- 实现自己的Dex解析工具与GDA(练习);
- Androidkiller动态调试smali代码插件,AS+smalidea调式smali代码;
- Log注入实现免注册,如何定位关键代码,去除java层签名验证,去除广告和弹窗(实战);
- 推荐阅读《AndroidXXXXXX……》随便找本系统源码讲解的书看看吧;
Android 基础算法和安全协议:
- 密码学,对称加密算法,非对称加密算法,散列函数;
- 数字签名,数字证书,SSL证书检测,协议与安全协议;
- 了解服务器端与客户端通信协议分析;
- 使用Charles抓登录封包和验证码,协议构造与Java层MD5算法,动态调式smali代码与sign字段;
- 协议构造类与SO层DESCBC算法,协议关键字段SIGN与SO层MD5算法,动态调试协议字段,动态调式协议关键字段SIGN;
- 协议关键字段pwad和sign,动态调式协议字段拼接与MD5加密,分析so层OpenSSLSHA1算法;
- 封包加密与反编译失败,使用方法跟踪分析加密;java层逆向分析,分析so层TEA算法;
- 练习:抓取验证码和登录封包,分析协议关键字段与RSA算法,证书与RSA原理及源码分析;
- 对称加密AES、PBE与CRC算法,数字签名RSA、DSA算法;
第二阶段:Android 逆向进阶学习:
- Android 系统结构深入分析,自定义 ClassLoader,自定义注解和元注解原理分析;
- 了解AndroidNDK,静态注册,动态注册,SO加载分析,
- App保护策略去除霸哥磁力搜素APK签名验证,一键去除签名验证,静态代{过}{滤}理,动态代{过}{滤}理Hook Activity启动函数,
- Hook签名验证函数介绍xposed框架:Xposed框架:
- 绕过验证码注册Xposed框架:
- 登陆劫持Xposed框架:
- 篡改IMEI信息介绍CydiaSubstrate框架:
- Java层Hook:
- 篡改系统文字颜色Java层Hook:
- 修改方法返回值绕过登录Java层Hook:
- 篡改游戏金币Java层Hook:
- 篡改主机名和端口号
- Native层Hook:
- ADBI框架:ELFARMHOOK框架内存抠取Dex文件过反调试技巧C++游戏
- 逆向练习:动态调试2048纯算法游戏,Zygote+Hook使2048游戏秒过关;
Android NDK与JNI全面剖析:
- so动态库的介绍
- JNI动态注册和静态注册
- NDK Build 工具介绍
- Cmake工具介绍
- JNI.h介绍
- Android 源码工具和技巧
- ijkplayer 源码分析及原理讲解
- AndFix 源码分析及原理讲解
- Java调用so库的动态流程解析
- NDK实现增量更新
- 案例:NDK实现换脸等工业级图像识别
- 案例:NDK文件实现拆分和加密处理
Android 加固防护和脱壳简介:
- DEX文件、ODEX文件与OAT文件;
- XML文件与ARSC文件;
- 分析App加固的产生及背景,最初加固方式,加固技术的发展;
- HOOK制作脱壳机,定制自己的脱壳系统;
- DexClassLoader动态加载分析,DEX自解析重构技术;
- 三代梆梆加固原理分析;爱加密加固原理分析;
- 360加固与脱壳机,360加固VM与置换表;
- 辅助脱壳机,IDA动态调式脱爱加密壳;
- IDA动态调式脱360壳,IDA动态调式脱SO壳;
- 脱360壳-dex2oat,脱360壳-drizzleDumper;
- 百度加固DD大法,百度加固VM与置换表;
- 阿里加固与脱壳机,腾讯乐固;
- ARSC资源保护与注解;
- 脱壳神器ZjDroid:
- 捕鱼达3加固技术总结;
Android 脱壳与反脱壳分析:
- Android脱壳中的思路,技巧elf结构详解:
- 动态运行库so文件的文件组成结构elf结构详解:
- 加载so文件的流程elf文件变形与保护,elf文件修复分析,so加壳文件修复常用调试检测方法与过检测方法
- Android源码定制添加反反调试机制Android dvm 脱壳,Dalvik dex处理分析IDA脱壳脚本编写,Odex修复方法,
- IDAOdex修复脚本编写
进阶知识总结和企业级实战(逆向进阶):
- 病毒分析与脱壳学习,用Ransomware类和木马类进行学习;
- 手动脱壳《王者X耀》练习;
- 从0开始打造自己的破解代码库;
第三阶段:Android 漏洞分析和挖掘:
- 学习常见的漏洞类型和原理。例如堆溢出,栈溢出,UAF等,可以参考漏洞分析相关书籍;
- 关注Android Security Bulletin,根据提供的diff分析漏洞成因;
- 学习并调试以前的经典漏洞;
- 学习漏洞挖掘fuzzing思路,参考书籍推荐《Android安全XXXX》;
- 病毒分析与病毒脱壳实战;
Android 虚拟机技术、系统源码分析、刷机机制介绍、制作ROM刷机包:
- ASP代码注入式写法;
- Android 免root进行hook;
- Android虚拟机原理,Android多开原理讲解;
- 在apk内部写一个虚拟机,在apk内安装apk;
- 虚拟机适配Android 10和64位系统;
- 从0开始开发自己的虚拟机库;
- 最完善的刷机工具 :魔趣 ROM;
- 最完善的刷机工具 :Devices - TWRP;
最后我还整理了很多Android中高级的PDF技术文档。以及一些大厂面试真题解析文档。需要的朋友都可以点击GitHub直接获取方式
Android高级架构师之路很漫长,一起共勉吧!
%9D%A2%E8%AF%95%E6%8B%BF%E9%AB%98%E8%96%AA%EF%BC%81.md)直接获取方式**
[外链图片转存中…(img-G13LVIA5-1612338610376)]
Android高级架构师之路很漫长,一起共勉吧!
flutter实战!一个Android应届生从上海离职,深度好文相关推荐
- 一个Android应届生从上海离职,面试建议
前言 我今年38岁,失业前是南方二线城市某知名互联网公司的部门技术主管,婚姻幸福,膝下有一儿一女,组成一个好字,房子车子:有一辆十几万的汽车,一套月供八千的房子,妻子全职在家带娃,家里的一切开销全部指 ...
- 一个Android应届生从上海离职,威力加强版
基本情况 先说一下个人基本情况,计算机科学与技术专业.主要学的Android开发,所以投的岗位都是Android开发工程师.投了知乎,内推了阿里蘑菇街腾讯百度网易.腾讯百度都没有收到面试,知乎Skyp ...
- 安卓开发与ios开发!一个Android应届生从上海离职,复习指南
前言 北京字节跳动科技有限公司成立于2012年3月,是最早将人工智能应用于移动互联网场景的科技企业之一.其独立研发的"今日头条"客户端,开创了一种全新的新闻阅读模式. 我一直很向往 ...
- 真牛!一个Android应届生从上海离职,挥泪整理面经
前言 我今年38岁,失业前是南方二线城市某知名互联网公司的部门技术主管,婚姻幸福,膝下有一儿一女,组成一个好字,房子车子:有一辆十几万的汽车,一套月供八千的房子,妻子全职在家带娃,家里的一切开销全部指 ...
- 一个Java应届生从上海离职,附项目源码
01 Redis面试问题常见划分(6个部分) Redis 的概念理解 Redis 基本数据结构详解 Redis 高并发问题策略 Redis 集群结构以及设计理念 Redis 持久化机制 Redis 应 ...
- java大型项目架构,一个Java应届生从上海离职
最重要的话 2021年,真希望行业能春暖花开. 去年由于疫情的影响,无数行业都受到了影响,互联网寒冬下,许多程序员被裁,大环境格外困难. 我被公司裁掉后,便着急地开始找工作,一次次地碰壁,完全消磨掉了 ...
- 2017年应届生落户上海流程简介
2017应届生落户上海策略:通常都是打分政策,72分即可入沪. 首先上海这边要接收了,然后家里才能转出,最后才能落到你目前居住所在社区公安局. 1.租赁备案.去房屋租赁地所在居委会登记,并在一个星期内 ...
- 上海落户计算机水平毕业研究生,2021应届生落户上海打分标准,部分毕业生可直接落户上海...
1.教育学历 (1)最高学历:博士27分.硕士24分.本科21分 (2)毕业学校:教育部重点建设高校.在沪211工程高校.科学院在沪各研究所15分:其它211工程高校.中央直属研究生培养单位.上海各高 ...
- 看,2021年,一个普通应届生的成长之旅
看,2021年,一个普通应届生的成长之旅 1.一览无余,我的2021 2.执笔写博 3.沉淀 4.备战秋招 5.披荆斩棘,再入江湖 6.再见2021,你好2022 1.一览无余,我的2021 我的 ...
- 一个普通的二本Android应届生真实的杭州求职经历
前言 2020年毕业于一所普通的二本学院,向大厂扔过几次简历,就跟打水漂一样,最终沉底,从上海离职到杭州,对于一个应届生来说是一次艰难的选择,更稳妥的方式应该是在实习结束后,留在原公司再呆一年.话虽是 ...
最新文章
- java oracle分页_oracle 分页存储过程和java代码
- 整数边界对齐方式_嵌入式基础——字节对齐
- Python Day18
- 《人脸识别原理及算法——动态人脸识别系统研究》—1章1.2节人脸识别相关学科的进展...
- Openvswitch手册(5): VLAN and Bonding
- 关于百度网盘限速第三方客户端的提醒
- 回调函数之Java/C++版本
- error: storage class specified for parameter问题
- AVS软件解码器的优化
- mysql利用树建立索引_MYSQL(一)——-为什么使用B+树或者B-树做为索引结构? – 算法网...
- 锐捷认证客户端常见问题解决及简介
- Linux启动时间优化-内核和用户空间启动优化实践
- Smack核心机制浅析
- 中国土地市场网爬虫——浏览器Cookie验证(简单)
- vs code 语法_VS Code上的Java现在具有语法模式和SonarLint支持
- Java基础再回首之设计模式系列①-----StrategyPattern 策略者模式(案列教程,附带demo)
- c语言喜羊羊,青青草原101C位之争,喜羊羊vs懒羊羊
- java中分割字符串总结 - 超级无敌详细版本。不仅要熟悉各种方法还要做到灵活运用。
- 工作中如何进行时间管理?
- 关于Navicat ER图