我有一个现有的GUI Mac应用程序,想要添加命令行调用功能。例如,GUI应用程序名为“Gallifrey”,可以查找扮演博士和可选同伴的演员。GUI具有年份文本字段、“And companion”复选框和查找按钮。从命令行来看,我想应该是:
> gallifrey -y2014 -c
> Peter Capaldi, Jenna Coleman
我在apple-dev上发现了一种解决方案,链接:http://lists.apple.com/archives/cocoa-dev/2009/Oct/msg01480.html。那仍然是建议的解决方案吗?我考虑将逻辑移入XPC服务并捆绑一个单独的命令行目标,但这似乎过于复杂。 编辑:为了明确起见,我不是在问如何解析参数,我已经做到了,只是如何决定启动GUI还是返回答案。
NSApplicationMain
,并在ApplicationDidFinishLaunching
中实现主窗口的启动或不启动。答案在这里...我不确定它是否是规范的。我猜我的建议与你的链接不同之处在于它会保留你在<NSApplicationDelegate>方法中的任何引导程序,但只是取消GUI启动。你可以拥有一个完整的应用程序,没有Dock图标或菜单,所以没有理由不启动应用程序。 - stevesliva