我正在博物馆展览中使用一些iPad,运行由他人开发的应用程序.尽管我们已经覆盖了主页按钮,但我发现应用程序偶尔崩溃,使用户处于主屏幕.从这里他们可以访问其他未经授权的应用
博物馆不反对越狱iPad,如果这将为我们提供我们需要的解决方案,所以我一直在研究使用带有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>
最佳答案 这不起作用,因为App Store应用程序不保存在Applications文件夹中.我可以想到两个选择.
>在Cydia中安装AppLinks.这将创建每个App Store应用程序的符号链接,并将它们放在/ var / mobile / AppLinks中.然后在plist文件中将应用程序的路径设置为
/ var / mobile / AppLinks / Field Guide 2010 / Field Guide 2010
>不是按照常规方式将应用程序安装到iPad上,您可以从Xcode获取ipa并提取.app包.然后手动将其安装到/ Applications /中,您就可以按照自己的方式使用launchd plist.
我推荐第一个选项,因为它允许您更新应用程序而无需手动将.app包放入Applications文件夹.使用第一个选项将不会更改您更新应用程序的工作流程.
此外,请注意,如果您这样做,您必须在更新应用程序之前删除plist以退出它,因为我认为您不能在应用程序运行时更新它.