【问题标题】:Anyone submitted or know of an application in the Mac App Store that uses launchd?有人在 Mac App Store 中提交或知道使用 launchd 的应用程序吗?
【发布时间】:2011-06-29 11:52:35
【问题描述】:

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

谢谢。

【问题讨论】:

    标签: launchd mac-app-store launchdagent


    【解决方案1】:

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

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

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

    【讨论】:

    • 请解释您拒绝投票的原因。如果你不解释原因,我永远都不会知道为什么我不能给出最好的答案。
    • 我给了一个额外的 -1 因为离题 - 问题很明显是关于 MAC 应用商店,而不是 iOS。
    【解决方案2】:

    是否有任何方式直接向苹果询问此类问题?提交虚拟应用程序 - 万一它会被拒绝 - 不是了解应用商店中是否允许启动的好方法。他们(苹果)可能会因为你的应用没用或蹩脚而拒绝你的应用,哈哈!官方指南不全面,尤其是在技术限制方面 - 我一辈子都找不到与 App Store“人”交谈的官方渠道。在过去 5 年大肆宣传推出 像破解 之后,如果 Apple 确实对利用其功能的应用程序制定了全面政策......尽管它很怪异......非常好,而且IMO,几乎每一个“做”任何有用的软件都需要。哼。

    跟进..虽然不是这个具体问题的答案,it shines light on the subject...

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

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

    似乎发生的情况是,当应用程序通过以下方式启动时 LaunchServices, LaunchApplicationViaLaunchD 调用‘spawn_via_launchd’, 并通过观察者端口 NotifyServerSideAboutLaunchedApplication。我认为这然后通过 到 coreservicesd 的观察者端口。我猜 coreservicesd 是 检查退出代码的那个,但我不能确定。”

    【讨论】:

    • 如果你和苹果开发者支持联系,他们只会告诉你官方的故事。 Lion 现在出局了,也许还有其他方法。
    猜你喜欢
    • 2018-02-28
    • 2014-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多