[runtime] iOS-Runtime-Headers
Dynamically Generated iOS Headers
https://github.com/nst/iOS-Runtime-Headers
Here are iOS Objective-C headers as derived from runtime introspection.
The headers were generated using RuntimeBrowser for iPhone.
这个是在运行时导出的所有的 Objective-C 的头文件。
这些头文件都是通过 RuntimeBrowser for iPhone 来生成的。
Search(搜索)
You can search the headers with github search:
https://github.com/search?type=Code&q=repo:nst/iOS-Runtime-Headers+hack
你可以在github上用下面的方式来搜索:
https://github.com/search?type=Code&q=repo:nst/iOS-Runtime-Headers+hack
Sample usage(使用)
You can use the headers this way:
你可以用下面的方式来使用这些头文件:
NSBundle *b = [NSBundle bundleWithPath:@"/System/Library/PrivateFrameworks/GAIA.framework"];
BOOL success = [b load];
Class SKTelephonyController = NSClassFromString(@"SKTelephonyController");
id tc = [SKTelephonyController sharedInstance];
NSLog(@"-- myPhoneNumber: %@", [tc myPhoneNumber]);
NSLog(@"-- imei: %@", [tc imei]);
Note that many other unique identifiers can be retrieved:
记住哦亲,许多唯一标示符都是能找到的哦:
Class AADeviceInfo = NSClassFromString(@"AADeviceInfo");
NSLog(@"-- serialNumber: %@", [AADeviceInfo serialNumber]);
NSLog(@"-- udid: %@", [AADeviceInfo udid]);
NSLog(@"-- appleIDClientIdentifier: %@", [AADeviceInfo appleIDClientIdentifier]);
id deviceInfo = [[[AADeviceInfo alloc] init] autorelease];
NSLog(@"-- wifiMacAddress: %@", [deviceInfo wifiMacAddress]);
Class OSDBattery = NSClassFromString(@"OSDBattery");
NSLog(@"-- battery serial number: %@", [OSDBattery _getBatterySerialNumber]);
Timeline(时间线)
- Green == public(公开的)
- Red == private(私有的)
- Blue == dylib(动态加载的)
The code to draw this picture is inhttps://github.com/nst/RuntimeBrowser/tree/master/tools/ios_headers_history.

[runtime] iOS-Runtime-Headers的更多相关文章
- iOS RunTime运行时(1):类与对象
Objective-C语言是一门动态语言,他将很多静态语言在编译和链接期做的事放到了运行时来处理.这种动态语言的优势在于:我们写代码更具有灵活性,如我们可以把消息转发给我们想要的对象,或者随意交换一下 ...
- iOS Runtime原理及使用
runtime简介 因为Objc是一门动态语言,所以它总是想办法把一些决定工作从编译连接推迟到运行时.也就是说只有编译器是不够的,还需要一个运行时系统 (runtime system) 来执行编译后的 ...
- ios runtime swizzle
ios runtime swizzle @implementation NSObject(Extension) + (void)swizzleClassMethod:(Class)class orig ...
- ios runtime的相关知识
一.iOS runtime原理 对于runtime机制,在网上找到的资料大概就是怎么去用这些东西,以及查看runtime.h头文件中的实现,当然这确实是一种很好的学习方法,但是,其实我们还是不会知道r ...
- iOS Runtime 实践(1)
很多时候我们都在看iOS开发中的黑魔法——Runtime.懂很多,但如何实践却少有人提及.本文便是iOS Runtime的实践第一篇. WebView 我们这次的实践主题,是使用针对接口编程的方式,借 ...
- 包建强的培训课程(11):iOS Runtime实战
@import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/c ...
- iOS Runtime的消息转发机制
前面我们已经讲解Runtime的基本概念和基本使用,如果大家对Runtime机制不是很了解,可以先看一下以前的博客,会对理解这篇博客有所帮助!!! Runtime基本概念:https://www.cn ...
- iOS Runtime 实操练习
iOS Runtime 知识详解: http://yulingtianxia.com/blog/2014/11/05/objective-c-runtime/ 一般可以运行Runtime进行以下操作 ...
- iOS runtime探究(二): 从runtime開始深入理解OC消息转发机制
你要知道的runtime都在这里 转载请注明出处 http://blog.csdn.net/u014205968/article/details/67639289 本文主要解说runtime相关知识, ...
- IOS runtime动态运行时二
在C#.Java中有编译时多态和运行时多态,在OC中,只有运行时的多态,这与它的运行机制有关.OC中,方法的调用是通过消息的传递来进行的.在IOS runtime动态运行时一http://www.cn ...
随机推荐
- MFC+WinPcap编写一个嗅探器之二(界面)
选择新建->项目->MFC应用程序->基于对话框完成,这里文件名为sniffer 打开资源视图中的Dialog列表,打开项目总默认创建的话框,将对话框中的所有控件删除,之后按照最终效 ...
- 【51nod】1312 最大异或和
题解 很显然我们求出一组线性基来,如果有M个基,那么可以构造N - M + 1个最大异或值 而对于线性基中的元素,除了最大的元素,我们用最大异或值异或掉每个元素累加进答案 而不是把线性基中的元素处理成 ...
- 自动化CI构建工具
hudson/maven jenkins,bamboo, hudson
- ECshop语言包lang的加载原理
当前使用的ecshop的版本:2.7.3,ecshop 2.7.3版本的网店系统的语言包的位置是ecshop文件下 languages/xxx/ 其中的xxx表示各种语言的文件夹,里面存放指定语言 ...
- console在ie下不兼容的问题(console在ie9下阻碍页面的加载,打开页面一片空白)
在页面中加入以下代码: window.console = window.console || (function() { var c = {}; c.log = c.warn = c.debug = ...
- 《Android源码设计模式》--模板方法模式
No1: 模板方法模式包括:抽象类(其中定义了一系列顺序方法).具体实现类A.具体实现类B 如果子类有实现不一样的细节,重写父类的某个方法即可 No2: AsyncTask对象调用execute方法后 ...
- CentOS查看内核版本、系统版本、系统位数
http://blog.51cto.com/ultrasql/1640435
- 【拉格朗日插值法】【找规律】【高精度】Gym - 101156G - Non-Attacking Queens
题意:问你n*n的国际象棋棋盘上放3个互不攻击皇后的方案数. oeis……公式见代码内 //a(n) = 5a(n - 1) - 8a(n - 2) + 14a(n - 4) - 14a(n - 5) ...
- bzoj 3262
题意:给你一些三维上的点,对于每个点,统计三个坐标都小于等于该点的点数. 如果点的范围在300以内,可以用三维树状数组搞,但这题坐标范围太大. 考虑将所有点按照x坐标排序,从左到右,相当于在一个二维平 ...
- ROS知识(9)----安装Turtlebot2和远程控制Turtlebot2
安装turtlebot2,场景为:turtlebot2上搭载着一台电脑主机A,该电脑作为主机Master,有自带的电源和3D传感器,roscore在该台机器上启动.pc电脑远程连接A,和A通讯,pc不 ...
