天天看点

越狱第二步:在通常的app应用中使用私有的头文件

1.使用公有库中未暴露的头文件功能:

  确定好越狱功能所需的头文件并从先前导出的Headers文件夹中拷贝到对应公有framework中的Headers文件夹中,重启下xcode,在工程中正常Bulid Phases中连入所需的framework库,然后在代码中import进来就OK了

2.使用私有库的头文件:

   xcode安装目录中,私有framework下是没有Headers文件夹的,自己创建一个,确定好越狱功能所需的头文件并从先前导出的Headers文件夹中拷贝到对应私有framework中的Headers文件夹中,并将整个私有framework拷贝至公有framework目录下(即/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/System/Library/Frameworks),重启下xcode,在工程中正常Bulid Phases中连入所需的framework库,然后在代码中import进来就OK了

注意:class-dump出来的头文件有些并不能直接使用,需要稍做修改:

a.把#import "NSObject.h"改成#import 

b.@class CTPhoneNumber, NSArray, NSDate, NSDictionary, NSMutableArray, NSMutableDictionary, NSObject, NSString;改成

@class NSDictionary, NSDate, NSString, NSMutableDictionary, NSArray, CTPhoneNumber, NSMutableArray;

@protocol CTMessageAddress, NSCopying;

c.NSObject> 改成NSObject,NSCopying>

d.Remove the "" in the first part of the interface. So you're just left with "id _delegate;"

e.有些不确定的类型就直接改为id

网络上志同道合,我们一起学习网络安全,一起进步,QQ群:694839022