iOS – Cydia打开命令及其对应?

有一个叫做openCydia命令行实用程序,它将打开一个iOS应用程序并连接到SpringBoard。

是否有相应的close命令将正确的信号发送到应用程序? 它需要发送正确的信号,以便在终止之前进行必要的清理。 kill命令不能被使用,因为应用程序不能捕获信号。

我一直在寻找这个特定的命令行工具的高和低,但还没有find它。

谢谢。

你有没有尝试过使用

 killall MobileCydia 

应该pipe用

我不知道任何这样的命令,但你可以自己build立一个模拟主页button。 这应该以正常的方式closures打开的应用程序。 这不是一个不正常的kill 。 如果应用程序支持多任务处理,那么它将转到后台,并且一直处于正常的UIApplicationDelegatecallback状态。

  1. 构build一个非graphics的iOS应用程序。 只要将UIApplicationMain()调出main.m

  2. 将您的应用程序与GraphicsServices.framework链接起来。 这是一个私人框架,所以在Xcode Build Phases设置窗口中,通常select要链接的框架,您不会在公共列表中看到它。 在文件系统上导航到Private Frameworks文件夹(例如/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk/System/Library/PrivateFrameworks )并select它。

  3. 你需要为GSEvent.h(可能包括GSWindow.h)生成头文件。 在这里你可以find两者的副本 。 将它们添加到您的项目中,并在您的main.m文件中#include GSEvent.h

  4. 使用这个function:

 #include "GSEvent.h" - (void)simulateHomeButton { struct GSEventRecord record; memset(&record, 0, sizeof(record)); record.type = kGSEventMenuButtonDown; record.timestamp = GSCurrentEventTimestamp(); GSSendSystemEvent(&record); record.type = kGSEventMenuButtonUp; GSSendSystemEvent(&record); } 

这段代码应该可以用作closures当前应用程序的方法(即代码在前台的UIApplication中运行)或另一个打开的应用程序(就像构build命令行实用程序一样)。

Hattip到libActivator的想法。