static char *libs(void)
{
// Get DYLD task infos
struct task_dyld_info dyld_info;
mach_msg_type_number_t count = TASK_DYLD_INFO_COUNT;
NSLog(@"-----%d-----",count);
kern_return_t ret;
ret = task_info(mach_task_self_,
TASK_DYLD_INFO,
(task_info_t)&dyld_info,
&count);
if (ret != KERN_SUCCESS) {
return NULL;
}
NSLog(@"-----%d-----",count);
// Get image array's size and address
mach_vm_address_t image_infos = dyld_info.all_image_info_addr;
struct dyld_all_image_infos *infos;
infos = (struct dyld_all_image_infos *)image_infos;
uint32_t image_count = infos->infoArrayCount;
struct dyld_image_info * image_array =( struct dyld_image_info *)infos->infoArray;
struct dyld_image_info * image;
struct dyld_image_info new_image_array[image_count];
for (int i = 0;
iOS 获取动态库几种方式
最新推荐文章于 2022-11-23 08:28:05 发布