作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我在 iOS 方面很笨,尤其是在私有(private) API 方面。
我有要测试的应用程序,现在我需要使用私有(private) API(此应用程序不适用于 App Store)。
我从 iOS-Runtime-Headers 下载了生成的 header 下一步是什么?
在 /System/Library/
下,我有包含 Frameworks
、...、PrivateFrameworks
的库列表。
我是否需要用从 iOS-Runtime-Headers
复制的框架替换原来的框架?
因为我有其他仅使用 Public API
的应用程序,我不想破坏它们。
他们通过发布的链接告诉他们验证库,例如:
NSBundle *b = [NSBundle
bundleWithPath:@"/System/Library/PrivateFrameworks/GAIA.framework"];
BOOL success = [b load];
但是这里的路径指向原来的路径。
或者我错过了什么,
谢谢
最佳答案
首先,不要替换 Apple 提供的任何 header 。
通常,它通过以下两种方式之一完成:
1) 您可以将其中一些 header 复制到您的项目中,并像包含任何其他 header 一样包含这些文件
#import "SomeHeader.h"
2) 有时你必须对它们进行一些清理(编辑)。通常,这些 header 中包含类似 in 的内容:
#import "NSObject.h"
编译器将无法找到它,因为 NSObject 是内置类。所以,你需要删除它。
3) 如果您只需要其中的几种方法,那么 Tuukka Nori 解决方案是正确的。
除此之外,您还需要(静态或动态)链接到适当的私有(private)框架(仅包含 header 是不够的)。
关于ios - 如何在 iOS 中加载新生成的私有(private) API header ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22989232/
我是一名优秀的程序员,十分优秀!