theos下c function的hook

本demo以通讯录的c function为例 hook其中的一个c function。

app为


theos下c function的hook_第1张图片

这个app是在获取通讯录的授权之后,获取每一个通讯录名片的详细信息 此处要hook的是 ABAddressBookCopyArrayOfAllGroups 这个 C函数

hook细节为


theos下c function的hook_第2张图片


步骤为

1:首先对需要hook的函数的一个extern的定义

2:对old函数和新函数的声明,注意 需要在新函数里实现对旧函数的实现 类似%orig,否则的话这个函数将会失去原始的功能

3:在%ctor初始化中 使用substrate提供的 MSHookFunction实现对C Function的替换

结果为


你可能感兴趣的:(theos下c function的hook)