安卓真机调试内存分配HOOK问题

USE_MEMORY_LEAK_DETECTOR 开启后

void *malloc(size_t size) {
static MallocType system_malloc = nullptr;
if (CC_PREDICT_FALSE(system_malloc == nullptr)) {
system_malloc = (MallocType)dlsym(RTLD_NEXT, “malloc”);
}

void *ptr = system_malloc(size);
if (CC_PREDICT_TRUE(g_new_hooker != nullptr)) {
    g_new_hooker(ptr, size);
}

return ptr;

}

system_malloc 获取不到怎么处理?

在其他机器上没问题,红米2A上面会获取不到。

RTLD_DEFAULT 代替就可以获取到了。