4

[编辑]我有我的设备。我在 Github 上找到了最新的私有 API iOS-Runtime-Headers 。

我想在我的应用程序中使用私有 API。

我在 github 上找到了 kennytm/iphone-private-frameworks,但它只支持 iOS 3.x。当我在 iOS 5.0.1 上工作时。

我还在Google iPhone 开发工具上找到了一些代码。但这真的让我很困惑。我是 iPhone 开发的新手。

我该怎么做才能使用

[[UIApplication sharedApplication] launchApplicationWithIdentifier:@"com.a.b" suspended:NO];

有人可以给我一个方向或一些例子。非常感谢。

4

1 回答 1

8

要求

  1. 越狱的设备
  2. 您的钥匙串及其关联的配置文件中的有效证书/密钥。(如果你没有注册苹果开发者计划,使用这个解决方法:self sign my code and test on iphone in xCode

我的解决方案

1)在您的 XCode 项目中启用权利。

要将权利添加到您的项目,请在project navigator中选择您的项目,然后在活动的 Target -> Summary -> Entitlements -> 选中Enable entitlements复选框。名称为“ YourProject.entitlements ”的新文件将立即出现在项目导航器中。

2) 将以下属性添加到权利。

添加权利属性:com.apple.springboard.launchapplications,布尔类型,值为 YES

3) 由于launchApplicationWithIdentifier:suspended:私有 API,您需要显式声明它才能构建您的应用程序。只需在适当的位置添加以下代码:

// Simply make declaration  inside a Category.
#import "BlahBlah.h"
@interface UIApplication (Undocumented)
    - (void) launchApplicationWithIdentifier: (NSString*)identifier suspended: (BOOL)suspended;
@end
....
@implementation BlahBlah
...

4)构建你的项目。

5) 将YourProject.app复制到设备的/Application文件夹中(例如通过 SFTP)

6)重启或重启iDevice。

7) ...

8)利润!

也可以看看

从我的应用程序启动应用程序的特殊 API -另一种解决方案

苹果在 iOS 中默认应用程序的捆绑标识符是什么?

于 2012-06-15T09:24:39.793 回答