CaptainHook 使用方法

CaptainHook 使用方法

使用到的类和方法, 都需要再对应的头文件, 先进行声明.

1.hook函数

1.hook类
    CHDeclareClass(<#name#>)

2.hook类方法
    CHOptimizedClassMethod0(<#optimization#>, <#return_type#>, <#class_type#>, <#name#>)

3.hook对象方法
    CHOptimizedMethod0(<#optimization#>, <#return_type#>, <#class_type#>, <#name#>)

2.新增函数

1.新增属性
    CHPropertyRetainNonatomic(<#class#>, <#type#>, <#getter#>, <#setter#>)

2.新增方法
    1.新增类方法
        CHDeclareClassMethod0(<#return_type#>, <#class_type#>, <#name#>)
    2.新增对象方法
        CHDeclareMethod0(<#return_type#>, <#class_type#>, <#name#>)

3.构造函数

CHConstructor{}
在构造函数中 
          CHLoadLateClass(<#name#>);            hook类
          CHClassHook0(<#class#>, <#name#>)     hook方法
          CHHook0(<#class#>, <#name#>)          添加属性时,需要这样写对应的set, get

你可能感兴趣的:(CaptainHook 使用方法)