iOS 调用私有API
来源:互联网 发布:光头大大正太捏脸数据 编辑:程序博客网 时间:2024/05/22 12:30
版权声明:本文为博主原创文章,未经博主允许不得转载。
Objecitve-C的重要特性是Runtime(运行时),在Interacting with the Runtime(交互运行)中,运行时函数部分,苹果给出了/usr/lib/libobjc.A.dylib库,这个共享库提供支持动态属性的objective - c语言,通过其接口,可以用于开发将其他语言运行于Objective-C上的中间层(桥接层),库里的函数定义为纯C语言。
例如:class_getName
- class_getName
- Returns the name of a class.
- const char * class_getName(Class cls)
- Parameters
- cls
- A class object.
- Return Value
- The name of the class, or the empty string if cls is Nil.
- Declared In
- runtime.h
这里我们要用库里的函数,干个“坏事”,查看苹果SDK的私有方法。
第一步:导入头文件
- #import <objc/runtime.h>
- NSString *className = NSStringFromClass([UIView class]);
- const char *cClassName = [className UTF8String];
- id theClass = objc_getClass(cClassName);
- unsigned int outCount;
- Method *m = class_copyMethodList(theClass,&outCount);
- NSLog(@"%d",outCount);
- for (int i = 0; i<outCount; i++) {
- SEL a = method_getName(*(m+i));
- NSString *sn = NSStringFromSelector(a);
- NSLog(@"%@",sn);
- }
第三步:想看什么类 就把UIView换成你想要的
当然,如果只是查看私有API,会有更简单的方法,可以使用工具class-dump,也可以通过此链接,https://github.com/kennytm/iphone-private-frameworks/tree/master/UIKit/ 查看。
特别注意的是,如果是需要上架的APP,切勿使用私有API,会通不过APP Store的审核。
0 0
- iOS 调用私有API
- iOS 私有api的调用
- iOS调用WebView私有API的方法
- ios UIWebview runtime header 用于私有api调用查看
- iOS私有API
- ios私有api查询
- IOS私有API 发送sms
- ios 进阶 -- private(私有) API
- iOS私有API获取电话号码
- IOS私有API的了解
- IOS私有API的了解
- IOS获取手机号(私有API)
- iOS应用查找私有api
- ios私有API的使用
- IOS私有API的了解
- IOS私有API的了解
- IOS私有API的使用
- iOS私有API的了解
- C#导出Excel,并且设置Excel单元格格式,合并单元格.
- UnsatisfiedLinkError X.so is 64-bit instead of 32-bit之Android 64 bit SO加载机制
- iOS-用手机查询手机UDID
- 车牌识别一体机鲁棒性表现 二 支持打倾斜45度识别
- Android NestedScrolling 实战
- iOS 调用私有API
- torch学习笔记(二)
- 百度实习总结
- wiki/Cg Programming/Unity/shder_理解准备
- Java NIO:浅析I/O模型
- Apache Commons工具集简介
- MongoDB运行状态、性能监控,分析
- spring代理注解<aop:aspectj-autoproxy />
- SQL优化之六脉神剑