如果调用tweak里hook的函数

我参照书上的例子,写了一个检测手机号是否适用于iMessager的tweak,安装成功,使用cycript 测试成功,现在我想写一个APP,在APP里面调用tweak里面为iMessager 增加的函数,尝试着使用dlopen 加载动态链接库,然后使用dlsym来查询函数地址,但是每次都遇到 EXC_BAD_ACCESS 的错误,打开动态链接库是正常的,可以获取对应的handle。
代码如下:

-(void)CheckNumberAvailableForMessager:(NSString*) number{

void *lib = dlopen(TWEAKPATH, RTLD_LAZY);
int result ;
if (lib) {
    NSLog(@"打开成功");
    int (*madridStatusForAddress)(NSString*) = dlsym(lib, "madridStatusForAddress");
    result = (int)madridStatusForAddress(@"15223476789");
    NSLog(@"result is %d",result);
    dlclose(lib);
    
       }

}

结贴,靠自己探索出来了,谢谢

1 个赞

怎么解决的?

dlopen 打开dylib,dysm 获取函数地址,调用之