使用IOS上的launchd重新启动应用程序

使用IOS上的launchd重新启动应用程序,ios,ipad,jailbreak,launchd,Ios,Ipad,Jailbreak,Launchd,我正在博物馆展览中使用一些iPad,运行一个由其他人开发的应用程序。尽管我们已经讨论了Home按钮,但我发现偶尔应用程序会崩溃,用户会出现在主屏幕上。他们可以从这里访问其他未经授权的应用程序 博物馆并不反对越狱,如果这能给我们提供我们需要的解决方案的话,所以我一直在研究使用带有KeepAlive标签的launchd,并将.plist文件放入/Library/LaunchAgents目录,以防止应用程序关闭或在崩溃时重新生成它 到目前为止,我已经成功地使它与iPad附带的默认应用程序以及Cydia

我正在博物馆展览中使用一些iPad,运行一个由其他人开发的应用程序。尽管我们已经讨论了Home按钮,但我发现偶尔应用程序会崩溃,用户会出现在主屏幕上。他们可以从这里访问其他未经授权的应用程序

博物馆并不反对越狱,如果这能给我们提供我们需要的解决方案的话,所以我一直在研究使用带有KeepAlive标签的launchd,并将.plist文件放入/Library/LaunchAgents目录,以防止应用程序关闭或在崩溃时重新生成它

到目前为止,我已经成功地使它与iPad附带的默认应用程序以及Cydia安装的应用程序一起工作,但我无法让它重新启动我们想要的应用程序。我曾在/User/Applications目录和/Applications目录中尝试过它,有人建议这可能会有所不同,但没有乐趣。有人能提出一个可能的解决方案吗?还是我在浪费时间?我在下面的plist文件中插入了XML

   <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>com.MVFieldguide.launchd</string>
<key>ProgramArguments</key>
    <array>
    <string>/Applications/Field Guide 2010.app/Field Guide 2010</string>
    </array>

<key>RunAtLoad</key>
    <true/>

<key>KeepAlive</key>
    <dict>
        <key>SuccessfulExit</key>
        <true/>
    </dict>

标签
com.MVFieldguide.launchd
程序参数
/应用程序/现场指南2010.app/Field Guide 2010
运行负荷
持久连接
成功退出

这不起作用,因为应用商店应用程序未保存在应用程序文件夹中。我可以想出两个选择

  • 在Cydia中安装AppLinks。这将创建每个应用商店应用程序的符号链接,并将它们放入/var/mobile/AppLinks中。然后在plist文件中,将应用程序的路径作为

    /var/mobile/AppLinks/Field Guide 2010/Field Guide 2010

  • 您可以从Xcode获取ipa并提取.app包,而不是传统地将应用程序安装到iPad上。然后手动将其安装到/Applications/中,您就可以按照自己的方式使用启动plist了

  • 我推荐第一个选项,因为它允许您更新应用程序,而无需手动将.app包放入Applications文件夹。使用第一个选项根本不会更改更新应用程序的工作流


    另外,请注意,如果您这样做,您必须在更新应用程序之前删除plist以退出它,因为我认为您无法在应用程序运行时更新应用程序。

    iOS 6.0可能有某种修复程序用于将设备锁定到某个模式。。。我不知道(保密协议)

    被黑客攻击的iOS 5.1仍然可以执行以下操作:

    使用捆绑标识的应用程序

    你可以用com.apple.calculator打开计算器…不需要文件夹

    这是您放入launchd文件夹的脚本

    首先从cydia安装Open应用程序,以便使用“Open com.apple.calculator”终端命令

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
        <key>Disabled</key>
        <false/>
        <key>Label</key>
        <string>com.perceptdev.tink</string>
        <key>ProgramArguments</key>
        <array>
            <string>open</string>
            <string>com.orbitusrobotics.thegatekeeper</string>
            <string></string>
        </array>
        <key>RunAtLoad</key>
        <true/>
        <key>StartInterval</key>
        <integer>10</integer>
        <key>WatchPaths</key>
        <array/>
    </dict>
    </plist>
    
    
    残废
    标签
    com.dev.tink
    程序参数
    打开
    com.orbitus robotics.thegatekeeper
    运行负荷
    星际旅行社
    10
    监视路径