想試出有什麼方法可以更改iOS SDK中一些私有API,
而又可以理論上通過App Store的審核。
不過作為私有API,我們根本就無法看得到Class的Header File,
哪麼最簡單更改方法就只好由Method入手,
因為Objective C有Categories的Override功能,
十分好用,可作某Method下的覆寫。
代碼如下
// 必須的Header file
#import <objc/runtime.h>
// 找Method名的代碼
unsigned int methodCnt = 0;
Method* methodList = class_copyMethodList([obj class], &methodCnt);
for (int i = 0; i < methodCnt; i++)
{
Method method = methodList[i];
// Print Method Name
NSLog(@"%@", NSStringFromSelector(method_getName(method)));
}
#import <objc/runtime.h>
// 找Method名的代碼
unsigned int methodCnt = 0;
Method* methodList = class_copyMethodList([obj class], &methodCnt);
for (int i = 0; i < methodCnt; i++)
{
Method method = methodList[i];
// Print Method Name
NSLog(@"%@", NSStringFromSelector(method_getName(method)));
}
沒有留言:
張貼留言