我下载了 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/