在 Objective-C 中替换(swizzle)整个类(包含所有实例和静态方法)

Bed*_*ord 5 class objective-c ios method-swizzling

我是方法 swizzling 的新手,现在我想在 iOS 上做更多的事情:Objective-C 中是否有一种简单/优雅的方法可以将现有类(ClassA)的所有调用重定向到另一个类(ClassB) ,前提是它具有完全相同的方法)。我知道可以使用单个方法(方法混合)来做到这一点,但是整个类呢?

  • 获取所有类的方法列表并一一调整它们?
  • 只调整类的 init 方法?
  • 任何其他方式?

我要替换的类有很多静态方法,我不想碰原始代码。