如何在Xcode中正确使用iOS运行时头?

时间:2015-10-18 20:14:10

标签: ios xcode runtime iphone-privateapi

如何正确使用Xcode中的iOS runtime headers来获取未能进入App Store但仅限于个人黑客攻击的应用?

例如,我是否将框架复制到我的Mac上的/System/Library或者只是将所需的转储运行时标头包含到我的Xcode项目中?如果是这样,我怎么能包括工作,因为包括在内,我得到了大量的错误信息。我在这里画一个空白。

网上有一些东西,但没有明确说明。非常感谢详细解释!

感谢。

1 个答案:

答案 0 :(得分:1)

首先让我们从如何链接这些框架开始

假设您要使用SpringBoardServices框架

  1. 转到https://github.com/nst/iOS-Runtime-Headers/并下载标题

  2. 搜索 SpringBoardServices.framework 文件夹并复制

  3. 中的所有标题
  4. 转到 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/PrivateFrameworks/SpringBoardServices.framework 并创建一个名为标题

  5. 的文件夹
      

    iPhoneOS.platform 替换为 iPhoneSimulator.platform ,如果您想在模拟器上试用应用,也可以粘贴模拟器SDK文件夹中的标题

    1. 粘贴您刚刚复制的文件
    2.   

      现在您可以链接SpringBoardServices Framework

      现在如何使用SpringBoardServices

      这将打开邮件应用程序

      #include <SpringBoardServices/SpringBoardServices.h>
      void openMailApp(){
          SBSLaunchApplicationWithIdentifier(CFSTR("com.apple.MobileMail"), false);
      };
      

      获取当前播放音乐的应用名称

      SBSCopyNowPlayingAppBundleIdentifier();