7

只是想知道是否有人成功提交了应用程序或知道 Mac App Store 中存在使用 launchd 的应用程序。

谢谢。

4

2 回答 2

0

有没有办法直接向苹果询问这样的事情? 提交一个虚拟应用程序——万一它会被拒绝——不是一个很好的方法来了解应用商店是否允许启动。他们(苹果)可能会因为你的应用没用或蹩脚而拒绝你的应用,哈哈!官方指南并不全面,尤其是在技术限制方面——而且我一辈子都找不到与 App Store“人”交谈的官方渠道。在过去 5 年像破解一样大肆宣传之后,这将是令人讨厌的如果 Apple 确实对使用其功能的应用程序制定了全面政策……已发布,尽管它很怪异……这该死的好,而且 IMO,几乎所有“做”任何有用的软件都需要. 哼。

跟进..虽然不是这个具体问题的答案,但它照亮了这个主题......

“它立即负责捕获 MAS 应用程序的退出状态,这就是为什么 store_helper 和 storeagent 在您使用 'open foo.app' 时会启动,但在直接调用二进制文件时不会启动。

似乎有一个私有的launchd API(参见launchd源中的launch_priv.h)'spawn_via_launchd',它允许调用进程请求launchd以产生一个进程。此 API 允许通过“观察者端口”对创建的进程进行反馈。查看 launchd 在 10.6.5 和 10.6.6 之间的差异,您可以看到 Apple 在其代码中修复了一个错误,以确保 launchd 捕获正确的退出状态,然后通过该观察者端口转发到原始进程。

似乎发生的情况是,当通过 LaunchServices 启动应用程序时,LaunchApplicationViaLaunchD 调用“spawn_via_launchd”,并通过 NotifyServerSideAboutLaunchedApplication 传递观察者端口。我认为这会将观察者端口传递给 coreservicesd。我猜 coreservicesd 是检查退出代码的那个,但我不能确定。”

于 2011-07-11T20:11:47.407 回答
-1

它当然存在于 iOS 中——我已经看到 com.apple.launchd 在控制台/日志中滚动过去(通常是当我破坏某些东西时!)。

留意原生应用程序 (UIKitApplication) 的启动时间,例如 com.apple.mobilemail 和 com.apple.mobilephone。

我不知道能够在本地领域之外使用它,但我没有看到任何记录在案的 API。我一直认为,当涉及到 iOS 而不是 OSX 时,对于我们这些凡人来说,这简直是超出了界限。

于 2011-03-01T12:16:14.753 回答