ios - 在 objective-c 中访问 SpringBoardServices.h 方法?

标签 ios objective-c iphone-privateapi

我下载了 SpringBoardServices 中给出的 SpringBoardServices.h 文件并将其添加到我的项目中。但是如何访问 SpringBoardServices.h 文件中存在的方法之一。我试图从 MyClass.m 文件中调用 BOOL SBSProcessIDForDisplayIdentifier(CFStringRefidentifier, pid_t *pid); 此方法存在于 SpringBoardServices.h 中。如何从我的 .m 文件中调用上述方法?

我使用了下面的方法,但它返回了 null。
类 myclass = NSClassFromString(@"SpringBoardServices");
NSLog(@"myclass %@", myclass);//空
id myobj = [[myclass alloc] init];

我从这个 link 下载了 SpringBoardServices.h 文件.

最佳答案

有几种方法可以从私有(private)框架访问 C 方法:

方法一:

  • 链接私有(private)框架(类似于链接公共(public)框架的方式)
  • 包含.h文件
  • 打电话:

SBSProcessIDForDisplayIdentifier(...)

方法二:

  • 使用 dlopen 在运行时加载框架
  • 找到使用dlsym的方法
  • 打电话

顺便说一句。这适用于 C 方法,第二种方法不适用于 ObjectiveC 方法。

关于ios - 在 objective-c 中访问 SpringBoardServices.h 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26253291/

相关文章:

ios - 在谷歌地图上绘制两点之间的路径

objective-c - 自定义日志记录宏不接受多个参数

数组中的 C++ 结构,帮助!

iOS 如何使用私有(private) API?

ios6 - Apple 因为使用 MTStatusBarOverlay 而拒绝了我的应用程序?

ios - Parse 中的随机行

ios - 从解析的 XML 将数据加载到 TableView

ios - 如何将google标签管理器SDK安装到swift项目中

objective-c - 如何在另一个 modalViewController 退出后更新 modalViewController

ios - 在 iphone 中启动没有 URL 架构的其他应用程序?