class-dump
2019-01-17 本文已影响9人
Zz7777777
-
顾名思义,它的作用就是把Mach-O文件的class信息给dump出来(把类信息给导出来),生成对应的.h头文件
-
官方地址:请点击
-
下载完工具包后将class-dump文件复制到Mac的/usr/local/bin目录,这样在终端就能识别class-dump命令了
图一.png
如何获取app的Mach-O文件
-
首先下载ipa文件 将ipa改成.zip,然后进行解压,一般都Payload文件夹里面一个文件的文字,看到体积大的就是app的Mach-O文件了
图二.png -
放到桌面,然后输入指令class-dump Mach-O的名字
-
或者class-dump -H Mach-O的名字 -o 目录名字
图三.png
遇到的问题
-
问题:class-dump -H时报Error: Cannot find offset for address 0x580000000100bcd8 in stringAtAddress: 错误
图四.png -
原因:http://bbs.iosre.com/t/xue-xi-yong-dumpdecryptedgei-appza-ke-suo-yu-dao-de-wen-ti/813 我在iosre看到一篇帖子说是项目中可能用到了swift,后来经过证实,该项目确实是用OC和Swift混编。class-dump是利用Object-C语言的runtime特性,提取头文件,因此我认为应该是这个原因。大家如果有不同见解,望告知。
-
遇到这种情况表示该app已经被加壳了
图五.png