使应用程序前景

一旦计时器用完,有没有办法让我的应用程序前台? 这是一个自助服务terminaltypes的应用程序,会在用户会话期间的各个点显示一些信息。

这是一个只能在我们的企业设备上安装的应用程序,因此不会提交给苹果公司进行审批。 我也开始探索越狱的select。

我会很感激任何帮助/提示,​​你们可以提供。 谢谢。

是的,你可以在技术上使用Xcode越狱开发(但你不必)。 如果您希望将应用程序安装在常规沙箱之外,并在/ Applications /中 ,则可以使用Xcode构build而不需要代码签名,假代码签名(或使用自签名证书),然后将应用程序复制/安装到你的设备,使用scp或类似的东西(也许有一个脚本)。

您也可以在“Theos”,“Logos”或“iOSOpenDev”等工具上进行search。 更多在这里

此外,请参阅此页面以获取有关使用Xcode进行假代码签名的信息 。

就应用程序的前景而言,至less有一些方法可以解决这个问题:

一个是使用Cydia安装(免费)实用程序openopen ,您可以使用其捆绑ID(例如, open com.mycompany.MyAppName )来发出命令行调用来打开任何应用程序。 如果您想以编程方式执行此操作,请在system()调用中执行该命令:

  #import <stdlib.h> int returnCode = system("/usr/bin/open com.mycompany.MyAppName"); 

另一种select是通过@WrightsCS查看这个答案 。 请务必阅读相关评论,了解相关内容。


更新: [[UIApplication sharedApplication] terminateWithSuccess]应用程序置于后台而言,您可以使用exit(0)[[UIApplication sharedApplication] terminateWithSuccess]应用程序。 或者, 看到这个答案的解决scheme,以编程方式模拟一个主页button ,这将发送应用程序的背景,而不是杀了它。

您将无法使用NSTimer ,因为定时器在您的应用程序处于后台时不会触发。 但是,您可以使用GCD 来运行后台工作,并open system()调用以使您回到前台。

看到这个答案,可能一直滚动到他的post的底部

或者看看这个相似的答案,这个答案实际上是发布在问题的底部

让你的应用程序到前台的越狱选项:

使用MobileSubstrate钩入SpringBoard。 您可以find有希望的名称的类和方法,例如[SBApplicationIcon launch][SBApplication launch] 。 另一种可能是使用SpringBoardServices私有框架中的SBSLaunchApplicationWithIdentifier()

暂停应用的选项:

您最有可能通过使用MobileSubstrate使SpringBoard为您closures一个特定的应用程序。 也许你可以通过调用[SBUIController handleMenuTap]或类似的东西来模拟主页button点击。