微信Android架构历史
为何再次重构微信
重塑模块化
取舍和选择
代码之外,架构之内

4.蘑菇街 App
蘑菇街 App 的组件化之路
实现方式
组件生命周期管理
壳工程
遇到的问题
持续集成
周边设施
小结

蘑菇街 App 的组件化之路·续
统一的调用实现
通过 Category 来统一组件对外暴露的接口
更明确的表述
注册这个组件关心的 URL
注册这个组件能够被调用的方法/属性
在 App 生命周期的不同阶段做不同的响应
针对casatwy的一些回应
小结

5 爱奇艺 App
关于组件化
基于Service的IPC通信
组件化跨进程通信的核心诉求
Andromeda
架构分析

6.美团 App
外卖客户端容器化架构的演进
背景
美团外卖业务介绍
美团外卖移动端历史架构概述
美团外卖容器化架构全景图
什么是容器化架构
容器化架构的优势
外卖容器化架构全景图
容器化的挑战
外卖跨端容器建设
MRN容器
Titans容器
外卖页面容器建设
页面容器化设计思路
业务构建模块标准化
小结
外卖容器化架构的衡量指标
容器化架构衡量指标的特点
链路指标
关键指标
外卖容器化架构的监控运维
外卖容器化架构的发布能力
容器化架构发布体系
跟版本发布流程
bundle资源发布
多种发布能力综合使用

7. 美团Android组件化方案及组件消息总线modular-event实战
背景
组件化之前的状态
组件化方案调研
美团其他团队组件化方案调研
组件化方案
组件化消息总线框架modular-event
组件消息总线modular-event的实现
消息总线modular-event的结构
使用动态代理实现运行时调用
订阅和发送的模式
8. 美团Android消息总线的演进之路:用LiveDataBus替代RxBus、EventBus
背景
发布/订阅模式
RxBus的出现
引入LiveDataBus的想法
为什么使用LiveData构建数据通信总线LiveDataBus
LiveDataBus的设计和架构
LiveDataBus最终实现
9.WMRouter:美团外卖Android开源路由框架
10.美团猫眼android模块化实战-可能是最详细的模块化实战

11.携程App(篇幅过长,无法展示全部)
12.支付宝 App
…

相信大家都知道安卓应用开发的大量难题,其实最后都需要插件技术去解决。
现今插件技术的使用非常普遍,比如微信、QQ、淘宝、天猫、空间、携程、大众点评、手机管家等等这些大家在熟悉不过的应用都在使用。
插件技术可以给项目开发带来巨大的好处,比如:并行高效开发、模块解耦、解除单个dex函数不能超过65535的限制、动态更新升级、按需加载等等。
掌握好插件技术,需要如下的安卓基础和相关知识,例如:
Android应用程序安装,加载过程
Android应用运行机制,生命周期调用原理
Android应用资源编译打包原理
Android应用读取资源原理
Android系统AMS、PMS、NMS等系统服务的运作原理
增量更新
HOOK等技术
本文将从基础的插件化原理到Android插件化初探再到大厂架构演化实战应用,总结出了较为全面与完整的安卓插件技术与插件化对 Android开发的重要性。
1.类加载
2.双亲委托机制
3.资源加载
4.四大组件支持

5 ProxyActivity代理
6 hook方式
7 其他组件
8 Android动态加载框架DL的架构与基本原理解析
9 Android 插件化框架 DynamicLoadApk 源码分析

1.从零开始实现一个插件化框架(1)
概念
插件化解决的问题
各插件化框架对比
插件化实现
ClassLoader实现类

2.从零开始实现一个插件化框架(2)
Activity的启动流程
寻找Hook点
撸码阶段
代理对象
偷天换日,替换原来的Intent
ActivityThread
将代理的intent替换回来
注意

3.从零开始实现一个插件化框架(3)
插件资源加载
Android中资源加载流程
ActivityManager
ActivityThread
AppCompatActivity
总结

1.360插件开发之DroidPlugin
插件开发之360 DroidPlugin源码分析
Hook机制类图关系
Hook机制的时序图关系
Manifest权限申请
基类Hook做了什么?
ProxyHook
BaseHookHandle
HookedMethodHandler
ReplaceCallingPackageHookedMethodHandler
IO重定向
递归遍历
以IPackageManager为例
插件开发之360 DroidPlugin源码分析之Binder代理

2. 滴滴VirtualApk实战
配置
应用
原理
总结
问题

3.基于VirtualAPK Android重构之插件化
Plug-in Hello World
插件化框架的选择
插件化原理
最后我想说
为什么很多程序员做不了架构师?
1、良好健康的职业规划很重要,但大多数人都忽略了
2、学习的习惯很重要,持之以恒才是正解。
3、编程思维没能提升一个台阶,局限在了编码,业务,没考虑过选型、扩展
4、身边没有好的架构师引导、培养。所处的圈子对程序员的成长影响巨大。
金九银十面试季,跳槽季,整理面试题已经成了我多年的习惯!在这里我和身边一些朋友特意整理了一份快速进阶为Android高级工程师的系统且全面的学习资料。涵盖了Android初级——Android高级架构师进阶必备的一些学习技能。
附上:我们之前因为秋招收集的二十套一二线互联网公司Android面试真题(含BAT、小米、华为、美团、滴滴)和我自己整理Android复习笔记(包含Android基础知识点、Android扩展知识点、Android源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。)

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

3.基于VirtualAPK Android重构之插件化
Plug-in Hello World
插件化框架的选择
插件化原理
最后我想说
为什么很多程序员做不了架构师?
1、良好健康的职业规划很重要,但大多数人都忽略了
2、学习的习惯很重要,持之以恒才是正解。
3、编程思维没能提升一个台阶,局限在了编码,业务,没考虑过选型、扩展
4、身边没有好的架构师引导、培养。所处的圈子对程序员的成长影响巨大。
金九银十面试季,跳槽季,整理面试题已经成了我多年的习惯!在这里我和身边一些朋友特意整理了一份快速进阶为Android高级工程师的系统且全面的学习资料。涵盖了Android初级——Android高级架构师进阶必备的一些学习技能。
附上:我们之前因为秋招收集的二十套一二线互联网公司Android面试真题(含BAT、小米、华为、美团、滴滴)和我自己整理Android复习笔记(包含Android基础知识点、Android扩展知识点、Android源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。)
[外链图片转存中…(img-5QUHAVVx-1643518036304)]
里面包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…