iOS组件化之生命周期管理

组件化之生命周期管理

组件化过程中,不同模块可能需要实现UIApplicationDelegate的代理方法。非组件化开发过程中可能就是直接在工程AppDelegate中处理不同业务功能的需求,但是在组件化之后,这么做明显是不合理的。

既然组件化了,业务逻辑应该是在各个组件中去处理,不应该跟主工程的业务代码耦合。那么如何实现将UIApplicationDelegate中的代理方法分发到各个组件中去实现呢?

思路:

  1. hook UIApplicationsetDelegate方法,将delegate设置成我们指定的实体类

  2. 在delegate中实现消息转发,将AppDelegate的方法转发到我们的目标实例中,也就是主工程的AppDelegate以及组件中的实现AppDelegate代理的实例

GitHub源码

你可能感兴趣的:(iOS组件化之生命周期管理)